过拟合
过拟合(over-fitting)就是所建立的机器学习模型或者是深度下降学习模型在训练样本中表现得过于优越,导致在验证数据集以及测试数据集中表现不佳。通俗点讲就是训练出来的模型在训练集上表现很好,但那是在测试集上表现较差的一种现象。比如是识别一只狗的模型,我需要对这个模型进行训练。但是很赶巧所给训练样本中的所有训练图片都是哈士奇,那么经过多次迭代训练之后,模型训练好了,并且在训练集中表现得很好。基本上二哈身上的所有特点都涵括进去,那么问题来了!假如我的测试样本是一只金毛呢?将一只金毛的测试样本放进这个识别狗狗的模型中,很有可能模型最后输出的结果就是金毛不是一条狗(因为这个模型基本上是按照二哈的特征去打造的)。所以这样就造成了模型过拟合,虽然在训练集上表现得很好,但是在测试集中表现得恰好相反,在性能的角度上讲就是协方差过大(variance is large),同样在测试集上的损失函数(cost function)会表现得很大。
过拟合和欠拟合的区别
就好比你喜欢一个女生,这个女生有着自己的习性,为了追到这个女生我们经常会去迎合这个女生的习性,比如喝温水有固定的温度、挂电话只能她先挂、出去逛街不能哔哔太累、看书只能用书签不能折页........(别问我怎么知道的),这个就是我们学到的‘经验’,但是万一也许可能这个女生某一天觉得你没有足够关心她每天都忙于自己的事情就和你分手啦.....
然后,当你再找女朋友时,你拿出这些 ‘经验’ 但是好像发现效果并不好,因为每个女生的习性和喜好都不一样,所以你就陷入过拟合-------这就类似于过拟合
如何解释欠拟合...,那就简单了,就是你第一个女朋友都没追到,她的习性和喜好你还没能完全掌握
完美拟合,当你在追第一个女朋友的时候,并没有完全去迎合她的习性,毕竟存在 ‘个人癖好’ 这个‘错误’习性,你学到的是有泛化性的女生习性特征,当你用这些特征再去追女生的时候,成功率就很高了!
过拟合的原因
发生过拟合的主要原因可归结于以下三点
(1)数据有噪声
(2)训练数据不足,有限的训练数据
(3)训练模型过度导致模型非常复杂
正则化防止过拟合
防止过拟合的方法有很多种,我们这里只讨论正则化防止过拟合
https://blog.csdn.net/junjun150013652/article/details/80709080
相关链接