一种基于新型损失函数的Listwise排序学习方法
2018-08-21龚安,孙辉,乔杰
龚 安,孙 辉,乔 杰
(1.中国石油大学(华东) 计算机与通信工程学院,山东 青岛 266580;2.中国石油大学(华东) 石油工程学院,山东 青岛 266580)
0 引 言
近年来,排序学习方法以其优异的性能成为信息检索与机器学习交叉领域中的“骄子”[1]。排序学习方法按照训练样本的不同分为点方式、对方式和列表方式[2-4]。研究表明,Listwise是排序学习中效果较好的一种算法,为了获得整个序列的排序情况,在实现过程中将整个文档序列看成一个训练样本,不仅结果展示自然,并且实现了对不同查询文档进行区分的功能[5-7]。在排序过程中,损失函数用来评价预测结果与真实结果之间拟合程度的高低,所以损失函数的构建尤为重要。
针对损失函数,研究人员在优化改进、降低时间复杂度等方面取得了比较大的进步。文献[8]提出了一种SHF-SDCG(smoothed hinge function-smoothing discounted cumulative gain)损失函数融合方法,将Pairwise方法损失函数与Pointwise方法的损失函数相融合,效果显著,但是时间复杂度高。文献[9]提出用位置近似函数来平滑文档位置损失函数,忽视了由单个文档位置变化造成的损失。文献[10]在降低训练过程时间复杂度的同时只考虑列表前端位置,缺乏对位置信息的利用。
基于此,文中提出了一种改进的Listwise排序学习算法,以整排列表作为输入,通过引入Pointwise损失函数及位置加权因子,对Listwise损失函数进行融合,并采用效率更高的Top-k训练方法。最后,在LETOR4.0数据集进行实验,对算法性能进行验证。
1 改进的Listwise排序学习算法
1.1 Listwise排序学习方法
Listwise将整个文档序列看作一个样本,通过优化信息检索和定义损失函数来得到排序函数。……
