R-Drop——更强大的dropout

更强大的dropout——R-dropout

论文通过实验得出一种改进的正则化方法R-dropout,简单来说,它通过使用若干次(论文中使用了两次)dropout,定义新的损失函数。实验结果表明,尽管结构非常简单,但是却能很好的防止模型过拟合,进一步提高模型的正确率。

模型图如下:
R-dropout模型细节
注释
R-Drop 正则化方法的总体框架如图所示。 给定训练数据集 D = ( x i , y i ) i = 1 n D={(x_i,y_i)}^n_{i=1} D=(xi,yi)i=1n,训练的目标是学习一个模型 P w ( y ∣ x ) P ^w(y|x) Pw(yx),其中 n n n 是训练样本的数量, ( x i , y i ) (x_i , y_i) (xi,yi) 是标记数据对。 x i x_i xi 是输入数据, y i y_i yi 是标签。 例如,在 NLP 中, x i x_i xi 可以是机器翻译中的源语言句子,而 yi 是对应的目标语言句子。
在 CV 中, x i x_i xi 可以是一张图像, y i y_i yi 是分类标签。 映射函数的概率分布也表示为 P w ( y ∣ x ) P^w(y|x) Pw(yx),两个分布 P 1 P_1 P1 P 2 P_2 P2 之间的 K u l l b a c k − L e i b l e r ( K L ) Kullback-Leibler(KL) KullbackLeibler(KL) 散度用 D K L ( P 1 ∣ ∣ P 2 ) DKL(P1||P2) DKL(P1P2) 表示。


模型

论文提出的是上图中右侧模型。如图所示,同一数据经过了两次模型,使用了随机dropout后得到了两个不同的子模型,图中 P 1 ( y ∣ x ) P_1(y|x) P1(yx) P 2 ( y ∣ x ) P_2(y|x) P2(yx)为两个子模型的分布。

具体来说,给定每个训练步骤的输入数据 x i x_i xi,我们两次把 x i x_i xi 通过网络的前向传递。 因此,我们可以获得模型预测的两个分布,表示为 P 1 w ( y i ∣ x i ) P ^w _1 (y_i |x_i) P1w(yixi) P 2 w ( y i ∣ x i ) P ^w_ 2 (y_i |x_i) P2w(yixi)。 如上所述,由于 dropout 算子随机丢弃模型中的单元,因此两次前向传递确实基于两个不同的子模型(是基于同一模型做的dropout,只是中间缺失的神经元不一样而已。如图右侧部分所示,输出预测 P 1 w ( y i ∣ x i ) P ^w _1 (y_i |x_i) P1w(yixi)的左侧路径的每一层中丢弃的单元与输出分布 P 2 w ( y i ∣ x i ) P ^w _2 (y_i |x_i) P2w(yixi) 的右侧路径的丢弃单元不同 )。 因此,对于相同的输入数据对 ( x i , y i ) (xi , yi) (xi,yi) P 1 w ( y i ∣ x i ) P ^w _1 (y_i |x_i) P1w(yixi) P 2 w ( y i ∣ x i ) P ^w _2(y_i |x_i) P2w(yixi) 的分布是不同的。 然后,在此训练步骤中,我们的 R-Drop 方法尝试通过最小化同一样本的这两个输出分布之间的双向 K u l l b a c k − L e i b l e r ( K L ) Kullback-Leibler (KL) KullbackLeibler(KL) 散度来正则化模型预测。

分析

这里看到了知乎一位大神的分享,我也借鉴了他的思考。(这里贴出原帖子
Dropout的问题在于预测与训练的不一致性。这是非常直观的,上述链接中也给出了证明过程。而R-D通过增加一个正则项,来强化模型对Dropout的鲁棒性,使得不同的Dropout下模型的输出基本一致,因此能降低这种不一致性,促进“模型平均”与“权重平均”的相似性,从而使得简单关闭Dropout的效果等价于多Dropout模型融合的结果,提升模型最终性能。
原帖中还指出连续性的优点,这里就不展开了。

总的来说,R-D形式简洁,效果出色,是一个非常具有创新点的想法。但是针对R-D为什么可以做到如此出色的效果,以及如何引导模型找到合适的R-D也是非常值得探究的。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值