机器学习1--机器学习概念及介绍

Supervised Learning(监督学习)

supervised learning需要大量的training data,这些training data告诉我们说,一个我们要找的function,它的input和output之间有什么样的关系。
这周function的output,通常被叫做label(标签),也就是说,我嗯要使用supervised learning这个样一种技术,我们需要告诉机器,function的inpu和outp分别是什么,而这周output通常是通过人工的方式标注出来的,因此称为人工标注的label,它的缺点是需要大量的人工effort。

Regression(回归)

regression是machine learning的一个task,特点是通过regression找到的function,它的输出是一个scalar数值。
比如PM2.5的预测,给machine的training data是过去的PM2.5资料,而输出的是对未来PM2.5的预测数值,这就是一个典型的regression的问题。

Classification(分类)

regression和classification的区别是,我们要机器输出的都东西的类型是不一样的,在regression里机器输出的是scalar,而classification又分为两类:

Binary Classification(二元分类)

在binary classfication里,我们要机器输出的是YES or NO。
比如G-mail的spam filtering(垃圾邮件过滤器),输入是邮件,输出是该邮件是否是垃圾邮件。

Multi-class classfication(多元分类)

在multi-class classification里,机器要做的是选择题,等于给它数个选项,每一个选项就是一个类别,它要从何数个类别里面选择正确的类别。
比如document classfication(新闻文章分裂),输入是一则新闻,输出是这个新闻属于哪一个类别(选项)

Model(function set)选择模型

在姐任务过程中,第一步是要选一个function的set,选不同的function set,会得到不同的结果;而选不同的function set就是选不同的model,model又分为很多种:

  • Linear Model(线性模型):最简单的模型
  • Non-linear Model(非线性模型):最常用的模型,包括:
    • deep learing
      如alpha-go下围棋,输入是当前的棋盘格局,输出是下一步要落子的位置;由于棋盘是1919的,因此可以把它看成是一个有1919个选项的选择题
    • SVM
    • decision tree
    • K-NN

Semi-supervised Learning(半监督学习)

举例:如果想要做一个区分猫和狗的function
手头是哪个有少量的labeled data,它们标注了图片哪只是猫哪只是狗,同时又有大量的unlabeled data,它们仅仅只有猫和狗的图片,但没有标注告诉机器哪只是猫哪只是狗
在Semi-supervised Learing的技术里面,这些没有labeled的data,对机器学也是有帮助的。

Transfer Learning(迁移学习)

假设一样我们要做猫和狗的分类问题
我们也一样只有少量的有labeled的data,但是我们现在有大量的不相干的data(不是猫和狗的图片,而是一些其它不相干的图片),在这些大量的data里面,它可能有label也可能没有label。
Transfer Learning要解决的问题是,这一堆不相干的data可以对结果带来什么样的帮助。

Unsupervised Learning(无监督学习)

区别在意supervised learing,unsupervised learing希望机器学习到无师自通,在完全没有任何label的情况下,机器到底学到什么样的知识。
举例来说,如果给我们机器看大量的文章,机器看过大量的文章之后,它到底能够学到什么事情?它能不能学会每个词汇的意思?
学会每个词汇的意思可以理解为:我们要找一个function,然后把一个词汇丢进去,机器要输出告诉你说这个词汇是什么意思,也许他用一个向量来表示这个词汇的不同的特性,不同的attribute。

又比如,我们带机器去逛动物园,给他看大量的动物的图片,对于unsupervised learning来说,我们的data中只有给function的输入的大量图片,没有任何的输出标注;在这种情况下,机器该怎么学会根据testing data的输入来自己生成新的图片?

Structured Learning(结构化学习)

在structured Learning里,我们要机器输出的是,一个又结构性的东西。
在分类的问题中,机器输出的只是一个选项,在structured类的problem里面,机器要输出的是一个复杂的物件。
举例来说,在语言识别的情景下,机器的输入是一个声音信号,输出是一个句子;句子是有许多词汇拼凑而成,它是一个又机构性的object,或者说机器翻译,人脸识别(标注不同的人的名称)。
比如GAN是structured Learning的一种方法。

Reinforcement Learning(强化学习)

  • Supervised Learning
  • Reinforcement Learning

Leaning Map

在这里插入图片描述
下图中,同样的颜色指的是同一类型的事情
蓝色方快指的是secnario,即学习的情境,通常学习的情境是我们没有办法控制的,比如做reinforcement Learing是因为我们没有data,没有办法来做supervised Learing的情况下才去做的。如果有data,supervised Learning当然比reinforcement Learning要好;因此手上有什么样的data,就决定你使用什么样的scenario。

红色方块指的是task,既要解决的问题,你要解决的问题,随着你要找的function的output的不同,有输出scalar的regression,有输出的options的classification,有输出structured object的structured Learing…

绿色的方块指的是model,即用来解决问题的迷行(function set)。在这些task里面有不同的model,也就是说,同样的task,我们可以用不同的方法来解它,比如linear model,Non-linear model(deep Learning,SVM,decision tree,K-NN)
在这里插入图片描述