修复损害性能的数据:级联大型语言模型重新标记难负样本以实现鲁棒信息检索



摘要

评论

你知道吗?在大型但不够干净的训练数据集上微调(fine-tuning)检索器(retrievers)和重排序器(re-rankers)可能会损害它们的性能?😡
在我们的新预印本(preprint)中,我们通过剪枝数据集(pruning datasets)并识别和重新标注𝐟𝐚𝐥𝐬𝐞-𝐧𝐞𝐠𝐚𝐭𝐢𝐯𝐞𝐬(假阴性)来重新审视流行的信息检索(IR)训练数据的质量!
预印本:https://arxiv.org/abs/2505.16967
🌟𝐏𝐫𝐞𝐥𝐢𝐦𝐢𝐧𝐚𝐫𝐲(初步结果)
我们在来自 BGE 集合的 16 个检索数据集(160 万训练对)上微调 E5 (base) 模型,并进行了留一分析:即留出一个数据集,在其余数据集上进行微调。令人惊讶的是,单独移除 ELI5 数据集就可以在 14 个 BEIR 数据集中的 7 个上提高 nDCG@10!🤯
🚀 𝐃𝐚𝐭𝐚𝐬𝐞𝐭 𝐏𝐫𝐮𝐧𝐢𝐧𝐠(数据集剪枝)
1️⃣ 我们有效地剪枝了 15 个训练数据集中的 8 个,剩下 7 个数据集,将训练对数量减少了 2.35 倍(160 万 -> 68 万对)。
2️⃣ 在 7 个数据集上微调的 E5 (base) 模型在所有 15 个数据集上的表现优于在全部数据集上微调的模型,在 BEIR 数据集上的 nDCG@10 提高了 1.0。
3️⃣ 这表明有些数据集对模型性能有害。
📊 𝐅𝐚𝐥𝐬𝐞 𝐍𝐞𝐠𝐚𝐭𝐢𝐯𝐞𝐬(假阴性)
在剪枝后的训练数据集中,我们发现一个常见问题,即“假阴性”:困难负样本(hard negatives)被错误地归类为不相关!我们提出了一个 LLM 判别级联框架(𝐑𝐋𝐇𝐍)来识别和重新标注训练数据集中的这些假阴性。
我们仔细衡量了对训练对中识别出的假阴性执行的三种操作:
1️⃣ 移除:完全丢弃包含假阴性的训练对。
2️⃣ 移除 HN:仅从困难负样本列表中丢弃假阴性。
3️⃣ 𝐑𝐋𝐇𝐍:将假阴性重新标注为正样本,同时保留其余的困难负样本列表。
📊 𝐄𝐱𝐩𝐞𝐫𝐢𝐦𝐞𝐧𝐭𝐚𝐥 𝐑𝐞𝐬𝐮𝐥𝐭𝐬(实验结果)
𝐑𝐋𝐇𝐍 相较于其他方法,在检索器和重排序器中获得了最佳提升。即使我们只标注一小部分训练对,𝐑𝐋𝐇𝐍 也开始显示出持续的增益,尤其是在 BEIR (平均 7) 和 AIR-Bench (平均 5) 上的 OOD nDCG@10,两者都随着更多干净数据的加入而稳步提高。
我们还定性分析了已识别假阴性的不同类别,例如,查询可能存在歧义,这可能导致许多困难负样本实际上是相关的。
论文:https://arxiv.org/abs/2505.16967
为信息检索(Information Retrieval)重新标注数据集可以提升嵌入模型(embedding models)和交叉编码重排序模型(cross-encoder rerankers)的NDCG@10指标。这已经是普遍的看法,现在得到了证实。@nthakur、@crystina-z、@MrLight 和 @lintool 干得好!
在这里查看包含数据集和模型的组织页面:https://huggingface.co/rlhn