xuxping / finetune_bert

finetune with keras
Apache License 2.0
18 stars 6 forks source link

suport ELECTRA #6

Open xuxping opened 4 years ago

xuxping commented 4 years ago

paper: https://openreview.net/pdf?id=r1xMH1BtvB

xuxping commented 4 years ago

ELECTRA提出了一套新的预训练框架,其中包括两个部分:GeneratorDiscriminator

在预训练阶段结束之后,只使用Discriminator作为下游任务精调的基模型。

xuxping commented 4 years ago

ELECTRA相比BERT的改进和创新主要在于:

1、将GAN的模式引入到了NLP,采用BERT作为生成器,BERT的输出作为判别器的输入

2、在判别器使用RTD代替了MLM,大幅降低了计算量,RTD任务将MLM的计算量由d*|V|降低到了d*|2|。,并且缓解了输出分布稀疏的问题

3、用先验,将bert的MLM输出当做模型对训练难度的先验,选择与真实token有差距较大的token来做RTD任务,提升任务的难度。BERT是随机选择,ELECTRA是选择那些对模型来说学习困难的token

4、判别器的训练充分运用了全部的token,而BERT是mask了15%。ELECTRA 的大量改进可以归因于所有token的学习,而较小的归因于缓解了训练前的微调失配。