[论文解读] NeuralNDCG: Direct Optimisation of a Ranking Metric via Differentiable Relaxation of Sorting
本文提出 NeuralNDCG,通过用 NeuralSort 替代非可微排序操作,实现 NDCG 排名指标的可微分近似,从而在训练过程中实现基于梯度的 NDCG 直接优化。该方法在 Web30K 和 Istella 数据集上达到最先进性能,优于先前的直接 NDCG 优化方法(如 ApproxNDCG),并匹配或超越了 LambdaRank 等强基线模型的性能。
Learning to Rank (LTR) algorithms are usually evaluated using Information Retrieval metrics like Normalised Discounted Cumulative Gain (NDCG) or Mean Average Precision. As these metrics rely on sorting predicted items' scores (and thus, on items' ranks), their derivatives are either undefined or zero everywhere. This makes them unsuitable for gradient-based optimisation, which is the usual method of learning appropriate scoring functions. Commonly used LTR loss functions are only loosely related to the evaluation metrics, causing a mismatch between the optimisation objective and the evaluation criterion. In this paper, we address this mismatch by proposing NeuralNDCG, a novel differentiable approximation to NDCG. Since NDCG relies on the non-differentiable sorting operator, we obtain NeuralNDCG by relaxing that operator using NeuralSort, a differentiable approximation of sorting. As a result, we obtain a new ranking loss function which is an arbitrarily accurate approximation to the evaluation metric, thus closing the gap between the training and the evaluation of LTR models. We introduce two variants of the proposed loss function. Finally, the empirical evaluation shows that our proposed method outperforms previous work aimed at direct optimisation of NDCG and is competitive with the state-of-the-art methods.
研究动机与目标
- 为解决排序学习(LTR)中训练目标与评估指标之间的不匹配问题,即标准损失函数与信息检索指标(如 NDCG)关联松散的问题。
- 通过使依赖于非可微排序的 NDCG 实现可微分,实现对这一关键信息检索评估指标的直接优化。
- 开发一种平滑、准确且高效的 NDCG 近似方法,支持使用梯度下降进行端到端训练。
- 通过实证验证所提方法与现有 LTR 损失(包括成对损失、列表损失及直接 NDCG 优化基线)的性能对比。
提出的方法
- 核心方法是用基于软可微置换矩阵的可微分排序松弛方法 NeuralSort,替代 NDCG 中的非可微排序算子。
- NeuralNDCG 通过在预测得分上应用可微分排序操作构建,从而实现排序过程中的反向传播。
- 提出两种 NeuralNDCG 变体:一种为标准输出,另一种为使用 tanh 激活的输出,以稳定训练过程。
- 通过在计算中对前 k 项进行掩码,支持使用特定排名截断(如 NDCG@5、NDCG@10)进行训练。
- 可微分松弛使模型能够学习直接优化 NDCG 的评分函数,而非依赖代理损失。
- 该方法在 PyTorch 中实现,并集成至 allRank 开源框架中,以确保可复现性。
实验结果
研究问题
- RQ1能否构建一种 NDCG 的可微分近似方法,以实现对排序指标的直接基于梯度的优化?
- RQ2NeuralNDCG 与现有 LTR 损失(包括成对和列表损失基线)相比,性能如何?
- RQ3通过 NeuralSort 实现的排序可微分松弛,是否相比先前方法(如 ApproxNDCG)能提供更准确、更有效的 NDCG 近似?
- RQ4NeuralNDCG 是否能在 Web30K 和 Istella 等标准 LTR 基准上实现具有竞争力或更优的性能?
主要发现
- 在 Web30K 和 Istella 数据集上,采用排名截断(NDCG@5、NDCG@10)的 NeuralNDCG 均优于 ApproxNDCG,且在所有指标上表现更优。
- 在 Web30K 数据集上,NeuralNDCG@10 达到 52.77 的 NDCG@10 分数,为所有评估方法中的最高分,甚至超过 LambdaRank。
- 在 Istella 数据集上,NeuralNDCG 的最佳变体(NeuralNDCG^T@10)达到 71.02 的 NDCG@10 分数,优于所有其他方法,包括 LambdaRank 和 ListNet。
- 该方法表现出鲁棒性和一致性,无需对温度超参数 τ 进行调优,τ=1 即可达到最优性能。
- NeuralNDCG 在性能上与 LambdaRank 等最先进方法相当,验证了其在弥合训练与评估目标差距方面的有效性。
- 在 allRank 中的开源实现支持完全可复现性,并为未来可微分排序指标的研究提供了便利。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。