学习笔记-Bert及其变体调参经验

Bert调参:

1、bert的微调可以将参数设置为:

  • bach size :设置为16或者32
  • learning rate(Adam):5e-5、3e-5、2e-5(比较小的学习率)
  • num of epochs:2,3,4

2、Bert的微调比较容易,可以设置验证集,进行一定范围的Grid Search

3、可以在Bert后面接一些层,比如CRF层、Linear层、BiLSTM层

4、为了确保后接层学习的好,可以对后接层设置额外的、较大的学习率

Bert变体

RoBERTa:

RoBERTa即预训练方法的鲁棒优化:

1、模型训练时间更长,Batch Size更大,训练数据更多。

2、删除了NSP任务,作者经过实验,发现NSP任务没啥卵用,删除了以后反而效果提升了一些。

3、使用动态MASK:

  • Bert预训练时,是静态MASK,即在预训练前统一进行随机MASK,导致多个epoch都使用同样的MASK;
  • RoBERTa是在每次输入时输入MASK,确保每个epoch都使用不同的MASK

ALBERT:

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还得一层一层计算。

BERT-WWM:

基于全词的mask的bert预训练,减少了词汇信息对学习语言模型的干扰,增强了MLM的上下文预测能力。

BERT-wwm-ext,在wwm的基础上使用了更多数据 。

ERNIE:

将MASK扩展到短语和实体级别

SpanBERT:

SpanBert进行MLM时,随机MASK一小段文本,以一定的概率采样一段span长度,然后随机采样起始位置进行mask然后输出去预测他

 MACBERT:

依然是改进MLM时的mask方式

1、首先分词,基于词粒度的n-gram进行mask,1~4ngram概率分别是40%,30%,20%,10%

2、不使用[MASK]token进行mask,对15%输入单词进行masking时:80%替换为同义词,10%随机词,10%保留原始词。

 

ELECTRA :

electra借鉴了对抗网络GAN部分思想,不实用MLM,而是DTR任务(Replaced Token Detaction)

模型有两部分组成,分别是Gennerator和Discriminator,两个都是transformer的encoding结构,只是size不同。

生成器:

  • 一个小的MLM,size时判别器的1/4
  • 随机选取15%的token,替代为[MASK]token
  • 使用Generator去训练模型,使得模型预测被MASK的部分,会预测错
  • 如图,the和cooked被随机选为masked,经过Gennerator变成the和ate

判别器:

  •  对Gennerator预测的结果,分辨其是original还是replaced
  • 对于没有个token,Discriminator都会进行一个二分类
  • 如图:ate被认为是replaced,其他为original

ELECTRA主要解决BERT的两大问题:

1、BERT的MLM并不高效,只有15%的token对参数更新有效,其余并不参与梯度更新

2、与训练和fine-tuning并不匹配,因为fine-tuning并没有mask的token

electra的微调只需要使用判别器;

实践中,electra的效果不如RoBERTa等,但是其小模型tiny效果比较好,在高性能、资源有限的场景下可以尝试。

  • 10
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用\[1\]:强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益。它是除了监督学习和非监督学习之外的第三种基本的机器学习方法。与监督学习不同的是,强化学习不需要带标签的输入输出对,同时也无需对非最优解的精确地纠正。其关注点在于寻找探索和利用的平衡。\[1\] 问题: bert和强化学习结合的方法有哪些? 回答: 将BERT和强化学习结合的方法有多种。一种常见的方法是使用强化学习来指导BERT模型的训练过程。例如,可以使用强化学习来选择BERT模型的超参数,如学习率和批量大小,以优化模型的性能。另一种方法是使用强化学习来指导BERT模型的预测过程。例如,在问答任务中,可以使用强化学习来选择最佳的答案。这种方法可以通过将问题和候选答案作为状态和动作,使用强化学习算法来选择最佳的动作。还有一种方法是将BERT模型作为强化学习的环境,通过与环境的交互来训练强化学习代理。这种方法可以用于解决强化学习任务,如游戏玩法和机器人控制。总之,BERT和强化学习的结合可以在多个方面提升模型的性能和效果。 #### 引用[.reference_title] - *1* *3* [词汇表规模太大强化学习训不动怎么办?降维让你重拾信心!](https://blog.csdn.net/qq_27590277/article/details/129153276)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [AI之强化学习、无监督学习、半监督学习和对抗学习](https://blog.csdn.net/Louise_Trender/article/details/127045189)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值