返回列表

28th Place Solution(Contains additional reading material)

463. chaii - Hindi and Tamil Question Answering | chaii-hindi-and-tamil-question-answering

开始: 2021-08-11 结束: 2021-11-15 自然语言处理 数据算法赛
第28名解决方案(包含额外阅读材料)

第28名解决方案(包含额外阅读材料)

作者:van73 | 排名:第28名

恭喜获得奖牌的获胜者们!同时也感谢所有为这场比赛做出贡献的人!

很高兴我在这次比赛中获得了我的第二枚银牌,这是我第一次参加多语言类型的比赛(也许我有机会拿金牌😆)。我有效的解决方案几乎都来自于新的翻译数据、集成方法以及使用不同数据训练的多样化模型。

  • 翻译数据:
    https://www.kaggle.com/vanle73/nq-translated-data
    它包含两个版本的数据,样本数量不同。我在截断跨度之前使用 Google API 进行了翻译,保持最大长度小于 5000。
  • 集成方法
    1. Logits 平均(就像几乎大家做的那样)

    2. Logits 总和投票:
      这种方法是为具有不同分词器的不同预训练模型设计的。我为单个样本选择前 3 个不同的预测答案,保留跨度分数,然后将来自不同模型的所有跨度分数相加,最后获得排名第一的答案作为最终结果。

      这两种方法在私有/公共排行榜上的得分相似。

  • 使用不同训练数据的多样化模型
    起初,我将这次比赛视为一个弱监督问题,所以我尝试使用 HardEM 算法迭代地对数据进行去噪。相比于仅使用原始数据,这确实有明显的改进,但仍低于基线。然后我尝试做负采样来过滤一些样本,仍然有一些改进,但分数较低。后来在添加了 xquad/mlqa 数据后,我发现这是一场“数据竞赛”。
    所以我直接翻译了相似的数据——我过去两年参加过的 NQ 数据集。这实际上带来了更多的好处。因为多样性,我的最终集成方法也包含了上述所有模型。

此外,我还尝试了一些其他方法,但没有获得更好的结果。因为我没有自己的训练 GPU,也没有做足够的实验,我的队友做了😨。所以我将其列出供大家参考,希望有所帮助: