一种搜索引擎的结果排序方法及系统的制作方法

文档序号:6501242阅读:221来源:国知局
一种搜索引擎的结果排序方法及系统的制作方法
【专利摘要】本申请提供了一种搜索引擎的结果排序方法及装置;方法包括:根据历史查询数据选取样本对,每一样本对中包括一个查询词及通过该查询词搜索得到的至少两个商品,设定所述商品在所述样本对中的相对排序;计算样本对中每一商品在该查询词下的各排序特征的特征分值;根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重;对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和,根据加权求和的结果进行商品的排序。本申请能对搜索引擎结果的排序进行优化。
【专利说明】一种搜索引擎的结果排序方法及系统

【技术领域】
[0001]本发明涉及数据处理领域,尤其涉及一种排序方法及系统。

【背景技术】
[0002]随着电子商务网站的发展,搜索排序效果的好坏,越来越多的影响到用户的搜索以及购物体验。搜索引擎系统中,搜索结果的排序受很多因素影响,这些因素是排序系统在不断的迭代过程中,通过积累用户反馈,分析搜索行为数据获得的。这些因素通过一组特定的权重组合来对线上排序效果进行影响。目前,商品搜索引擎通过多特征的组合,在全局上设定一个排序模型,这组模型可以用于所有商品的排序。
[0003]在商品搜索结果的排序模型中,针对商品质量、商品文本匹配度、商品类目点击匹配度、商品价格匹配度、以及商品销量等多个排序特征都建立了评价机制。每组评价机制的背后都有一组算法模型或者是专家知识来对全网商品进行评价,评价都是以商品在上述排序特征上的特征分值来体现,这些特征分值组成了排序模型中的基础特征。
[0004]这些基础特征在实际应用的线上排序时,针对一个特定Query (查询)召回的商品列表中,商品的排序所依据的商品的得分是按照商品排序特征的特征分值的加权求和得到的。这里就涉及到了一个加权权重的问题,不同排序特征的特征分值在排序过程中,权重是不同的,例如:商品销量及商品类目的特征分值就有较高的权重,因为它们是用户直接关心的内容。相对而言,在电子商务的搜索引擎中,对于评价商品文本匹配度的特征分值就可以设定较低的权重。
[0005]目前,线上对所有商品的排序都同时使用一组排序权重参数,这组参数通过专家的专业知识进行选取,同时选取的这组排序权重参数会在线上通过A/B Test的方法进行验证。A/B Test是指在对搜索引擎排序效果进行优化时,需要比较优化算法的优劣,将系统全部查询流量均分成若干等份,选择其中一个等份的查询流量作为基础测试流量,调用既有系统算法对搜索结果排序,并获得用户反馈的行为数据,计算排序效果。对于其他等份的查询流量调用新的优化后的算法对搜索结果排序,并获得用户反馈的行为数据,计算排序效果。这样通过一段时间的对比实验,可以得出在不同搜索排序算法下的排序效果的对比结果。通过所述对比结果,可以选取排序效果好的搜索排序算法使用的权重参数。
[0006]这种权重参数选取方法存在三个大的缺陷:
[0007](一)随着时间的推移,前期确定的权重参数可能不再符合目前线上的实际应用环境。目前的情况是,一旦既有的基础特征的权重参数确定后,后期就不会对该权重参数做调整。
[0008](二)随着商品覆盖范围的增多,一组统一的线上权重参数已经无法满足对所有商品的排序,单一模型已经不能完全最大化所有类目商品的收益了。即,对某个行业或类目的商品适合的权重参数,对另一个行业或类目的商品可能就是不合适的。
[0009](三)由于线上的权重参数都是通过专家的既有的专业知识确定的,这就导致了模型不能自主学习,自动更新。同时,每一组的模型参数的确定,都需要经过多次A/B Test,这其中因为经验知识的缺乏,可能导致实验时间过长,或者实验效果很差;而且这个过程中,会消耗大量的开发测试资源,同时权重的调整试验也有可能影响搜索的整体收益。
[0010]以上三个问题都有可能导致搜索排序结果较差,进而影响线上交易。


【发明内容】

[0011]本申请要解决的技术问题是如何对搜索引擎结果的排序进行优化。
[0012]为了解决上述问题,本申请提供了一种搜索引擎的结果排序方法,包括:
[0013]根据历史查询数据选取样本对,每一样本对中包括一个查询词及通过该查询词搜索得到的至少两个商品,根据样本对中用户通过该查询词搜索得到所述商品并对所述商品发生的行为特征设定所述商品在所述样本对中的相对排序;
[0014]计算样本对中每一商品在该查询词下的各排序特征的特征分值;
[0015]根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重;
[0016]对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和,根据加权求和的结果进行商品的排序。
[0017]进一步地,所述根据历史查询数据选取样本对、根据样本对中用户通过该查询词搜索得到所述商品并对所述商品发生的行为特征设定所述商品在所述样本对中的相对排序的步骤包括:
[0018]对于用户历史使用的各查询词分别进行以下操作:
[0019]根据搜索引擎的访问日志、点击日志、以及购买日志,分别统计在预定时间长度中该查询词所召回的各商品在该查询词下的点击率或转化率;
[0020]计算该查询词所召回的每两个商品在该查询词下的点击率/转化率之间的差值,将这些差值的绝对值的均值作为该查询词的点击率截断阈值/转化率截断阈值;
[0021]在该查询词所召回的商品中,将点击率之差的绝对值大于该查询词对应的点击率截断阈值的两个商品和该查询词作为一个样本对;该样本对中,设定在该查询词下点击率闻的商品在所述样本对中的排序优于另一商品。
[0022]进一步地,计算样本对中每一商品在该查询词下的各排序特征的特征分值的步骤包括:
[0023]对于各样本对分别进行以下操作:
[0024]通过该样本对中的查询词,获取该查询词下的各排序特征;
[0025]在该样本对中商品的结构化描述数据中,提取用于计算所获取的各排序特征的特征分值的属性字段;
[0026]根据提取的属性字段计算所获取的各排序特征的特征分值;
[0027]将该样本对中的商品替换为根据该商品的属性字段计算得到的一组排序特征的特征分值。
[0028]进一步地,根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重的步骤包括:
[0029]对于待建模的样本对按照预定比例分为训练样本和测试样本;
[0030]根据训练样本里各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序进行机器学习模型训练,获得各排序特征的权重作为模型的输出结果;
[0031]通过测试样本对所述模型的输出结果进行准确率检验;
[0032]重复根据训练样本进行机器学习模型训练的步骤及准确率检验的步骤,直到准确率达到最优;将准确率达到最优时模型的输出结果作为最终得到的各排序特征的权重。
[0033]进一步地,根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练的步骤包括:
[0034]根据查询词所属类目,为该查询词所在的样本对标注该类目的标识;按照样本对的类目的标识,将样本对分为不同类目的样本集合;
[0035]分别根据不同类目的样本集合中各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到该类目中各排序特征的权重。
[0036]进一步地,对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和的步骤包括:
[0037]按照用户当前输入的查询词对应的类目的标识,获得该查询词下的各排序特征,以及该查询词对应的类目中各排序特征的权重;
[0038]获取当前输入的查询词召回的商品列表;
[0039]根据当前输入的查询词下的排序特征,以及所召回的商品列表中各商品的属性字段,分别计算所述商品列表中各商品在当前输入的查询词下各排序特征的特征分值;
[0040]根据所获取的权重和计算出的各排序特征的特征分值,对所召回的商品列表中各商品分别进行各排序特征的特征分值的加权求和。
[0041]本申请还提供了一种搜索引擎的结果排序装置,包括:
[0042]样本选取模块,用于根据历史查询数据选取样本对,每一样本对中包括一个查询词及通过该查询词搜索得到的至少两个商品,根据样本对中用户通过该查询词搜索得到所述商品并对所述商品发生的行为特征设定所述商品在所述样本对中的相对排序;
[0043]特征分值获取模块,用于计算样本对中每一商品在该查询词下的各排序特征的特征分值;
[0044]模型训练模块,用于根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重;
[0045]排序模块,用于对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和,根据加权求和的结果进行商品的排序。
[0046]进一步地,所述样本选取模块根据历史查询数据选取样本对是指:
[0047]所述样本选取模块对于用户历史使用的各查询词分别进行以下操作:
[0048]根据搜索引擎的访问日志、点击日志、以及购买日志,分别统计在预定时间长度中该查询词所召回的各商品在该查询词下的点击率或转化率;计算该查询词所召回的每两个商品在该查询词下的点击率/转化率之间的差值,将这些差值的绝对值的均值作为该查询词的点击率截断阈值/转化率截断阈值;在该查询词所召回的商品中,将点击率之差的绝对值大于该查询词对应的点击率截断阈值的两个商品和该查询词作为一个样本对;该样本对中,设定在该查询词下点击率高的商品在所述样本对中的排序优于另一商品。
[0049]进一步地,所述特征分值计算样本对中每一商品在该查询词下的各排序特征的特征分值是指:
[0050]所述特征分值获取模块对于各样本对分别进行以下操作:
[0051]通过该样本对中的查询词,获取该查询词下的各排序特征;在该样本对中商品的结构化描述数据中,提取用于计算所获取的各排序特征的特征分值的属性字段;根据提取的属性字段计算所获取的各排序特征的特征分值;将该样本对中的商品替换为根据该商品的属性字段计算得到的一组排序特征的特征分值。
[0052]进一步地,所述模型训练模块根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重是指:
[0053]所述模型训练模块对于待建模的样本对按照预定比例分为训练样本和测试样本;根据训练样本里各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序进行机器学习模型训练,获得各排序特征的权重作为模型的输出结果;通过测试样本对所述模型的输出结果进行准确率检验;重复根据训练样本进行机器学习模型训练及准确率检验的操作,直到准确率达到最优;将准确率达到最优时模型的输出结果作为最终得到的各排序特征的权重。
[0054]进一步地,所述样本选取模块还用于根据查询词所属类目,为该查询词所在的样本对标注该类目的标识;按照样本对的类目的标识,将样本对分为不同类目的样本集合;
[0055]所述模型训练模块根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重是指:
[0056]所述模型训练模块分别根据不同类目的样本集合中各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到该类目中各排序特征的权重。
[0057]进一步地,所述排序模块对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和是指:
[0058]所述排序模块按照用户当前输入的查询词对应的类目的标识,获得该查询词下的各排序特征,以及该查询词对应的类目中各排序特征的权重;获取当前输入的查询词召回的商品列表;根据当前输入的查询词下的排序特征,以及所召回的商品列表中各商品的属性字段,分别计算所述商品列表中各商品在当前输入的查询词下各排序特征的特征分值;根据所获取的权重和计算出的各排序特征的特征分值,对所召回的商品列表中各商品分别进行各排序特征的特征分值的加权求和。
[0059]本申请的至少一个实施例中,能够自动进行机器学习模型的训练,及时更新权重参数,从而优化搜索排序结果,提升用户搜索及购物体验。本申请的又一个实施例中,分类目进行模型训练,从而得到不同行业所采用的权重参数。本申请的又一个实施例中,在线下进行模型效果的预测,可减少A/B Test时间,有效提升排序效果。当然,实施本申请的任一产品必不一定需要同时达到以上所述的所有优点。

【专利附图】

【附图说明】
[0060]图1是实施例一的一种排序方法的流程示意图;
[0061]图2是实施例一中对于各查询词选取样本对的流程不意图;
[0062]图3是实施例一中对于各样本对进行特征分值替换的流程示意图;
[0063]图4是实施例一的一个例子的流程示意图。

【具体实施方式】
[0064]下面将结合附图及实施例对本申请的技术方案进行更详细的说明。
[0065]需要说明的是,如果不冲突,本申请实施例以及实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0066]实施例一,一种搜索引擎的结果排序方法,如图1所示,包括:
[0067]S101、根据历史查询数据选取样本对,每一样本对中包括一个查询词及通过该查询词搜索得到的至少两个商品,根据样本对中用户通过该查询词搜索得到所述商品并对所述商品发生的行为特征设定所述商品在样本对中的相对排序;
[0068]S102、计算样本对中每一商品在该查询词下的各排序特征的特征分值;
[0069]S103、根据各样本对中商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,获得各排序特征的权重;
[0070]S104、对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和,根据加权求和的结果进行商品的排序。
[0071]本实施例中,在收到查询请求时,根据机器学习得到的各排序特征的权重计算每一商品的排序分值,从而对该查询召回的商品列表中(即该查询请求搜索得到的商品列表)的商品排序。
[0072]在本实施例的一种备选方案中,用户对所述商品发生的行为特征包括用户对所述商品在搜索到该商品的查询词下的点击率和/或转化率。
[0073]如图2所示,在一个具体的实施中所述步骤SlOl可以包括,对于用户历史使用的各查询词分别进行以下操作:
[0074]步骤11、根据搜索引擎的访问日志、点击日志、以及购买日志,分别统计在预定时间长度(比如但不限于7天)中该查询词所召回的各商品在该查询词下的CTR(ClickThrough Rate,点击率);
[0075]其中,商品在查询词下的点击率或转化率表示用户通过该查询词搜索到该商品并对所述商品进行点击或购买的次数与该商品通过该查询词而展现的次数的比率。
[0076]步骤12、计算该查询词所召回的每两个商品在该查询词下的点击率之间的差值,将这些差值的绝对值的均值作为该查询词对应的点击率截断阈值CTR_THRELD ;比如查询词召回的商品有商品A、商品B和商品C,在该查询词下,商品A的点击率为CTR A,商品B的点击率为CTR B,商品C的点击率为CTR C,则先分别计算CTR A和CTR B的差值、CTR A和CTR C的差值、CTR C和CTR B的差值,然后再将这些差值的绝对值的均值作为CTR_THRELD ;
[0077]步骤13、在该查询词所召回的商品中,将点击率之差的绝对值大于该查询词对应的点击率截断阈值的两个商品和该查询词作为一个样本对;该样本对中,设定在该查询词下点击率高的商品在所述样本对中的排序优于另一商品;即:对于该查询词所召回的各商品,如果该查询词到第一商品的点击率减去该查询词到第二商品的点击率所得到的差值,大于该查询词的点击率截断阈值,则将该查询词、第一商品、第二商品作为一个样本对。在该样本对中,如果第一商品的点击率高于第二商品的点击率,则在该查询词对应的查询条件下,可以认为第一商品相较于第二商品更贴近用户的搜索意图,与该查询词的相关性更高。因此,对于在该样本对中的相关性排序,可以设定第一商品优于第二商品。即所述商品在样本对的相对排序中,点击率高的商品优于另一商品。当然,可以理解的,在历史的查询中,第一商品在搜索结果中的排序并不一定优先于第二商品。
[0078]对于一个查询词,可能会得到一个或多个样本对;最后,还可以将所得到的各查询词对应的样本对一起保存为样本集合。
[0079]上述步骤11中,也可以是统计在预定时间长度中该查询词所召回的各商品在该查询词下的转化率;相应的,步骤12中是计算该查询词所召回的每两个商品在该查询词下的转化率之间的差值,将这些差值的绝对值的均值作为该查询词对应的转化率截断阈值;步骤13中则是将转化率之差的绝对值大于该查询词对应的转化率截断阈值的两个商品作为一个样本对;可以设定该样本对中在该查询词下的转化率高的商品和该查询词的相关性闻于另一商品。即在样本对中的相对排序中,设定转化率闻的商品优于另一商品。
[0080]其中,在某一查询词下商品的CTR是指用户在搜索引擎中按照该查询词搜索到该商品并在该商品上发生点击的次数与按照该查询词进行搜索的次数的比值。在某一查询词下商品的转化率是指用户在搜索引擎中按照该查询词搜索到该商品并购买该商品的次数与按照该查询词进行搜索的次数的比值。
[0081]这样获取的样本集合中的各样本可以表示为(query, baobei_A, baobei_B),其中query为查询词,第一商品baobei_A和第二商品baobei_B都是查询词的召回结果(即搜索结果),且根据用户在第一商品和第二商品的行为统计,确定了第一商品和第二商品在样本对中的相对排序。
[0082]在传统的排序模型中,训练样本都是通过人工标注出来的,这样做的弊端是,需要消耗大量的人力成本。本备选方案采用Pair-wise (样本对)的方法,提取的样本只需要标注一个查询下,商品A和商品B中哪一个商品的优先度高,并不需要查询到每个商品的排序分值。通过搜索引擎中的用户行为,提取这类样本对作为样本集合。
[0083]在对用户当前输入的查询词获得的商品搜索结果进行排序时,需要根据商品在各排序特征上的特征分值进行加权求和后的综合排序分值得到商品的排序,每一排序特征对用户的搜索意图的影响程度可能不一样,因此,每一排序特征对应的权重参数也可能不同。
[0084]本备选方案中,为了提升查询词下搜索结果的点击率或转化率,对各排序特征的权重参数进行优化。通过机器学习的方式建立排序特征、权重参数与排序结果的关系模型,对排序中各排序特征的权重参数进行预估。在训练模型的过程中,要根据提升目标来提取所需要的样本集合。如果,现在的主要目标是提高查询词下搜索结果的点击率CTR,因此以用户的点击行为作为提取样本的标准。如果主要目标是提高转化率,则以购买行为作为提取样本的标准。在其它备选方案中,对于不同的目标可以选择不同的样本选取策略。
[0085]在本备选方案的一种实施方式中,还可以进一步根据查询词所属类目,为该查询词所在的样本对标注该类目的标识。查询词所属类目可事先指定。
[0086]在本实施例的一种备选方案中,所述步骤S102具体可以包括:
[0087]如图3所示,对于各样本对分别进行以下操作:
[0088]步骤21、通过该样本对中的查询词,获取该查询词下的各排序特征;
[0089]步骤22、在该样本对中商品的结构化描述数据中,提取用于计算所获取的各排序特征的特征分值的属性字段;其中,属性字段即结构化描述数据中一个数据项,不同特征分值的计算可能需要特定的几个数据项,可以事先指定特征分值和数据项之间的对应关系;从结构化描述数据中获得数据项时既可以是从数据库中查询得到,也可以是从分布式存储服务中提取得到;
[0090]步骤23、根据提取的属性字段计算所获取的各排序特征的特征分值;
[0091]步骤24、将该样本对中的商品替换为根据该商品的属性字段计算得到的一组排序特征的特征分值,这样就可以还原出该查询词下每个商品的各排序特征的特征分值。
[0092]此时,样本对表示为:
[0093](query, featurel_A, feature2_A, , featureN_A, featurel_B, feature2_
B,..., featureN_B)
[0094]其中,featurel_A,feature2_A, , featureN_A 是查询词 query 对应的第一商品A在各排序特征上的特征分值列表,feature 1_B? feature2_B,..., featureN_B是查询词query对应的第二商品A在各排序特征上的特征分值列表;N为特征分值的个数。
[0095]如果样本对已标注有类目标识,则步骤21中还可以进一步获取查询词的分词信息,查询词对应的类目分布信息,以及查询词对应的其它信息。
[0096]在本实施例的一种备选方案中,所述步骤S103具体可以包括:
[0097]对于待建模的样本对按照预定比例(比如但不限于为2: I)分为训练样本和测试样本;
[0098]根据训练样本里各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序进行机器学习模型训练,获得各排序特征的权重作为模型的输出结果,这组权重表征每个排序特征在排序时的有效性;
[0099]通过测试样本对所述模型的输出结果进行准确率检验;
[0100]重复根据训练样本进行机器学习模型训练及准确率检验的步骤,直到准确率达到最优;将准确率达到最优时模型的输出结果作为最终得到的各排序特征的权重。
[0101]在该备选方案的一种实施方式中,所述根据训练样本进行建模的步骤中可以但不限于使用RankSVM作为模型训练算法。
[0102]RankSVM是一种pair-wise的排序分类算法,它可以对一组查询词下属性字段的排序样本进行学习,获得到排序模型。因为RankSVM是基于SVM进行开发的,它支持各种不同的核函数进行分类,包括高斯核、多项式核、线性核等。其中,高斯核和多项式核可以将低维问题转化为高维问题,从而提高模型的准确率,但是这两种核的模型训练速度较慢,同时在线上预测是复杂度也较高。而线性核虽然泛化能力较弱,但是它训练速度较快,而且目前系统的线性排序方式比较容易结合。因此,比较优选的方案是使用线性核。
[0103] 在别的实施方式中,模型训练也可以采用List-wise,获得多目标集成优化的方法,来提高模型预测的准确性。
[0104]对原始的样本对需转换为RankSVM所需的特定样本格式,而基于上述两步骤得到的样本对中两个商品的各排序特征的特征分值列表如下,其中“ I”和“O”是用于表示两个商品在样本对中的相对排序的标识,具有标识“I”的商品为排序在前的商品,具有标识“O”的商品为排序在后的商品:
[0105](I, featurel_A, feature2_A,..., featureN_A)
[0106](O, feature 1_Β? feature2_B, , featureN_B)
[0107]可根据该样本对采用RankSVM算法得到排序模型。
[0108]在本实施例的一种备选方案中,步骤S103具体可以包括:
[0109]根据查询词所属类目,为该查询词所在的样本对标注该类目的标识;按照样本对的类目的标识,将样本对分为不同类目的样本集合;
[0110]分别根据不同类目的样本集合中各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到该类目中各排序特征的权重。
[0111]通过离线训练获得的各排序特征的权重需要在线上使用;由于针对不同类目下的查询词对应的样本集合会为各类目分别训练出一个模型,不同类目下的排序特征会有不同的权重,使线上排序根据不同类目的查询词有不同的效果。
[0112]在该备选方案的一种实施方式中,对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和的步骤具体可以包括:
[0113]按照用户当前输入的查询词对应的类目的标识PrediCt_Cat,获得该查询词下的各排序特征,以及该查询词对应的类目的排序模型model_cat,即该类目中各排序特征的权重:(weight_l, weight_2,...,weight_N);
[0114]获取当前输入的查询词召回的商品列表;
[0115]根据当前输入的查询词下的排序特征,以及所召回的商品列表中各商品的属性字段,分别计算所述商品列表中各商品在当前输入的查询词下各排序特征的特征分值;每个商品的计算结果可以表示为如下的特征分值向量:
[0116](featurel, feature2,..., featureN);
[0117]根据所获取的权重和计算出的各排序特征的特征分值,对所召回的商品列表中各商品分别进行各排序特征的特征分值的加权求和,即按照下式分别计算各商品的得分score:

N
[0118]u <" = ^ ( fcaliire — / * weight _/);

(=1
[0119]全部计算完成后就可以基于每个商品的得分,对商品列表中的各商品进行排序了。
[0120]一个具体例子如图4所示,当用户请求在域名为XXX的网页中使用查询词“手机”进行商品查询时,查询服务器(QP服务器)将该查询请求发给搜索引擎;搜索引擎按照查询词的类目选择排序模型,比如图4中的服务行业排序模型、手机行业排序模型或其它行业排序模型;然后根据排序模型对查询词召回的商品进行排序,并通过查询服务器返回给用户。
[0121]实施例二,一种搜索引擎的结果排序装置,包括:
[0122]样本选取模块,用于根据历史查询数据选取样本对,每一样本对中包括一个查询词及通过该查询词搜索得到的至少两个商品,根据样本对中用户通过该查询词搜索得到所述商品并对所述商品发生的行为特征设定所述商品在所述样本对中的相对排序;
[0123]特征分值获取模块,用于计算样本对中每一商品在该查询词下的各排序特征的特征分值;
[0124]模型训练模块,用于根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重;
[0125]排序模块,用于对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和,根据加权求和的结果进行商品的排序。
[0126]本实施例的一种备选方案中,所述样本选取模块根据历史查询数据选取样本对具体可以是指:
[0127]所述样本选取模块对于用户历史使用的各查询词分别进行以下操作:
[0128]根据搜索引擎的访问日志、点击日志、以及购买日志,分别统计在预定时间长度中该查询词所召回的各商品在该查询词下的点击率或转化率;计算该查询词所召回的每两个商品在该查询词下的点击率/转化率之间的差值,将这些差值的绝对值的均值作为该查询词的点击率截断阈值/转化率截断阈值;在该查询词所召回的商品中,将点击率之差的绝对值大于该查询词对应的点击率截断阈值的两个商品和该查询词作为一个样本对;该样本对中,设定在该查询词下点击率高的商品在所述样本对中的排序优于另一商品。
[0129]本实施例的一种备选方案中,所述特征分值计算样本对中每一商品在该查询词下的各排序特征的特征分值是指:
[0130]所述特征分值获取模块对于各样本对分别进行以下操作:
[0131]通过该样本对中的查询词,获取该查询词下的各排序特征;在该样本对中商品的结构化描述数据中,提取用于计算所获取的各排序特征的特征分值的属性字段;根据提取的属性字段计算所获取的各排序特征的特征分值;将该样本对中的商品替换为根据该商品的属性字段计算得到的一组排序特征的特征分值。
[0132]本实施例的一种备选方案中,所述模型训练模块根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重是指:
[0133]所述模型训练模块对于待建模的样本对按照预定比例分为训练样本和测试样本;根据训练样本里各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序进行机器学习模型训练,获得各排序特征的权重作为模型的输出结果;通过测试样本对所述模型的输出结果进行准确率检验;重复根据训练样本进行机器学习模型训练及准确率检验的操作,直到准确率达到最优;将准确率达到最优时模型的输出结果作为最终得到的各排序特征的权重。
[0134]该备选方案的一些实施方式中,可以通过RankSVM对训练样本进行建模,使用线性核进行训练。
[0135]本实施例的一种备选方案中,所述样本选取模块还用于根据查询词所属类目,为该查询词所在的样本对标注该类目的标识;按照样本对的类目的标识,将样本对分为不同类目的样本集合;
[0136]该备选方案中,所述模型训练模块根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重是指:
[0137]所述模型训练模块分别根据不同类目的样本集合中各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到该类目中各排序特征的权重。
[0138]该备选方案中,所述排序模块对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和是指:
[0139]所述排序模块按照用户当前输入的查询词对应的类目的标识,获得该查询词下的各排序特征,以及该查询词对应的类目中各排序特征的权重;获取当前输入的查询词召回的商品列表;根据当前输入的查询词下的排序特征,以及所召回的商品列表中各商品的属性字段,分别计算所述商品列表中各商品在当前输入的查询词下各排序特征的特征分值;根据所获取的权重和计算出的各排序特征的特征分值,对所召回的商品列表中各商品分别进行各排序特征的特征分值的加权求和。
[0140]本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
[0141]当然,本申请还可有其他多种实施例,在不背离本申请精神及其实质的情况下,熟悉本领域的技术人员当可根据本申请作出各种相应的改变和变形,但这些相应的改变和变形都应属于本申请的权利要求的保护范围。
【权利要求】
1.一种搜索引擎的结果排序方法,其特征在于,包括: 根据历史查询数据选取样本对,每一样本对中包括一个查询词及通过该查询词搜索得到的至少两个商品,根据样本对中用户通过该查询词搜索得到所述商品并对所述商品发生的行为特征设定所述商品在所述样本对中的相对排序; 计算样本对中每一商品在该查询词下的各排序特征的特征分值; 根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重; 对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和,根据加权求和的结果进行商品的排序。
2.如权利要求1所述的方法,其特征在于,所述根据历史查询数据选取样本对、根据样本对中用户通过该查询词搜索得到所述商品并对所述商品发生的行为特征设定所述商品在所述样本对中的相对排序的步骤包括: 对于用户历史使用的各查询词分别进行以下操作: 根据搜索引擎的访问日志、点击日志、以及购买日志,分别统计在预定时间长度中该查询词所召回的各商品在该查询词下的点击率或转化率; 计算该查询词所召回的 每两个商品在该查询词下的点击率/转化率之间的差值,将这些差值的绝对值的均值作为该查询词的点击率截断阈值/转化率截断阈值; 在该查询词所召回的商品中,将点击率之差的绝对值大于该查询词对应的点击率截断阈值的两个商品和该查询词作为一个样本对;该样本对中,设定在该查询词下点击率高的商品在所述样本对中的排序优于另一商品。
3.如权利要求1所述的方法,其特征在于,计算样本对中每一商品在该查询词下的各排序特征的特征分值的步骤包括: 对于各样本对分别进行以下操作: 通过该样本对中的查询词,获取该查询词下的各排序特征; 在该样本对中商品的结构化描述数据中,提取用于计算所获取的各排序特征的特征分值的属性字段; 根据提取的属性字段计算所获取的各排序特征的特征分值; 将该样本对中的商品替换为根据该商品的属性字段计算得到的一组排序特征的特征分值。
4.如权利要求1所述的方法,其特征在于,根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重的步骤包括: 对于待建模的样本对按照预定比例分为训练样本和测试样本; 根据训练样本里各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序进行机器学习模型训练,获得各排序特征的权重作为模型的输出结果; 通过测试样本对所述模型的输出结果进行准确率检验; 重复根据训练样本进行机器学习模型训练的步骤及准确率检验的步骤,直到准确率达到最优;将准确率达到最优时模型的输出结果作为最终得到的各排序特征的权重。
5.如权利要求1到4中任一项所述的方法,其特征在于,根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练的步骤包括: 根据查询词所属类目,为该查询词所在的样本对标注该类目的标识;按照样本对的类目的标识,将样本对分为不同类目的样本集合; 分别根据不同类目的样本集合中各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到该类目中各排序特征的权重。
6.如权利要求5所述的方法,其特征在于,对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和的步骤包括: 按照用户当前输入的查询词对应的类目的标识,获得该查询词下的各排序特征,以及该查询词对应的类目中各排序特征的权重; 获取当前输入的查询词召回的商品列表; 根据当前输入的查询词下的排序特征,以及所召回的商品列表中各商品的属性字段,分别计算所述商品列表中各商品在当前输入的查询词下各排序特征的特征分值; 根据所获取的权重和计算出的各排序特征的特征分值,对所召回的商品列表中各商品分别进行各排序特征的 特征分值的加权求和。
7.一种搜索引擎的结果排序装置,其特征在于,包括: 样本选取模块,用于根据历史查询数据选取样本对,每一样本对中包括一个查询词及通过该查询词搜索得到的至少两个商品,根据样本对中用户通过该查询词搜索得到所述商品并对所述商品发生的行为特征设定所述商品在所述样本对中的相对排序; 特征分值获取模块,用于计算样本对中每一商品在该查询词下的各排序特征的特征分值; 模型训练模块,用于根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重; 排序模块,用于对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和,根据加权求和的结果进行商品的排序。
8.如权利要求7所述的装置,其特征在于,所述样本选取模块根据历史查询数据选取样本对是指: 所述样本选取模块对于用户历史使用的各查询词分别进行以下操作: 根据搜索引擎的访问日志、点击日志、以及购买日志,分别统计在预定时间长度中该查询词所召回的各商品在该查询词下的点击率或转化率;计算该查询词所召回的每两个商品在该查询词下的点击率/转化率之间的差值,将这些差值的绝对值的均值作为该查询词的点击率截断阈值/转化率截断阈值;在该查询词所召回的商品中,将点击率之差的绝对值大于该查询词对应的点击率截断阈值的两个商品和该查询词作为一个样本对;该样本对中,设定在该查询词下点击率高的商品在所述样本对中的排序优于另一商品。
9.如权利要求7所述的装置,其特征在于,所述特征分值计算样本对中每一商品在该查询词下的各排序特征的特征分值是指: 所述特征分值获取模块对于各样本对分别进行以下操作: 通过该样本对中的查询词,获取该查询词下的各排序特征;在该样本对中商品的结构化描述数据中,提取用于计算所获取的各排序特征的特征分值的属性字段;根据提取的属性字段计算所获取的各排序特征的特征分值;将该样本对中的商品替换为根据该商品的属性字段计算得到的一组排序特征的特征分值。
10.如权利要求7所述的装置,其特征在于,所述模型训练模块根据各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重是指: 所述模型训练模块对于待建模的样本对按照预定比例分为训练样本和测试样本;根据训练样本里各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序进行机器学习模型训练,获得各排序特征的权重作为模型的输出结果;通过测试样本对所述模型的输出结果进行准确率检验;重复根据训练样本进行机器学习模型训练及准确率检验的操作,直到准确率达到最优;将准确率达到最优时模型的输出结果作为最终得到的各排序特征的权重。
11.如权利要求7到10中任一项所述的装置,其特征在于: 所述样本选取模块还用于根据查询词所属类目,为该查询词所在的样本对标注该类目的标识;按照样本对的类目的标识,将样本对分为不同类目的样本集合; 所述模型训练模块根据 各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到各排序特征的权重是指: 所述模型训练模块分别根据不同类目的样本集合中各样本对中的商品在各排序特征上的特征分值及各样本对中所述商品的相对排序,进行机器学习模型的训练,得到该类目中各排序特征的权重。
12.如权利要求11所述的装置,其特征在于,所述排序模块对用户当前输入的查询词召回的商品列表中的各商品,按照所得到的权重进行所述商品列表中每一商品在当前输入的查询词下各排序特征的特征分值的加权求和是指: 所述排序模块按照用户当前输入的查询词对应的类目的标识,获得该查询词下的各排序特征,以及该查询词对应的类目中各排序特征的权重;获取当前输入的查询词召回的商品列表;根据当前输入的查询词下的排序特征,以及所召回的商品列表中各商品的属性字段,分别计算所述商品列表中各商品在当前输入的查询词下各排序特征的特征分值;根据所获取的权重和计算出的各排序特征的特征分值,对所召回的商品列表中各商品分别进行各排序特征的特征分值的加权求和。
【文档编号】G06Q30/00GK104077306SQ201310105175
【公开日】2014年10月1日 申请日期:2013年3月28日 优先权日:2013年3月28日
【发明者】王 义, 曾安祥 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1