《西瓜书》指的是周志华老师的《机器学习》著作
什么是机器学习?
机器学习致力于通过计算的手段,利用经验来改善系统自身性能的学科
经验通常是以“数据”的形式体现,或者上一次训练的错误
机器学习的本质任务是预测。
学习任务的分类:
若我们预测的是离散值,如西瓜是好瓜还是坏瓜,此类学习任务是分类
若我们预测的是连续值,如西瓜的成熟度,此类学习任务是回归
若西瓜本身没有任何标签(好的,坏的,浅色的,深色的等),我们根据潜在的概念划分,此类学习任务是聚类
根据训练数据是否有标签,可以将学习任务大致分为监督学习(分类,回归)和无监督学习(聚类)
机器学习实际上是“归纳学习”
归纳和演绎是科学推理的两大基本手段
归纳:特殊到一般——泛化过程
演绎:一般到特殊——特化过程
机器学习这种“从样例中学习”的过程是属于归纳学习
- 问题:归纳学习的结果唯一吗?
答案是不唯一的。可能存在很多种假设都会与训练集的样本完全符合
那选择哪一个呢?这就看归纳偏好了
归纳偏好
任何一个有效的机器学习算法都会有其归纳偏好,如果接受训练集上两个等效的假设,那么在测试集上就无法产生确定的结果。
归纳偏好的本质:确定那个模型更好
-
问题:如何选择那个模型更好呢?
哪个更好其实是一个“价值观”的问题,“奥卡姆剃刀”是一种常用的基本原则:若多个假设与观察一致,选择最简单的那个
如我们认为“更平滑”为“更简单”,如下图,那我们应该选择A(实线)的模型,而不是B(虚线)
两个算法的比较
-
问题:刚刚根据“奥卡姆剃刀”原则选择A模型,但A模型一定就比B模型好嘛?万一出现下图的情况呢?
加入测试数据——白色点为测试数据
此时NFL定理(No Free Lunch Theorem :天下没有免费的午餐)给了我们启发:如果所有“问题”出现的机会相等、或所有问题同等重要(前提),学习算法的期望性能相等(结果)。
也就是说如果未来所有事情可能出现的所有情况都是等可能的,那预测就没有任何意义了 -
NFL定理给我们的启发:
- 脱离具体问题,空泛谈论“什么学习算法更好”毫无意义
- 算法的优劣是相对的
- 学习算法的归纳偏好与实际问题匹配是解决问题的核心
NFL定理的推导
假设:
训练集之外的所有样本上的误差
对于二分类问题,设f为真正的分类函数,可能f有多个。假设其均匀分布,那么对于某个算法a,它在训练集以外的所有样本的误差就可以表示成:
训练集以外的所有样本的误差
由乘法分配率可以化为:
乘法分配率化简后
由于f均匀分布,则有一半的f对x的预测与h(x)不一致·,上式中最后一项可以被化简:
一半的f对x的预测与h(x)不一致
又由全概率公式,或者说概率的可列可加性,下面这一项(上式中间那一项)其实等于1
概率的可列可加性
如此一来,a就在公式中消失了,于是最后的结果就是:
最后的结果
所以说无论是什么算法,它在训练集以外所有样本上的误差都是上式表示的结果。
这就是NFL定理的推导。
机器学习的发展
二十世纪五十年代中后期,基于神经网络的“连接主义”出现
六七十年代,基于逻辑表示的“符号主义”出现
二十世纪八十年代,“从样例中学习”的一大主流是符号学习主义,其中包括决策树和基于逻辑的学习
二十世纪九十年代“从样例中学习”的另一主流技术——基于神经网络的连接主义通过解决NP难题(“流动推销员”)又一次引起人们的关注
二十世纪九十年代中期,“统计学习”闪亮登场并迅速占据主流舞台,代表技术有支持向量机(SVM)
二十一世纪初,连接主义学习又卷土重来,掀起“深度学习”浪潮
···
知道大家可能对历史不太感兴趣,上面也是只列举了一下比较重大的突破节点,从中可以看出不同流派的螺旋式发展构成了我们现在的机器学习的学科领域。
网友评论