• R-Drop:两次前向+KL loss约束
  • Post Training: 在领域语料上用mlm进一步预训练
  • EFL: 少样本下,把分类问题转为匹配问题,把输入构造为NSP任务形式.
  • 混合精度fp16: 加快训练速度,提高训练精度
  • 多卡ddp训练的时候,用到梯度累积时,可以使用no_sync减少不必要的梯度同步,加快速度
  • 对于验证集或者测试集特别大的情况,可以尝试多卡inference,需要用的就是dist.all_gather,对于非张量的话也可以用all_gather_object
  • PET: 少样本下,把分类转为mask位置预测,并构造verbalizer,参考EACL2021. PET
  • ArcFaceLoss:双塔句子匹配的loss把NT-Xent loss改成arccos的形式,参考ACL2022. ArcCSE
  • 数据增强在zero shot x-lingual transfer:code switch,machine translation…记得最后加一致性loss,参考consistency regularization for cross lingual finetuning
  • SimCSE:继续在领域语料上做simcse的预训练
  • Focal loss: 不平衡的处理
  • 双塔迟交互:maxsim操作:query和doc的每个token表征算相似度,取最大相似度再求和。速度和精度都有一个很好的平衡,参考colbert
  • 持续学习减轻遗忘:EWC方法+一个很强的预训练模型效果很不错。就是加一个正则让重要参数遗忘不太多,重要性用fisher信息度量。
  • 对抗训练:FGM,PGD,能提点,就是训练慢,
  • memory bank增大bsz,虽然我感觉有时候有点鸡肋
    转载:NLP深度学习训练时刷SOTA有哪些trick?-小余同学的博客

更多推荐