加州理工学院公开课:机器学习与数据挖掘_过拟化(第十一课)

课程简介

本节课主要介绍了关于机器学习中的过拟化问题。作者指出,区别一个专业级玩家和业余爱好者的方法之一就是他们如何处理过拟化问题。通过该课程,我们可以知道样本数据的拟合并不是越高越好,因为噪声的存在将使得过拟化问题的出现。最后简介了处理过拟合的两种方法。

课程大纲

1、什么是过拟化?(what is overfitting?)

2、过拟化中的噪声。(The role of noise)

3、确定性噪声。(Deterministic noise)

4、如何处理过拟化问题。(Dealing with overfitting)

1、什么是过拟化?(what is overfitting?)

我们先看一个例子,如下图所示:

样本数据是二维的,现在只有5个样本,假设我们的目标函数是蓝色的线,学习的得到的函数是红色的线。为了全部拟合所有的点,最高项系数是 4 。但是可以看到现在虽然 Ein = 0, 但是 Eout = huge

再看一个:

通过上图可以知道,随之迭代次数的增加,Ein不断下降,但是Eout是先降下去,然后就开始上升。

因此,Overfitting 是指当我们得到的模型对于数据的拟合程度超过我们所希望的。

可能你会问,为什么拟合程度不是越好越好?那是因为样本数据中不可避免的存在噪声。当拟合程度超过一定程度的时候,我们其实是在拟合噪声,这当然不是我们所希望发生的。理想的情况是能达到上图中的最低点。那是最理想的其情况。

但是由于我们不知道真实函数是怎样的,也无法直接测量Eout。因此我们需要一系列的方法、理论指导我们找到好的停止点。下两节课程将讲解这方面的知识。下面先来看看噪声是如何影响机器学习的。

2、过拟化中的噪声。(The role of noise)

噪声有两种,

一种是由于数据的采集造成的噪声,这种噪声是随机化的,因此称之为:stochastic noise(随机噪声)。

还有一种是由于假设集的复杂程度造成的噪声,我们称之为:deterministic noise(确定性噪声)。

随机噪声很容易理解,但是为什么噪声还跟假设集有关?

先看下面这幅图:在第八课:偏差与方差权衡的时候提到过。其中 H2 表示的是 2项式,H10 表示的是 10 项式。(对应假设集不同的复杂程度)

当假设集变大(对应着多项式的项增加)的时候,Eout在一开始的时候是很大的,随着数据点的增加,Eout开始急剧下降,最后假设集大的对应的 Eout 比假设集小的要小。然而在数据点有限的时候,当假设集增大,Eout会先减少,然后增大。当增大的时候,我们就认为假设集的复杂程度导致了过拟化(虽然Ein减少了),这种情况下,我们也认为假设集的复杂程度也是噪声的一种来源。

为了更加直观地理解上述两种噪声,看下面通过实验得出来的图。颜色表示的是过拟化程度,颜色越偏向红色,表示过拟化越严重。

其中:

这道公式是数据发生器,f(x) 是目标函数(被归一化为 0-1 )。 第二项是噪声。假设机器通过x,y数据点学习得到的函数是 g

下面是过拟化计算的公式:

Overfitting of stochastic noise = g^a - f(x) // g^a 表示多项式最高项是 a

Overfitting of deterministic noise = Eout(g^a) - Eout(g^b)  // 公式中 a 大于 b

通过分析上图可以得出如下结论:

3、确定性噪声。(Deterministic noise)

定义:无法从 H 中学习到的 f 的部分。f(x) - h*(x).(The part of f that H cannot capture )。

在有限的资源下,尝试增加 H 去匹配 f 反而会增大噪声的影响,最终导致 Eout的增加。因此最好的方法就是不去匹配所有的数据。量力而行。

(不小心想到武侠小说里面的情节,当你的内功不够雄厚的时候就不要企图去练上乘的武功,否则会走火入魔)

与随机性偏差的最大区别:

1、由 H 决定

2、对于给定的 x,得到的偏差是确定的。

对过拟化的影响:对于给定的数据,H 尝试匹配噪声。

现在考虑把噪声和方差偏差结合起来:

已经知道:

上述公式描述的是没有噪声的情况下,由于可能存在噪声,于是令:

y(x) = f(x) + e(x)
// e(x) 表示的是噪声。

并且把 f(x) 变换为:y(x) ,代入上式得到:

可以证明 cross terms = 0,于是上式左边等于:

最后一项说明了由目标函数到真是的输出的差距(因为噪声是很难避免的,因此最后一项很难达到 0)。

4、如何处理过拟化问题。(Dealing with overfitting)

有两种方法:

1、Regularization:putting the brakes。

2、Validation:Checking the bottom line。

什么是 Regularization?

就是增加一点限制,使得 g 不允许完全匹配所有的样本数据。

什么是 Validation?

就是通过对学习得到的一系列的 g 进行测试,找到使得 Eout 最小的 g 作为最终输出。

这两种方法将在后面两节讲解。下面看一个应用了第一种方法得到的最终结果:

课程总结:

以前在学习数据挖掘的课程的时候,也听说过不要过度拟合,但是那本书好像没有解释为什么过度拟合不好(好像老师也没有说),自己当时是不理解的,但是也没有去问老师,查资料等(-_-!).通过这一节的内容才总算把这块空白给补上了。看来自己对知识的热情还不够高啊。看来还不够笨,还不够饿!

时间: 2024-10-09 23:38:54

加州理工学院公开课:机器学习与数据挖掘_过拟化(第十一课)的相关文章

加州理工学院公开课:雷蒙保罗MAPA泛化理论(第六课)

课程简介: 本次课程主题为"泛化理论",介绍了机械学习相关课程,重点介绍与之相关的公式推导及其应用.是这一整套课程中最具理论的课程,如果读者理解了该部分内容,那么对于后面课程的理解将会有很大的帮助. 课程大纲: 1.证明 mH(N) 是多项式( Proof that mH(N) is polynomial ) 2.证明 mH(N) 能够代替 M( Proof that mH(N) can replace M ) 说明:以下证明均是针对二分类! 首先要弄明白的两个问题是为什么需要证明上述

加州理工学院公开课:机器学习与数据挖掘_偏差与方差权衡(第八课)

课程简介: 在回顾了VC分析之后,本节课重点介绍了另一个理解泛化的理论:偏差与方差,并通过学习曲线的运用比较了VC分析和偏偏差方差权衡的不同用途. 课程大纲: 1.偏差与方差的权衡 2.学习曲线 1.偏差与方差的权衡 在上一节课:VC 维中,我们求出了 Eout 的边界,Eout < Ein + Ω.该公式描述了 Eout 的边界.现在让我们从不同的角度来分析 Eout. 我们把 Eout 分解为两部分: 1.假设集 H 近似 f 的能力(即 H 中与 f 距离最小的 G 与 f 的误差大小 )

加州理工学院公开课:机器学习与数据挖掘_误差和噪声(第四课)

这一课的主题是:误差分析与噪声处理. 该课时的主要内容如下: 1.Nonlinear Transformation(Continue)(非线性转换(续)) 2.Error Measure (误差度量)(重点) 3.Noisy Targets(噪声指标)(重点) 4.Preamble to the Theory(理论热身) 1.Nonlinear Transformation: 在上一节课的最后,作者举了一个关于非线性转换的例子.通过该例子我们可以直观的看到非线性的数据可以被转化成线性的数据并且利

加州理工学院公开课:机器学习与数据挖掘_线性模型

这一课时主要是讲述了线性模型的一些处理. 包括: 1.输入数据的表示(Input Representation) 2.线性分类(Linear Classification) 3.线性回归(Linear Regression) 4.非线性模型转换(Nonlinear Transformation) 作者认为,如果要测试某个模型的可用性,做好就是用真实数据. 为了讲解线性模型如何应用,作者利用线性模型来解决邮局数据辨别问题: 由于不同的人有不同的书写习惯,对于同一个数字其书写形式可能各异,但是其基本

加州理工学院公开课:机器学习与数据挖掘_训练与测试(第五课)

课程简介: 本视频为机器学习系列课程第5章.主要定量研究训练与测试之间的关系,并引入学习模型中的一个重要概念--断点.课程深入浅出,从正射线.正区间和凸集三个具体例子入手,寻找突破点,从而得出训练集与测试集的关系. 课程大纲(Outline): 1.从训练到测试(From Training to Testing) 2.举例说明(Illustrative Examples ) 3.关键概念---- 断点(Key Notion --- Break Point ) 4.难题(Puzzle) 1.从训练

加州理工学院公开课:机器学习与数据挖掘_神经网络(第十课)

课程简介: 本节课主要介绍人工神经网络.通过介绍评定模型,随机梯度下降法,生物启发和感知器系统,讲师用视图和数学解析式详细地讲解了神经网络的运行过程以及原理. 课程大纲: 1.Stochastic Gradient Descent ( 随机梯度下降法 ) 2.Neural Network Model ( 神经网络模型 ) 3.Backpropagation Algorithm ( 反向传播算法 ) 4.Summarize 1.Stochastic Gradient Descent 在上一节课里,

加州理工学院公开课:机器学习与数据挖掘_Three Learning Principles(第十七课)

课程简介 : 这一节课主要讲述机器学习中应该注意的事项,包括:Occam's Razor.Sampling Bias.Data Snooping. 课程提纲 : 1.Occam's Razor. 2.Sampling Bias. 3.Data Snooping. 1.Occam's Razor. 爱因斯坦曾经说过一句话: An explanation of the data should be made as simple as possible, but no simpler. 软件工程中也有

加州理工学院公开课:机器学习与数据挖掘_Epilogue(第十八课-终结篇)

课程简介 : 这是该课程的最后一课,作者首先总结了有关机器学习的理论.方法.模型.范式等.最后介绍了贝叶斯理论和Aggregation(聚合)方法在机器学习中的应用. 课程提纲 : 1.机器学习的地图. 2.贝叶斯理论. 3.Aggregation(聚合). 1.机器学习的地图 有关机器学习的方法.模型等非常多,简直令人目不暇接.比如下图列出来的.然而不建议一一学习这些方法.模型,否则容易迷失在这些方法里无法自拔.如果我们对于机器学习的框架认识的足够深刻,那么我们才能驾驭众多的方法. 下面列举了

加州理工学院公开课:机器学习与数据挖掘_VC 维(第七课)

课程简介: 本讲通过回顾上一讲内容,引出了VC维的定义,它是由统计学习理论定义的有关函数集学习性能的一个重要指标.并通过例子证明函数集的VC维就是它能打散的最大样本数目.课程最后介绍VC维的应用,指出它反映了函数集的学习能力,VC维越大则学习机器越复杂 课程大纲: 1.定义(The definition) 2.感知器的 VC 维(VC dimension of perceptrons) 3.VC 维的解释(Interpreting the VC dimension) 4.边界的泛化(Genera