Dropout技术及理解

dropout技术

过拟合是Deep Neural Networks(DNN)网络存在的问题之一。过拟合的特点是模型对训练数据的拟合非常好,但对测试数据的拟合却非常差,具体表现为loss和在训练集上的错误率非常低,而在验证集或测试集上却都要高很多。针对解决过拟合问题设计出来的方法很多,dropout就是其中一种最简单,也是最有效的方法。

如何使用Dropout?在训练DNN网络的过程中,对于每一个神经元,以p的概率被随机的drop out,也就是将其值置零。这样,在该轮前传和反传的过程中,该神经元将失去作用,相当于不存在,如下图所示。

理解dropout

一种intuitive的理解方式是,当某一部分神经元被置零后,整个网络看起来就像一个新的网络,对该网络做单独的训练。之后每一次dropout又是另一个“新的”网络被训练,最后,这些网络结合起来就相当于一种集成学习,每个网络既相互提升,又相互制约,使得最终的结果也有所提升。
从另一个角度考虑,在训练网络的过程中,神经元通过梯度指引来调整自身取值,使得整体loss下降,这时候某些神经元很有可能会“迁就其它神经元的错误”。换句话说,这些神经元可能已经接近或达到“正确取值”,也就是它们已经无需再优化了,错误是由其它神经元引起的,但这时该神经元很可能会继续调整自身取值,来优化其它神经元所导致的错误,这种现象称作co-adaptations,即相互适应。这时候网络的训练就出现了偏颇,因为尽管最终loss降下去了,但得到的却不是“标准答案”,而仅仅是在训练数据上适用,并不具备泛化性能。
我们有理由假设,随机的使某些神经元置零,可以阻止这种相互适应的发生。比如A神经元已经接近“标准取值”,而B神经元还需要优化,这时很有可能A会迁就B,继续调整自身取值,从而导致过拟合;而此时如果将B神经元隐去,A就会认为网络已经优化的很不错了,就会保持自身的值不变,这样一来就抑制了相互适应现象的出现。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值