ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Bert和一些以Bert为基础的预训练模型的Mask区别

2021-12-26 09:31:23  阅读:202  来源: 互联网

标签:Bert MASK Mask 模型 mask token Masking NSP


• BERT: 提出了MLM和NSP两个任务。MLM随机的MASK掉一些token, 然后根据上下文预测这些token。NSP预测句子B是否是句子A的下一句。简单来说就是一个自监督的完形填空机制。后来有人提出WWM, 即当一个词中的某一个字被mask掉,整个词都被mask掉。

• ERNIE: 采用三种masking策略:
Basic-Level Masking: 跟bert一样对单字进行mask,很难学习到高层次的语义信息;
Phrase-Level Masking: 输入仍然是单字级别的,mask连续短语,跟N-gram masking相似。;
Entity-Level Masking: 首先进行实体识别,然后将识别出的实体进行mask。

• XLNET: 为了解决预训练阶段出现[MASK] token,fine-tuning阶段没有[MASK] token这种不一致,作者提出了PLM, 并且将autoencoding改为autoregressive。

• ALBERT: 提出了两种减少模型参数的方式,第一是将Embedding 矩阵|V| * H分解为|V| * E 和 E * H两个小矩阵;第二是每一层transfomer block都共享参数。另外提出用SOP来替代NSP。

• RoBERTa: 在BERT基础上,做了如下的改进:1. 训练更长时间,用更大的batch,更长的输入序列长度,更多的训练数据。2. 去除NSP任务,并且使用dynamic masking。3.动态Masking:每次向模型输入一个序列时,都会生成一种新的Maks方式。即不在预处理的时候进行Mask,而是在向模型提供输入时动态生成Mask
而修改版静态Maksing:在预处理的时候将数据拷贝10份,每一份拷贝都采用不同的Mask,也就说,同样的一句话有10种不同的mask方式,然后每份数据都训练N/10个Epoch
动态Masking:

• ELECTRA: 采用一种Generator和Discriminator的架构,Generator: 一个小的MLM,在[MASK]的位置预测原来的词。Generator将用来把输入文本做部分词的替换。
Discriminator: 判断输入句子中的每个词是否被替换,即使用Replaced Token Detection (RTD)预训练任务,取代了BERT原始的Masked Language Model (MLM)。这种方式判别器只需要判断每个token是否被替换了(二分类),而不需要预测被替换的原token是什么。需要注意的是这里并没有使用Next Sentence Prediction (NSP)任务。

• MacBert: 即将句子中的原词,比如 语言模型,预测,概率 用它的近义词比如 语法建模,预见,几率 来替代。这种方式相对于用[MASK]标记来替代原词,减少了pre-training和fine-tuning不一致。即[MASK]只出现在pre-training阶段,不出现在fine-tuning阶段。

标签:Bert,MASK,Mask,模型,mask,token,Masking,NSP
来源: https://blog.csdn.net/weixin_42455006/article/details/122072525

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有