Skip to main content
QUICK REVIEW

[论文解读] Context-Aware Learning to Rank with Self-Attention

Przemyslaw Pobrotyn, Tomasz Bartczak|arXiv (Cornell University)|May 20, 2020
Advanced Image and Video Retrieval Techniques参考文献 35被引用 25
一句话总结

本文提出了一种上下文感知的神经排序模型,利用自注意力机制在训练和推理过程中动态地根据项目在列表内的交互关系对项目进行评分,与传统学习排序方法仅孤立地对项目进行评分不同。该方法在MSLR-WEB30K数据集上实现了最先进性能,使用经过优化超参数的序数损失,将NDCG@5提升至52.86的新SOTA水平。

ABSTRACT

Learning to rank is a key component of many e-commerce search engines. In learning to rank, one is interested in optimising the global ordering of a list of items according to their utility for users.Popular approaches learn a scoring function that scores items individually (i.e. without the context of other items in the list) by optimising a pointwise, pairwise or listwise loss. The list is then sorted in the descending order of the scores. Possible interactions between items present in the same list are taken into account in the training phase at the loss level. However, during inference, items are scored individually, and possible interactions between them are not considered. In this paper, we propose a context-aware neural network model that learns item scores by applying a self-attention mechanism. The relevance of a given item is thus determined in the context of all other items present in the list, both in training and in inference. We empirically demonstrate significant performance gains of self-attention based neural architecture over Multi-LayerPerceptron baselines, in particular on a dataset coming from search logs of a large scale e-commerce marketplace, Allegro.pl. This effect is consistent across popular pointwise, pairwise and listwise losses.Finally, we report new state-of-the-art results on MSLR-WEB30K, the learning to rank benchmark.

研究动机与目标

  • 解决传统学习排序模型在推理过程中孤立评分项目、忽略项目间依赖关系的局限性。
  • 开发一种神经评分函数,通过自注意力机制捕捉列表中项目之间的上下文关系,实现实时相关性评估。
  • 在基准数据集和真实世界电商数据上,对点对、成对和列表级损失函数下的所提模型进行评估。
  • 在MSLR-WEB30K基准测试中建立新的最先进性能,尤其在NDCG@5指标上表现突出。
  • 探究不同损失函数和超参数对模型泛化能力和性能的影响。

提出的方法

  • 采用多头自注意力机制改造Transformer架构,以建模项目在上下文中的相关性,使每个项目能够关注列表中的所有其他项目。
  • 使用可学习的、置换等变的评分函数,对输入顺序保持不变,适用于排序任务。
  • 应用可学习的位置编码,使模型能够捕捉项目间的相对位置信息,尤其在重排序场景中具有优势。
  • 采用多层编码器结构,结合残差连接和前馈网络,以优化上下文表征。
  • 使用多种损失函数进行模型训练,包括序数损失、NDCGLoss 2++、RMSE、ListNet、LambdaRank、ListMLE和RankNet。
  • 应用Dropout、批量归一化和超参数调优,以缓解过拟合并提升泛化能力。

实验结果

研究问题

  • RQ1基于自注意力机制的模型是否能通过在损失函数和评分函数中同时建模项目间依赖关系,从而提升排序性能?
  • RQ2在不同损失函数(点对、成对、列表)下,自注意力模型相较于MLP基线模型的性能表现如何?
  • RQ3在重排序任务中,引入位置编码是否能提升模型性能?
  • RQ4在MSLR-WEB30K数据集上,哪种损失函数能实现最佳泛化能力与最高NDCG性能?
  • RQ5哪些超参数设置(如头数、层数、Dropout率)能在不过拟合的前提下实现最优性能?

主要发现

  • 该自注意力模型在MSLR-WEB30K基准测试中实现了新的SOTA NDCG@5水平,达到52.86,超越以往所有结果。
  • 在所有测试的损失函数下,该模型显著优于MLP基线模型,包括序数损失、NDCGLoss 2++、LambdaRank和ListMLE。
  • 使用序数损失训练的模型性能最高,优于广泛使用的NDCGLoss 2++和LambdaRank等成熟损失函数。
  • 消融实验表明,Dropout率为0.3且隐藏层维度为1024时性能最优,而更高的Dropout率或超过两个注意力头会降低性能。
  • 加入位置编码的模型在重排序任务中表现更优,证实了位置信息在列表排序中的价值。
  • 由于自注意力机制的存在,模型推理复杂度为O(n²),但通过蒸馏、量化或剪枝等技术,可实现在延迟敏感环境中的部署。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。