内容纲要

欢迎转载,作者:Ling,注明出处:Rank教程: 08-Learning to Rank Pairwise

 

本文不打算详细介绍每个算法,具体算法细节可以看Paper,但是本文会大致给出算法的核心思想。实际上所有算法都可以对应到机器学习的基础算法中。

文档对方法(PairWise Approach):

定义:

简单说就是根据一个查询q和两个文档o1,o2,得到输入特征x1和x2,以及对应label y1-y2的值,然后用机器学习方法学习模型,当给定一个q和多个文档时 ,我们可以得q的每个文档pair对之间的rank关系,基于这些rank关系我们对结果进行排序。

形式化:

RK_08_001

主要方法:

  • Ranking SVM
  • RankBoost
  • IR SVM
  • GBRank
  • RankNet
  • LambdaRank
  • LambdaMART

Ranking SVM:

提出者:

Herbrich et al.

原理简述:

采用SVM对所有文档对进行二分类,然后根据分类结果进行排序。

图示:

RK_08_002

算法:

RK_08_003

IR SVM:

提出者:

Cao et al.

原理简述:

基于Ranking SVM进行改进,解决了其不足的两个方面:1)越Top的文档应该越重要所以要给更高权重,2)不同query搜索到的文档数目可以不一样。它通过修改Ranking SVM中的Hinge loss function来达到这个目的。

图示:

RK_08_004

算法:

RK_08_005

RankBoost:

提出者:

Freund et al.

原理简述:

RankBoost就是引入了Boosting技术进行分类。

GBRank:Gradient Boosting Tree Rank

提出者:

Zheng et al.

原理简述:

基于Gradient Boosting Tree对文档对进行回归分析。同时引入了人工绝对相关性分析,以及Click数据进行相对相关性分析。

算法:

RK_08_006

RankNet:

提出者:

Burges et al.

原理简述:

基于Ranking SVM 和RankBoost算法对文档对进行分类,并且引入了神经网络和交叉熵。

算法:

RK_08_007

LambdaRank:

提出者:

Burges et al.

原理简述:

实际上只是将loss function换成了lambda function这样好处是可以自定义loss function,同时也引入了神经网络。

算法:

RK_08_008

LambdaMART:MART (Multiple Additive Regression Trees)

提出者:

Wu et al.

原理简述:

结合了LambdaRank的Lambda Function的好处以及Boosting好处,对文档pair进行回归分析。