本内容整理自《斯坦福大学公开课:机器学习》,讲师为Andrew Ng。这份课程也算是这个领域的启蒙课程了。
自学机器学习(Machine Learning)的计划其实从2016年夏天就开始了,反反复复断断续续的拖着,到了这个节骨眼上实在是拖不下去了,所以一边是在这里整理知识点,一边是监督自己一直把这个公开课的内容学下去。
在不直接针对问题进行编程的情况下,赋予计算机学习能力的一个研究领域。
例:国际象棋(实际上是国际跳棋)程序:计算机和自己下棋。
一个计算机程序,给它一个任务T(Task)和一个性能测量方法P(Performance)。如果在经验E(Experience)的影响下,P对T的结果得到了改进,那么就说该程序从E中学习。
提供一组“正确答案”的数据,让程序通过学习来预测任意面积S所对应的价格P。
可能是线性的,也可能是对数型的,或者是其他更复杂的数学模型。
这种问题属于回归问题,本质上是预测一段连续的曲线。
当提供单一属性“肿瘤大小”时,是否发病的预测相对困难;
但是在我们加入“年龄”这一因素后,即可将离散的数据进行明显分类了。
图中圆圈代表良性肿瘤,叉号代表恶性肿瘤,横纵坐标分别为肿瘤的大小和该病人的年龄。
这种问题属于分类(classification)问题,本质上是离散的。
我们常问的有:多少数据?多少精度?
例:一个读取信封上手写邮编的程序。
在经过机器学习达到什么程度时,我们能够保证它有99.9%的准确率?
例1:给出一组(没有正确答案的)数据,从这些数据中找出有趣的结构。
如上图所示的聚类问题(Clustering),即是无监督学习的一个典型例子。
在一个喧闹的聚会上,将人声和环境音完全分离。