1.基础知识
BERT系列RoBERTa ALBERT ERINE详解与使用学习笔记-腾讯云开发者社区-腾讯云 (tencent.com)
2.BERT
分词:wordpiece
预训练:
mask:选择15%的分词进行mask(80%mask 10%随机替换分词 10%分词保持不变)
NSP:判断前后句子是否连续
3. RoBERTa
Robustly optimized BERT approach
更多的数据
采用动态【MASK】
BERT:对15%的分词进行mask,对于同一文本,在训练过程中mask位置一直保持不变
Roberta:对15%的分词进行mask,对于同一文本,在训练过程中mask的位置会重新挑选
去掉下一句预测的NSP任务
RoBERTa去掉NSP任务
更大的batch_size
BERT的batch_size是256,一共训练了1M步
RoBERTa的batch_size是8k
4. ALBERT
A Lite BERT
大家常说刷榜的ALBERT,其实是xxlarge版本,普通的large版本性能是比BERT的large版本要差的
矩阵分解
通过一个矩阵分解去代替本来的embedding矩阵
参数共享
12层的attention层和全连接层层共享参数
全共享(attention层和全连接层都共享)是比单纯共享attention层的效果要差的,但是全共享d减少的参数实在太多了,所以作者采用的为全共享
SOP代替NSP
将负样本换成了同一篇文章中的两个逆序的句子
n-gram MASK
根据公式取1-gram、2-gram、3-gram的概率分别为6/11,3/11,2/11。越长概率越小
5.ERINE 1.0
Knowledge Integration
把MASK分成三部分
Basic-level Masking:与BERT一样
Entity-level Masking:把实体作为一个整体MASK,例如J.K.Rowling这个词作为一个实体,被一起【MASK】
Phrase-Level Masking:把短语作为一个整体MASK,如a series of作为一个短语整体,被一起【MASK】
Dialogue Language Model(DLM)
增加了对话数据的任务,多轮问答的数据,即可以是QQR、QRQ等等
把里面的单token、实体、短语【MASK】