[NLP]四大模型与bert的对比:ernie1.0,xlnet,roberta,albert,bert

1、ERNIE 1.0 , XLNET, RoBERTa, ALBERT 分别基于 BERT 做了哪些改进?

答:
1)ERNIE 1.0的改进:
①通过实体和短语mask能够学习语法和句法信息的语言模型
②在很多中文自然语言处理任务上达到SOTA
训练数据集:中文维基百科、百度百科、百度贴吧、百度新闻
可以理解为它主要是做一个中文的BERT,因此除了训练数据集以及使用实体Mask有很大的改变外,其他的变化不大

2)XLNET的改进:
①使用transformer-xl代替了transformer,能获取更长距离的依赖信息
②它改动了预训练阶段,Bert在这一阶段使用了15%的MASK标志,而XLNET使用PLM重新排列组合
输入序列X,这样不需要MASK标志,能不改变输入顺序、不更改原文就能同时看到上下文信息,它的方式是使用双流自注意力结构。

3)RoBERTa的改进:
是对BERT的优化版本,保持结构不变,整体改动不大,但是具体的改动如下:
①在模型的规模、算力和数据上:更长的训练时间、更大的batch size、更多的训练数据
②训练方法上:去掉NSP任务 ,使用动态MASK,对文本编码(从BPE变为byte characters)

4)ALBERT的改进:
①两种减少参数方法:矩阵分解、参数共享
矩阵分解:在两个大维度之间加入一个小维度,从O(V*H)变为O(V*E+E*H),其中H 远远大于 E,以达到
降维的作用
参数共享:交叉层参数共享
②SOP代替NSP
③n-gram MASK

2、ALBERT为什么用 SOP 任务替代BERT 中的 NSP 任务?
答:
①SOP补偿了一部分因为embedding和FFN共享而损失的性能
②NSP将主题预测(topic prediction)和连贯性预测(coherence prediction)融合起来学习比较困难,
而SOP将负样本换成了同一篇文章中的两个逆序的句子,进而消除主题预测

原文地址:https://www.cnblogs.com/mj-selina/p/13966175.html