463. chaii - Hindi and Tamil Question Answering | chaii-hindi-and-tamil-question-answering
大家好,
恭喜 @thedrcat!看来我们太过于信任排行榜(LB)了。不过,我们还是保住了第二名的位置。我很高兴,因为我可以成为 Grandmaster 了!非常感谢 @kanbehmw。他的 NLP 知识显著提高了我们的分数。
这是我们暂定的解决方案说明。我们将公开所有的代码和数据集。如果有任何问题,请在此主题下留言。
我们使用比赛数据、MLQA 和 TyDi QA(仅孟加拉语和泰卢固语)来训练模型。特别是 TyDi QA 大幅提升了我们的分数(公共 LB 从 0.787 提升至 0.799)。我们认为大多数得分超过 0.81 的顶尖队伍都使用了 TyDi QA 数据集。这可能是由于孟加拉语、泰卢固语、印地语和泰米尔语之间的语言相似性。然而,我们怀疑由于 TyDi QA 归 Google 所有,即使被翻译成印地语或泰米尔语,某些问题可能仍然是重复的。这只是一个猜测。
我们只是在 huggingface trainer 上对所有数据进行了 2 个 epoch 的训练(没有留出验证集)。我们不区分印地语和泰米尔语。更多细节请查看各个数据集中包含的训练代码。
虽然原始的交叉熵分数具有最佳性能,但在 https://github.com/heartkilla/kaggle_tweet 中描述的损失函数(在之前的比赛中使用过)有助于获得更多样化的模型。我们名称以 "exp33" 结尾的内核是使用 "基于 Jaccard 的软标签替代交叉熵" 训练的。
无。我们完全根据公共 LB 调整所有内容。我甚至没有跟踪本地分数。这是我自从开始参加 Kaggle 以来第一次完全没有跟踪本地分数。
正如 CommonLit 比赛 (链接) 中那样,模型集成似乎是赢得 NLP 比赛的关键技术。我们集成了以下模型:
我们不知道为什么在俄语上微调的模型表现良好。我们逐渐堆叠模型,分数也逐渐提高(0.799 -> 0.816 -> 0.821 -> 0.827 -> 0.829)。MuRIL 模型将我们的分数从 0.827 推高到了 0.829。
杂项:
正如我的笔记本 链接 所示,max_seq_length 和 doc_stride 似乎有很大影响。尽管我探索了这两个参数的许多值,但这并没有帮助提高我们的分数。所以,我们只使用 max_length = 384 和