Dropout为什么解决过拟合,以及Dropout的缺点

Dropout为什么解决过拟合:

(1)取平均的作用: 先回到标准的模型即没有 dropout,我们用相同的训练数据去训练 5 个不同的神经网络,一般会得到 5 个不同的结果,此时我们可以采用 “5 个结果取均值” 或者 “多数取胜的投票策略” 去决定最终结果。例如 3 个网络判断结果为数字 9, 那么很有可能真正的结果就是数字 9,其它两个网络给出了错误结果。这种 “综合起来取平均” 的策略通常可以有效防止过拟合问题。因为不同的网络可能产生不同的过拟合,取平均则有可能让一些 “相反的” 拟合互相抵消。dropout 掉不同的隐藏神经元就类似在训练不同的网络,随机删掉一半隐藏神经元导致网络结构已经不同,整个 dropout 过程就相当于对很多个不同的神经网络取平均。而不同的网络产生不同的过拟合,一些互为 “反向” 的拟合相互抵消就可以达到整体上减少过拟合。

(2)减少神经元之间复杂的共适应关系: 因为 dropout 程序导致两个神经元不一定每次都在一个 dropout 网络中出现。这样权值的更新不再依赖于有固定关系的隐含节点的共同作用,阻止了某些特征仅仅在其它特定特征下才有效果的情况 。迫使网络去学习更加鲁棒的特征 ,这些特征在其它的神经元的随机子集中也存在。换句话说假如我们的神经网络是在做出某种预测,它不应该对一些特定的线索片段太过敏感,即使丢失特定的线索,它也应该可以从众多其它线索中学习一些共同的特征。从这个角度看 dropout 就有点像 L1,L2 正则,减少权重使得网络对丢失特定神经元连接的鲁棒性提高。

(3)Dropout 类似于性别在生物进化中的角色:物种为了生存往往会倾向于适应这种环境,环境突变则会导致物种难以做出及时反应,性别的出现可以繁衍出适应新环境的变种,有效的阻止过拟合,即避免环境改变时物种可能面临的灭绝。

Dropout的缺点:

(1)dropout 的一大缺点是成本函数无法被明确定义。因为每次迭代都会随机消除一些神经元结点的影响,因此无法确保成本函数单调递减。

(2)明显增加训练时间,因为引入 dropout 之后相当于每次只是训练的原先网络的一个子网络,为了达到同样的精度需要的训练次数会增多。dropout 的缺点就在于训练时间是没有 dropout 网络的 2-3 倍

参考:

https://zhuanlan.zhihu.com/p/38200980

https://www.cnblogs.com/nxf-rabbit75/p/10546691.html

发布了25 篇原创文章 · 获赞 1 · 访问量 1432

猜你喜欢

转载自blog.csdn.net/Matrix_cc/article/details/104864513
今日推荐