[COURSE DL#2] Machine Learning Basics

机器学习基础

image-20200217115504496

1. 分类

  • $f(x)$预测$x$所属的类别:
image-20200217120131964
  • $f(x)$有决策边界确定。
image-20200217120151827

2. 回归

预测实值输出:

image-20200217120253137

3. 训练

  • 训练:从训练样本中估计函数f的参数。

  • 在训练集中优化目标函数,例如:

  • 线性回归中的均方误差(Mean squared error)

image-20200217120822012
  • 分类中的交叉熵(Cross entropy)
image-20200217120852957

4. 为何在训练中选择交叉熵

  • 与分类误差相比,两个优劣不同的模型可能得到相同的分类误差。

  • 与均方误差相比,MSE 计算 loss, 输出的曲线是波动的,有很多局部的极值点。 即,非凸优化问题 (non-convex)。

image-20200217121249661
  • 结论:(1)分类任务:训练使用ACE,验证测试使用分类误差;(2)回归任务:训练MSE,验证测试使用分类误差。

5. 优化

  • 目标函数的选择需要有利于优化。

  • 线性回归中的例子:

image-20200217133320277

6. 泛化

  • 我们更关心模型在新的之前未见的数据集的性能。

  • 泛化误差:在所有样本中的误差。

  • 为了获得一个机器学习算法泛化的理论保证,我们假设所有的样本都来源于同一个分布。泛化误差的计算如下:

image-20200217133706391
  • 然而,事实上,$p(x, y)$是未知的,我们从测试集中评测泛化性能:
image-20200217133824220

7. 容量

  • 容量:模型从一系列函数中发现一个函数的能力。

  • 通过测量模型能够拟合训练样本的数量,来判断一个模型的容量。

8. 欠拟合和过拟合

  • 欠拟合:模型没有找到很好拟合训练数据的方案。

  • 欠拟合的原因:模型不够大;在训练集上很难找到目标函数的全局最优解;计算资源的限制。在深度学习中,欠拟合问题可能比过拟合问题更严重。

  • 过拟合:模型能够很好地拟合训练数据,但是泛化性能不好。

  • 过拟合的原因:容量过大;没有足够的数据;验证集可重新选择;在大多数去情况下,数据带有一定的噪声,大容量的模型把噪声也拟合了而不是数据潜在的模型。

image-20200217135016353

9. Occam’s Razor

  • 机器学习的基本元素就是平衡容量与泛化。

  • Occam’s Razor:在备选函数中,选择其中较简单的函数。

  • 泛化误差是关于容量的U-型函数。

image-20200217135459799
  • 最优容量随着训练样本的增加而增加。
image-20200217135706583
  • 如何降低模型的容量:降低特征的数量;降低独立的参数;降低深度模型的网络大小;降低迭代次数;增加正则化。

  • Curse of dimension和Blessing of dimension。

10. 正则化

  • 正则化等效于引入一个模型的参考,通过惩罚复杂度从而防止过拟合。

11. 函数估计

  • 预测函数$y$可以被参数$\theta$参数化。

  • 估计的质量可以通过偏差和方差测量。

12. 偏差与方差

  • 偏差:
image-20200217141402161
  • 无偏估计:
image-20200217141434160
  • 例如,高斯分布,参数估计为(其为无偏估计):
image-20200217141606090 image-20200217141619376
  • 方差:
image-20200217141716034
  • 偏差和方差都是估计误差的来源:
image-20200217141815048
  • 提升模型容量的同事可能也会提升方差:
image-20200217141918212

13. U-型曲线vs双下降曲线

  • 过拟合似乎不是大的问题:使用正则化;剪枝。
image-20200217142036487

14. Winning ticket hypothesis as pruning

  • Iterative Magnitude Pruning
image-20200217142242996

15. Luck Matters

image-20200217142317913

16. 总结:机器学习中需要担心的问题

  • 有效的优化算法和模型解决欠拟合问题。

  • 平衡容量与泛化。

  • 如何在不提升偏差的条件下降低方差。

  • 在大数据条件下,如何有效地提升模型的容量。

17. 判别模型与生成模型

  • 判别模型:直接建模$p(y|x)$以及决策边界。

  • 学习判别函数:

image-20200217142814995
  • 例子:SVM,boosting,KNN。

  • 生成模型:估计条件概率密度$p(x|y=k)$,然后通过贝叶斯决策理论:

image-20200217143729149
  • 其中$p(x|y)$和p(y)都被$\theta$参数化。

  • 优点:更容易加入先验。

18. 监督学习和非监督学习

  • 监督学习:使用有标签的样本进行学习。

  • 无监督学习:没有标签提供,例如PCA。

  • 弱监督学习:数据中的标签unrealiably present或者是noisy。

19. 平滑先验

  • 浅模型中假设预测函数需要学习到的平滑先验:
image-20200217144429703

20. 局部表征

  • 训练样本可以视为控制预测函数局部形状的knots。

  • 平滑先验可以让模型局部泛化。

image-20200217145327841