赞
踩
1、bert的微调可以将参数设置为:
2、Bert的微调比较容易,可以设置验证集,进行一定范围的Grid Search
3、可以在Bert后面接一些层,比如CRF层、Linear层、BiLSTM层
4、为了确保后接层学习的好,可以对后接层设置额外的、较大的学习率
RoBERTa即预训练方法的鲁棒优化:
1、模型训练时间更长,Batch Size更大,训练数据更多。
2、删除了NSP任务,作者经过实验,发现NSP任务没啥卵用,删除了以后反而效果提升了一些。
3、使用动态MASK:
ALBERT即轻量级BERT,主要解决BERT太耗资源
1、对Embendding层的参数矩阵(|V|*|H|,|V|为词库大小,|H|为隐藏层大小)进行分解,减少了一部分参数V*H-------->V*E+E*H,并带来效果的一些下降。
2、共享所有transformer参数,即12个transformer都有相同的attention参数、或相同的FNN参数、或相同的所有参数。主要参数减少就是靠这个操作,可以减少十几倍的参数,可以减少到12M。
3、为了缓解参数减少带来的效果下降,ALBERT使用SOP(sentence order pridiction)替代了NSP任务
二分类任务:NSP任务和SOP任务的正样本一样,都是同文章相邻两句话,负样本NSP时不同文章两句话,SOP是正样本顺序对调。
尽管参数减少可以训练更快,但在推理阶段并没有提升多少速度,因为12个transformer还得一层一层计算。
基于全词的mask的bert预训练,减少了词汇信息对学习语言模型的干扰,增强了MLM的上下文预测能力。
BERT-wwm-ext,在wwm的基础上使用了更多数据 。
将MASK扩展到短语和实体级别
SpanBert进行MLM时,随机MASK一小段文本,以一定的概率采样一段span长度,然后随机采样起始位置进行mask然后输出去预测他
依然是改进MLM时的mask方式
1、首先分词,基于词粒度的n-gram进行mask,1~4ngram概率分别是40%,30%,20%,10%
2、不使用[MASK]token进行mask,对15%输入单词进行masking时:80%替换为同义词,10%随机词,10%保留原始词。
electra借鉴了对抗网络GAN部分思想,不实用MLM,而是DTR任务(Replaced Token Detaction)
模型有两部分组成,分别是Gennerator和Discriminator,两个都是transformer的encoding结构,只是size不同。
生成器:
判别器:
ELECTRA主要解决BERT的两大问题:
1、BERT的MLM并不高效,只有15%的token对参数更新有效,其余并不参与梯度更新
2、与训练和fine-tuning并不匹配,因为fine-tuning并没有mask的token
electra的微调只需要使用判别器;
实践中,electra的效果不如RoBERTa等,但是其小模型tiny效果比较好,在高性能、资源有限的场景下可以尝试。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。