论文阅读——ELECTRA

论文下载:https://openreview.net/pdf?id=r1xMH1BtvB

另一篇分析文章:ELECTRA 详解 - 知乎

一、概述

对BERT的token mask 做了改进。结合了GAN生成对抗模型的思路,但是和GAN不同。

不是对选择的token直接用mask替代,而是替换为一个生成器网络产生的token。

然后训练模型时并不是只被破坏的token,而是训练一个辨别模型来预测这些被破坏的输入的每一个token是否是被生成模型生成的样本替代的。因为将GANs应用于文本很困难,所以生成损坏token的生成器是以最大似然进行训练的。

小generator和大discriminator共同训练,但判别器的梯度不会传给生成器

fine-tuning 时丢弃generator,只使用discriminator

二、网络结构和训练

论文阅读——ELECTRA_第1张图片

1、模型训练两个网络G和D。

        G:给定位置t,将该位置token替换为mask,输入到G,G输出一个概率,结合softmax层,来产生mask位置的xt,从而G产生损坏的输入。输出只在mask的token中计算分数,不是所有的token。

论文阅读——ELECTRA_第2张图片

        D:给定位置t,D预测xt是否是真的。输出只在mask的token中预测是不是真的,不是所有的。

        对于给定一个随机位置序列,原始输入对应位置替换为[MASK] token,输入G,G学习恢复原始序列。D来分辨哪些token是被生成器产生的样本替换的。

文本损坏过程描述为:

2、损失函数为:

论文阅读——ELECTRA_第3张图片

MLM损失的计算只计算m个,即m个被masked tokens

Disc损失 t的取值到 1..n,每个token都会更新参数

        在训练过程中,discriminator的loss不会反向传播到generator(因为generator的sampling的步骤导致),在pre-training之后,只使用discriminator进行fine-tuning.

你可能感兴趣的:(NLP,深度学习)