深度学习刷SOTA的trick盘点
回答一-作者:战斗系牧师
首先是数据增广的tricks:
然后是使用在模型训练的技巧!
训练过程中的优化器调节方法
测试常用技能
总结
回答二-作者:李国趸-浙江大学硕士生
R-Drop:两次前向+KL loss约束 MLM: 在领域语料上用mlm进一步预训练 (Post-training) 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,虽然我感觉有时候有点鸡肋 PolyLoss: -logpt + eps * (1-pt) 效果存疑,反正我试了没啥效果,有人试过效果不错
回答三-作者:OpenMMLab
1. Stochastic Depth
2. Mixup & CutMix
3.RandAugment
4. RandomErasing
5. CosineAnnealingLR
6. Weight decay
扫描二维码添加小助手微信
关于我们
微信扫码关注该文公众号作者
戳这里提交新闻线索和高质量文章给我们。
来源: qq
点击查看作者最近其他文章