书 · 2012-03 · 李航

《统计学习方法》

计算机与 AI书单第 36 名

一句话结论

把经典机器学习方法放进“模型、策略、算法”的共同框架,理解它们怎样从有限数据中学习,以及为什么训练得好不等于预测得好。

值不值得读完整本?

值得完整读完,尤其适合想理解经典机器学习原理、而不满足于调用现成工具的读者;但需要具备概率论、线性代数和微积分基础。

  • 先细读第1章,再浏览第12章,建立模型、学习目标、求解算法和泛化能力之间的联系。
  • 按第2至第8章学习分类方法,每章都回答三个问题:模型假设是什么,优化什么目标,算法怎样完成优化。
  • 第9至第11章要连起来读:先理解隐变量和期望极大算法,再区分序列模型的概率计算、参数学习与最优路径预测。
  • 第一遍可以暂缓较长的收敛证明和最优化附录,遇到对应推导时再补;每章至少手算一个例题,并配合习题或简单实现。考试准备不能只记算法步骤。
  • 本导读对应2012年初版的12章,不把后续版本新增的无监督学习和深度学习内容算入本书范围。

核心观点

1. 用模型、策略、算法理解学习,以泛化能力判断成效

一种学习方法需要同时说明:允许选择哪些模型、按什么准则选择、用什么算法求解。最终目标是对未知数据作出可靠预测,训练误差只是判断依据之一。

为什么:真实的数据分布通常未知,所以只能用有限样本上的平均损失近似总体上的预期损失。模型越灵活,越可能把样本中的偶然波动也拟合进去,因而训练误差下降未必伴随泛化误差下降。正则化把复杂度代价加入学习目标,限制对训练数据的过度迁就。验证集和交叉验证则利用未参与当次拟合的数据,比较模型及其参数设置的预测表现。把这几件事分开,才能判断一次改进究竟改变了模型能力、选择准则,还是求解效率。

2. 分类方法的差异,来自它们怎样组织特征空间

感知机用线性分界分类,近邻法借助局部相似性分类,决策树通过逐层划分形成分类规则。选择方法,也是在选择怎样把已知样本的经验推广到未知位置。

为什么:感知机利用误分类样本修正分界,使这些样本朝正确分类的方向移动;其有限步收敛结论依赖训练数据线性可分。近邻法根据距离选择附近样本,因此距离定义、邻居数量和表决规则共同决定分类结果。邻居太少容易受局部噪声影响,太多又可能抹平类别边界。决策树通过信息增益等准则,优先选择能减少类别不确定性的划分。由于逐步生成主要依据局部选择,树可能生长得过细,需要剪枝控制复杂度。

3. 概率分类既可以学习数据怎样生成,也可以直接学习类别概率

朴素贝叶斯通过类别先验和给定类别时的特征分布进行分类;逻辑斯谛回归与最大熵模型直接描述给定输入时的类别概率。两条路线承担的建模任务和假设不同。

为什么:朴素贝叶斯假设各特征在给定类别后条件独立,把复杂的联合分布分解为较容易估计的部分。这样减少了估计负担,但也可能忽略特征之间的重要联系。逻辑斯谛回归直接参数化条件概率,不必同时解释输入本身如何分布。最大熵模型要求满足由数据给出的特征约束,同时选择条件熵最大的分布,避免额外加入没有约束依据的确定性。这些约束与最大熵原则共同导出指数形式的条件概率模型,使概率建模和最优化联系起来。

4. 间隔与加法模型,把分类目标转化为可求解的优化问题

支持向量机用间隔和误分类代价选择分类边界;提升方法把多个简单模型逐步组合起来。两者都说明,算法步骤需要从明确的学习目标中理解。

为什么:在线性可分情形下,支持向量机寻找几何间隔最大的分界,用距离边界最近的样本约束解。软间隔允许部分样本违反间隔要求,并用惩罚参数权衡间隔与违例代价。核函数让算法通过内积计算在特征空间中学习非线性边界,而不必显式展开全部映射特征。自适应提升逐轮提高误分类样本的相对权重,使后续弱分类器更多修正已有组合的不足。第8章进一步用前向分步加法模型解释指数损失下的提升,并说明平方损失下的提升树为何可以逐步拟合残差。

5. 隐变量使直接估计变难,期望极大算法用交替优化处理它

当部分生成过程不可观察时,不能像数据完整时那样直接计算参数估计。期望极大算法在估计隐变量分布与更新模型参数之间交替进行。

为什么:观测数据的似然需要把隐变量的各种可能取值加总,这使对数似然的优化往往变得困难。期望步按照当前参数计算隐变量的后验分布,再对完整数据的对数似然求期望。极大步选择使这个期望增大的新参数,从而把原问题转化为一连串较易处理的优化问题。在标准算法中,这种更新保证观测数据的似然不下降。它并不保证找到全局最优解,不同初始参数可能得到不同结果。

6. 序列预测需要处理标签之间的依赖

隐马尔可夫模型和条件随机场把输出看成有联系的序列,而不是一串彼此独立的分类结果。链式结构既表达依赖,也让概率计算和最优序列搜索能够高效进行。

为什么:隐马尔可夫模型通过初始状态、状态转移和观测生成描述联合分布,并假设当前状态只依赖前一状态、当前观测只依赖当前状态。它因此能够把复杂序列的概率拆成局部因素的乘积。线性链条件随机场直接描述给定整个观测序列时的标签序列概率,可以利用丰富的输入特征,而不要求按隐马尔可夫模型的方式生成观测。链式分解使动态规划能够复用中间结果,避免逐一枚举全部状态序列。概率计算、参数学习和寻找最可能的完整状态序列是不同任务,不能把逐位置选取最高概率标签当成普遍等价的解码方式。

反对意见

推导紧凑,可能让初学者跟不上(longsail)

读者longsail在《中国作者关于机器学习最好的书之一》中肯定本书集中介绍经典方法的价值,同时认为部分数学推导过于简略,必要数学背景交代不足。这项批评针对教学可读性:写出了推导,不等于读者已经理解每一步为何成立。它是普通读者的具名阅读意见,不是经过核实的专业学术评审。

统计预测不能单独回答干预与反事实问题(Judea Pearl)

Pearl在《Theoretical Impediments to Machine Learning With Seven Sparks from the Causal Revolution》中指出,统计关联本身不足以确定改变某个因素会带来什么后果,也不足以回答反事实问题;这些问题需要因果结构及相应假设。它提醒读者:本书主要训练的是预测与统计建模能力,不能把预测准确直接当作机制解释。这是对方法适用边界的讨论,并非Pearl对李航教材的直接书评。

优化目标下降,仍可能在标签噪声下失败(Philip M. Long、Rocco A. Servedio)

Long和Servedio在[《Random classification noise defeats all convex potential boosters》](https://www.cs.columbia.edu/~rocco/papers/icml08.html)中构造反例,说明其研究的一类凸势函数提升方法,即使在无噪声时能学好,也可能在加入随机标签噪声后严重失效。这限制了从训练目标改进推断实际分类效果的做法,并不否定本书给出的训练误差分析。后续[研究澄清](https://proceedings.mlr.press/v202/mansour23a.html),这一负面结果与模型类别有关,不能泛化成所有凸损失或所有提升方法都无法处理噪声。这些论文讨论方法本身,并非直接评价本书。

相关推荐

导读由 AI 根据公开资料整理,没有读取原书全文,一切以原著为准。导读 Primer 首页