当前位置: 代码迷 >> 综合 >> Learning to Rank基于pairwise的算法(三)—— RankNet、FRank、LambdaRank
  详细解决方案

Learning to Rank基于pairwise的算法(三)—— RankNet、FRank、LambdaRank

热度:84   发布时间:2024-01-16 13:06:52.0

前面两类分别是基于SVM和基于Boost方法训练学习器,而本文中的三个算法,均为基于神经网络的方法训练学习器的。其中FRank算法和LambdaRank算法分别是基于RankNet进行了损失函数和排序优化方法上的改进。
这里为了便于理解,仍然要祭出下图:
L2R pairwise
图1 L2R pairwise

1. RankNet && LambdaRank

关于RankNet和LambdaRank,前人已经做过不少的细致讲解,这里就不麻烦一趟把它们copy过来了,直接上链接吧!
Learning to Rank算法介绍:RankNet,LambdaRank,LambdaMart

2. FRank

找了一圈,发现关于FRank的参考资料并不多,所以去翻了一下原论文

FRank

以上就是Learning to Rank中pairwise方法下8个比较主流的算法,但是经查资料发现,应用较为广泛的,也是网上资料比较多的算法,也就是RankNet和LambdaRank了。所以个人认为,这个系列的主要意义,是对pairwise中算法的一个整理,作为入门排序学习的一个参考资料吧。毕竟了解这些算法,更有助于对整个pairwise方法的原理乃至其发展史有一个更加清晰全面的理解。

接下来还会做一个listwise系列的整理。

参考资料

[1] Learning to Rank算法介绍:RankNet,LambdaRank,LambdaMart
[2] Tsai M F, Liu T Y, Qin T, et al. FRank: a ranking method with fidelity loss[C]//Proceedings of the 30th annual international ACM SIGIR conference on Research and development in information retrieval. ACM, 2007: 383-390.