返回列表

26th Place solution - Record the first kaggle competition ,failed to gold (unlucky)

519. Feedback Prize - English Language Learning | feedback-prize-english-language-learning

开始: 2022-08-30 结束: 2022-11-29 智能评测 数据算法赛
第26名方案 - 记录第一次Kaggle比赛,遗憾错失金牌(运气不佳)

第26名方案 - 记录第一次Kaggle比赛,遗憾错失金牌(运气不佳)

作者: nju_xuetianci | 排名: 26th | 点赞数: 18

首先,感谢主办方举办了一场有趣的比赛,并祝贺所有获奖者!
由于我是中国人,英语不是很好,可能会有一些用词不当的地方,请多多包涵。

概述

实验分为两部分,一部分是基础模型的调试(添加各种技巧),另一部分是对较好的集成模型进行知识蒸馏,然后回到原始数据上继续训练和微调。

基础模型

实验编号 模型类型 最大长度 折数 CV分数
1deberta-v3-base768100.4521
2deberta-v3-base76850.4519
5deberta-large51250.4516
6deberta-xlarge51250.4536
10deberta-v3-base51250.4502
13deberta-v3-large51250.4512
15deberta-v3-large102450.4506
17deberta-v2-xlarge102450.4546

有效的方法

● [有效] FGM (Fast Gradient Method)

○ 结果:cv +0.001-0.002

○ 理由与背景:从epoch 0开始,设置epsilon=0.25进行对抗攻击,太低或太高效果都不好(加入fgm对抗学习意味着你的训练时间基本上会翻倍)。

● [有效] LayerNorm

○ 结果:cv +0.0005-0.001

○ 理由与背景:在全连接层前加入LayerNorm层也能使效果更好。

● [有效] Attention Head

○ 结果:cv +0.0005

○ 理由与背景:比较[CLS]、mean pooling和attention head,前两者的效果基本没有区别,mean pooling可能稍好,效果最好的是attention head。

● [有效] Multi-sample Dropout

○ 结果:cv+0.0001

○ 理由与背景:Multi-sample Dropout在base模型上的效果不是很好,会导致训练loss震荡,但在v3-large模型上效果不错,可以防止大模型过拟合。

● [有效] LLRD (Layer-wise Learning Rate Decay)

○ 结果:cv+0.001

○ 理由与背景:在比较了每层0.8-0.9的学习率后,并将层数分块设置学习率(最好将3或4层分为一组),后者给我的cv带来了更大的提升。

无效的方法

● [无效] AWP (Adversarial Weight Perturbation)

● [无效] 其他Heads(maxmeanpool、weight pool、contact different layers等)

● [无效] MLM(预训练在fb3和fb2上效果不佳)

基础模型的集成使用了最简单的optuna方法来调整不同模型的权重(当时我考虑过在知识蒸馏后使用第二阶段集成模型,例如:svr, lasso, linear, gbdt等)

知识蒸馏和继续微调:

● 数据集:FB1去除FB3后的数据