478. Feedback Prize - Evaluating Student Writing | feedback-prize-2021
首先,我要感谢比赛主办方举办了这场精彩的比赛。同时,我非常感谢许多伙伴提供了非常优秀的 Notebooks 和讨论。我从中学到了很多,并将它们应用到了我们的最终方案中。
在本次比赛中,因为需要将每个 Token 组合成句子作为最终结果,为了减少后处理工作,我们将方案分为两个阶段。
首先感谢 @cdeotte、@abhishek、@hengck23 和其他人提供的优秀 Notebooks 和讨论。
我们尝试了各种预训练模型。由于某些模型的最大长度为 512,对于这些模型,我们选择了分段预测和拼接的方法。最终我们选择了 longformer-large、roberta-large、deberta-xxlarge、distilbart_mnli_12_9、bart_large_finetuned_squadv1 进行集成。此阶段在线耗时 7 小时,经过后处理,CV 分数为 0.712,LB 分数为 0.706。
以下是各个预训练模型的 CV 分数:
| 模型 | CV 分数 |
|---|---|
| Longformer | 0.671 |
| Roberta | 0.663 |
| Deberta | 0.682 |
| Distilbart | 0.642 |
| Bart | 0.640 |
我们将 BERT 训练代码放在了这里。因为 Kaggle 在线资源不足,你需要将其复制到自己的机器上进行训练。
感谢 @chasembowers 提供的优秀 Notebook。
我们首先通过降低阈值尽可能多地召回候选样本。在训练集上,我们召回了三百万个样本,实现了 95% 的平均召回率。各类别的召回率如下:
| 类别 | 召回率 |
|---|---|
| Claim | 0.938 |
| Concluding Statement | 0.972 |
| Counterclaim | 0.906 |
| Evidence | 0.974 |
| Lead | 0.970 |
| Position | 0.928 |
| Rebuttal | 0.895 |
此外,在获得召回样本后,我们选择具有高边界阈值的样本,并选择当前类别概率最高的 65% 长度作为一个新样本,该方法可以帮助提高约 0.008 的分数。最后,我们为 LGB 训练制作了约 170 个特征,并选择部分样本作为最终提交。此阶段在线耗时 1.5 小时,CV 分数为 0.748,LB 分数为 0.742。
我们在 5 折 Longformer 模型上测试了我们的 LGB,分数从 0.697 提高到了 0.727。因为 LGB 没有在这个预测上进行训练,提升幅度会低于实际情况。同时,我们上传了模型集成结果这里。如果你感兴趣,可以用自己的预测结果替换,看看 CV 分数能提高多少。