专栏名称: 机器学习研究会
机器学习研究会是北京大学大数据与机器学习创新中心旗下的学生组织,旨在构建一个机器学习从事者交流的平台。除了及时分享领域资讯外,协会还会举办各种业界巨头/学术神牛讲座、学术大牛沙龙分享会、real data 创新竞赛等活动。
目录
相关文章推荐
爱可可-爱生活  ·  【喜欢 vs. ... ·  昨天  
逻辑挖掘社  ·  AI国产替代新方向! ·  2 天前  
逻辑挖掘社  ·  AI国产替代新方向! ·  2 天前  
宝玉xp  ·  //@翻译驴://@刘昕RUC:大爷是好大爷 ... ·  4 天前  
51好读  ›  专栏  ›  机器学习研究会

【学习】大白话解释模型产生过拟合的原因

机器学习研究会  · 公众号  · AI  · 2017-04-01 19:36

正文



点击上方“机器学习研究会”可以订阅哦

摘要
 

转自:自然语言处理与机器学习

过拟合的概念?

首先我们来解释一下过拟合的概念?

过拟合就是训练出来的模型在训练集上表现很好,但是在测试集上表现较差的一种现象!下图给出例子:

我们将上图第三个模型解释为出现了过拟合现象,过度的拟合了训练数据,而没有考虑到泛化能力。在训练集上的准确率和在开发集上的准确率画在一个图上如下:


从图中我们能够看出,模型在训练集上表现很好,但是在交叉验证集上表现先好后差。这也正是过拟合的特征!


模型出现过拟合现象的原因

发生过拟合的主要原因可以有以下三点:

(1)数据有噪声

(2)训练数据不足,有限的训练数据

(3)训练模型过度导致模型非常复杂


下面我将分别解释这三种情况(这里按自己的理解解释,欢迎大家交流):

(1)数据有噪声

为什么数据有噪声,就可能导致模型出现过拟合现象呢?

所有的机器学习过程都是一个search假设空间的过程!我们是在模型参数空间搜索一组参数,使得我们的损失函数最小,也就是不断的接近我们的真实假设模型,而真实模型只有知道了所有的数据分布,才能得到。

往往我们的模型是在训练数据有限的情况下,找出使损失函数最小的最优模型,然后将该模型泛化于所有数据的其它部分。这是机器学习的本质!

那好,假设我们的总体数据如下图所示:


(我这里就假设总体数据分布满足一个线性模型y = kx+b,现实中肯定不会这么简单,数据量也不会这么少,至少也是多少亿级别,但是不影响解释。反正总体数据满足模型y)


此时我们得到的部分数据,其中还有噪声的话,如图所示:

(红色数据点为噪声)


那么由上面训练数据点训练出来的模型肯定不是线性模型(总体数据分布下满足的标准模型),比如训练出来的模型如下:


那么我拿着这个有噪声训练的模型,在训练集合上通过不断训练,可以做到损失函数值为0,但是拿着这个模型,到真实总体数据分布中(满足线性模型)去泛化,效果会非常差,因为你拿着一个非线性模型去预测线性模型的真实分布,显而易得效果是非常差的,也就产生了过拟合现象!


原文链接:

https://mp.weixin.qq.com/s/vus2mp2RhCL0kPamXVKnAg

“完整内容”请点击【阅读原文】
↓↓↓