Hung-yi Lee
1.前言
1.1 发展过程
人工智能(目标)1950s 机器学习(方法)1980s 深度学习(机器学习的重要方法)2010s
![](https://img.haomeiwen.com/i16729476/f42a2d4c19cb3444.png)
1.2生物的本能
类比于程序的if/else(由人类设计好的程序的本能 hand-crafted roles)
weakness of hand-crafted roles:
(1)hard to consider all possibilities
(2)lots of human efforts(not suit for small indstruy)
1.3What is Machine Learning
~Looking for a Function From Data
举例:
(1)speech recognition(语音识别)
![](https://img.haomeiwen.com/i16729476/b2c7e3da3b91182e.png)
(2)imagine recognition
![](https://img.haomeiwen.com/i16729476/7a6c9e74d0812822.png)
...
其工作的步骤是:第一步定义模型,第二步定义目标函数并训练,第三步选出最优模型:
![](https://img.haomeiwen.com/i16729476/4936da8cf79803d9.png)
![](https://img.haomeiwen.com/i16729476/101a7f42ba24015f.png)
其中,第三步选择出最优的模型则根据goodness of fit(拟合优度)选择出更好的model。
goodness of fit(拟合优度):模型(modle or function set)和训练数据(training data)的拟合度。
![](https://img.haomeiwen.com/i16729476/d1b96a9fbf7f4708.png)
2.Learning Map
![](https://img.haomeiwen.com/i16729476/9da20ab7a38e29c0.png)
![](https://img.haomeiwen.com/i16729476/d2e79a3727520e2e.png)
每一种Learning,都包含如上的三个问题(回归问题、分类问题、结构化问题),而这三种问题,都可以用线性模型或者非线性模型来解决。
几种Learning的选择,在于所拥有的training Data的特点,从而选择不同的Learning,即根据不同的scenario,进行选择。
task是指我们在不同的scenario下,所选用的Model的输出。在Regression中,其function的输出是一个scalar,在Classification中,其function的输出是某一个class(分类),在Structed Learning中,我们要得到的是一个无法穷举的output的一个子集。
method即function set或称Model,在图中的意思是:在regression或者classification或者structed learning中,均可以有linear Model或者Non-linear Model。
2.1Regression(回归问题)
The output of the target function f is "scalar" (数值)。如pm2.5的预测,输出一个预测值表示pm2.5,而输出这样的“scalar”需要Training Data。
![](https://img.haomeiwen.com/i16729476/0476d27580ea27c8.png)
2.2Classification(分类问题)
需要根据拟合优度选取Model进行classification,包括Linear Model和Non-Linear Modle(如Deep Learning等),与liner model相比可以处理更加复杂的事情,如图像处理、围棋等。分为以下两类:
(1)Binary Classification(二元分类),如:垃圾邮件的辨别,输入邮件获得是或者否。
(2)Multi-class Classification,如:新闻的分类,输入一篇新闻,获得这篇新闻的分类。
2.3Structured Learning(结构化问题)
-“Beyond Classification”(处理非分类问题)
如语音识别,输入声音信号,output出文字语句,我们无法穷举所有的语句。
3.Scenario
几种Learning的选择,在于所拥有的training Data的特点,从而选择不同的Learning,即根据不同的scenario,进行选择。
3.1Supervised Learning:
Supervised Learning需要的Training Data:input/output pair of target function(输入和function的output也叫做label)
3.2Semi-supervised Learning:
Semi-supervised Learning需要的Training Data:没有output的data
3.3Transfer Learning:
Transfer Learning需要的Training Data:有一部分有label,一部分没有label。
3.4Unsupervised Learning:
3.5Reinforcement Learning
Supervised Learning:含有input和output的training data,可以理解为“Learning from teacher”
Reinforcement Learning:机器没有input和output的function,会在机器输出之后最后得到一个“评价”,并根据评价去尝试修正。“Learning from critics”,更接近人类学习的过程。
Alpha Go is supervised learning + reinfocement learning,先输入棋谱,后机器间进行博弈,没一句博弈都会得到一个评价,然后机器根据评价进行调整。
网友评论