阅读339 返回首页    go 阿里云 go 技术社区[云栖]


深度学习网络大杀器之Dropout——深入解析Dropout

首发地址:https://yq.aliyun.com/articles/68901


更多深度文章,请关注云计算频道:https://yq.aliyun.com/cloud


过拟合深度神经网DNN)中的一个常见问题:模型只学会训练集这些年提出的许多拟合问题解决方案;其中dropout并取得良好的结果

7e31586d15d887ae0901452e2e1b1c6cb94f882e

上图为Dropout表示,左边是应用Dropout之前的网络,右边是应用了Dropout的同一个网络。

Dropout的思想是训DNN,而不是训练单个DNNDNNs以概率P神经元其它神经元以概率q=1-p舍去的神经元的输出都被设置为零。

引述

在标准神经网络中,每个参数的导数告诉应该如何改变,以致损失函数最后被减少因此神经元可以通过这种方式修正其他单的错误。但这可能导致复杂的协调,反过来导致过拟合,因为这些协调没有推广到未知数据。Dropout通过使其他隐藏单元存在不可靠来防止共拟合。

简而言之:Dropout在实践很好工作因为在训阶段阻止神经元的共适应。

Dropout

Dropout

假设:

h(x)=xW+bdixdh维输出空间上的线性投影;

a(h)是

在训练阶段中,将假设的投影作为修改的激活函数:

650f8f00ffeb3ef346a61ee248670abe173c4acb

其中D=(X1,...,Xdh)dhXi伯努利随机变量具有以下概率质量分布:

32363b313f65d3bf4231c5c57eace39d6fb7cb2c

k

Dropouti

8899c12575bca1550dfd8127fd7eb0a2912a8f2a

其中P(Xi=0)=p

q

q

训练阶段fdb59b52bfa583cf08eaf7980e26e8fad453d148

测试阶段d6a2b220ee68540890eaf0dc537188c738600fb7

Inverted Dropout

dropout

Dropout的比例因子为223ab9380c566fb9a74ff8a0a127e1174593bdf8,因此:

训练阶段:6ebd718f4256f50134f7428bc5df4d3cc9ddceae

测试阶段6ccbf2b63a56155b6403093e8771952bb3e3515b

Inverted Dropout过程

Dropout

nhnp

h

f580cf9006a568171c48ac7ec10f1d8997bf7d81

因为每一个神经元建模为伯努利随机变量,且所有这些随机变量是独立同分布的,舍去神经元的总数也是随机变量,称为二项式:

023627f0453afe34e4bebb9ee10dfb7678d87989

nk由概率质量分布给出:

55460b3bb5d23fc5fbc732366679150a56a67fec

当使用dropout,定义了一个固定的舍去概率p对于选定的层,成比例数量的神经元被舍弃

3be3ad14ec1d82ebafe981d1d3fc40ef6132e020

图可以看出,无论p是多少舍去的平均神经元数量均衡为np

933a160e2ead33c8ea51c1c7d41a69d3bb369eda

此外可以注意到,p = 0.5附近的分布对称。

Dropout

Dropout通常使用L2以及其他参数约束技术有助于保持较小的模型参数

L2附加项,其中λ是一种超参数F(W;x)是模型εy和预测值y^误差函数。

e596c69e772f833df283a96e806dde994d8b979d

通过梯度下降进行反向传播,减少了更新量。

a762ce896975e697de82661ee4e69a11f6e92fad

Inverted Dropout

Dropout压制L2起到作用

明确缩放因子上述等式变为:

337e71fd721fded5b9298cad73ba6c3310057d6c

可以看出使用Inverted Dropout,学习率是由因子q q[0,1]q变化:

71cf583c223c9f4e2d7a3021640ae747b9f5dacd

q推动因素r(q)有效的学习速率

有效学习速率相对于所选的学习速率而言更高:基于此约束参数值的规化可以帮助简化学习速率选择过程。

Dropout存在两个版本:直接(不常用)和反转

dropout可以使用伯努利随机变量建模

np的概率是低np神经元被舍弃

Inverted Dropout提高学习率

Inverted Dropout应该与限制参数值的其他归一化技术一起使用,以便简化学习速率选择过程

Dropout有助于防止深层神经网络中的过度拟合


作者介绍:Paolo Galeone


bafcc5518a0f203dc66a08af1dd9a6ce1e386173


Bloghttps://pgaleone.eu/

Linkedinhttps://it.linkedin.com/in/paolo-galeone-6782b311b

Twitterhttps://twitter.com/paolo_galeone


本文由北邮@爱可可-爱生活 老师推荐,阿里云云栖社区组织翻译。

Analysis of DropoutPaolo Galeone

最后更新:2017-07-12 22:10:00

  上一篇:go  7月12日云栖精选夜读:游戏行业DDoS 6年谈 什么样的架构才可以对DDoS免疫?
  下一篇:go  没有任何公式——直观的理解变分自动编码器VAE