Hiroki

大部分笔记已经转移到 https://github.com/hschen0712/machine_learning_notes ,QQ:357033150, 欢迎交流

Coursera机器学习基石 第1讲:The Learning Problem

这门课的授课老师是个台湾人,师从Caltech的Yaser S. Abu-Mostafa,他们共同编撰了《Learning From Data》这本书。Yaser S. Abu-Mostafa在edx上也开设了机器学习的公开课,不过说实话,他的埃及口音英语实在很难听懂,而且讲的内容偏重理论,所以追了几节课就放弃了。这次他的学生带来了coursera的机器学习基石这门公开课,讲的内容和Yaser的公开课差不多,而且是中文授课(ppt是英文),这对于华语世界的学生来说是个福音。未来几周,我将把这门课的听课收获记录下来,以便备忘。

  • 什么是机器学习?

机器学习是一门能够让计算机从数据中学习得到经验,以改善在特定任务上表现的新兴技术。机器学习模仿了人类的学习过程,人类的学习来源于观察,比如我们学说话,是通过聆听、模仿大人的话语;我们区分两个不同的物体,是通过视觉上的观察、比对,经思考、归纳总结出结论的。机器学习也是一样,不过由于机器不能主动观察获得数据,所以需要人类把资料“喂”给它。接着,通过机器学习算法,得出结论。

  • 机器学习能够应用的场合:

1.数据中有特定的规律(pattern)可循

数据背后必须含有潜在的规律或模式,如果数据杂乱无章没有规律可循,那么数据就是垃圾数据。

2.数据中的规则不能用明确的数学表达式(mathematical definition)给出

现实生活中许多复杂的决策问题是无法简单地用明确的数学形式刻画的,如果能够明确定义,也就不需要机器学习了,直接写个程序就可以。

3.要有数据(data)

数据用来训练机器学习模型的参数,训练出合乎真实目标函数的假设。当有人登门拜访,期望你用机器学习解决他所提出的问题时,你首先应该问的是:你有什么样的数据?如果有,那么我们可以继续合作;如果没有,那就爱莫能助了。

对于机器学习来说,这三个要素缺一不可。

下面哪个问题可以应用机器学习?

1.预测一个婴儿下一次哭是在奇数分钟还是偶数分钟?

2.寻找一张图上两个顶点间的最短路径

3.预测未来十年地球是否会因为核战争而毁灭?

4.预测股市明天的走势

 

答案是:4

问题1,婴儿下一次哭在什么时候是无规律可循的

问题2,寻找图上两顶点间最短路径可以显式地编程给出

问题3,预测地球未来十年是否会毁灭,我们没有之前的历史数据,所以无法进行训练

问题4,是可以应用机器学习的,因为股价的波动遵循一定的规律;而且股价的波动与许多因素有关,我们无法用一个明确的数学公式给出这个规律;此外,我们可以利用过去十年的股市行情数据进行学习,综上,答案是4

 

  • 机器学习的模型:

图中包含了机器学习中的一些基本概念:

1.Target functuion:我们要学习得到的目标函数(记为$f$),是观测值$\mathcal{X}$到真实预测值$\mathcal{Y}$的一个映射关系。通常我们是不知道这个函数的(无法用数学形式明确表示)

2.Traning examples:训练样本,由观察值和真实值所组成的一个集合,系由$f$产生的。

3.Hypothesis set:假设集合,由于我们事先不知道目标函数,但是我们可以猜想,比如我们认为某个假设可以用于预测,那么就把该假设加入假设集,当然假设不止一种,所有候选的假设构成了整个假设集。

4.Learning algorithm:机器学习算法,根据数据,从假设集中找到最符合目标函数$f$的假设$g$

假设集可以是感知器、神经网络、支持向量机
对应的学习算法则是感知器学习算法,反向传播算法(back propagation),二次规划(quadratic programming)

目标函数和训练集是我们无法控制的。但学习算法和假设集是我们可以选择的,这两个成分合起来叫做学习模型(learning model),如何选择学习模型对于我们的机器学习问题至关重要。

 

  • 机器学习与其他相关领域的关系

1.机器学习与数据挖掘

机器学习的目标是根据数据,从假设集中找到一个与目标函数$f$很相近的假设$g$

数据挖掘的目标是从海量的数据中寻找有用的性质

如果要寻找的有用性质与寻找一个和目标函数很相近的假设的目标是一致的话,那么机器学习和数据挖掘没有本质上的区别

如果数据挖掘要寻找的有趣的性质与机器学习任务有联系的话,那么二者可以互相帮助。比如数据挖掘找到的性质可以帮助机器学习得到更好的假设;反过来,机器学习也可以用在数据挖掘中来寻找有用的性质

传统的数据挖掘关注于大规模数据库的有效计算

而在现实中我们很难区分机器学习与数据挖掘,因为二者是如此相像而又密不可分。

2.机器学习与人工智能

人工智能的目标是让电脑具有某种方面上的智能,比如电脑学会下棋。机器学习是实现人工智能的方法,但实现人工智能的方法不局限与机器学习。

3.机器学习与统计学

统计学的目标:使用数据来对未知的过程作出推论。机器学习中,$g$是我们要得出的推论,$f$是未知的过程,从这个角度上看,我们可以结合统计学的知识来实现机器学习。统计学为机器学习提供了很多有用的工具。

posted on 2014-04-18 17:28  Hiroki  阅读(756)  评论(0编辑  收藏  举报

导航