




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
作者:红色石头 公众号:AI有道(id:redstonewill) 上节课我们主要介绍了非线性分类模型,通过非线性变换,将非线性模型映射到另一 个空间,转换为线性模型,再来进行分类,分析了非线性变换可能会使计算复杂度增 加。本节课介绍这种模型复杂度增加带来机器学习中一个很重要的问题:过拟合 (overfitting)。 首先,我们通过一个例子来介绍什么bad generalization。假设平面上有5个点,目标 函数f(x)是2阶多项式,如果hypothesis是二阶多项式加上一些小的noise的话,那么这 5个点很靠近这个hypothesis,很小。如果hypothesis是4阶多项式,那么这5点会 完全落在hypothesis上,。虽然4阶hypothesis的比2阶hypothesis的要好 很多,但是它的很大。因为根据VC Bound理论,阶数越大,即VC Dimension越 大,就会让模型复杂度更高,更大。我们把这种很小,很大的情况称之 为bad generation,即泛化能力差。 我们回过头来看一下VC曲线: 林轩田机器学习基石课程笔记13 Hazard of Overfitting 一、What is Overfitting? hypothesis的阶数越高,表示VC Dimension越大。随着VC Dimension增大,是一 直减小的,而先减小后增大。在位置,取得最小值。在右侧,随着 VC Dimension越来越大,越来越小,接近于0,越来越大。即当VC Dimension很大的时候,这种对训练样本拟合过分好的情况称之为过拟合 (overfitting)。另一方面,在左侧,随着VC Dimension越来越小,和 都越来越大,这种情况称之为欠拟合(underfitting),即模型对训练样本的拟合度太 差,VC Dimension太小了。 bad generation和overfitting的关系可以理解为:overfitting是VC Dimension过大的一 个过程,bad generation是overfitting的结果。 一个好的fit,和都比较小,尽管没有足够接近零;而对overfitting来说, ,但是很大。那么,overfitting的原因有哪些呢? 我们举个开车的例子,把发生车祸比作成overfitting,那么造成车祸的原因包括: 车速太快(VC Dimension太大); 道路崎岖(noise); 对路况的了解程度(训练样本数量N不够); 也就是说,VC Dimension、noise、N这三个因素是影响过拟合现象的关键。 为了尽可能详细地解释overfitting,我们进行这样一个实验,试验中的数据集不是很 大。首先,在二维平面上,一个模型的分布由目标函数f(x)(x的10阶多项式)加上一 些noise构成,下图中,离散的圆圈是数据集,目标函数是蓝色的曲线。数据没有完全 落在曲线上,是因为加入了noise。 二、The Role of Noise and Data Size 然后,同样在二维平面上,另一个模型的分布由目标函数f(x)(x的50阶多项式)构 成,没有加入noise。下图中,离散的圆圈是数据集,目标函数是蓝色的曲线。可以看 出由于没有noise,数据集完全落在曲线上。 现在,有两个学习模型,一个是2阶多项式,另一个是10阶多项式,分别对上面两个 问题进行建模。首先,对于第一个目标函数是10阶多项式包含noise的问题,这两个学 习模型的效果如下图所示: 由上图可知,2阶多项式的学习模型,;10阶多项式的学 习模型,。虽然10阶模型的比2阶的小,但是其 要比2阶的大得多,而2阶的和相差不大,很明显用10阶的模型发生了过拟 合。 然后,对于第二个目标函数是50阶多项式没有noise的问题,这两个学习模型的效果如 下图所示: 由上图可知,2阶多项式的学习模型,;10阶多项式的学 习模型,。虽然10阶模型的比2阶的小,但是其 要比2阶的大得多的多,而2阶的和相差不大,很明显用10阶的模型仍然 发生了明显的过拟合。 上面两个问题中,10阶模型都发生了过拟合,反而2阶的模型却表现得相对不错。这 好像违背了我们的第一感觉,比如对于目标函数是10阶多项式,加上noise的模型,按 道理来说应该是10阶的模型更能接近于目标函数,因为它们阶数相同。但是,事实却 是2阶模型泛化能力更强。这种现象产生的原因,从哲学上来说,就是“以退为进”。有 时候,简单的学习模型反而能表现的更好。 下面从learning curve来分析一下具体的原因,learning curve描述的是和随 着数据量N的变化趋势。下图中左边是2阶学习模型的learning curve,右边是10阶学 习模型的learning curve。 我们的第9次课的笔记 NTU林轩田机器学习基石课程学习笔记9 Linear Regression 已经介绍过了learning curve。在learning curve中,横轴是样本数量N,纵轴是Error。 和可表示为: 其中d为模型阶次,左图中d=2,右图中d=10。 本节的实验问题中,数据量N不大,即对应于上图中的灰色区域。左图的灰色区域 中,因为d=2,和相对来说比较接近;右图中的灰色区域中,d=10,根据 和的表达式,很小,而很大。这就解释了之前2阶多项式模型的 更接近,泛化能力更好。 值得一提的是,如果数据量N很大的时候,上面两图中和都比较接近,但是 对于高阶模型,z域中的特征很多的时候,需要的样本数量N很大,且容易发生维度灾 难。关于维度灾难的详细生动解释,请参考我另一篇博文: 机器学习中的维度灾难 另一个例子中,目标函数是50阶多项式,且没有加入noise。这种情况下,我们发现仍 然是2阶的模型拟合的效果更好一些,明明没有noise,为什么是这样的结果呢? 实际上,我们忽略了一个问题:这种情况真的没有noise吗?其实,当模型很复杂的时 候,即50阶多项式的目标函数,无论是2阶模型还是10阶模型,都不能学习的很好, 这种复杂度本身就会引入一种noise。所以,这种高阶无noise的问题,也可以类似于 10阶多项式的目标函数加上noise的情况,只是二者的noise有些许不同,下面一部分 将会详细解释。 下面我们介绍一个更细节的实验来说明 什么时候小心overfit会发生。假设我们产生的 数据分布由两部分组成:第一部分是目标函数f(x),阶多项式;第二部分是噪声 , 服从Gaussian分布。接下来我们分析的是noise强度不同对overfitting有什么样的影 响。总共的数据量是N。 那么下面我们分析不同的和对overfit的影响。overfit可以量化为 三、Deterministic Noise 。结果如下: 上图中,红色越深,代表overfit程度越高,蓝色越深,代表overfit程度越低。先看左边 的图,左图中阶数固定为20,横坐标代表样本数量N,纵坐标代表噪声水平。 红色区域集中在N很小或者很大的时候,也就是说N越大,越小,越不容易发生 overfit。右边图中,横坐标代表样本数量N,纵坐标代表目标函数阶数。 红色区域集中在N很小或者很大的时候,也就是说N越大,越小,越不容易发生 overfit。上面两图基本相似。 从上面的分析,我们发现对overfit是有很大的影响的,我们把这种noise称之为 stochastic noise。同样地,即模型复杂度也对overfit有很大影响,而且二者影响是 相似的,所以我们把这种称之为deterministic noise。之所以把它称为noise,是因为 模型高复杂度带来的影响。 总结一下,有四个因素会导致发生overfitting: data size N stochastic noise deterministic noise excessive power 我们刚才解释了如果目标函数f(x)的复杂度很高的时候,那么跟有noise也没有什么两 样。因为目标函数很复杂,那么再好的hypothesis都会跟它有一些差距,我们把这种 差距称之为deterministic noise。deterministic noise与stochastic noise不同,但是效 果一样。其实deterministic noise类似于一个伪随机数发生器,它不会产生真正的随机 数,而只产生伪随机数。它的值与hypothesis有关,且固定点x的deterministic noise值 是固定的。 现在我们知道了什么是overfitting,和overfitting产生的原因,那么如何避免overfitting 呢?避免overfitting的方法主要包括: start from simple model data cleaning/pruning data hinting regularization validataion 这几种方法类比于之前举的开车的例子,对应如下: regularization和validation我们之后的课程再介绍,本节课主要介绍简单的data cleaning/pruning和data hinting两种方法。 data cleaning/pruning就是对训练数据集里label明显错误的样本进行修正(data cleaning),或者对错误的样本看成是noise,进行剔除(data pruning)。data cleaning/pruning关键在于如何准确寻找label错误的点或者是noise的点,而且如果这 些点相比训练样本N很小的话,这种处理效果不太明显。 data hinting是针对N不够大的情况,如果没有办法获得更多的训练集,那么data hinting就可以对已知的样本进行简单的处理、变换,从而获得更多的样本。举个例 子,数字分类问题,可以对已知的数字图片进行轻微的平移或者旋转,从而让N丰富 起来,达到扩大训练集的目的。这种额外获得的例子称之为virtual examples。但是要 四、Dealing with Overfitting 注意一点的就是,新获取的virtual examples可能不再是iid某个distribution。所以新构 建的virtual examples要尽量合理,且是独立同分布的。 本节课主要介绍了overfitting的概念,即当很小,很大的时候,会出现 overfitting。详细介绍了overfitti
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年中国电信股份有限公司安徽分公司校园招聘202人考试参考试题及答案解析
- 2025贵州贵阳综保产业发展有限公司(第一批)对外补岗招聘2人备考考试题库附答案解析
- 2025西安碑林仁华医院医养中心招聘(2人)考试参考试题及答案解析
- 2026建信养老金管理有限责任公司校园招聘9人笔试备考题库及答案解析
- 2025广东梅州市大埔县高陂中学招聘顶岗教师3人备考考试题库附答案解析
- 2025江西吉安新干县引进名师名校长1人备考考试题库附答案解析
- 食品中新兴污染物监测-洞察及研究
- 宜宾市卫生健康委员会2025年公开招募医疗卫生辅助岗位(市级单位)的补充备考考试题库附答案解析
- 2025山东省黄三角农高区城乡公益性岗位招聘54人备考考试题库附答案解析
- 住院患者健康宣教要点
- 二城市轨道交通类型111课件
- 研学活动合同协议书模板
- 医疗器械售后服务团队的职责说明
- 食品配料人员培训
- 工程勘察设计收费标准(2002年修订本)
- 规范团费账户管理制度
- 消防救援队伍灭火救援作战训练安全专题授课
- 公安审讯技巧培训
- 人教版2025初中物理实验室安全使用指南
- 销售团队组建方案-
- 考古调查勘探辅助工程方案投标文件(技术方案)
评论
0/150
提交评论