文章首先针对adarank, svm-map提出它们的共同点:均是优化IR measure的上界, 但是前者的界 是基于IR measure
,
后者的界是基于最优排序和非最优排序的对,形式为:
仔细观察发现,将PERMU-rank写成类似(9)的形式,和SVMMAP的区别仅仅是把max变成了求和! 这篇文章太扯蛋了...
permurank利用了第二种bound的构造形式,说白了就是仿照SVM-MAP的loss来构造,构造出对第i个查询的loss形式为
对它进行优化.该形式中的B_i和C_i是最大违反约束集,实质是大PI_i*和大PI_i的子集.
这篇文章看后,有这么几点值得我借鉴的:
1, 从多篇类似的文章中,找到共通的框架, 利用这个框架,设计出不同的算法;
2, 在设计不同算法时,主要是从构造loss的方面考虑,其次是从使用的机器学习技术考虑(目前对我来说,哪种技术的实现源代码易用,benchmark效果好选哪种)
另外,svm-map的缺点是只针对MAP这种二元分类的IR-measure可行,因为在求delta-map时用到了这个observation.