天天看点

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

台湾国立大学机器学习基石.听课笔记(第十三讲)

:harzard  of overfitting

1,什么是过拟合(overfitting)

简单的说就是这样一种学习现象:Ein很小,Eout却很大。

而Ein和 Eout都很大的情况叫做 underfitting。

这是机器学习中两种常见的问题。

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

上图中,竖直的虚线左侧是"underfitting",左侧是"overfitting”。

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题
台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

1.1,产生过拟合的原因

我们用小车发生事故来比喻:

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

我们可以得到,发生overfitting的主要原因是:(1)使用过于复杂的模型(dvc很大);(2)数据噪音;(3)有限的训练数据。

2,噪音与数据规模

2.1、 噪音的影响

我们可以理解地简单些:有噪音时,更复杂的模型会尽量去覆盖噪音点,即对数据过拟合!这样,即使训练误差Ein很小(接近于零),由于没有描绘真实的数据趋势,Eout反而会更大。

即噪音严重误导了我们的假设。

我们用拟合一个f(x)为R^10的函数做例子进行说明。

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题
台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

结果H^2做得拟合更好。

2.2、 数据量对拟合的影响

如下例子说明:

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

在上述的例子中,分别用H^2和H^10去拟合,E_in与E_out的差别。我们可知: 如果数据是由我们不知道的某个非常非常复杂的模型产生的,实际上有限的数据很难去“代表”这个复杂模型曲线。我们采用不恰当的假设去尽量拟合这些数据,效果一样会很差,因为部分数据对于我们不恰当的复杂假设就像是“噪音”,误导我们进行过拟合。

我们就知道噪声和数据量对拟合H的影响。

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

3,随机噪音与确定性噪音 (Deterministic Noise)

我们得到的y,一般包括真实值和噪声,我们用H去拟合,Q_f是拟合的维数。

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

以上图的Q_f和噪声拟合f(x),可以得出下图:

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

上图是关于2次曲线和10次曲线对数据的拟合情况,我们将overfit measure 表示为E_out(g_10) - E_out(g_2)。

那么我们的目标变为看Q_f、噪声和N对拟合的影响。 我们为了更好的得出结果,我们用

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

下图左右两边分别表示了随机噪音和确定性噪音对于Overfitting的影响。

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

可见,数据规模一定时,随机噪音越大,或者确定性噪音越大(即目标函数越复杂),越容易发生overfitting。总之,容易导致overfitting的因素是:数据过少;随机噪音过多;确定性噪音过多;假设过于复杂(excessive power)。

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

如果我们的假设空间不包含真正的目标函数f(X)(未知的),那么无论如何H无法描述f(X)的全部特征。这时就会发生确定性噪音。它与随机噪音是不同的。

我们可以类比的理解它:在计算机中随机数实际上是“伪随机数”,是通过某个复杂的伪随机数算法产生的,因为它对于一般的程序都是杂乱无章的,我们可以把伪随机数当做随机数来使用。确定性噪音的哲学思想与之类似。:-)

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

4,解决过拟合问题

台湾国立大学机器学习基石.听课笔记(第十三讲):harzard of overfitting1,什么是过拟合(overfitting)2,噪音与数据规模3,随机噪音与确定性噪音 (Deterministic Noise) 4,解决过拟合问题

对应导致过拟合发生的几种条件,我们可以想办法来避免过拟合。

(1) 假设过于复杂(excessive dvc) => startfrom simple model

(2) 随机噪音 =>数据清洗

(3) 数据规模太小 =>收集更多数据,或根据某种规律“伪造”更多数据

正规化(regularization)也是限制模型复杂度的,在下一讲介绍。

4

4.1 数据清洗(data ckeaning/Pruning)

将错误的label纠正或者删除错误的数据。

4.2 Data Hinting: “伪造”更多数据, add "virtual examples"

例如,在数字识别的学习中,将已有的数字通过平移、旋转等,变换出更多的数据。

其他解决过拟合的方法在后面几讲介绍。

继续阅读