Lecture 13 : Hazard of Overfitting

    科技2024-06-22  77

    Lecture 13 : Hazard of Overfitting

    【参考】https://redstonewill.com/249/

    【概括】 过拟合的概念,即当Ein很小,Eout很大的时候,会出现overfitting。

    详细介绍了overfitting发生的四个常见原因:

    样本数量N:数据集太小,没几个可以学。噪声水平:数据的noise太大(stochastic noise,随机噪声)目标函数阶数:使用的模型太复杂(这也是一种noise,叫做deterministic noise)模型相对数据来说太复杂:excessive power

    解决overfitting的方法 data cleaning/pruning和data hinting两种简单的方法,之后的课程将会详细介绍regularization和validataion两种更重要的方法。

    data cleaning/pruning就是对训练数据集里label明显错误的样本进行修正(data cleaning),或者对错误的样本看成是noise,进行剔除(data pruning)。data hinting是针对N不够大的情况,如果没有办法获得更多的训练集,那么data hinting就可以对已知的样本进行简单的处理、变换,从而获得更多的样本。

    13.1 What is Overfitting

    根据VC Bound理论,阶数越大,即VC Dimension越大,就会让模型复杂度更高,Eout更大 这种Ein 很小,Eout很大的情况称之为bad generation,即泛化能力差。

    VC曲线: bad generation和overfitting的关系可以理解为: overfitting是VC Dimension过大的一个过程,bad generation是overfitting的结果。

    把发生车祸比作成overfitting,那么造成车祸的原因包括:

    车速太快(VC Dimension太大);道路崎岖(noise);对路况的了解程度(训练样本数量N不够); 也就是说,VC Dimension、noise、N这三个因素是影响过拟合现象的关键

    13.2 The Role of Noise and Data Size

    实验表明,低阶模型泛化能力更强。这种现象产生的原因,从哲学上来说,就是“以退为进”。有时候,简单的学习模型反而能表现的更好。

    从learning curve来分析一下具体的原因,learning curve描述的是Ein和Eout随着数据量N的变化趋势。

    下图中左边是2阶学习模型的learning curve,右边是10阶学习模型的learning curve。 数据量N不大,即对应于上图中的灰色区域。 在learning curve中,横轴是样本数量N,纵轴是Error: 当模型很复杂的时候,例如50阶多项式的目标函数,无论是2阶模型还是10阶模型,都不能学习的很好,这种复杂度本身就会引入一种‘noise’。所以,这种高阶无noise的问题,也可以类似于10阶多项式的目标函数加上noise的情况,只是二者的noise有些许不同,下面一部分将会详细解释。

    13.3 Deterministic Noise

    有四个因素会导致发生overfitting:

    样本数量:数据集太小,没几个可以学。噪声水平:数据的noise太大(stochastic noise,随机噪声)目标函数阶数:使用的模型太复杂(这也是一种noise,叫做deterministic noise)模型相对数据来说太复杂:excessive power

    13.4 Dealing with Overfitting

    避免overfitting的方法主要包括:

    start from simple modeldata cleaning/pruningdata hintingregularizationvalidataion

    这几种方法类比于之前举的开车的例子,对应如下:

    data cleaning/pruning就是对训练数据集里label明显错误的样本进行修正(data cleaning),或者对错误的样本看成是noise,进行剔除(data pruning)。 data cleaning/pruning关键在于如何准确寻找label错误的点或者是noise的点,而且如果这些点相比训练样本N很小的话,这种处理效果不太明显。

    data hinting是针对N不够大的情况,**如果没有办法获得更多的训练集,那么data hinting就可以对已知的样本进行简单的处理、变换,从而获得更多的样本。**举个例子,数字分类问题,可以对已知的数字图片进行轻微的平移或者旋转,从而让N丰富起来,达到扩大训练集的目的。这种额外获得的例子称之为virtual examples。但是要注意一点的就是,新获取的virtual examples可能不再是iid某个distribution。所以新构建的virtual examples要尽量合理,且是独立同分布的。

    Processed: 0.011, SQL: 8