码迷,mamicode.com
首页 > 其他好文 > 详细

深度学习中 --- 解决过拟合问题(dropout, batchnormalization)

时间:2016-06-12 12:13:22      阅读:719      评论:0      收藏:0      [点我收藏+]

标签:

过拟合,在Tom M.Mitchell的《Machine Learning》中是如何定义的:给定一个假设空间H,一个假设h属于H,如果存在其他的假设h’属于H,使得在训练样例上h的错误率比h’小,但在整个实例分布上h’比h的错误率小,那么就说假设h过度拟合训练数据。

也就是说,某一假设过度的拟合了训练数据,对于和训练数据的分布稍有不同的数据,错误率就会加大。这一般会出现在训练数据集比较小的情况。

深度学习中避免过拟合的方法:

  • Dropout

     2012年ImageNet比赛的获胜模型AlexNet论文中提出的避免过拟合的方法。其操作方法如下图所示。

    • 在训练中以概率P(一般为50%)关掉一部分神经元,如图中的虚线的箭头。那么对于某些输出,并不是所有神经元会参与到前向和反向传播中。
    • 在预测的时候,将使用所有的神经元,但是会将其输出乘以0.5

     Dropout的意义在于,减小了不同神经元的依赖度。有些中间输出,在给定的训练集上,可能发生只依赖某些神经元的情况,这就会造成对训练集的过拟合。而随机关掉一些神经元,可以让更多神经元参与到最终的输出当中。我觉得dropout方法也可以看成,联合很多规模比较小的网络的预测结果,去获取最终的预测。

技术分享

 

深度学习中 --- 解决过拟合问题(dropout, batchnormalization)

标签:

原文地址:http://www.cnblogs.com/JimmyTY/p/5576951.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!