本赛题是脱敏的文本匹配题,同2019年的高校赛。 常用的思路如基于特征的feature+LGB或者基于深度语义模型的Esim和Bert等。本文采用后者。
解题思路:pretrain+fine-tuning
具体方法:
-
model
模型结构采用的是Nezha base 参考的是nezha
-
pretraing
预训练参考transformers官方的预训练脚本How to train a language model from scratch
预训练细节:预训练数据直接采用句子对形式训练,进一步地,将text1,text2的位置对调过来,数据增强。随机动态mask。加载原有的nezha base 中文模型,然后接着预训练,并不是从头开始的。 相当于保留Encoder层的信息,重新学习下embedding层的信息。对比过从头开始的,收敛更快,效果上看,提升一个百分点(89->90) 预训练参数:lr=5e-5,epoch=300 ,loss~=0.3
-
fine-tuning
直接采用这里的NeZhaForSequenceClassificationz做二分类fientune。以及加入了对抗训练,采用fgm。 训练参数:bs=128,maxlen=32,epoch=5 ,5-folds。
- 如何设计mask策略,如群里大佬提到的n-gram mask之类。
- 数据增强
- 显卡的香气,试错成本。
目前线上0.913的成绩是五折交叉的结果。cv ~=0.976
预祝大家上分愉快!!!