一种基于listwise算法在线学习排序方法技术

技术编号:21454046 阅读:37 留言:0更新日期:2019-06-26 04:49
本发明专利技术涉及信息检索技术领域,具体涉及一种基于listwise算法在线学习排序方法。首先使用listwise算法的思想,将查询关键字对应的候选记录排序列表作为训练实例;然后利用在线学习排序算法的训练过程,在应用训练实例时,训练实例按照顺序到达神经网络,并且仅被扫描一次;最后通过最小化损失值获取精准的排序模型。本发明专利技术将在线学习算法应用到listwise算法中,可以利用在线获得的数据对已有的排序模型进行更新,实现在线处理和提高算法的有效性;保证了online‑listwise算法在信息检索领域的可实施性和性能。通过自适应学习率更新排序模型,使排序模型更加精准和尽快收敛。

【技术实现步骤摘要】
一种基于listwise算法在线学习排序方法
本专利技术涉及信息检索
,具体涉及一种基于listwise算法在线学习排序方法,对当前查询关键字所对应的候选记录进行排序。
技术介绍
在信息检索领域,给定一个查询关键字,搜索引擎会召回一系列相关候选记录,然后对这些召回的候选记录进行排序,最后将前n个候选记录输出。因此,如何对候选记录的有效排序是信息检索的一个核心问题。随着机器学习算法的快速发展,使用机器学习算法来获取精准的排序模型已经得到广泛的应用。迄今为止,已经存在的学习排序算法主要分为三个类别:pointwise、pairwise、listwise。Pointwise算法利用机器学习算法预测当前查询关键字单个候选记录的排序值,简单的将排序问题归结为线性分类或者回归问题;pairwise算法是将候选记录对作为一个训练实例,并且将排序问题归结为从成对候选记录实例集合中学习分类或回归模型的任务。然而,pointwise算法和pairwise算法都不能够在训练过程中,直接通过最小化损失值获得精准的排序模型。因此,学术界提出了listwise算法解决这一问题,它是将候选记录的排序列表作为训练实例,并且通过最小化在预测列表和真实列表上定义的损失函数来优化排序模型。虽然对上述三种学习排序算法已经进行了广泛研究,但是它们都面临着相似的挑战。在每一个时间步骤中,上述三种排序算法都不能利用在线获得的数据更新排序模型。因此,随着用于信息检索的数据量越来越多,算法有效性差的问题越来越明显。为了解决该问题,学术界提出了将在线学习算法应用到学习排序算法中。在线学习算法是一种很有效的机器学习算法,是指在训练排序模型时,数据以顺序的方式运行操作且仅被扫描一次,通过最小化整个预测序列的累计错误,使排序模型性能最优。迄今为止,在线学习算法只是应用到了pairwise算法中,下文用online-pairwise表示。该算法首先通过理论推导得出online-pairwise算法的损失值是(1-MAP)的上限值,然后利用在线获得的数据,使用随机梯度下降算法最小化损失函数,从而使性能评价指标MAP(meanaverageprecision)最优,获得精准的排序模型。由于该算法在每一次更新排序模型时,是将候选记录对作为训练实例,所以迄今为止,还没有实现将候选记录的排序列表作为训练实例的在线学习排序算法。在Learningtorankusingmultipleclassificationandgradientboosting中提出了基于pointwise的学习排序算法,将排序问题归结为多重分类和多重序数分类。首先通过理论推导证明DCG(discountedcumulativegain)能够受到分类错误的限定。然后,使用预测相关性将分类概率转换成排名分数,通过GBT(gradientboostingtree)算法来学习分类概率,从而实现完美的分类,使DCG达到最优值。该已有技术的缺陷:该文献所提出的学习排序算法,一方面由于该算法在训练过程中并没有充分考虑到查询关键字所对应候选记录的内部依赖性,所以当不同的查询关键字对应不同数量的候选记录时,整体的损失值就会被候选记录数据量大的查询关键字所决定。另一方面由于该算法没有考虑到整个预测排序中候选记录的位置信息,从而可能会造成损失值由排在较后面的候选记录所决定。所以会造成排序性能相对较低。总的来说,基于pointwise的学习排序算法在上述三种排序算法中,性能相对较差。在Optimizingsearchenginesusingclickthroughdata.中提出了基于pairwise的学习排序算法,将候选记录对作为一个训练实例,然后将排序问题归结为从实例集合中学习分类。首先定义损失函数用来评估候选记录对的预测排序和真实排序之间的差异。然后通过理论推导证明NDCG(normalizediscountedcumulativegain)和MAP(meanaverageprecision)能受到损失函数的限定,因此可以通过SVM(支持向量机)的方法,实现二元分类,使损失函数能够达到最小值,从而实现MAP和NDCG最优。该已有技术的缺陷:该文献所提出的学习排序算法,一方面由于在获取训练实例时,需要将查询关键字所对应的候选记录转换成候选记录对,那么在转换过程中可能会丢失一些更细颗粒度的特征信息,并且在转换过程中若是出现了一个候选记录对的标注错误则有可能造成连锁反应。另一方面该算法仅考虑了候选记录对的相对位置,没有考虑到整个预测排序中候选记录的位置信息。所以该算法的排序性能是优于pointwise,低于listwise的。在ListWiseapproachtolearningtorank:theoryandalgorithm.提出了基于listwise的学习排序算法,首先是将查询关键字对应的候选记录排序列表作为训练实例。然后定义损失函数用来评估预测列表和真实列表之间的差异,并且该损失函数能够限定NDCG(normalizediscountedcumulativegain)和MAP(meanaverageprecision)。最后便可以通过机器学习算法直接优化损失函数,从而使NDCG和MAP最优。该已有技术的缺陷:该文献所提出的学习排序算法,虽然解决了查询关键字对应候选记录的位置信息问题,但是在计算损失值时,需要基于查询关键字所对应的候选记录排序列表来计算,并且不能够实时在线更新排序模型。所以在训练排序模型时,相比较于另外两种算法,算法复杂度相对较高。在OnlineLearningtoRankforcontent-BasedImageRetrieval中,将在线学习算法与pairwise算法相结合,用online-pairwise表示。首先通过理论推导得出online-pairwise算法的损失函数能够限定MAP和NDCG。然后利用OGD(onlinegradientdescent)算法最小化损失函数,从而使NDCG和MAP最优。这样的话,就可以在保证pairwise算法性能优势的前提下,提高算法的有效性。并且在性能表现上,是优于pointwise算法的。该已有技术的缺陷:虽然Online-pairwise算法提高了算法有效性,但是在性能上,相比较于listwise算法,仍有较大性能差距。在信息检索领域的众多学习排序算法中,都不能够利用在线获得的数据更新排序模型,所以随着用于信息检索的数据量越来越多,学习排序算法有效性差的问题越来越明显。同时,工业界还没有提出将查询关键字所对应的候选记录排序列表作为训练实例的在线学习排序算法。
技术实现思路
针对现有技术中存在的技术问题,本专利技术提供了一种基于listwise算法在线学习排序方法,在保证listwise算法性能的前提下,实现在线处理和提高算法的有效性。一种基于listwise算法在线学习排序方法,首先使用listwise算法的思想,将查询关键字对应的候选记录排序列表作为训练实例;然后利用在线学习排序算法的训练过程,在应用训练实例时,训练实例按照顺序到达神经网络,并且仅被扫描一次;最后通过最小化损失值获取精准的排序模型;所述的训练过程具体如下:1)初始化参数:ηt本文档来自技高网
...

【技术保护点】
1.一种基于listwise算法在线学习排序方法,其特征在于:首先使用listwise算法的思想,将查询关键字对应的候选记录排序列表作为训练实例;然后利用在线学习排序算法的训练过程,在应用训练实例时,训练实例按照顺序到达神经网络,并且仅被扫描一次;最后通过最小化损失值获取精准的排序模型;所述的训练过程具体如下:1)初始化参数:ηt,ε,ωt;ηt其中为第t次迭代过程中的学习率;ε为容错率;ωt为第t次迭代过程中的权重系数;2)输入Xt,yt;3)计算

【技术特征摘要】
1.一种基于listwise算法在线学习排序方法,其特征在于:首先使用listwise算法的思想,将查询关键字对应的候选记录排序列表作为训练实例;然后利用在线学习排序算法的训练过程,在应用训练实例时,训练实例按照顺序到达神经网络,并且仅被扫描一次;最后通过最小化损失值获取精准的排序模型;所述的训练过程具体如下:1)初始化参数:ηt,ε,ωt;ηt其中为第t次迭代过程中的学习率;ε为容错率;ωt为第t次迭代过程中的权重系数;2)输入Xt,yt;3)计算其中排序数据的特征值用X=[x1,x2,….,xn]∈Rdxn表示,Rdxn表示的就是d行n列的实数矩阵,Xt表示在第t次迭代过程中所用到的特征值,并且这些数据的标签值是Γ={l(1),l(2),…,l(n)},其中l(i)∈{r1,r2,…,rk}表示xi的标签值,r1,r2,…,rk表示所有的标签值;y是关于X的排序列表,y(i)是在排序列表y中排在第i个位置的数据索引值;4)计算ωt+1:5)计算第t次迭代过程中的损失值Losst=τ(f;X,y),若Losst>ε,则执行步骤2);否则,输出ωt,其中:其中τ(·)表示损失函数,f:λ→R是从数据特征到预测值的映射函数关系,f(x)=ωTx,是一个线性函数关系。2.根据权利要求1所述的一种基于listwise算法在线学习排序方法,其特征在于:所述的排序列表满足对于任意的xi和xj,如果xi≥xj,则li≥lj也成立。3.根据权利要求1所...

【专利技术属性】
技术研发人员:殷海兵李杭黄晓峰
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1