本篇文章的目的是认识L2R问题中所用的损失函数以及评价指标的关系(公式截图多,但都好理解)。对数学证明感兴趣的朋友可以参考相关证明文献。
在很多state-of-the-art的文章中,都证明了他们所用的损失函数可以作为常用评价指标(MAP,NDCG)的上界进行优化。
在前面的几篇文章中,简单介绍了三种用于L2R的方法(Pointwise, Pairwise以及Listwise),它们有一个主要的区别就在于损失函数,分别是逐点比较,逐对比较以及比较两个序列,而损失函数的选择往往就主导了学习的过程。因此在本章中,作者简单探索了三种方法的损失函数以及常用评价指标之间的关系。
1、The Pointwise Approach
给出关于某个query q下的docs
其中
可以看到,如果能够将Pointwise的回归损失降低为0,显然不等式左边的上界变为0,即NDCG的值可以达到最优。
我看书看到这里的时候是比较惊叹的,原来还有这种关系存在,那么这种关系为什么会成立呢,于是我去查阅了原始论文,然后没有看懂。本文在这一处贴出原始论文【2】的证明,知友们可以了解证明的过程(没有很复杂),然后根据自己的兴趣决定是不是翻找原文看明白证明,后续将只贴出参考文献,不再截图贴出证明过程。
同样的,针对多分类问题,文章【3】中证明了多分类损失亦能够表示为NDCG的上界以进行优化(文章假设了一共有5类相关程度,K=5):
重点来了,和回归损失一样,当多分类损失为0,即不等式右侧为0时,NDCG值可以达到最大,但反过来说,既然是优化上界,假设NDCG能够达到最优,损失函数却无法下降到0。因此,Pointwise方法中上述损失函数优化到0是NDCG达到最大值的充分不必要条件。
来看一个计算的栗子。现在有一个query q,与之相关的docs共有4个,标签分别为
而我们的模型计算得出的相关程度分别为
这个大于0的损失上界显然在这里是没有什么意义的,因为评价指标已经达到了最优,我们也得到了想要的排序结果。
2、The Pairwise Approach
在文章【4】中,给出了如下结论:
其中,
文章【4】认为,1 - MAP与某些Pairwise方法的损失函数是有联系的,优化后者能达到优化前者的效果。然而刘铁岩老师在书中指出,上述结果是有如下缺陷的:
(1)上述结果的不等式没有直接表明Pairwise损失与1 - MAP的关系, 比如从上述不等式中无法看出
(2)根据上述不等式,即使
(3)关于NDCG指标,无法得到一个和上述不等式相似的结果。
为了解决上述的三个缺陷,文章【5】的作者提出了一个可以同时作为1 - NDCG以及1 - MAP上界的损失函数,命名为essential loss。下面同样不贴证明地介绍一下这个神奇的essential loss。
假设有一组docs
注意到这个argmax,可以知道上述这个表达式的意思是:在评分函数
那么,essential loss定义如下:
结合前面的场景,这个Loss非常好理解了。首先,真实序列
看例子永远比定义理解得更快。
假设有A,B,C三个文档的真实排序和评分函数给出的排序:
在步骤1中,我们要看排在位置1的doc,显然在
因为是按步骤学习的,essential loss也考虑到了每个步骤误差的权重不同,比如前面几个步骤中误差的权重应当比较大,因此最终essential loss完善如下:
文章【5】中给出了essential loss是1 - MAP 以及 1 - NDCG上界,同时也是很多Pairwise损失函数下界的证明。
3、The Listwise Approach
在ListwiseRank读书笔记的文章中,我们知道了ListwiseRank分为两类:1,基于评价指标设计的损失函数 2,不考虑评价指标设计的损失函数。 因此针对Listwise Approach,同样按这两类分开讲评价指标和损失函数的关系。
(1)不考虑评价指标设计的损失函数
这里的内容很少,精华就是两个公式(刘老师的书里只简单提了这么些)
其中ListMLE的损失定义可以参考我的上一篇文章。证明请参考文献【5】。
(2)基于评价指标设计的损失函数
ListwiseRank中的Soft Rank以及Approximate Rank都采取了对NDCG的连续近似,这个近似程度近似得有多好呢?文章【6】中提出了“tendency correlation”的概念,用于衡量代理评估指标(surrogate measure)和常用评估指标之间的关系。
给出评价指标
那么
其中max代表
Tendency Correlation有如下性质:
1、尺度以及平移不变性。由于定义式中作差以及参数
2、当
3、取minimax的形式要优于取mini-average的形式,因为当两个指标在差异程度最大的点仍然能取得一个较小的
总结
如果看到了这里(不是一下滑到底地看),总能够对三大类方法中的损失函数和常用评价指标之间的关系有一个基本的认识。当然,书中指出了仅仅优化上界并不总是一个好的办法,因为不知道这个上界的松紧程度,而且即使损失函数在每一处都是评估指标上界也不能代表就一定能取得最好的优化效果。
就要去实习了,有时间的话仍然会写一写后续关于L2R中query-dependent,data-preprocess的一些理论问题~
参考文献
【1】《Learning to Rank for Information Retrieval》, Tie-Yan Liu.
【2】Cossock, D., Zhang, T.: Subset ranking using regression. In: Proceedings of the 19th AnnualConference on Learning Theory (COLT 2006), pp. 605–619 (2006)
【3】Li, P., Burges, C., Wu, Q.: McRank: learning to rank using multiple classification and gradientboosting. In: Advances in Neural Information Processing Systems 20 (NIPS 2007), pp. 845–852 (2008)
【4】Joachims, T.: Optimizing search engines using clickthrough data. In: Proceedings of the 8thACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD2002), pp. 133–142 (2002)
【5】Chen, W., Liu, T.-Y., Lan, Y., Ma, Z., Li, H.: Ranking measures and loss functions in learningto rank. In: Advances in Neural Information Processing Systems 22 (NIPS 2009), pp. 315–323(2010)
【6】He, Y., Liu, T.-Y.: Tendency correlation analysis for direct optimization methods. InformationRetrieval 13(6), 657–688 (2010)