深度学习网络大杀器之Dropout——深入解析Dropout
首发地址:https://yq.aliyun.com/articles/68901
更多深度文章,请关注云计算频道:https://yq.aliyun.com/cloud
过拟合是深度神经网(DNN)中的一个常见问题:模型只学会在训练集上这些年提出的许多过拟合问题的解决方案;其中dropout性并取得良好的结果:
上图为Dropout表示,左边是应用Dropout之前的网络,右边是应用了Dropout的同一个网络。
Dropout的思想是训练DNN,而不是训练单个DNNDNNs以概率P神经元,其它神经元以概率q=1-p,舍去的神经元的输出都被设置为零。
在标准神经网络中,每个参数的导数告诉其应该如何改变,以致损失函数最后被减少。因此神经元元可以通过这种方式修正其他单元的错误。但这可能导致复杂的协调,反过来导致过拟合,因为这些协调没有推广到未知数据。Dropout通过使其他隐藏单元存在不可靠性来防止共拟合。
简而言之:Dropout在实践中能很好工作是因为其在训练阶段阻止神经元的共适应。
Dropout
Dropout
假设:
h(x)=xW+bdixdh维输出空间上的线性投影;
a(h)是
在训练阶段中,将假设的投影作为修改的激活函数:
其中D=(X1,...,Xdh)是dhXi伯努利随机变量具有以下概率质量分布:
k
Dropouti
其中P(Xi=0)=p
q
q
训练阶段:
测试阶段:
Inverted Dropout
dropout
Dropout的比例因子为,因此:
训练阶段:
测试阶段:
Inverted Dropout过程。
Dropout
nhnp
h
因为每一个神经元建模为伯努利随机变量,且所有这些随机变量是独立同分布的,舍去神经元的总数也是随机变量,称为二项式:
nk由概率质量分布给出:
当使用dropout,定义了一个固定的舍去概率p对于选定的层,成比例数量的神经元被舍弃。
从上图可以看出,无论p值是多少,舍去的平均神经元数量均衡为np
此外可以注意到,p = 0.5值附近的分布是对称。
Dropout
Dropout通常使用L2以及其他参数约束技术有助于保持较小的模型参数值。
L2的附加项,其中λ是一种超参数F(W;x)是模型ε是y和预测值y^误差函数。
通过梯度下降进行反向传播,减少了更新数量。
Inverted Dropout
Dropout压制L2起到作用。
明确缩放因子后,上述等式变为:
可以看出使用Inverted Dropout,学习率是由因子q q在[0,1]和q变化:
q推动因素r(q)有效的学习速率。
有效学习速率相对于所选的学习速率而言更高:基于此约束参数值的规一化可以帮助简化学习速率选择过程。
1 Dropout存在两个版本:直接(不常用)和反转
2 dropout可以使用伯努利随机变量建模
3
4 np的概率是低np神经元被舍弃。
6 Inverted Dropout应该与限制参数值的其他归一化技术一起使用,以便简化学习速率选择过程
7 Dropout有助于防止深层神经网络中的过度拟合
作者介绍:Paolo Galeone
Linkedinhttps://it.linkedin.com/in/paolo-galeone-6782b311b
Twitterhttps://twitter.com/paolo_galeone
本文由北邮@爱可可-爱生活 老师推荐,阿里云云栖社区组织翻译。
Analysis of DropoutPaolo Galeone
最后更新:2017-07-12 22:10:00