CN105468628B - 一种排序方法及装置 - Google Patents
一种排序方法及装置 Download PDFInfo
- Publication number
- CN105468628B CN105468628B CN201410448984.XA CN201410448984A CN105468628B CN 105468628 B CN105468628 B CN 105468628B CN 201410448984 A CN201410448984 A CN 201410448984A CN 105468628 B CN105468628 B CN 105468628B
- Authority
- CN
- China
- Prior art keywords
- business object
- value
- conversion
- characteristic value
- historical
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供了一种排序方法及装置,所述方法包括:获取待排序的多个业务对象;针对每个业务对象分别获取对应的排序特征值;基于每个业务对象对应的排序特征值对多个业务对象进行排序;每个业务对象对应的排序特征值至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出;所述权重值的获取过程包括:从多个业务对象中选取训练业务对象;获取训练业务对象的实际转化集合以及排序特征集合,计算实际转化集合和排序特征集合的差异度;获取所述差异度最小时的为浏览特征值和转化特征值分别设置的权重值。可见本申请提高了排序结果的准确性,从而提高了用户侧的处理效率以及减少网站服务器的资源浪费。
Description
技术领域
本申请涉及互联网信息技术,尤其是涉及一种排序方法及装置。
背景技术
互联网网站通常会向用户展示多个业务对象,以使得用户进行浏览并且执行对应的转化操作。目前,各个网站在展示多个业务对象时,往往都会基于一定的排序规则,例如,用户在搜索引擎进行搜索后,搜索结果会按照预设的排序方式进行展示。
显然,为了能够便于用户快速地定位到所需要的业务对象,也就是为了使得业务对象的排序结果被用户接受的概率更大,如何设置合理的排序方式,是最为关键的内容。
现有技术中一种排序方式是,根据每个业务对象的排序特征值进行排序,而排序特征值通过浏览量和转化量得到,并且为浏览量和转化量设置各自的权重值。然而,经发明人研究发现,现有技术的这种方式中,排序结果的准确性很低,进一步导致用户往往需要执行多次处理操作才能定位到所需要的业务对象,不仅降低了用户侧的处理效率,还造成了网站服务器的资源浪费。
发明内容
本申请解决的技术问题在于提供一种排序方法及装置,以实现提高排序结果的准确性,从而使得用户能够快速定位到所需要的业务对象,进一步提高了用户侧的处理效率以及减少网站服务器的资源浪费。
为此,本申请解决技术问题的技术方案是:
本申请实施例提供了一种排序方法,包括:
获取待排序的多个业务对象;
针对每个业务对象分别获取对应的排序特征值;
基于每个业务对象对应的排序特征值对所述多个业务对象进行排序;
其中,每个业务对象对应的排序特征值至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出;
所述为浏览特征值和转化特征值分别设置的权重值的获取过程包括:从所述多个业务对象中选取训练业务对象;获取所述训练业务对象的实际转化量组成的实际转化集合以及排序特征值组成的排序特征集合,计算所述实际转化集合和所述排序特征集合的差异度;获取所述差异度最小时为浏览特征值和转化特征值分别设置的权重值;
所述差异度为实际概率集合和理论概率集合的相对熵,所述实际转化集合通过实际概率集合表示,所述排序特征集合通过理论概率集合表示。
本申请实施例还提供了一种排序装置,包括:
第一获取单元,获取待排序的多个业务对象;
第二获取单元,针对每个业务对象分别获取对应的排序特征值;
排序单元,基于每个业务对象对应的排序特征值对所述多个业务对象进行排序;
其中,每个业务对象对应的排序特征值由所述第二获取单元至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出;
所述第二获取单元对所述为浏览特征值和转化特征值分别设置的权重值的获取过程包括:从所述多个业务对象中选取训练业务对象;获取所述训练业务对象的实际转化量组成的实际转化集合以及排序特征值组成的排序特征集合,计算所述实际转化集合和所述排序特征集合的差异度;获取所述差异度最小时为浏览特征值和转化特征值分别设置的权重值;
所述差异度为实际概率集合和理论概率集合的相对熵,所述实际转化集合通过实际概率集合表示,所述排序特征集合通过理论概率集合表示。
通过上述技术方案可知,本申请在计算用于对每个业务对象进行排序的排序特征值时,不再依赖于通过经验设定的权重值,而是从多个业务对象中选取出训练业务对象,获取训练业务对象的实际转化集合和排序特征集合的差异度最小时所对应的权重值,并将其作为最终设置的权重值。可见本申请通过数值优化的方式实现了基于排序特征值的排序结果更加接近于基于实际转化量的排序结果,因此更加贴合用户的实际需求,即提高了排序结果的准确性,使得用户能够快速定位到所需要的业务对象,进一步提高了用户侧的处理效率以及减少网站服务器的资源浪费。
本申请实施例还提供了一种排序方法,包括:
获取待排序的多个业务对象;
针对每个业务对象分别获取对应的排序特征值;
基于每个业务对象对应的排序特征值对所述多个业务对象进行排序;
其中,每个业务对象对应的排序特征值至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出;
每个业务对象的转化特征值与该业务对象的历史转化量成正比,且与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;所述该业务对象的平均转化率为该业务对象所属类目下的所有业务对象的转化率的平均值;
每个业务对象的转化特征值为:p_value=(p_num×price')z;
其中,p_num为该业务对象的历史转化量;price'与该业务对象的价值属性值成正比,z与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;
其中,c为该业务对象的历史转化率的倒数,为该业务对象的平均转化率的倒数;
price'=[loga(price+1)+1];
其中price为该业务对象的价值属性值,2≤a≤4。
本申请实施例还提供了一种排序装置,包括:
第一获取单元,获取待排序的多个业务对象;
第二获取单元,针对每个业务对象分别获取对应的排序特征值;
排序单元,基于每个业务对象对应的排序特征值对所述多个业务对象进行排序;
其中,每个业务对象对应的排序特征值由所述第二获取单元至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出;
每个业务对象的转化特征值与该业务对象的历史转化量成正比,且与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;所述该业务对象的平均转化率为该业务对象所属类目下的所有业务对象的转化率的平均值;
每个业务对象的转化特征值为:p_value=(p_num×price')z;
其中,p_num为该业务对象的历史转化量;price'与该业务对象的价值属性值成正比,z与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;
其中,c为该业务对象的历史转化率的倒数,为该业务对象的平均转化率的倒数;
price'=[loga(price+1)+1];
其中price为该业务对象的价值属性值,2≤a≤4。
通过上述技术方案可知,本申请在计算用于对每个业务对象进行排序的排序特征值时,都基于该业务对象的转化特征值,而每个业务对象的转化特征值与该业务对象的平均转化率与历史转化率的差值的绝对值成反比,因此只有当历史转化率接近于平均转化率时,两者的差值的绝对值也就越小,此时计算出的转化特征值也就越高,最终的排序特征值也就越大。从客观角度上来说,只有接近于平均转化率,才能说明这一业务对象的转化情况是最符合实际情况,从而能够很好地打击了作弊行为,提高了排序结果的准确性,使得用户能够快速定位到所需要的业务对象,进一步提高了用户侧的处理效率以及减少网站服务器的资源浪费。
附图说明
图1为本申请实施例提供的排序方法的一种实施例的流程示意图;
图2为图1和图8所示的实施例中获取权重值的流程示意图;
图3为历史浏览量、历史转化量和转化特征值三者的对应关系图;
图4为历史转化量和转化特征值两者的对应关系图;
图5为历史浏览量和转化特征值两者的对应关系图;
图6为本申请实施例提供的排序方法的另一种实施例的流程示意图;
图7为图6所示的实施例中获取权重值的流程示意图;
图8为本申请实施例提供的排序装置的一种实施例的结构示意图;
图9为本申请实施例提供的排序方法的另一种实施例的流程示意图;
图10为本申请实施例提供的排序装置的另一种实施例的结构示意图。
具体实施方式
互联网网站通常会向用户展示多个业务对象,以使得用户进行浏览并且执行对应的转化操作。例如在电子商务网站中,业务对象可以为向用户推荐的产品,登录电子商务网站的用户可以通过浏览产品的相关信息,执行进一步的购买等转化操作。又例如在一些论坛网站中,业务对象可以为各种帖子,登录论坛网站的用户可以通过浏览帖子的相关信息,执行进一步的回复等转化操作。
目前,各个网站在展示多个业务对象时,往往都会基于一定的排序规则,例如,用户进入某个分类后,该分类下的内容会按照预设的排序方式进行展示。显然,为了能够便于用户快速地定位到所需要的业务对象,也就是为了使得业务对象的排序结果被用户接受的概率更大,如何设置合理的排序方式,是最为关键的内容。
现有技术中一种排序方式是,根据每个业务对象的排序特征值进行排序,而排序特征值通过浏览量和转化量得到,并且为浏览量和转化量设置各自的权重值,即对于任意一个业务对象,排序特征值o_value通过以下方式计算:o_value=w1×b_num+w2×p_num,其中b_num是该业务对象的浏览量,p_num是该业务对象的转化量,w1和w2是分别为浏览量和转化量设置的权重值。
然而,经发明人研究发现,现有技术在设置上述权重值w1和w2时,往往基于经验进行设定,很难实现准确,从而使得排序结果的准确性很低,进一步导致用户往往需要执行多次处理操作才能定位到所需要的业务对象,不仅降低了用户侧的处理效率,还造成了网站服务器的资源浪费。
而在本申请实施例中,提供一种排序方法及装置,以实现提高排序结果的准确性,从而使得用户能够快速定位到所需要的业务对象,进一步提高了用户侧的处理效率以及减少网站服务器的资源浪费。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1,本申请实施例提供了排序方法的一种实施例,在本实施例包括:
S101:获取待排序的多个业务对象。
本申请实施例实际上是一种对多个业务对象的排序方法,因此在进行排序之前,会获取待排序的多个业务对象。例如,获取同一类目下的所有业务对象作为待排序的多个业务对象。
在本申请实施例中,业务对象指的是各种能够通过互联网向用户展示并由用户执行对应的转化操作的对象,例如可以为向用户展示的产品、应用程序、论坛帖子、邮件列表等等。
S102:针对每个业务对象分别获取对应的排序特征值。
在本申请实施例中,每个业务对象对应的排序特征值至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出。与现有技术所不同的是,本申请实施例中的上述权重值,不再是根据经验进行人为设定,而是通过一种特定的数值优化方式进行获取,从而提高了获取的排序特征值的准确性。
S103:基于每个业务对象对应的排序特征值对待排序的多个业务对象进行排序。
在获取每个业务对象对应的排序特征值后,本申请实施例中会基于所有的业务对象所对应的排序特征值,对所有业务对象进行排序。一般情况下,排序特征值越高,则最终的排序位置也越高。而且,由于本申请实施例中获取的排序特征值更加准确,因此最终的排序结果也更加准确,即更贴合用户的实际需求。
根据步骤S102可知,在本申请实施例中,每个业务对象对应的排序特征值至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出。也就是说,用于计算每个业务对象对应的排序特征值o_value的计算参数,至少包括该业务对象的浏览特征值与转化特征值、以及为浏览特征值和转化特征值分别设置的权重值,对于其所包括的其他的计算参数,在本申请实施例中并不加以限定。
其中,对于每个业务对象的排序特征值o_value可以通过以下方式计算:
o_value=w1×b_value+w2×p_value,其中b_value是该业务对象的浏览特征值,p_value是该业务对象的转化特征值,w1是为浏览特征值设置的权重值,w2是为转化特征值设置的权重值。其中,浏览特征值与该业务对象的历史浏览量成正比,转化特征值与该业务对象的历史转化量成正比。而与现有技术所不同的是,权重值w1和w2不再是根据经验进行设定,而是通过本申请实施例提供的一种特定的数值优化方式进行获取,下面重点说明该获取过程。
参见图2所示,本申请实施例中,为浏览特征值设置和转化特征值分别设置的权重值w1和w2的获取过程包括:
S1021:从多个业务对象中选取训练业务对象。
本申请实施例中为了获取准确性更高的权重值,需要从业务对象中选取出一部分业务对象作为训练业务对象,实际上就是组成一个训练集合,通过这个训练集合使得业务对象对应的排序特征值更加贴近用户实际需求。
其中比较优选的选取方式是基于体现用户实际需求的转化量进行选取。具体选取训练业务对象时,从多个业务对象中选取出转化量排在前预设位数或者大于预设阈值的业务对象作为训练业务对象。这里转化量根据能够体现出该业务对象的实际需求的操作属性所确定,例如用户实际需求主要通过销量体现,则在电子商务网站中,可以从某一类目下的所有产品中选取出某一时段内的实际销量排在前100位的产品作为训练产品。如果业务对象的销量普遍较低,已经不能体现出用户的实际需求,并且用户的实际需求主要通过收藏量和/或关注度等其他用户属性进行体现,则可以从多个业务对象中选取出收藏量和/或关注度排在前100位的业务对象作为训练业务对象。
S1022:获取训练业务对象的实际转化量组成的实际转化集合A以及排序特征值组成的排序特征集合B。
实际上,本申请实施例中的实际转化量和排序特征值分别根据的是不同时段的数据而获取的,并且,排序特征值是根据历史时段的数据所计算出的对验证时段的预测值,而实际转化量则是根据验证时段的数据统计出的验证时段的实际值,比如,根据历史14天的数据计算出后7天的训练业务对象的排序特征值,根据后7天的数据计算出训练业务对象的实际转化量。
需要说明的是,在排序特征集合B中,由于为浏览特征值设置和转化特征值分别设置的权重值w1和w2未知,因此在排序特征值中仍然以变量w1和w2代替。
本申请实施例中一种比较优选的方式是,实际转化量组成的实际转化集合A通过实际概率组成的实际概率集合P表示;排序特征值组成的排序特征集合B通过理论概率组成的理论概率集合Q表示。因此该步骤实际上是获取实际概率集合P和理论概率集合Q。其中,每个训练业务对象的实际概率为该业务对象的实际转化量在全部训练业务对象的实际转化量之和中所占的比例,每个训练业务对象的理论概率为该业务对象的排序特征值在全部训练业务对象的排序特征值之和中所占的比例。
下面分别说明如何根据历史时段和验证时段的数据计算出训练业务对象的实际概率和理论概率。
其中,每个训练业务对象的实际概率P(i)为该业务对象的实际转化量在全部训练业务对象的实际转化量之和中所占的比例,因此,任意一个训练业务对象的实际概率P(i)通过以下方法计算:
其中,p_rnum(j)为该业务对象的实际转化量,训练业务对象的总个数为n,为全部n个训练业务对象的实际转化量之和。需要说明的是,在上式中计算p_rnum(j)和时,实际上是根据验证时段统计的转化量进行计算,仍以电子商务网站举例说明,p_rnum(j)可以是某一产品在验证时段内的实际销量。
其中,每个训练业务对象的理论概率Q(i)为该业务对象的排序特征值在全部训练业务对象的排序特征值之和中所占的比例,因此,任意一个训练业务对象的理论概率Q(i)通过以下方法计算:
其中,o_value(j)为该业务对象的排序特征值,训练业务对象的总个数为n,为全部n个训练业务对象的排序特征值之和。需要说明的是,在上式中计算o_value(j)和时,实际是根据历史时段统计的数据所计算的对验证时段的预测值,并且由于权重值w1和w2未知,因此在计算出的理论概率中仍然以变量w1和w2代替。
S1023:计算实际转化集合A以及排序特征集合B的差异度。
若实际转化集合A通过实际概率集合P表示;排序特征集合B通过理论概率集合Q表示,则本申请实施例中的差异度实际上可以为实际概率集合P和理论概率集合Q的K-L散度。
K-L散度又称为相对熵,指的是两个概率分布的非对称的度量。实际概率集合P和理论概率集合Q的K-L散度的计算公式是:
其中,P(0),P(1),P(2),…,P(n)分别为实际概率集合P中全部n个训练业务对象的实际概率,Q(0),Q(1),Q(2),…,Q(n)分别为理论概率集合Q中全部n个训练业务对象的理论概率。K-L散度的物理意义是用来度量基于Q的编码来编码来自P的样本时,平行所需的额外的比特个数。
S1024:获取实际转化集合A以及排序特征集合B的差异度最小时,为浏览特征值和转化特征值分别设置的权重值w1和w2。
由于在表示排序特征集合B时权重值w1和w2未知,实际转化集合A以及排序特征集合B的差异度实际上是包括权重值w1和w2的一个多项式,其中权重值w1和w2作为变量,因此在该步骤中获取所述差异度最小时的权重值w1和w2,并作为最终获取出的权重值w1和w2。需要说明的是,该步骤中可以通过多种计算方式获取所述差异度最小时的权重值w1和w2,例如可以通过梯度下降法。梯度下降法是一种循环迭代的计算方法,在计算过程中,不断循环调整权重值w1和w2,根据调整的权重值w1和w2不断计算实际转化集合A以及排序特征集合B的差异度,当差异度最小时结束迭代过程,此时的权重值w1和w2作为最终计算出的值。可见,本申请实施例中,实际上是通过计算差异度最小来优化权重值w1和w2,使得基于权重值w1和w2计算出的排序特征值能够更直接地反映出实际转化量的排序情况,从而使得根据排序结果能够更接近于基于实际转化量的排序结果,因此更加贴合用户的实际需求,即提高了排序结果的准确性。
通过上述技术方案可知,本申请实施例在计算用于对每个业务对象进行排序的排序特征值时,不再依赖于通过经验设定的权重值,而是从多个业务对象中选取出训练业务对象,获取训练业务对象的实际转化集合A以及排序特征集合B的差异度最小时所对应的权重值,并将其作为最终设置的权重值。可见本申请通过数值优化的方式,也就是说通过一种机器学习的方式实现了权重值w1和w2的计算,使得基于排序特征值的排序结果更加接近于基于实际转化量的排序结果,因此更加贴合用户的实际需求,即提高了排序结果的准确性,使得用户能够快速定位到所需要的业务对象,进一步提高了用户侧的处理效率以及减少网站服务器的资源浪费。
在本申请实施例中,在计算历史浏览量和历史转化量时,还可以引入时间衰退因子来表征其对应的行为数据(例如历史浏览量或者历史转化量等)的衰退速度。下面引入时间衰退因子这一概念。
在本申请实施例中,每个业务对象的浏览特征值b_value与该业务对象的历史浏览量b_num成正比,每个业务对象的转化特征值p_value与该业务对象的历史转化量p_num成正比。其中每个业务对象的历史浏览量b_num基于该业务对象每个单位历史时间的浏览量与该单位历史时间的时间衰退因子计算得到;每个业务对象的历史转化量p_num基于该业务对象每个单位历史时间的转化量与该单位历史时间的时间衰退因子计算得到。
具体地,每个业务对象的历史浏览量可以通过以下方式计算得到:
每个业务对象的历史转化量可以通过以下方式计算得到:
其中,bi为该业务对象的单位历史时间i内的浏览量,pi为该业务对象的单位历史时间i内的转化量,s为该业务对象的单位历史时间i的总个数,即使用了s个单位历史时间的数据统计转化特征值p_value或浏览特征值b_value。θi即为该业务对象的单位历史时间i对应的时间衰退因子。为了便于对上述计算公式的理解,下面以电子商务网站举例说明,对于某一产品来说,计算历史浏览量时可以是分别计算14天内每一天的浏览量与该天的时间因子的乘积,再将14天内计算出的所有乘积相加,而对历史转化量的计算方式类似。
其中,时间衰退因子能够表征其对应的行为数值的衰退速度。例如在计算历史浏览量时某一天的时间衰退因子,表示该天的浏览量的衰退速度。因此,引入时间衰退因子的上述计算方式,使得最终计算出的排序特征值也能够表示出浏览量和转化量的衰退速度。
在本申请实施例中,时间衰退因子的计算方式可以有多种,对此不加以限定。下面给出一种优选的计算方式,并且在下面给出的这种计算方式中,时间衰退因子不仅能够表征其对应的行为数值的衰退速度,而且还能够预测出该业务对象的行为数值的变化趋势。
每个业务对象的单位历史时间i的时间衰退因子θi可以为θi=exp(-α×di),其中α为与该业务对象所属分类对应的常数,表示了该分类的冷却速度,针对不同的分类可以设置不同的值,例如对于服装类的业务对象,由于更新换代速度很快,因此α的值比较大,而对于基本元器件类的业务对象,由于更新换代速度很慢,因此α的值也比较小。di为该单位历史时间i与当前时间的时间间隔。例如单位时间i以天为单位,昨天的时间衰退因子为:θ1=exp(-α×1),前天的时间衰退因子为:θ2=exp(-α×2),以此类推。对于每一天,时间衰退因子均不同,因此使得该天对应的浏览量/转出量的贡献均不同,并且距离当前时间越近的,时间衰退因子的数值越大,因此其贡献越大,而距离现在越远的,时间衰退因子的数值越小,因此随着时间的衰退其贡献也就越小。最终使得浏览量/转出量呈上升趋势的业务对象,排序特征值也就越大,最终排序的位置也就越高,从而超越那些慢慢在退热的业务对象。举个例子,在春夏交替的日子,某件春季长裙的销量和浏览量正在慢慢消退,而另一件夏季短裙则开始悄悄走俏,因此通过这种方式的时间衰退因子,则能够保证后一件夏季短裙的排序特征值相对更高,从而在排序结果中位于前一件春季长裙的前面,显然更加符合这两件产品的发展趋势,也更加符合用户的实际需求。
在本申请实施例中,每个业务对象对应的排序特征值o_value通过以下方式计算:
o_value=w1×b_value+w2×p_value,其中b_value是该业务对象的浏览特征值,p_value是该业务对象的转化特征值,w1是为浏览特征值设置的权重值,w2是为转化特征值设置的权重值。在上述内容中已经重点说明了权重值w1和w2的获取方式,下面重点介绍两个特征值:浏览特征值b_value和转化特征值p_value。
(一)浏览特征值b_value
每个业务对象的浏览特征值b_value与该业务对象的历史浏览量b_num成正比,实际上,由于浏览量相比于转化量,数值比较大,在现有技术中由于直接根据浏览量和转化量计算排序特征值,往往会使得浏览量压过转化量,而在本申请实施例中可以通过以下的计算方式对浏览量进行处理:
每个业务对象的浏览特征值可以为:b_value=logm(b_num+1),其中,b_num为该业务对象的历史浏览量,2≤m≤4,m优选为自然对数e。可见,本申请实施例中通过log函数对历史浏览量进行了处理,不仅使得浏览特征值仍然与历史浏览量成正比关系,而且解决了浏览量相比于其他数值(转化量等)数值较大的问题。其中,log函数里的“+1”处理是为了在保证浏览特征值一定大于或等于0,并且对浏览特征值的影响最小。
(二)转化特征值p_value
在现有技术中,直接根据浏览量和转化量计算排序特征值,显然这种方式无法有效地防止作弊行为。举个例子,为了提高某一业务对象最终的排序位置,可以不停地执行转化操作,也就是通过虚假行为提高转化量,最终通过这种作弊方式提高了排序位置。针对上述技术问题,本申请实施例提供了一种优选的计算转化特征值p_value的方式:
每个业务对象的转化特征值p_value与该业务对象的历史转化量p_num成正比,且与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;该业务对象的平均转化率为该业务对象所属类目下的所有业务对象的转化率的平均值。
可见,通过上述方式计算出的转化特征值p_value考虑了平均转化率,平均转化率指的是该业务对象所属类目下的所有业务对象的转化率的平均值,因此能够反映出这一类目的转化基本情况,只有当历史转化率接近于平均转化率时,两者的差值的绝对值也就越小,此时计算出的转化特征值也就越高,最终的排序位置也就越高。而显然所属类目下的所有业务对象的转化率的平均值是基于大量的数据统计得到的,作弊者显然无法获知这一数据,因此也就无法人为地改变历史转化率去接近平均转化率,显然这种计算方式能够很好地打压以下作弊方式:若某一业务对象的历史转化率过高时,则说明很有可能是通过作弊行为的虚假数据,而若历史转化率过低,则说明要么是该业务对象不符合用户的实际需求,要么说明浏览量是通过作弊行为所抬高的数据,而上述转换特征值的计算方式则在这两种情况下都能压低最终计算出的转换特征值,很好地打压了作弊行为。而且从客观角度上来说,只有接近于平均转化率,才能说明这一业务对象的转化情况是最正常的,也最符合实际情况。
此外由于很多业务对象都是具有价值属性值的,因此在很多情况下在对业务对象进行转化操作时,往往是需要付出一定的消耗的(该消耗一般即为价值属性值)。而有些业务对象由于价值属性值相对较高,因此转化量也通常较低,但是并不能说明这种业务对象不符合用户的实际需求,显然现有技术在计算排序特征值时并没有将这种情况考虑进去。
因此本申请实施例在计算转化特征值p_value时,每个业务对象的转化特征值p_value还可以与该业务对象的价值属性值price成正比。可见,通过这种方式计算出的转化特征值p_value不仅考虑了历史转化量p_num,而且还考虑了价值属性值price,当价值属性值越高时,其计算出的转化特征值也越大,因此最终的排序位置也就越高。解决了现有技术中由于价值属性值相对较高而造成转化量下降的问题。
具体地,转换特征值可以通过下式计算得到:
每个业务对象的转化特征值为:p_value=(p_num×price')z;p_num为该业务对象的历史转化量;price'与该业务对象的价值属性值成正比,z与该业务对象的平均转化率与历史转化率的差值的绝对值成反比。
其中,z和price'可以分别通过以下方式计算得到:
z=1-r'/r;其中,c为该业务对象的历史转化率的倒数,为该业务对象的平均转化率的倒数。也就是说,∑b_num为该业务对象所属类目下的所有业务对象的历史浏览量之和,∑p_num为该业务对象所属类目下的所有业务对象的历史转化量之和。需要说明的是,为了保证的分母不为0,还可以对作进一步的处理,比如使得
price'=[loga(price+1)+1];其中price为该业务对象的价值属性值,2≤a≤4,a优选为自然对数e。可见上式中通过log函数的方式对价值属性值price进行了处理。
因此,本申请实施例中的转化特征值优选为:
p_value={p_num×[ln(price+1)+1]}z,z优选为 其中,若引入时间衰退因子,则此时,历史浏览量b_num,历史转化量p_num和转化特征值p_value三者的对应关系如图3所示。从图3中可以看出,只有当历史浏览量b_num和历史转化量p_num同时增长时,转化特征值p_value才会增长。下面通过图4和图5进一步说明。图4是当历史浏览量b_num不变时,历史转化量p_num和转化特征值p_value的对应关系图,可以看出,历史转化量p_num和转化特征值p_value两者并不是同比例变化,这是因为当历史浏览量b_num不高,而历史转化量p_num相对较高时,很有可能是作弊行为导致的虚高。图5是当历史转化量p_num不变时,历史浏览量b_num和转化特征值p_value的对应关系图,可以看出,如果历史浏览量b_num一直在增长而历史转化量p_num没有变化,则说明要么是该业务对象不符合用户的实际需求,要么说明浏览量是通过作弊行为所抬高的数据,此时会降低转化特征值p_value。实际上只有当历史浏览量b_num和历史转化量p_num同比增长,且比例接近于所属类目下所有业务对象的转化率的平均值时,转化特征值p_value才会快速地增长。
上面重点介绍了本申请实施例中的浏览特征值和转化特征值。在本申请实施例中,在计算排序特征值时还引入了另外一个特征值:撤销转化特征值。下面进行介绍。
(三)撤销转化特征值
当网站向用户展示多个业务对象时,用户在浏览后可以进行对应的转化操作。实际上在很多应用场景下,用户还可以撤销已经执行的转化操作。例如用户在购买某一商品后,可以进行退货操作撤销之前的购买操作;又例如用户在对某一论坛回复后,可以删除该回复。而现有技术在对多个业务对象排序时,实际上并没有考虑用户的撤销转化操作。为了解决这一问题,本申请实施例中可以通过以下方式计算排序特征值。
每个业务对象对应的排序特征值还减去该业务对象的撤销转化特征值,也就是说,排序特征值可以通过以下方式计算得到:
o_value=w1×b_value+w2×p_value-r_value
该业务对象的撤销转化特征值r_value与该业务对象的历史撤销转化量r_num成正比,且与该业务对象的撤销转化占比q呈正比;其中,该业务对象的撤销转化占比q为该业务对象的历史撤销转化量r_num与历史转化量p_num之比。
具体地,撤销转化特征值r_value可以通过下式计算得到:
每个业务对象的撤销转化特征值为:r_value=r_num1+q。其中,r_num为该业务对象的历史撤销转化量,q为该业务对象的撤销转化占比。其中在计算历史撤销转化量时可以引入时间衰退因子,也就是说,可以通过下式计算历史撤销转化量:
ri为该业务对象的单位历史时间i内的撤销转化量,s为该业务对象的单位历史时间i的总个数,θi为该业务对象的单位历史时间i对应的时间衰退因子。
还需补充的是,每个业务对象对应的排序特征值在减去该业务对象的撤销转化特征值时,还可以基于为所述撤销转化特征值设置的权重值,也就是说,排序特征值可以为:
o_value=w1×b_value+w2×p_value-w3×r_value,其中w3是为撤销转化特征值设置的权重值。而为撤销转化特征值设置的权重值w3的获取过程包括:获取实际转化集合A以及排序特征集合B的差异度达到最小值时,为撤销转化特征值设置的权重值。具体获取方式请参见权重值w1和w2的获取方式。
下面通过一个具体的应用场景说明本申请的一个具体实施例。在该应用场景中,以业务对象为向用户展示的产品为例进行示例性的说明,当然在其他实施例中业务对象也可以为产品以外的帖子、应用程序、论坛帖子、邮件列表等业务对象,在本申请实施例中并不加以限制。
请参阅图6,本申请实施例提供了排序方法的另一种实施例,在本实施例包括:
S601:获取待排序的多个产品。
这里获取待排序的产品可以有多种方式。
从获取这个操作的主动性来区分,可以是基于用户的操作主动地获取待排序的产品,例如在需要向用户主动推荐产品的场景下,将同一类目的所有产品作为待排序的多个产品。也可以是被动性地获取待排序的产品,例如,用户执行某一搜索后,用户的搜索结果即待排序的多个产品。
从排序的面向对象区分,可以是面向个人的产品推荐,也可以是面向某一行业的产品推荐。首先介绍面向个人的产品推荐,可以通过用户的操作(比如用户的购买、收藏等操作)记录,计算出用户对每一个类目的偏好,选取出一个或多个偏好比较高的类目,将这些类目下的产品作为待排序的多个产品,最终排序后将前几位的产品推荐给用户。其中若选取出的类目较少,为了避免推荐的产品类型过于单一,可以通过相关算法获取到补足类目,将偏好的类目和补足的类目下的产品作为待排序产品,其中还可以设置偏好的类目和补足的类目中推荐的产品的个数比,比如从偏好的类目中推荐80%的预设个数的产品,从补足的类目中推荐20%的预设个数的产品。其次对于面向某一行业的产品推荐,可以获取该行业对应的所有子类目,将子类目下的所有产品作为待排序的多个产品,从这些子类目中分别取出(可以是等比取出)若干个排序较高的产品,融合后推荐给用户。需要特别说明的是,可以预先建立若干个产品池,每个产品分类都对应一个或多个产品池(可以通过产品的索引确定其对应的产品池),若根据用户的操作(比如点击某个运营主体分类进入商品列表)确定出某一类产品,将所对应的一个或多个产品池中排序较高的产品推荐给用户。这样,对于不同的产品池,其排序算法(也就是说计算排序特征值的算法)无需做任何修改,只需在产品池中作数据更新即可。当确定出该类产品对应的产品池时,可以通过产品池的标识确定出其对应的排序结果,使得整个推荐过程非常简单快捷。其中,每个产品池的排序结果可以存储在lucene等搜索引擎系统中。
S602:针对每个产品分别获取对应的排序特征值。其中,每一个产品的排序特征值通过以下方式获取:
o_value=w1×b_value+w2×p_value-w3×r_value。
o_value为该产品的排序特征值,b_value是该产品的浏览特征值,p_value是该产品的销量特征值,r_value是该产品的退货特征值,w1是为浏览特征值设置的权重值,w2是为销量特征值设置的权重值,w3是为退货特征值设置的权重值。
其中,b_value=ln(b_num+1),b_num为该产品的历史浏览量,并且bi为该产品的单位历史时间i内的浏览量,s为该产品的单位历史时间i的总个数,θi为该产品的单位历史时间i对应的时间衰退因子,并且θi=exp(-α×di),α为与该产品所属分类对应的常数。di为单位历史时间i与当前时间的时间间隔。例如以计算历史14天的统计量为基础,以天作为单位历史时间,则有s=14,计算历史浏览量时可以是分别计算14天内每一天的浏览量与该天的时间因子的乘积,再将14天内计算出的所有乘积相加。
p_value=(p_num×price')z,p_num为该产品的历史销量,并且pi为该产品的单位历史时间i内的销量,s为该产品的单位历史时间i的总个数。price'=[ln(price+1)+1],其中price为该产品的销售价格。∑b_num为该产品所属类目下的所有产品的历史浏览量之和,∑p_num为该产品所属类目下的所有产品的历史销量之和。
r_value=r_num1+q,r_num为该产品的历史退货量,并且ri为该产品的单位历史时间i内的退货量,s为该产品的单位历史时间i的总个数。q为该产品的退货占比,并且
需要说明的是,由于本申请实施例中以业务对象指的是产品为例,因此转化操作具体为购买操作,转化量具体可以为销量(根据场景的不同,销量可以为销售笔数,也可以为销售总数量。例如一笔订单包括4件产品,销售笔数为1,而销售总数量则为4),撤销转化量具体为退货量,价值属性值具体为产品的销售价格。若业务对象为其他时,转化量、撤销转化量以及价值属性值也根据业务对象的不同而发生变化。例如,业务对象为论坛帖子时,转化量可以具体为回复数量,撤销转化量具体为删除回复数量,价值属性值具体为回复帖子的消耗(比如金币数)或者帖子被点赞的次数。
如图7所示,本实施例中权重值w1、w2和w3的获取过程包括:
S6021:在本申请实施例中,用14天的历史数据作为计算排序特征值的训练数据集,用14天后的7天(可以紧挨着该14天)的实际数据作为验证数据集。因此,根据这7天的实际数据,即验证数据集,从待排序的多个产品中选取出销量笔数位于前100位的100个产品。
补充说明一点,对于某些产品来说,在网站展示的时间如果不足14天,因此也就不具有14天的数据,则可以根据该产品其他时间的数据通过曲线拟合、中位数补足等方式模拟出没有展示的时间对应的数据,以保证计算时的公正性。
S6022:获取这100个产品的实际概率集合P和理论概率集合Q。实际概率集合P指的是这100个产品的实际概率组成的集合,理论概率集合Q指的是这100个产品的理论概率组合成的集合。
其中,每个产品的实际概率指的是该产品在这7天内的销量(例如销售笔数)占这100个产品在这7天的销量总和的比例。每个产品的理论概率指的是该产品根据这14天的数据计算出的排序特征值,占这100个产品根据这14天的数据计算出的排序特征值总和的比例。其中在计算理论概率时,由于权重值未知,因此仍然以变量w1、w2和w3代替。
S6023:计算实际概率集合P和理论概率集合Q的K-L散度。
S6024:通过梯度下降法获取K-L散度最小时的权重值w1、w2和w3。
由于在表示理论概率集合Q时权重值未知,K-L散度实际上是包括权重值w1、w2和w3(作为变量)的一个多项式,因此在该步骤中获取K-L散度最小时的权重值w1、w2和w3,并作为最终获取的权重值w1、w2和w3。
S603:基于每个产品对应的排序特征值对所述多个产品进行排序。排序特征值越高,则最终的排序位置也越高。
如图8所示,对应图1所示的方法实施例,本申请还提供了排序装置的具体实施例。本实施例的排序装置包括:第一获取单元801、第二获取单元802和排序单元803。
第一获取单元801用于,获取待排序的多个业务对象。
本申请实施例实际上是一种对多个业务对象的排序装置,因此在进行排序之前,会通过第一获取单元801获取待排序的多个业务对象。例如,第一获取单元801获取同一类目下的所有业务对象作为待排序的多个业务对象。
第二获取单元802用于,针对每个业务对象分别获取对应的排序特征值。
在本申请实施例中,每个业务对象对应的排序特征值至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出。与现有技术所不同的是,本申请实施例中的上述权重值,不再是根据经验进行人为设定,而是通过一种特定的数值优化方式进行获取,从而提高了获取的排序特征值的准确性。
排序单元803用于,基于每个业务对象对应的排序特征值对待排序的多个业务对象进行排序。
在第二获取单元802获取每个业务对象对应的排序特征值后,排序单元803会基于所有的业务对象所对应的排序特征值,对所有业务对象进行排序。一般情况下,排序特征值越高,则最终的排序位置也越高。而且,由于本申请实施例中获取的排序特征值更加准确,因此最终的排序结果也更加准确,即更贴合用户的实际需求。
在本申请实施例中,每个业务对象对应的排序特征值由第二获取单元802至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出。其中,每个业务对象的排序特征值o_value可以通过以下方式计算:
o_value=w1×b_value+w2×p_value,其中b_value是该业务对象的浏览特征值,p_value是该业务对象的转化特征值,w1是为浏览特征值设置的权重值,w2是为转化特征值设置的权重值。其中,浏览特征值与该业务对象的历史浏览量成正比,转化特征值与该业务对象的历史转化量成正比。而与现有技术所不同的是,权重值w1和w2不再是根据经验进行设定,而是通过本申请实施例提供的一种特定的数值优化方式进行获取,下面重点说明该获取过程。
参见图2所示,本申请实施例中,第二获取单元802对为浏览特征值设置和转化特征值分别设置的权重值w1和w2的获取过程包括:
S1021:第二获取单元802从多个业务对象中选取训练业务对象。
本申请实施例中为了获取准确性更高的权重值,需要从业务对象中选取出一部分业务对象作为训练业务对象,实际上就是组成一个训练集合,通过这个训练集合使得业务对象对应的排序特征值更加贴近用户实际需求。
其中比较优选的选取方式是基于体现用户实际需求的转化量进行选取。具体选取训练业务对象时,从多个业务对象中选取出转化量排在前预设位数或者大于预设阈值的业务对象作为训练业务对象。这里转化量根据能够体现出该业务对象的实际需求的操作属性所确定。
S1022:第二获取单元802获取训练业务对象的实际转化量组成的实际转化集合A以及排序特征值组成的排序特征集合B。
实际上,本申请实施例中的实际转化量和排序特征值分别根据的是不同时段的数据而获取的,并且,排序特征值是根据历史时段的数据所计算出的对验证时段的预测值,而实际转化量则是根据验证时段的数据统计出的验证时段的实际值。
本申请实施例中一种比较优选的方式是,实际转化量组成的实际转化集合A通过实际概率组成的实际概率集合P表示;排序特征值组成的排序特征集合B通过理论概率组成的理论概率集合Q表示。因此该步骤实际上是获取实际概率集合P和理论概率集合Q。其中,每个训练业务对象的实际概率为该业务对象的实际转化量在全部训练业务对象的实际转化量之和中所占的比例,每个训练业务对象的理论概率为该业务对象的排序特征值在全部训练业务对象的排序特征值之和中所占的比例。
具体如何根据历史时段和验证时段的数据计算出训练业务对象的实际概率和理论概率,请参见图1所示的实施例的相关之处,这里不再赘述。
S1023:第二获取单元802计算实际转化集合A以及排序特征集合B的差异度。
若实际转化集合A通过实际概率集合P表示;排序特征集合B通过理论概率集合Q表示,则本申请实施例中的差异度实际上可以为实际概率集合P和理论概率集合Q的K-L散度。
S1024:第二获取单元802获取实际转化集合A以及排序特征集合B的差异度最小时,为浏览特征值和转化特征值分别设置的权重值w1和w2。
需要说明的是,该步骤中可以通过多种计算方式获取所述差异度最小时的权重值w1和w2,例如可以通过梯度下降法。
在本申请实施例中,在第二获取单元802计算历史浏览量和历史转化量时,还可以引入时间衰退因子来表征其对应的行为数据(例如历史浏览量或者历史转化量等)的衰退速度。下面引入时间衰退因子这一概念。
在本申请实施例中,每个业务对象的浏览特征值b_value与该业务对象的历史浏览量b_num成正比,每个业务对象的转化特征值p_value与该业务对象的历史转化量p_num成正比。其中每个业务对象的历史浏览量b_num基于该业务对象每个单位历史时间的浏览量与该单位历史时间的时间衰退因子计算得到;每个业务对象的历史转化量p_num基于该业务对象每个单位历史时间的转化量与该单位历史时间的时间衰退因子计算得到。
具体地,每个业务对象的历史浏览量可以通过以下方式计算得到:
每个业务对象的历史转化量可以通过以下方式计算得到:
其中,bi为该业务对象的单位历史时间i内的浏览量,pi为该业务对象的单位历史时间i内的转化量,s为该业务对象的单位历史时间i的总个数,即使用了s个单位历史时间的数据统计转化特征值p_value或浏览特征值b_value。θi即为该业务对象的单位历史时间i对应的时间衰退因子。
在本申请实施例中,时间衰退因子的计算方式可以有多种,对此不加以限定。下面给出一种优选的计算方式。
每个业务对象的单位历史时间i的时间衰退因子θi可以为θi=exp(-α×di),其中α为与该业务对象所属分类对应的常数,表示了该分类的冷却速度,针对不同的分类可以设置不同的值。di为该单位历史时间i与当前时间的时间间隔。
在上述内容中已经重点说明了权重值w1和w2的获取方式,下面重点介绍两个特征值:浏览特征值b_value和转化特征值p_value。
(一)浏览特征值b_value
每个业务对象的浏览特征值b_value与该业务对象的历史浏览量b_num成正比,在本申请实施例中可以通过以下的计算方式对浏览量进行处理:
每个业务对象的浏览特征值可以为:b_value=logm(b_num+1),其中,b_num为该业务对象的历史浏览量,2≤m≤4,m优选为自然对数e。可见,本申请实施例中通过log函数对历史浏览量进行了处理,不仅使得浏览特征值仍然与历史浏览量成正比关系,而且解决了浏览量相比于其他数值(转化量等)数值较大的问题。
(二)转化特征值p_value
本申请实施例提供了一种优选的计算转化特征值p_value的方式:
每个业务对象的转化特征值p_value与该业务对象的历史转化量p_num成正比,且与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;该业务对象的平均转化率为该业务对象所属类目下的所有业务对象的转化率的平均值。
可见,通过上述方式计算出的转化特征值p_value考虑了平均转化率,平均转化率指的是该业务对象所属类目下的所有业务对象的转化率的平均值,因此能够反映出这一类目的转化基本情况,只有当历史转化率接近于平均转化率时,两者的差值的绝对值也就越小,此时计算出的转化特征值也就越高,最终的排序位置也就越高。而显然所属类目下的所有业务对象的转化率的平均值是基于大量的数据统计得到的,作弊者显然无法获知这一数据,因此也就无法人为地改变历史转化率去接近平均转化率,显然这种计算方式能够很好地打压作弊行为。而且从客观角度上来说,只有接近于平均转化率,才能说明这一业务对象的转化情况是最正常的,也最符合实际情况,从而提高了排序结果的准确性。
本申请实施例在计算转化特征值p_value时,每个业务对象的转化特征值p_value还可以与该业务对象的价值属性值price成正比。可见,通过这种方式计算出的转化特征值p_value不仅考虑了历史转化量p_num,而且还考虑了价值属性值price,当价值属性值越高时,其计算出的转化特征值也越大,因此最终的排序位置也就越高。解决了现有技术中由于价值属性值相对较高而造成转化量下降的问题。
具体地,转换特征值可以通过下式计算得到:
每个业务对象的转化特征值为:p_value=(p_num×price')z;p_num为该业务对象的历史转化量;price'与该业务对象的价值属性值成正比,z与该业务对象的平均转化率与历史转化率的差值的绝对值成反比。
其中,z和price'可以分别通过以下方式计算得到:
z=1-r'/r;其中,c为该业务对象的历史转化率的倒数,为该业务对象的平均转化率的倒数。也就是说,∑b_num为该业务对象所属类目下的所有业务对象的历史浏览量之和,∑p_num为该业务对象所属类目下的所有业务对象的历史转化量之和。需要说明的是,为了保证的分母不为0,还可以对作进一步的处理,比如使得
price'=[loga(price+1)+1];其中price为该业务对象的价值属性值,2≤a≤4,a优选为自然对数e。可见上式中通过log函数的方式对价值属性值price进行了处理。
因此,本申请实施例中的转化特征值优选为:
p_value={p_num×[ln(price+1)+1]}z,z优选为 其中,若引入时间衰退因子,则从图3至图5中可以看出,只有当历史浏览量b_num和历史转化量p_num同时增长时,转化特征值p_value才会增长。上面重点介绍了本申请实施例中的浏览特征值和转化特征值。在本申请实施例中,在计算排序特征值时还引入了另外一个特征值:撤销转化特征值。
(三)撤销转化特征值
本申请实施例中可以通过以下方式计算排序特征值。
每个业务对象对应的排序特征值还减去该业务对象的撤销转化特征值,也就是说,排序特征值可以通过以下方式计算得到:
o_value=w1×b_value+w2×p_value-r_value
该业务对象的撤销转化特征值r_value与该业务对象的历史撤销转化量r_num成正比,且与该业务对象的撤销转化占比q呈正比;其中,该业务对象的撤销转化占比q为该业务对象的历史撤销转化量r_num与历史转化量p_num之比。
具体地,撤销转化特征值r_value可以通过下式计算得到:
每个业务对象的撤销转化特征值为:r_value=r_num1+q。其中,r_num为该业务对象的历史撤销转化量,q为该业务对象的撤销转化占比。其中在计算历史撤销转化量时可以引入时间衰退因子,也就是说,可以通过下式计算历史撤销转化量:
ri为该业务对象的单位历史时间i内的撤销转化量,s为该业务对象的单位历史时间i的总个数,θi为该业务对象的单位历史时间i对应的时间衰退因子。
还需补充的是,每个业务对象对应的排序特征值在减去该业务对象的撤销转化特征值时,还基于为所述撤销转化特征值设置的权重值,也就是说,排序特征值可以为:
o_value=w1×b_value+w2×p_value-w3×r_value,其中w3是为撤销转化特征值设置的权重值。而为撤销转化特征值设置的权重值w3的获取过程包括:获取实际转化集合A以及排序特征集合B的差异度达到最小值时,为撤销转化特征值设置的权重值。具体获取方式请参见权重值w1和w2的获取方式。
可以看出,在上述实施例中,主要通过对权重值进行优化以提高排序结果的准确性。实际上,本申请实施例还通过优化排序特征值的方式提高了排序结果的准确性。下面进行具体说明。
现有技术中的排序方式是,根据每个业务对象的排序特征值进行排序,而排序特征值通过浏览量和转化量得到,并且为浏览量和转化量设置各自的权重值。
然而,经发明人研究发现,现有技术直接根据浏览量和转化量计算排序特征值,显然这种方式无法有效地防止作弊行为,因此也会导致排序结果的准确性降低。举个例子,为了提高某一业务对象最终的排序位置,可以不停地执行转化操作,也就是通过虚假行为提高转化量,最终通过这种作弊方式提高了排序位置。从而进一步导致用户往往需要执行多次处理操作才能定位到所需要的业务对象,不仅降低了用户侧的处理效率,还造成了网站服务器的资源浪费。
而在本申请实施例中,提供一种排序方法及装置,以实现提高排序结果的准确性,从而使得用户能够快速定位到所需要的业务对象,进一步提高了用户侧的处理效率以及减少网站服务器的资源浪费。
请参阅图9,本申请实施例提供了排序方法的一种实施例,在本实施例包括:
S901:获取待排序的多个业务对象。
本申请实施例实际上是一种对多个业务对象的排序方法,因此在进行排序之前,会获取待排序的多个业务对象。例如,获取同一类目下的所有业务对象作为待排序的多个业务对象。
在本申请实施例中,业务对象指的是各种能够通过互联网向用户展示并由用户执行对应的转化操作的对象,例如可以为向用户展示的产品、应用程序、论坛帖子、邮件列表等等。
S902:针对每个业务对象分别获取对应的排序特征值。
S903:基于每个业务对象对应的排序特征值对待排序的多个业务对象进行排序。
在获取每个业务对象对应的排序特征值后,本申请实施例中会基于所有的业务对象所对应的排序特征值,对所有业务对象进行排序。一般情况下,排序特征值越高,则最终的排序位置也越高。而且,由于本申请实施例中获取的排序特征值更加准确,因此最终的排序结果也更加准确,即更贴合用户的实际需求。
在本申请实施例中,每个业务对象对应的排序特征值至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出。其中,每个业务对象的排序特征值o_value可以通过以下方式计算:
o_value=w1×b_value+w2×p_value,其中b_value是该业务对象的浏览特征值,p_value是该业务对象的转化特征值,w1是为浏览特征值设置的权重值,w2是为转化特征值设置的权重值。
每个业务对象的转化特征值p_value与该业务对象的历史转化量p_num成正比,且与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;该业务对象的平均转化率为该业务对象所属类目下的所有业务对象的转化率的平均值。
可见,通过上述方式计算出的转化特征值p_value考虑了平均转化率,平均转化率指的是该业务对象所属类目下的所有业务对象的转化率的平均值,因此能够反映出这一类目的转化基本情况,只有当历史转化率接近于平均转化率时,两者的差值的绝对值也就越小,此时计算出的转化特征值也就越高,最终的排序位置也就越高。显然这种计算方式能够很好地打压作弊行为。而且从客观角度上来说,只有接近于平均转化率,才能说明这一业务对象的转化情况是最正常的,也最符合实际情况。因此提高了排序结果的准确性。
本申请实施例在计算转化特征值p_value时,每个业务对象的转化特征值p_value还可以与该业务对象的价值属性值price成正比。可见,通过这种方式计算出的转化特征值p_value不仅考虑了历史转化量p_num,而且还考虑了价值属性值price,当价值属性值越高时,其计算出的转化特征值也越大,因此最终的排序位置也就越高。解决了现有技术中由于价值属性值相对较高而造成转化量下降的问题。
具体地,转换特征值可以通过下式计算得到:
每个业务对象的转化特征值为:p_value=(p_num×price')z;p_num为该业务对象的历史转化量;price'与该业务对象的价值属性值成正比,z与该业务对象的平均转化率与历史转化率的差值的绝对值成反比。
其中,z和price'可以分别通过以下方式计算得到:
z=1-r'/r;其中,c为该业务对象的历史转化率的倒数,为该业务对象的平均转化率的倒数。也就是说,∑b_num为该业务对象所属类目下的所有业务对象的历史浏览量之和,∑p_num为该业务对象所属类目下的所有业务对象的历史转化量之和。需要说明的是,为了保证的分母不为0,还可以对作进一步的处理,比如使得
price'=[loga(price+1)+1];其中price为该业务对象的价值属性值,2≤a≤4,a优选为自然对数e。可见上式中通过log函数的方式对价值属性值price进行了处理。
因此,本申请实施例中的转化特征值优选为:
p_value={p_num×[ln(price+1)+1]}z,z优选为 其中,若引入时间衰退因子,则从图3至图5中可以看出,只有当历史浏览量b_num和历史转化量p_num同时增长时,转化特征值p_value才会增长。
在本申请实施例中,在计算历史浏览量和历史转化量时,还可以引入时间衰退因子来表征其对应的行为数据(例如历史浏览量或者历史转化量等)的衰退速度。下面引入时间衰退因子这一概念。
在本申请实施例中,每个业务对象的浏览特征值b_value与该业务对象的历史浏览量b_num成正比,每个业务对象的转化特征值p_value与该业务对象的历史转化量p_num成正比。其中每个业务对象的历史浏览量b_num基于该业务对象每个单位历史时间的浏览量与该单位历史时间的时间衰退因子计算得到;每个业务对象的历史转化量p_num基于该业务对象每个单位历史时间的转化量与该单位历史时间的时间衰退因子计算得到。
具体地,每个业务对象的历史浏览量可以通过以下方式计算得到:
每个业务对象的历史转化量可以通过以下方式计算得到:
其中,bi为该业务对象的单位历史时间i内的浏览量,pi为该业务对象的单位历史时间i内的转化量,s为该业务对象的单位历史时间i的总个数,即使用了s个单位历史时间的数据统计转化特征值p_value或浏览特征值b_value。θi即为该业务对象的单位历史时间i对应的时间衰退因子。
其中,时间衰退因子能够表征其对应的行为数值的衰退速度。例如在计算历史浏览量时某一天的时间衰退因子,表示该天的浏览量的衰退速度。因此,引入时间衰退因子的上述计算方式,使得最终计算出的排序特征值也能够表示出浏览量和转化量的衰退速度。
在本申请实施例中,时间衰退因子的计算方式可以有多种,对此不加以限定。下面给出一种优选的计算方式,并且在下面给出的这种计算方式中,时间衰退因子不仅能够表征其对应的行为数值的衰退速度,而且还能够预测出该业务对象的行为数值的变化趋势。
每个业务对象的单位历史时间i的时间衰退因子θi可以为
θi=exp(-α×di),其中α为与该业务对象所属分类对应的常数,表示了该分类的冷却速度,针对不同的分类可以设置不同的值。di为该单位历史时间i与当前时间的时间间隔。例如单位时间i以天为单位,昨天的时间衰退因子为:θ1=exp(-α×1),前天的时间衰退因子为:θ2=exp(-α×2),以此类推。对于每一天,时间衰退因子均不同,因此使得该天对应的浏览量/转出量的贡献均不同,并且距离当前时间越近的,时间衰退因子的数值越大,因此其贡献越大,而距离现在越远的,时间衰退因子的数值越小,因此随着时间的衰退其贡献也就越小。最终使得浏览量/转出量呈上升趋势的业务对象,排序特征值也就越大,最终排序的位置也就越高,从而超越那些慢慢在退热的业务对象。
在本申请实施例中,每个业务对象的浏览特征值b_value与该业务对象的历史浏览量b_num成正比,实际上,由于浏览量相比于转化量,数值比较大,在现有技术中由于直接根据浏览量和转化量计算排序特征值,往往会使得浏览量压过转化量,而在本申请实施例中可以通过以下的计算方式对浏览量进行处理:
每个业务对象的浏览特征值可以为:b_value=logm(b_num+1),其中,b_num为该业务对象的历史浏览量,2≤m≤4,m优选为自然对数e。可见,本申请实施例中通过log函数对历史浏览量进行了处理,不仅使得浏览特征值仍然与历史浏览量成正比关系,而且解决了浏览量相比于其他数值(转化量等)数值较大的问题。其中,log函数里的“+1”处理是为了在保证浏览特征值一定大于或等于0,并且对浏览特征值的影响最小。
现有技术在对多个业务对象排序时,实际上并没有考虑用户的撤销转化操作。为了解决这一问题,本申请实施例中可以通过以下方式计算排序特征值。
每个业务对象对应的排序特征值还减去该业务对象的撤销转化特征值,也就是说,排序特征值可以通过以下方式计算得到:
o_value=w1×b_value+w2×p_value-r_value
该业务对象的撤销转化特征值r_value与该业务对象的历史撤销转化量r_num成正比,且与该业务对象的撤销转化占比q呈正比;其中,该业务对象的撤销转化占比q为该业务对象的历史撤销转化量r_num与历史转化量p_num之比。
具体地,撤销转化特征值r_value可以通过下式计算得到:
每个业务对象的撤销转化特征值为:r_value=r_num1+q。其中,r_num为该业务对象的历史撤销转化量,q为该业务对象的撤销转化占比。其中在计算历史撤销转化量时可以引入时间衰退因子,也就是说,可以通过下式计算历史撤销转化量:
ri为该业务对象的单位历史时间i内的撤销转化量,s为该业务对象的单位历史时间i的总个数,θi为该业务对象的单位历史时间i对应的时间衰退因子。
还需补充的是,每个业务对象对应的排序特征值在减去该业务对象的撤销转化特征值时,还可以基于为所述撤销转化特征值设置的权重值,也就是说,排序特征值可以为:
o_value=w1×b_value+w2×p_value-w3×r_value,其中w3是为撤销转化特征值设置的权重值。而为撤销转化特征值设置的权重值w3的获取过程包括:获取实际转化集合A以及排序特征集合B的差异度达到最小值时,为撤销转化特征值设置的权重值。具体获取方式请参见权重值w1和w2的获取方式。
在本申请实施例中,权重值w1和w2可以不再是根据经验进行设定,而是通过本申请实施例提供的一种特定的数值优化方式进行获取,具体请参见图2的相关介绍,这里不再赘述。
如图10所示,对应图9所示的方法实施例,本申请还提供了排序装置的具体实施例。本实施例的排序装置包括:第一获取单元1001、第二获取单元1002和排序单元1003。
第一获取单元1001用于,获取待排序的多个业务对象。
本申请实施例实际上是一种对多个业务对象的排序装置,因此在进行排序之前,会通过第一获取单元1001获取待排序的多个业务对象。例如,第一获取单元1001获取同一类目下的所有业务对象作为待排序的多个业务对象。
第二获取单元1002用于,针对每个业务对象分别获取对应的排序特征值。
排序单元1003用于,基于每个业务对象对应的排序特征值对待排序的多个业务对象进行排序。
在第二获取单元1002获取每个业务对象对应的排序特征值后,排序单元1003会基于所有的业务对象所对应的排序特征值,对所有业务对象进行排序。一般情况下,排序特征值越高,则最终的排序位置也越高。而且,由于本申请实施例中获取的排序特征值更加准确,因此最终的排序结果也更加准确,即更贴合用户的实际需求。
在本申请实施例中,每个业务对象对应的排序特征值至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出。
每个业务对象的转化特征值p_value与该业务对象的历史转化量p_num成正比,且与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;该业务对象的平均转化率为该业务对象所属类目下的所有业务对象的转化率的平均值。
可见,通过上述方式计算出的转化特征值p_value考虑了平均转化率,能够很好地打压作弊行为。因此提高了排序结果的准确性。
本申请实施例在计算转化特征值p_value时,每个业务对象的转化特征值p_value还可以与该业务对象的价值属性值price成正比。可见,通过这种方式计算出的转化特征值p_value不仅考虑了历史转化量p_num,而且还考虑了价值属性值price,当价值属性值越高时,其计算出的转化特征值也越大,因此最终的排序位置也就越高。解决了现有技术中由于价值属性值相对较高而造成转化量下降的问题。
具体地,转换特征值可以通过下式计算得到:
每个业务对象的转化特征值为:p_value=(p_num×price')z;p_num为该业务对象的历史转化量;price'与该业务对象的价值属性值成正比,z与该业务对象的平均转化率与历史转化率的差值的绝对值成反比。
其中,z和price'可以分别通过以下方式计算得到:
z=1-r'/r;其中,c为该业务对象的历史转化率的倒数,为该业务对象的平均转化率的倒数。也就是说,∑b_num为该业务对象所属类目下的所有业务对象的历史浏览量之和,∑p_num为该业务对象所属类目下的所有业务对象的历史转化量之和。需要说明的是,为了保证的分母不为0,还可以对作进一步的处理,比如使得
price'=[loga(price+1)+1];其中price为该业务对象的价值属性值,2≤a≤4,a优选为自然对数e。可见上式中通过log函数的方式对价值属性值price进行了处理。
因此,本申请实施例中的转化特征值优选为:
p_value={p_num×[ln(price+1)+1]}z,z优选为 其中,若引入时间衰退因子,则从图3至图5中可以看出,只有当历史浏览量b_num和历史转化量p_num同时增长时,转化特征值p_value才会增长。
下面引入时间衰退因子这一概念。
在本申请实施例中,每个业务对象的浏览特征值b_value与该业务对象的历史浏览量b_num成正比,每个业务对象的转化特征值p_value与该业务对象的历史转化量p_num成正比。其中每个业务对象的历史浏览量b_num基于该业务对象每个单位历史时间的浏览量与该单位历史时间的时间衰退因子计算得到;每个业务对象的历史转化量p_num基于该业务对象每个单位历史时间的转化量与该单位历史时间的时间衰退因子计算得到。
具体地,每个业务对象的历史浏览量可以通过以下方式计算得到:
每个业务对象的历史转化量可以通过以下方式计算得到:
其中,bi为该业务对象的单位历史时间i内的浏览量,pi为该业务对象的单位历史时间i内的转化量,s为该业务对象的单位历史时间i的总个数,即使用了s个单位历史时间的数据统计转化特征值p_value或浏览特征值b_value。θi即为该业务对象的单位历史时间i对应的时间衰退因子。
在本申请实施例中,时间衰退因子的计算方式可以有多种,对此不加以限定。下面给出一种优选的计算方式。每个业务对象的单位历史时间i的时间衰退因子θi可以为:θi=exp(-α×di),其中α为与该业务对象所属分类对应的常数,表示了该分类的冷却速度,针对不同的分类可以设置不同的值。di为该单位历史时间i与当前时间的时间间隔。
在本申请实施例中可以通过以下的计算方式对浏览量进行处理:
每个业务对象的浏览特征值可以为:b_value=logm(b_num+1),其中,b_num为该业务对象的历史浏览量,2≤m≤4,m优选为自然对数e。
每个业务对象对应的排序特征值还减去该业务对象的撤销转化特征值,也就是说,排序特征值可以通过以下方式计算得到:
o_value=w1×b_value+w2×p_value-r_value
该业务对象的撤销转化特征值r_value与该业务对象的历史撤销转化量r_num成正比,且与该业务对象的撤销转化占比q呈正比;其中,该业务对象的撤销转化占比q为该业务对象的历史撤销转化量r_num与历史转化量p_num之比。
具体地,撤销转化特征值r_value可以通过下式计算得到:
每个业务对象的撤销转化特征值为:r_value=r_num1+q。其中,r_num为该业务对象的历史撤销转化量,q为该业务对象的撤销转化占比。其中在计算历史撤销转化量时可以引入时间衰退因子,也就是说,可以通过下式计算历史撤销转化量:
ri为该业务对象的单位历史时间i内的撤销转化量,s为该业务对象的单位历史时间i的总个数,θi为该业务对象的单位历史时间i对应的时间衰退因子。
还需补充的是,每个业务对象对应的排序特征值在减去该业务对象的撤销转化特征值时,还可以基于为所述撤销转化特征值设置的权重值,也就是说,排序特征值可以为:
o_value=w1×b_value+w2×p_value-w3×r_value,其中w3是为撤销转化特征值设置的权重值。而为撤销转化特征值设置的权重值w3的获取过程包括:获取实际转化集合A以及排序特征集合B的差异度达到最小值时,为撤销转化特征值设置的权重值。具体获取方式请参见权重值w1和w2的获取方式。
在本申请实施例中,权重值w1和w2可以不再是根据经验进行设定,而是由第二获取单元1002,通过本申请实施例提供的一种特定的数值优化方式进行获取,具体请参见图2的相关介绍,这里不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (26)
1.一种排序方法,其特征在于,包括:
获取待排序的多个业务对象;
针对每个业务对象分别获取对应的排序特征值;
基于每个业务对象对应的排序特征值对所述多个业务对象进行排序;
其中,每个业务对象对应的排序特征值至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出;
所述为浏览特征值和转化特征值分别设置的权重值的获取过程包括:从所述多个业务对象中选取训练业务对象;获取所述训练业务对象的实际转化量组成的实际转化集合以及排序特征值组成的排序特征集合,计算所述实际转化集合和所述排序特征集合的差异度;获取所述差异度最小时为浏览特征值和转化特征值分别设置的权重值;
所述差异度为实际概率集合和理论概率集合的相对熵,所述实际转化集合通过实际概率集合表示,所述排序特征集合通过理论概率集合表示。
2.根据权利要求1所述的方法,其特征在于,每个业务对象的转化特征值与该业务对象的历史转化量成正比,且与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;所述该业务对象的平均转化率为该业务对象所属类目下的所有业务对象的转化率的平均值;
每个业务对象的转化特征值为:p_value=(p_num×price')z;
其中,p_num为该业务对象的历史转化量;price'与该业务对象的价值属性值成正比,z与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;
其中,c为该业务对象的历史转化率的倒数,为该业务对象的平均转化率的倒数;
price'=[loga(price+1)+1];
其中price为该业务对象的价值属性值,2≤a≤4。
3.根据权利要求1所述的排序方法,其特征在于,
每个业务对象的浏览特征值为:b_value=logm(b_num+1);
其中,b_num为该业务对象的历史浏览量,2≤m≤4。
4.根据权利要求1所述的排序方法,其特征在于,每个业务对象对应的排序特征值还减去该业务对象的撤销转化特征值;
该业务对象的撤销转化特征值与该业务对象的历史撤销转化量成正比,且与该业务对象的撤销转化占比呈正比;其中,该业务对象的撤销转化占比为该业务对象的历史撤销转化量与历史转化量之比;
每个业务对象的撤销转化特征值为:r_value=r_num1+q;
其中,r_num为该业务对象的历史撤销转化量,q为该业务对象的撤销转化占比;
每个业务对象的历史撤销转化量为:
其中,ri为该业务对象的单位历史时间i内的撤销转化量,s为该业务对象的单位历史时间i的总个数,θi为该业务对象的单位历史时间i对应的时间衰退因子;
每个业务对象的历史转化量:
其中,pi为该业务对象的单位历史时间i内的转化量,s为该业务对象的单位历史时间i的总个数,θi即为该业务对象的单位历史时间i对应的时间衰退因子。
5.根据权利要求4所述的排序方法,其特征在于,每个业务对象对应的排序特征值减去该业务对象的撤销转化特征值时,还基于为所述撤销转化特征值设置的权重值;
所述为撤销转化特征值设置的权重值的获取过程包括:获取所述差异度达到最小值时,为撤销转化特征值设置的权重值。
6.根据权利要求3所述的排序方法,其特征在于,
每个业务对象的浏览特征值与该业务对象的历史浏览量成正比,每个业务对象的转化特征值与该业务对象的历史转化量成正比;
每个业务对象的历史浏览量基于该业务对象每个单位历史时间的浏览量与该单位历史时间的时间衰退因子计算得到;
每个业务对象的历史转化量基于该业务对象每个单位历史时间的转化量与该单位历史时间的时间衰退因子计算得到;
每个业务对象的历史浏览量为:
每个业务对象的历史转化量为:
其中,bi为该业务对象的单位历史时间i内的浏览量,pi为该业务对象的单位历史时间i内的转化量,θi为该业务对象的单位历史时间i对应的时间衰退因子,s为该业务对象的单位历史时间i的总个数;
每个单位历史时间的时间衰退因子为:θi=exp(-α×di)
其中,α为与该业务对象所属分类对应的常数,di为该单位历史时间与当前时间的时间间隔。
7.根据权利要求1所述的方法,其特征在于,所述实际转化量组成的实际转化集合通过实际概率组成的实际概率集合表示;其中,每个训练业务对象的实际概率为该业务对象的实际转化量在全部训练业务对象的实际转化量之和中所占的比例;
所述排序特征值组成的排序特征集合通过理论概率组成的理论概率集合表示;其中,每个训练业务对象的理论概率为该业务对象的排序特征值在全部训练业务对象的排序特征值之和中所占的比例。
8.根据权利要求1所述的排序方法,其特征在于,获取所述差异度最小时的所述权重值包括:
通过梯度下降法获取所述差异度最小时所述权重值。
9.一种排序方法,其特征在于,包括:
获取待排序的多个业务对象;
针对每个业务对象分别获取对应的排序特征值;
基于每个业务对象对应的排序特征值对所述多个业务对象进行排序;
其中,每个业务对象对应的排序特征值至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出;
每个业务对象的转化特征值与该业务对象的历史转化量成正比,且与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;所述该业务对象的平均转化率为该业务对象所属类目下的所有业务对象的转化率的平均值;
每个业务对象的转化特征值为:p_value=(p_num×price')z;
其中,p_num为该业务对象的历史转化量;price'与该业务对象的价值属性值成正比,z与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;
其中,c为该业务对象的历史转化率的倒数,为该业务对象的平均转化率的倒数;
price'=[loga(price+1)+1];
其中price为该业务对象的价值属性值,2≤a≤4。
10.根据权利要求9所述的排序方法,其特征在于,
每个业务对象的浏览特征值与该业务对象的历史浏览量成正比,每个业务对象的转化特征值与该业务对象的历史转化量成正比;
每个业务对象的历史浏览量基于该业务对象每个单位历史时间的浏览量与该单位历史时间的时间衰退因子计算得到;
每个业务对象的转化浏览量基于该业务对象每个单位历史时间的转化量与该单位历史时间的时间衰退因子计算得到;
每个业务对象的浏览特征值为:b_value=logm(b_num+1);
其中,b_num为该业务对象的历史浏览量,2≤m≤4;
每个业务对象的历史浏览量为:
每个业务对象的历史转化量为:
其中,bi为该业务对象的单位历史时间i内的浏览量,pi为该业务对象的单位历史时间i内的转化量,θi为该业务对象的单位历史时间i对应的时间衰退因子,s为该业务对象的单位历史时间i的总个数;
每个单位历史时间的时间衰退因子为:θi=exp(-α×di)
其中,α为与该业务对象所属分类对应的常数,di为该单位历史时间与当前时间的时间间隔。
11.根据权利要求9所述的方法,其特征在于,所述为浏览特征值和转化特征值分别设置的权重值的获取过程包括:从所述多个业务对象中选取训练业务对象;获取所述训练业务对象的实际转化量组成的实际转化集合以及排序特征值组成的排序特征集合,计算所述实际转化集合和所述排序特征集合的差异度;获取所述差异度最小时的为浏览特征值和转化特征值分别设置的权重值;
所述差异度为实际概率集合和理论概率集合的相对熵,所述实际转化集合通过实际概率集合表示,所述排序特征集合通过理论概率集合表示;
所述实际转化量组成的实际转化集合通过实际概率组成的实际概率集合表示;其中,每个训练业务对象的实际概率为该业务对象的实际转化量在全部训练业务对象的实际转化量之和中所占的比例;
所述排序特征值组成的排序特征集合通过理论概率组成的理论概率集合表示;其中,每个训练业务对象的理论概率为该业务对象的排序特征值在全部训练业务对象的排序特征值之和中所占的比例。
12.根据权利要求11所述的排序方法,其特征在于,每个业务对象对应的排序特征值还减去该业务对象的撤销转化特征值;每个业务对象对应的排序特征值减去该业务对象的撤销转化特征值时,还基于为所述撤销转化特征值设置的权重值;
所述为撤销转化特征值设置的权重值的获取过程包括:获取所述差异度达到最小值时,为撤销转化特征值设置的权重值;
每个业务对象的撤销转化特征值为:r_value=r_num1+q;
其中,r_num为该业务对象的历史撤销转化量,q为该业务对象的撤销转化占比每个业务对象的历史撤销转化量为:
其中,ri为该业务对象的单位历史时间i内的撤销转化量,s为该业务对象的单位历史时间i的总个数,θi为该业务对象的单位历史时间i对应的时间衰退因子;
每个业务对象的历史转化量:
其中,pi为该业务对象的单位历史时间i内的转化量,s为该业务对象的单位历史时间i的总个数,θi即为该业务对象的单位历史时间i对应的时间衰退因子。
13.根据权利要求11所述的排序方法,其特征在于,获取所述差异度达到最小值时,为撤销转化特征值设置的权重值包括:
通过梯度下降法获取所述差异度达到最小值时,为撤销转化特征值设置的权重值。
14.一种排序装置,其特征在于,包括:
第一获取单元,获取待排序的多个业务对象;
第二获取单元,针对每个业务对象分别获取对应的排序特征值;
排序单元,基于每个业务对象对应的排序特征值对所述多个业务对象进行排序;
其中,每个业务对象对应的排序特征值由所述第二获取单元至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出;
所述第二获取单元对所述为浏览特征值和转化特征值分别设置的权重值的获取过程包括:从所述多个业务对象中选取训练业务对象;获取所述训练业务对象的实际转化量组成的实际转化集合以及排序特征值组成的排序特征集合,计算所述实际转化集合和所述排序特征集合的差异度;获取所述差异度最小时为浏览特征值和转化特征值分别设置的权重值;
所述差异度为实际概率集合和理论概率集合的相对熵,所述实际转化集合通过实际概率集合表示,所述排序特征集合通过理论概率集合表示。
15.根据权利要求14所述的装置,其特征在于,每个业务对象的转化特征值与该业务对象的历史转化量成正比,且与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;所述该业务对象的平均转化率为该业务对象所属类目下的所有业务对象的转化率的平均值;
每个业务对象的转化特征值为:p_value=(p_num×price')z;
其中,p_num为该业务对象的历史转化量;price'与该业务对象的价值属性值成正比,z与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;
其中,c为该业务对象的历史转化率的倒数,为该业务对象的平均转化率的倒数;
price'=[loga(price+1)+1];
其中price为该业务对象的价值属性值,2≤a≤4。
16.根据权利要求14所述的装置,其特征在于,每个业务对象的浏览特征值为:b_value=logm(b_num+1);
其中,b_num为该业务对象的历史浏览量,2≤m≤4。
17.根据权利要求14所述的装置,其特征在于,每个业务对象对应的排序特征值还减去该业务对象的撤销转化特征值;
该业务对象的撤销转化特征值与该业务对象的历史撤销转化量成正比,且与该业务对象的撤销转化占比呈正比;其中,该业务对象的撤销转化占比为该业务对象的历史撤销转化量与历史转化量之比;
每个业务对象的撤销转化特征值为:r_value=r_num1+q;
其中,r_num为该业务对象的历史撤销转化量,q为该业务对象的撤销转化占比;
每个业务对象的历史撤销转化量为:
其中,ri为该业务对象的单位历史时间i内的撤销转化量,s为该业务对象的单位历史时间i的总个数,θi为该业务对象的单位历史时间i对应的时间衰退因子;
每个业务对象的历史转化量:
其中,pi为该业务对象的单位历史时间i内的转化量,s为该业务对象的单位历史时间i的总个数,θi即为该业务对象的单位历史时间i对应的时间衰退因子。
18.根据权利要求17所述的装置,其特征在于,每个业务对象对应的排序特征值减去该业务对象的撤销转化特征值时,还基于为所述撤销转化特征值设置的权重值;
所述为撤销转化特征值设置的权重值的获取过程包括:获取所述差异度达到最小值时,为撤销转化特征值设置的权重值。
19.根据权利要求17所述的装置,其特征在于,每个业务对象的浏览特征值与该业务对象的历史浏览量成正比,每个业务对象的转化特征值与该业务对象的历史转化量成正比;
每个业务对象的历史浏览量基于该业务对象每个单位历史时间的浏览量与该单位历史时间的时间衰退因子计算得到;
每个业务对象的历史转化量基于该业务对象每个单位历史时间的转化量与该单位历史时间的时间衰退因子计算得到;
每个业务对象的历史浏览量为:
每个业务对象的历史转化量为:
其中,bi为该业务对象的单位历史时间i内的浏览量,pi为该业务对象的单位历史时间i内的转化量,θi为该业务对象的单位历史时间i对应的时间衰退因子,s为该业务对象的单位历史时间i的总个数;
θi=exp(-α×di)
其中,α为与该业务对象所属分类对应的常数,di为该单位历史时间与当前时间的时间间隔。
20.根据权利要求14所述的装置,其特征在于,所述实际转化量组成的实际转化集合通过实际概率组成的实际概率集合表示;其中,每个训练业务对象的实际概率为该业务对象的实际转化量在全部训练业务对象的实际转化量之和中所占的比例;
所述排序特征值组成的排序特征集合通过理论概率组成的理论概率集合表示;其中,每个训练业务对象的理论概率为该业务对象的排序特征值在全部训练业务对象的排序特征值之和中所占的比例。
21.根据权利要求14所述的装置,其特征在于,所述第二获取单元获取所述差异度最小时的所述权重值包括:
所述第二获取单元通过梯度下降法获取所述差异度最小时所述权重值。
22.一种排序装置,其特征在于,包括:
第一获取单元,获取待排序的多个业务对象;
第二获取单元,针对每个业务对象分别获取对应的排序特征值;
排序单元,基于每个业务对象对应的排序特征值对所述多个业务对象进行排序;
其中,每个业务对象对应的排序特征值由所述第二获取单元至少基于该业务对象的浏览特征值与转化特征值,以及至少为浏览特征值和转化特征值分别设置的权重值计算出;
每个业务对象的转化特征值与该业务对象的历史转化量成正比,且与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;所述该业务对象的平均转化率为该业务对象所属类目下的所有业务对象的转化率的平均值;
每个业务对象的转化特征值为:p_value=(p_num×price')z;
其中,p_num为该业务对象的历史转化量;price'与该业务对象的价值属性值成正比,z与该业务对象的平均转化率与历史转化率的差值的绝对值成反比;
其中,c为该业务对象的历史转化率的倒数,为该业务对象的平均转化率的倒数;
price'=[loga(price+1)+1];
其中price为该业务对象的价值属性值,2≤a≤4。
23.根据权利要求22所述的装置,其特征在于,
每个业务对象的浏览特征值与该业务对象的历史浏览量成正比,每个业务对象的转化特征值与该业务对象的历史转化量成正比;
每个业务对象的历史浏览量基于该业务对象每个单位历史时间的浏览量与该单位历史时间的时间衰退因子计算得到;
每个业务对象的转化浏览量基于该业务对象每个单位历史时间的转化量与该单位历史时间的时间衰退因子计算得到;
每个业务对象的浏览特征值为:b_value=logm(b_num+1);
其中,b_num为该业务对象的历史浏览量,2≤m≤4
每个业务对象的历史浏览量为:
每个业务对象的历史转化量为:
其中,bi为该业务对象的单位历史时间i内的浏览量,pi为该业务对象的单位历史时间i内的转化量,θi为该业务对象的单位历史时间i对应的时间衰退因子,s为该业务对象的单位历史时间i的总个数;
每个单位历史时间的时间衰退因子为:θi=exp(-α×di)
其中,α为与该业务对象所属分类对应的常数,di为该单位历史时间与当前时间的时间间隔。
24.根据权利要求22所述的装置,其特征在于,所述第二获取单元对所述为浏览特征值和转化特征值分别设置的权重值的获取过程包括:从所述多个业务对象中选取训练业务对象;获取所述训练业务对象的实际转化量组成的实际转化集合以及排序特征值组成的排序特征集合,计算所述实际转化集合和所述排序特征集合的差异度;获取所述差异度最小时的为浏览特征值和转化特征值分别设置的权重值;
所述差异度为实际概率集合和理论概率集合的相对熵,所述实际转化集合通过实际概率集合表示,所述排序特征集合通过理论概率集合表示;
所述实际转化量组成的实际转化集合通过实际概率组成的实际概率集合表示;其中,每个训练业务对象的实际概率为该业务对象的实际转化量在全部训练业务对象的实际转化量之和中所占的比例;
所述排序特征值组成的排序特征集合通过理论概率组成的理论概率集合表示;其中,每个训练业务对象的理论概率为该业务对象的排序特征值在全部训练业务对象的排序特征值之和中所占的比例。
25.根据权利要求24所述的装置,其特征在于,每个业务对象对应的排序特征值还减去该业务对象的撤销转化特征值;每个业务对象对应的排序特征值减去该业务对象的撤销转化特征值时,还基于为所述撤销转化特征值设置的权重值;
所述为撤销转化特征值设置的权重值的获取过程包括:获取所述差异度达到最小值时,为撤销转化特征值设置的权重值;
每个业务对象的撤销转化特征值为:r_value=r_num1+q;
其中,r_num为该业务对象的历史撤销转化量,q为该业务对象的撤销转化占比;
每个业务对象的历史撤销转化量为:
其中,ri为该业务对象的单位历史时间i内的撤销转化量,s为该业务对象的单位历史时间i的总个数,θi为该业务对象的单位历史时间i对应的时间衰退因子;
每个业务对象的历史转化量:
其中,pi为该业务对象的单位历史时间i内的转化量,s为该业务对象的单位历史时间i的总个数,θi即为该业务对象的单位历史时间i对应的时间衰退因子。
26.根据权利要求25所述的装置,其特征在于,获取所述差异度达到最小值时,为撤销转化特征值设置的权重值包括:
通过梯度下降法获取所述差异度达到最小值时,为撤销转化特征值设置的权重值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410448984.XA CN105468628B (zh) | 2014-09-04 | 2014-09-04 | 一种排序方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410448984.XA CN105468628B (zh) | 2014-09-04 | 2014-09-04 | 一种排序方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105468628A CN105468628A (zh) | 2016-04-06 |
CN105468628B true CN105468628B (zh) | 2018-11-16 |
Family
ID=55606334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410448984.XA Active CN105468628B (zh) | 2014-09-04 | 2014-09-04 | 一种排序方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105468628B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106022833A (zh) * | 2016-05-24 | 2016-10-12 | 温州市鹿城区中津先进科技研究院 | 基于大数据处理的商品定制方法 |
CN106294567B (zh) * | 2016-07-26 | 2020-02-14 | 腾讯科技(深圳)有限公司 | 一种音频排序方法和装置 |
CN106326421B (zh) * | 2016-08-24 | 2019-03-22 | 中国科学院上海微系统与信息技术研究所 | 基于索引树和数据链表的fpga并行排序方法及系统 |
CN108335137B (zh) * | 2018-01-31 | 2021-07-30 | 北京三快在线科技有限公司 | 排序方法及装置、电子设备、计算机可读介质 |
CN111027833B (zh) * | 2019-11-29 | 2020-11-10 | 珠海随变科技有限公司 | 商品转化指数的计算方法、装置、设备和存储介质 |
CN112380419B (zh) * | 2020-10-29 | 2024-02-09 | 中国人寿保险股份有限公司 | 一种竞品数据查询方法、系统及电子设备 |
CN114969408A (zh) * | 2021-02-26 | 2022-08-30 | 华为技术有限公司 | 反馈搜索结果的方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102866997A (zh) * | 2011-07-05 | 2013-01-09 | 腾讯科技(深圳)有限公司 | 用户数据的处理方法和装置 |
CN103577413A (zh) * | 2012-07-20 | 2014-02-12 | 阿里巴巴集团控股有限公司 | 搜索结果排序方法及系统、搜索结果排序优化方法及系统 |
CN103631832A (zh) * | 2012-08-29 | 2014-03-12 | 阿里巴巴集团控股有限公司 | 业务对象排序方法、业务对象搜索方法及相关装置 |
-
2014
- 2014-09-04 CN CN201410448984.XA patent/CN105468628B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102866997A (zh) * | 2011-07-05 | 2013-01-09 | 腾讯科技(深圳)有限公司 | 用户数据的处理方法和装置 |
CN103577413A (zh) * | 2012-07-20 | 2014-02-12 | 阿里巴巴集团控股有限公司 | 搜索结果排序方法及系统、搜索结果排序优化方法及系统 |
CN103631832A (zh) * | 2012-08-29 | 2014-03-12 | 阿里巴巴集团控股有限公司 | 业务对象排序方法、业务对象搜索方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105468628A (zh) | 2016-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105468628B (zh) | 一种排序方法及装置 | |
CN108460618B (zh) | 一种资源配置方法及装置,电子设备 | |
CN108256907A (zh) | 一种客户分群模型的构建方法和计算设备 | |
CN109087177A (zh) | 向目标用户推荐商品的方法、装置及计算机可读存储介质 | |
CN106651542A (zh) | 一种物品推荐的方法及装置 | |
CN106251174A (zh) | 信息推荐方法及装置 | |
CN104239338A (zh) | 信息推荐方法及装置 | |
CN108205768A (zh) | 数据库建立方法和数据推荐方法及装置、设备和存储介质 | |
CN107402961B (zh) | 一种推荐方法及装置,电子设备 | |
CN107451894A (zh) | 数据处理方法、装置和计算机可读存储介质 | |
CN103678518A (zh) | 一种推荐列表调整方法和装置 | |
CN115917577A (zh) | 使用动态属性建模进行下一个篮子推荐的系统和方法 | |
CN107886241B (zh) | 资源分析方法、装置、介质和电子设备 | |
CN110457545A (zh) | 一种确定推荐系统中排序模型的参数的方法及装置 | |
CN108229826A (zh) | 一种基于改进贝叶斯算法的网购风险等级评估方法 | |
CN109840796A (zh) | 决策因素分析装置与决策因素分析方法 | |
CN109064293A (zh) | 商品推荐方法、装置、计算机设备及存储介质 | |
CN110197404A (zh) | 可降低流行度偏差的个性化长尾商品推荐方法和系统 | |
CN106920119A (zh) | 一种用户价值的评价方法及装置 | |
CN107767152A (zh) | 产品购买倾向分析方法及服务器 | |
CN107292713A (zh) | 一种基于规则与层级融合的个性推荐方法 | |
CN111695024A (zh) | 对象评估值的预测方法及系统、推荐方法及系统 | |
CN108256924A (zh) | 一种产品销售预测装置 | |
CN109213936A (zh) | 商品搜索方法和装置 | |
CN106294410A (zh) | 一种个性化信息推送时间的确定方法及确定系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |