返回列表

4th Place Solution - Team ...

504. Feedback Prize - Predicting Effective Arguments | feedback-prize-effectiveness

开始: 2022-05-24 结束: 2022-08-23 智能评测 数据算法赛
第4名解决方案 - Team ...

第4名解决方案 - Team ...

作者: Darragh, Pascal Pfeiffer, Dieter
比赛: Feedback Prize - Effectiveness
排名: 第4名

恭喜大家,感谢佐治亚州立大学、Kaggle 和所有组织者举办了如此精彩的比赛。我们很遗憾在两个赛道的比赛中都以微弱差距与奖项失之交臂,但我们将带着这些收获继续前行!

TL;DR(太长不看版)

我们的解决方案基于 deberta-v3、MLM(掩码语言模型)、伪标签和 LGB 堆叠。我们发现结合多种 NLP 改进技术可以显著提高分数。

预处理/数据处理

我们解决方案的核心是按顺序组合所有语篇 ID,然后在开头和结尾添加语篇类型 ID 和特殊标记。
使用了一个 cls_position 作为语篇的开始或结束标记。Python 代码如下:

input_ids = []
essay_df = = trndf.loc[essay_id]
for i in range(len(essay_df)):
    text = f'{discourse_types[i]}: {discourse_texts[i]} {self.tokenizer.sep_token} :{discourse_types[i]}'
    i_ids = self.tokenizer.encode(text, add_special_tokens=False)
    input_ids += i_ids
    cls_pos += [0] * (len(i_ids) - 1) + [1]

输出示例如下:

Lead: Computers can do many things for us. The idea that a computer can read your emotions is amazing  [SEP] :Lead Position: I do not belive it is true. I will believe it when I see it.  [SEP] :Position Evidence: In paragraph 8 it says " But in a false smile, the mouth is stretched sideways ising the zygomatic major and different muscle, the risorius." however this may be true for most people; there has to be someone out there in our world of 7 billion that smiles there smiles with their zygomatic muscle or their risorius muscle  [SEP] :Evidence Claim: Everyone has diffrent emotions and everyone shows them diffrently  [SEP] :Claim Counterclaim: The muscles in our face does say a lot about the emotions we are feeling.  [SEP] :Counterclaim Concluding Statement: This is why I believe computures can not read your emotions  [SEP] :Concluding Statement

我们还使用了辅助标签,如排名(Ineffective -> Adequate -> Effective)和文章主题聚类。
我们还将未包含在标注语篇中的文章文本添加到了末尾,有时也会穿插在语篇之间。
我们发现,在部分模型中用特殊标记替换换行符并清理文本,可以显著增加整体融合模型的多样性。

第一层模型 (Level1 Models)

我们使用了三种不同的模型流程,在数据预处理、辅助标签和模型头部方面做了一些细微调整。我们仅使用 deberta-v3 作为骨干网络。其他骨干网络在交叉验证(CV)中未能提升我们的融合效果。

模型1 (Model1)
  • 非语篇类的文章文本移至输入的末尾,并添加了换行符进行文本清理。
  • 使用了排名(rmse loss)和文章主题作为辅助目标。随着模型训练,辅助权重从 0.4 降低到 0.01。
  • 线性头提取输入中每个语篇的第一个标记,使用分类交叉熵损失。
模型2 (Model2)
  • 非语篇类的文章文本穿插在语篇之间。不进行清理或添加换行符。
  • 使用了排名(rmse loss)作为辅助目标。辅助损失权重约为 0.2。
  • 线性头提取输入中每个语篇的最后一个标记,使用分类交叉熵损失。
模型3 (Model3)
  • 非语篇类的文章文本穿插在语篇之间。不进行清理或添加换行符。
  • 使用了排名(rmse loss)作为辅助目标。辅助损失权重约为 0.2。
  • 这实际上是两个模型——一个是对属于每个语篇的标记进行平均池化后应用 RNN 头;另一个是在相同输入上应用注意力头。

重要的是要在所有模型中移除 deberta 隐藏层的 dropout

同比赛其他方案