Day-02 机器学习的介绍

  • 昨天我们已经聊过了整个机器学习的大概念了,也知道深度学习和机器学习之间的关系,因此我们在这里先好好理解机器学习的世界中,有哪些应该了解的,然後在之後的课程,我们再延伸到利用深度学习的方式来解决机器学习的问题

机器学习的核心

  • 那我们在这边先厘清我们到底要怎麽做到机器学习这件事情
  • 我们说过了,我们不再是自己撰写规则,而是希望机器基於资料和答案推论一个
  • 所以概念上我们需要提供一堆 function 来请机器判断哪个比较好,而这一堆 function 我们会称为 function set,或是 Model,然後基於 Data 我们来判断哪个 function 最好,最後,输出找到的最好的 function
  • 画成流程图会变成

  • 所以其实概念不难,也就是三个步骤而已,当然这样的说法真的非常拢统,因此後面还是要好好解释到底要怎麽做来达到这样三个步骤

机器学习世界

  • 那一样,我们说过机器学习其实是一种在 AI 领域中的手段,希望利用资料和答案来延伸出判断规则
  • 那在机器学习的领域之中,其实有不同的种类的,让我们大致上聊过他们

机器学习的种类

  • 机器学习依照目标、和资料状况有可以大致分类成
    • 依照目标可分成
      • Regression(预测)
      • Classification(分类)
    • 依照资料有无答案
      • Superviesed Learning(监督式学习)
      • Unsuperviesed Learning(非监督式学习)
      • Reinforcement Learning(强化学习)

概述 -- Tasks of Learning

  • Regression(预测)
    • 模型输出的是一个数值

    例如:气象预报,我们有今天的天气状况数值,然後希望帮忙推断明天会不会下雨

  • Classification(分类)
    • 模型输出的是一个分类的答案

    例如:今天有一个 Binary Classification(二元分类器),那对於这个分类器他的回答就会是 Yes or No

概述 -- Types of Learning

  • Supervised Learning(监督式学习)
    • Training data with output labels

      给你答案,让你学习,分类

  • Unsupervised Learning(非监督式学习)
    • Training data without output labels

      想办法把相似的集合在一起

  • Reinforcement Learning(强化学习)
    • Training 当下没有给答案,但是会在事後告诉他他的回答是好的还是不好的,也就是一种混合的概念,这边暂时没有要详细说明这个部分

机器学习的核心 -- DataSet(资料集)

  • 那从上面和昨天关於机器学习的叙述,我们其实可以发现不管怎样类型的问题,机器学习的核心都是利用 Data + Answer 来回推 Rules 来进一步做後续的判断
  • 所以关於判断事物的资料就变得非常重要了,因为这些资料会决定了机器学习过程中对於资料的理解状况,甚至影响之後的判断结果
    • 举个例子来说,如果有个人生活环境说的猫都是无毛猫,然後在他的认知中已经觉得猫咪都一定没有毛,所以有毛的猫咪他一定不会觉得他是一只猫,同样的道理,如果今天让机器判断的资料本身就有偏颇和错误,连人都会有错误的理解了,何况是机器

Dataset

  • 资料集的定义
    • a collection of data examples and their attributes

      一堆收集的例子和他们的属性/特徵

机器学习各个阶段

  • 那有资料了,有目标了,机器学习也跟人一样,需要先学习,那我们要怎麽检查学习的好不好呢?就是给个考试。
  • 所以机器学习是有分成两个阶段的,一个阶段是 Training,一个阶段是 Testing。
  • 所以概念上我们会准备两份完全独立的资料,一份拿去做训练,另一份拿去做测试

Training Stage

  • Training 阶段就是拿我们准备的好的资料,丢给模型做训练,然後一样输出一个结果,只是这个阶段的结果是用来修正训练过程中我们希望学习的参数的部分

Testing Stage

  • Testing 阶段则是拿全新在训练过程中没看过的资料,拿来做输出检查

  • 换句话说,我们可以想像成 Training 阶段就是小时候我们做的习题本,里面一样会有题目答案,但是我们是拿来学习的,而 Testing 则像是大考的考卷

每日小结

  • 在这里我们已经知道机器学习的领域其实非常多东西,那虽然我们这系列一直强调是深度学习,但是由於很多基本概念是必须先知道的,因此前面我们还是会把该介绍的部分介绍清楚,例如基本的训练概念,还有这边提到的资料状况,跟整个机器学习的世界中的分类
  • 在这边先说明,我们有提到深度学习是机器学习中的一种方式,因此不管是预测问题还是分类问题,都有深度学习的解法,因此我们还是需要对这些不同的问题有基本的概念
  • 明天我们先利用 Linear Regression(线性预测)来介绍 Regression 和机器学习的运作方式吧~

<<:  Day2 Android - 系统预设程序码

>>:  初学者跪着学JavaScript Day2

不只懂 Vue 语法:什麽是 directive?请示范如何使用 directive?

问题回答 directive(指令)是我们在 Vue 自定义的指令。当我们要重复处理某些工作,例如转...

【Android-Notification(通知)】 介绍+实作练习

前言: 通常会和Broadcast(广播)一起使用,在app status条显示的资料, 可以在Ap...

Flutter学习Day1 dart&flutter安装(windows)

小弟弟第一次发文, 如有不好的地方 请多包涵 (≧∀≦)ゞ 由於我是vs code 使用爱好者 所以...

Day 16: 物件导向设计、函数式设计 (待改进中... )

「什麽是物件导向? 对软件架构师来说: 物件导向是透过使用多型(Polymorphism) 来获得...

[Day 11] Reactive Programming - Reactor(Scheduler)

前言 Reactor 是concurrency-agnostic ,花了一点时间研究这个英文单字的意...