首页> 中国专利> 目标对象的排序方法和排序装置

目标对象的排序方法和排序装置

摘要

本发明公开了目标对象的排序方法和排序装置,涉及计算机技术领域。该方法的一具体实施方式包括:根据接收的排序请求,获取排序请求对应的目标对象和目标对象的基础特征数据;利用排序请求对应的中间特征生成算法,对基础特征数据进行处理,生成目标对象的中间特征数据;基于熵权法确定中间特征数据的权重值,根据中间特征数据和中间特征数据的权重值,对目标对象进行排序。该实施方式引入中间特征数据的概念,能够减少各基础特征数据之间的多重共线性等互相干扰的问题,利用熵权法计算中间特征数据的权重值,避免了现有学习排序算法中需要获取监督信息造成的误差,达到在降低成本的情况下,能够适用于数据量较少的排序场景的效果。

著录项

  • 公开/公告号CN112783468A

    专利类型发明专利

  • 公开/公告日2021-05-11

    原文格式PDF

  • 申请/专利号CN201911076865.5

  • 发明设计人 刘尧;

    申请日2019-11-06

  • 分类号G06F7/08(20060101);

  • 代理机构11219 中原信达知识产权代理有限责任公司;

  • 代理人王安娜;王志远

  • 地址 100176 北京市北京经济技术开发区科创十一街18号院2号楼4层A402室

  • 入库时间 2023-06-19 10:57:17

说明书

技术领域

本发明涉及计算机技术领域,尤其涉及一种目标对象的排序方法和排序装置。

背景技术

当今时代是个数据时代,很多问题都可以看成是一种排序问题,如传统电商场景的搜索、推荐、广告等问题,新型零售场景的店铺地址选择、用户精准营销等问题,工作场景的候选人面试筛选、活动方案选择等问题,生活场景的住房购买、孩子学校选择等问题,这些场景均涉及到多个待考虑对象的排序环节。

目前多采用学习排序算法解决不同场景的排序问题,这种算法把排序任务定义成一种有监督的学习问题,需要有监督的人为标记数据,如标签或分数等。学习排序算法的具体实现为:根据任务定义,设定合适的目标得分,并基于事先获得的训练数据,学习出目标得分的计算模式,对未知对象计算目标得分,最后利用目标得分进行排序。

在实现本发明过程中,发明人发现现有技术中至少存在如下问题:一、现有排序算法需要事先有足够多的监督信息用于训练学习,不适合数据量小的排序场景,并且需要花费大量的人力物力获取监督信息,对不同对象进行排序所需要的监督信息是不同的,无法通用;二、通过人力物力获得的监督信息,会因各种原因产生一些误差,影响真实的排序结果。

发明内容

有鉴于此,本发明实施例提供一种目标对象的排序方法和排序装置,能够减少各基础特征数据之间的多重共线性等互相干扰的问题,还可以避免了现有学习排序算法中需要获取监督信息造成的误差,在降低成本的情况下,还能够适用于数据量较少的排序场景。

为实现上述目的,根据本发明实施例的第一方面,提供了一种目标对象的排序方法。

本发明实施例的一种目标对象的排序方法,包括:根据接收的排序请求,获取所述排序请求对应的目标对象和所述目标对象的基础特征数据;利用所述排序请求对应的中间特征生成算法,对所述基础特征数据进行处理,生成所述目标对象的中间特征数据;基于熵权法确定所述中间特征数据的权重值,根据所述中间特征数据和所述中间特征数据的权重值,对所述目标对象进行排序。

可选地,在根据接收的排序请求,获取所述排序请求对应的目标对象和所述目标对象的基础特征数据之前,所述方法还包括:接收并解析所述排序请求,得到所述排序请求对应的中间特征生成算法;其中,所述中间特征生成算法为以下选项中任意一项:直接指定方式、主成分分析算法以及因子分析算法。

可选地,所述利用所述排序请求对应的中间特征生成算法,对所述基础特征数据进行处理,生成所述目标对象的中间特征数据,包括:在所述中间特征生成算法是直接指定方式的情况下,根据所述排序请求,直接指定至少两个中间特征数据的属性;针对任意一个中间特征数据的属性,采用如下方法得到所述中间特征数据:从所述目标对象的基础特征数据中选择所述中间特征数据对应的目标基础特征数据;基于熵权法,计算所述目标基础特征数据的权重值;根据所述目标基础特征数据和所述目标基础特征数据的权重值,得到所述中间特征数据。

可选地,所述利用所述排序请求对应的中间特征生成算法,对所述基础特征数据进行处理,生成所述目标对象的中间特征数据,包括:在所述中间特征生成算法是主成分分析算法的情况下,直接基于所述主成分分析算法,根据所述目标对象的基础特征数据生成至少两个相关性最低的主成分,并确定生成的主成分为所述中间特征数据。

可选地,所述利用所述排序请求对应的中间特征生成算法,对所述基础特征数据进行处理,生成所述目标对象的中间特征数据,包括:在所述中间特征生成算法是因子分析算法的情况下,直接基于所述因子分析算法,根据所述目标对象的基础特征数据生成至少两个因子,并确定生成的因子为所述中间特征数据。

可选地,在获取所述排序请求对应的目标对象和所述目标对象的基础特征数据之后,所述方法还包括:根据所述排序请求,确定所述排序请求对应的数据预处理算法,然后利用所述数据预处理算法对所述基础特征数据进行预处理;其中,所述数据预处理算法包括以下选项中至少一项:缺失值处理算法、异常值处理算法、数据归一化处理算法、共线性处理算法、负向特征处理算法以及数据变换处理算法。

可选地,所述根据所述中间特征数据和所述中间特征数据的权重值,对所述目标对象进行排序,包括:根据所述排序请求,设置所述中间特征数据的分值;根据所述中间特征数据的分值和所述中间特征数据的权重值,计算所述目标对象的排序分值;根据所述目标对象的排序分值,对所述目标对象进行排序。

为实现上述目的,根据本发明实施例的第二方面,提供了一种目标对象的排序装置。

本发明实施例的一种目标对象的排序装置,包括:获取模块,用于根据接收的排序请求,获取所述排序请求对应的目标对象和所述目标对象的基础特征数据;生成模块,用于利用所述排序请求对应的中间特征生成算法,对所述基础特征数据进行处理,生成所述目标对象的中间特征数据;排序模块,用于基于熵权法确定所述中间特征数据的权重值,根据所述中间特征数据和所述中间特征数据的权重值,对所述目标对象进行排序。

可选地,所述获取模块还用于:接收并解析所述排序请求,得到所述排序请求对应的中间特征生成算法;其中,所述中间特征生成算法为以下选项中任意一项:直接指定方式、主成分分析算法以及因子分析算法。

可选地,所述生成模块还用于:在所述中间特征生成算法是直接指定方式的情况下,根据所述排序请求,直接指定至少两个中间特征数据的属性;针对任意一个中间特征数据的属性,采用如下方法得到所述中间特征数据:从所述目标对象的基础特征数据中选择所述中间特征数据对应的目标基础特征数据;基于熵权法,计算所述目标基础特征数据的权重值;根据所述目标基础特征数据和所述目标基础特征数据的权重值,得到所述中间特征数据。

可选地,所述生成模块还用于:在所述中间特征生成算法是主成分分析算法的情况下,直接基于所述主成分分析算法,根据所述目标对象的基础特征数据生成至少两个相关性最低的主成分,并确定生成的主成分为所述中间特征数据。

可选地,所述生成模块还用于:在所述中间特征生成算法是因子分析算法的情况下,直接基于所述因子分析算法,根据所述目标对象的基础特征数据生成至少两个因子,并确定生成的因子为所述中间特征数据。

可选地,所述获取模块还用于:根据所述排序请求,确定所述排序请求对应的数据预处理算法,然后利用所述数据预处理算法对所述基础特征数据进行预处理;其中,所述数据预处理算法包括以下选项中至少一项:缺失值处理算法、异常值处理算法、数据归一化处理算法、共线性处理算法、负向特征处理算法以及数据变换处理算法。

可选地,所述排序模块还用于:根据所述排序请求,设置所述中间特征数据的分值;根据所述中间特征数据的分值和所述中间特征数据的权重值,计算所述目标对象的排序分值;根据所述目标对象的排序分值,对所述目标对象进行排序。

为实现上述目的,根据本发明实施例的第三方面,提供了一种电子设备。

本发明实施例的一种电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明实施例的目标对象的排序方法。

为实现上述目的,根据本发明实施例的第四方面,提供了一种计算机可读介质。

本发明实施例的一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现本发明实施例的目标对象的排序方法。

上述发明中的一个实施例具有如下优点或有益效果:引入中间特征数据的概念,将大量的基础特征数据按照预设的算法进行归类,每个类别内的若干基础特征数据可以统一集中处理,从而区别于其他类别的基础特征,能够减少各基础特征数据之间的多重共线性等互相干扰的问题。此外,本发明实施例中利用熵权法计算中间特征数据的权重值,进而可以借助计算得到的权重值获取每个目标对象的分值,能够达到利用分值对目标对象进行排序的目的,避免了现有学习排序算法中需要获取监督信息造成的误差。并且,本发明实施例涉及的技术手段均属于简单可行的技术方案,不需要消耗人力物力获取监督信息,在降低成本的情况下,还能够适用于数据量较少的排序场景。

上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。

附图说明

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:

图1是根据本发明实施例的目标对象的排序方法的主要步骤的示意图;

图2是根据本发明实施例的目标对象的排序方法的主要流程的示意图;

图3是根据本发明实施例的目标对象的排序装置的主要模块的示意图;

图4是本发明实施例可以应用于其中的示例性系统架构图;

图5是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。

具体实施方式

以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

面对这些大大小小的排序问题,目前主流的是有监督的学习排序算法,此模型算法需要有监督的人为标记数据如标签或分数等。以住房购买为例,在排序前首先收集关于房子的各种信息,如面积、朝向、楼层、装修、是否新房等房子基本信息,以及小区环境、周边学校、医院、交通、生活设施等房子周边信息,利用收集的房子信息生成监督信息,花费一定人力对每个房子进行标注,通过观察收集的房子信息,给房子标注一个分数。待标注足够多的房子后,把所有房子信息以及标注的分数输入回归模型算法中,通过模型算法学习房子信息与标注分数之间的关系。当新来一批房子需要排序时,收集这些房子的信息,使用模型算法可以计算出分数,最后利用计算的分数为房子排序。

通过上述例子可以得知,现有学习排序算法中需要花费大量人力物力得到监督信息,并且针对不同对象进行排序时,需要的监督信息是不同的,不具有通用性。另外,通过人力物力获得的监督信息,会因为任务定义、目标设定、数据获取方法、数据处理等各种原因产生一些误差,造成排序结果的不准确。同时,由于需要足够的训练和验证数据,所以对于数据量较小的排序场景使用起来比较困难。

为此,本发明提出一种目标对象的排序方法和排序装置,在获得目标对象的基础特征数据后,无需训练模型,也无需较多的数据,可以直接对目标对象进行排序,排序结果客观,实用性强。图1是根据本发明实施例的目标对象的排序方法的主要步骤的示意图。如图1所示,本发明实施例的目标对象的排序方法的主要步骤可以包括:

步骤S101:根据接收的排序请求,获取排序请求对应的目标对象和目标对象的基础特征数据;

步骤S102:利用排序请求对应的中间特征生成算法,对基础特征数据进行处理,生成目标对象的中间特征数据;

步骤S103:基于熵权法确定中间特征数据的权重值,根据中间特征数据和中间特征数据的权重值,对目标对象进行排序。

从上述步骤S101至S103中看到,本发明实施例的目标对象的排序方法中,在接收排序请求后,可以直接得到此次排序请求中需要排序的目标对象,也就是等待排序的对象,然后获取目标对象的基础特征数据。本发明实施例中的基础特征数据是指与排序请求相关的目标对象的基础信息,即本发明实施例中的排序请求中设置了需要获取的目标对象的信息属性。

举例来说,对某平台上展示的物品进行排序的场景下,目标对象可以是该平台上的物品,排序请求中设置需要获取目标对象的基础特征数据可以包括:物品的展示时长、物品评论数、物品好评率、物品差评率和物品类别。针对物品的其他基础信息,比如物品的数量、以及物品的规格参数,在排序请求中没有设置,说明此次排序请求中,这些没有设置的基础信息不重要,因此不需要获取。本发明实施例中在排序请求中设置需要获取的目标对象的信息属性,可以根据实际场景设置需要获取的信息数据,减少不必要信息数据的获取,提高本发明实施例的排序算法的速度,增强用户体验。

当然,针对不同的场景中,获取的目标对象的基础特征数据是不同的。以地理位置排序为例说明,根据实际需求,相关的用于排序的基础特征数据可以包括:交通信息,如公交车站数量、公交线路数量、地铁站数量、停车场数量等;商圈信息,如企业数量、医院数量、银行数量、小区数量、商业区数量、学校数量等;客流信息,如网络平台基于定位提供的位于地理位置附近的线上用户数量等;线上用户信息,如网络平台中基于收货地址提供的线上用户各年龄段用户数量、各性别用户数量、各会员级别数量、活跃用户数量、不同价值的用户数量等;线上收藏信息,如网络平台中基于收货地址提供的线上用户的收藏量等。通过各种渠道如地图服务平台、网络平台、线上娱乐平台等可获得这些基础特征数据。

本发明实施例中的排序请求中不仅设置了此次排序请求需要获取的信息属性,还设置了此次排序请求对应的中间特征生成算法。其中,中间特征是指对基础特征进行归类处理得到的特征,因此,本发明实施例中在获取到目标对象以及目标对象的基础特征数据之后,可以利用此次排序请求对应的中间特征生成算法,生成目标对象的中间特征数据。

假设X1至X9为某目标对象的基础特征数据,Z1至Z3为得到的该目标对象的中间特征数据,则记中间特征数据Z1至Z3与基础特征数据X1至X9的对应关系为:Z1对应{X1、X3、X6、X9},Z2对应{X2、X3、X5、X7、X8},Z3对应{X4、X7、X9}。解释为:中间特征数据Z1是由基础特征数据X1、X3、X6和X9组合得到的,中间特征数据Z2是由基础特征数据X2、X3、X5、X7和X8组合得到的,中间特征数据Z3是由基础特征数据X4、X7和X9组合得到的。

本发明实施例中引入中间特征数据的概念,把大量的基础特征数据按照预设的归类算法进行归类,从而进行分类管理,每个类别内的若干基础特征数据可以统一集中处理,从而区别于其他类别的基础特征,能够减少各基础特征数据之间的多重共线性(即,线性回归模型中的解释变量之间由于存在精确相关关系或高度相关关系而使模型估计失真或难以估计准确)等互相干扰的问题。

在得到中间特征数据之后,本发明实施例中利用熵权法计算中间特征数据的权重值,接着利用计算的权重值和中间特征数据,得到目标对象的分值,完成对目标对象的排序。熵权法是计算特征权重的一种方法,它借鉴信息熵的理念,基于每个特征本身的离散程度,计算特征的权重。假设X

步骤(1):计算特征j每个样本取值占该特征的数值比重p

步骤(2):基于数值比重计算特征j的熵值e

步骤(3):基于熵值计算特征j的信息熵冗余度d

步骤(4):计算特征j的权重W

本发明实施例的目标对象的排序方法,利用熵权法计算中间特征数据的权重值,进而可以借助计算得到的权重值获取每个目标对象的分值,能够达到利用分值对目标对象进行排序的目的,避免了现有学习排序算法中需要获取监督信息造成的误差。并且,本发明实施例涉及的技术手段均属于简单可行的技术方案,不需要消耗人力物力获取监督信息,在降低成本的情况下,还能够适用于数据量较少的排序场景。

此外,可以看出本发明实施例的目标对象的排序方法可以由数据预处理、中间特征数据的生成以及排序三个部分组成。其中,数据预处理是在获取到目标对象的基础特征数据之后,对获取的基础特征数据进行预处理。因此,作为本发明的再一个可参考实施例,在获取排序请求对应的目标对象和目标对象的基础特征数据之后,目标对象的排序方法还可以包括:根据排序请求,确定排序请求对应的数据预处理算法,然后利用数据预处理算法对基础特征数据进行预处理。

本发明实施例中,可以根据接收的排序请求,确定具体的数据预处理算法,这样可以结合具体的目标对象的基础特征数据,选取适合的处理基础特征数据的算法,进一步提高本发明实施例的目标对象的排序方法的实用性。其中,数据预处理算法可以包括以下选项中至少一项:缺失值处理算法、异常值处理算法、数据归一化处理算法、共线性处理算法、负向特征处理算法以及数据变换处理算法。

缺失值是指粗糙数据中由于缺少信息而造成的数据的聚类、分组、删失或截断,具体指的是现有数据集中某个或某些属性的值是不完全的。如果获取的目标对象的基础特征数据中存在缺失值,会造成提高的数据不完全,那么需要对具体的缺失值进行处理,缺失值处理算法可以包括均值插补、利用同类均值插补、极大似然估计或者多重插补等。异常值是指一组测定值中与平均值的偏差超过两倍标准差的测定值,与平均值的偏差超过三倍标准差的测定值,称为高度异常的异常值。本发明实施例中的异常值可以是目标对象的基础特征数据出现异常的情况,此时需要对这些异常值进行处理,异常值的处理方法与缺失值类似,可以将异常值删除,然后当缺失值处理。当然,本发明实施例中也可以采用其他异常值处理算法。

归一化是一种无量纲处理手段,使物理系统数值的绝对值变成某种相对值关系。本发明实施例中采用数据归一化处理可以对目标对象的基础特征数据进行归一化处理,为接下来的中间特征数据生成带来便利。本发明实施例的共线性是指目标对象的某个基础特征数据与其他基础特征数据间存在线性关系,因此共线性处理算法可以是改变基础特征数据的形式或者是保留一些重要的基础特征数据等。本发明实施例中还可以包括负向特征处理算法或者数据变换处理算法,这些都是已经成熟的技术手段,此处不再累述。

本发明实施例中在获取到目标对象的基础特征数据之后,可以利用对应的数据预处理算法对基础特征数据进行预处理,从而可以提高本发明实施例目标对象排序的准确性。

利用基础特征数据生成中间特征数据是本发明实施例的主要创新点之一,目的是把大量的基础特征数据按一些中间概念来归类,从而进行分类管理,每个类别内的若干基础特征数据可以统一集中处理,从而区别于其他类别的基础特征数据。举例来说,假设基础特征数据为X1至X9,Z1至Z3为得到的中间特征数据,则记中间特征数据Z1至Z3与基础特征数据X1至X9的对应关系为:

Z1=W11*X1+W13*X3+W16*X6+W19*X9;

Z2=W22*X2+W23*X3+W25*X5+W27*X7+W28*X8;

Z3=W34*X4+W37*X7+W39*X9。

各基础特征数据的系数即为其权重,比如对于中间特征数据Z1来说,其相关的基础特征数据X3的特征权重是W13,而对于中间特征数据Z2来说,其相关的基础特征数据X3的特征是W23,同一基础特征数据X3,对于不同的中间特征数据有不同的特征权重。

那么,选择中间特征生成算法是需要考虑的。因此,作为本发明的又一个可参考实施例,在根据接收的排序请求,获取排序请求对应的目标对象和目标对象的基础特征数据之前,目标对象的排序方法还可以包括:接收并解析排序请求,得到该排序请求对应的中间特征生成算法。而本发明实施例中生成中间特征数据的方法可以是直接指定方式、主成分分析算法以及因子分析算法这三种方法中任意一种。

直接指定方式是指可以按照生活常识和业务经验对基础特征数据进行归类,选择出中间特征数据的属性。以地理位置排序为例说明,用于排序的基础特征数据可以包括:公交车站数量、公交线路数量、企业数量、医院数量、银行数量、小区数量、网络平台基于定位提供的位于地理位置附近的线上用户数量、各性别用户数量、各会员级别数量、活跃用户数量、网络平台中基于收货地址提供的线上用户的收藏量等。那么可以直接指定中间特征数据的属性为:交通信息、商圈信息、客流信息、线上用户信息和线上收藏信息。

若本发明实施例中排序请求对应的中间特征生成算法是直接指定方式,那么步骤S102利用排序请求对应的中间特征生成算法,对基础特征数据进行处理,生成目标对象的中间特征数据,可以包括:

步骤S1021:在中间特征生成算法是直接指定的情况下,根据排序请求,直接指定至少两个中间特征数据的属性;

步骤S1022:针对任意一个中间特征数据的属性,采用如下方法得到中间特征数据。具体的得到中间特征数据的方法为:从目标对象的基础特征数据中选择中间特征数据对应的目标基础特征数据;基于熵权法,计算目标基础特征数据的权重值;根据目标基础特征数据和目标基础特征数据的权重值,得到中间特征数据。

如果排序请求中设置采用直接指定方式生成中间特征数据,那么可以直接获取到指定的中间特征数据的属性,然后可以根据指定的属性从基础数据中选择出该中间特征数据对应的基础特征数据,最后对于每个中间特征数据,使用熵权法为其相关的基础特征数据计算特征权重,熵权法的原理和步骤在上文步骤S103中已经说明,此处不详细展开。假设说,指定5个中间特征数据的属性,那么针对每个中间特征数据的属性,获取该中间特征数据对应的基础特征数据,然后采用熵权法计算基础特征数据的权重值,最后利用计算得到的权重值,生成该中间特征数据,本发明实施例中需要针对这5个中间特征数据的属性分别处理,最后得到5个中间特征数据。

本发明实施例中除了可以采用直接指定方式生成中间特征数据,还可以选择主成分分析算法和因子分析算法,这两种算法较为类似,都是对基础特征数据进行线性变换。主成分分析是从一组众多基础特征数据中找出相互之间最不相关的主成分,侧重的是主成分之间的不相关性;因子分析是从一组众多基础特征数据中找出含义最相近的基础特征数据,组成各个因子,侧重的是因子内部的含义相近性。不管是主成分之间的不相关性,还是各因子内部的含义相近性,都符合中间特征数据的特点,可以用来生成中间特征数据。或者说,主成分之间的不相关性,可以避免直接采用基础特征数据造成的共线性;因子内部的含义相近,那么因子之间含义就没那么相近,也可以避免共线性。

所以,在排序请求对应的中间特征生成算法是主成分分析算法的情况下,上述步骤S102利用排序请求对应的中间特征生成算法,对基础特征数据进行处理,生成目标对象的中间特征数据,可以包括:直接基于主成分分析算法,根据目标对象的基础特征数据生成至少两个相关性最低的主成分,并确定生成的主成分为中间特征数据。

假设n个基础特征数据x1、x2、x3…xn,对其进行主成分分析,就是把这些基础特征任意组合,比如z1=w11*x1+w13*x3+w17*x7,z2=w22*x2+w23*x3+w25*x5,z3=w33*x3+w36*x6等,这些z1、z2和z3就是主成分,也就是中间特征数据,当z1、z2和z3之间相关性最低时,就是主成分分析产生的各个主成分,即中间特征数据。所以,这些z1、z2和z3有各种各样的组合,不断尝试,不断计算相关性,选择相关性最低的z1、z2和z3。这个不断尝试和计算相关性的过程是个非常成熟和常见的数学方法,在本发明实施例中不作具体描述。综上所述,本发明的可选实施例中,可以直接利用主成分分析算法,根据目标对象的基础特征数据生成中间特征数据,并且不需要使用熵权法计算基础特征数据的权重。

还有,在排序请求对应的中间特征生成算法是因子分析算法的情况下,上述步骤S102利用排序请求对应的中间特征生成算法,对基础特征数据进行处理,生成目标对象的中间特征数据,可以包括:直接基于因子分析算法,根据目标对象的基础特征数据生成至少两个因子,并确定生成的因子为中间特征数据。

若侧重于中间特征数据内部的各基础特征数据含义比较相近属于同一类,选择因子分析算法。比如,地铁数量、公交站数量、公交线数量这些基础特征数据可以共同组成交通状况这一中间特征数据,这3个基础特征数据的含义比较相近,而地铁数量、公交站数量、公园数量就不太适合组成交通状况,含义没那么相近。由于因子分析算法也是成熟常见的数学方法,此处不描述具体细节。本发明实施例中可以通过因子分析算法,从基础特征数据中找到若干因子,这些因子就是生成的中间特征数据。

本发明实施例的第三个部分是排序,作为本发明的还一个可参考实施例,步骤S103根据中间特征数据和中间特征数据的权重值,对目标对象进行排序,可以包括:

步骤S1031:根据排序请求,设置中间特征数据的分值;

步骤S1032:根据中间特征数据的分值和中间特征数据的权重值,计算目标对象的排序分值;

步骤S1033:根据目标对象的排序分值,对目标对象进行排序。对于各种不同的排序场景、处理不同的排序对象,获取的中间特征数据是不同的,因此在获取到中间特征数据之后,需要设置中间特征数据的分值,然后结合中间特征数据的权重值,计算出每个目标对象的排序分值,进而可以利用排序分值对目标对象进行排序。

图2是根据本发明实施例的目标对象的排序方法的主要流程的示意图。如图2所示,本发明实施例的目标对象的排序方法的主要流程可以包括:

步骤S201:接收并解析排序请求,得到排序请求对应的中间特征生成算法,其中,中间特征生成算法为直接指定方式、主成分分析算法以及因子分析算法;

步骤S202:根据接收的排序请求,获取排序请求对应的目标对象和目标对象的基础特征数据;

步骤S203:根据排序请求,确定排序请求对应的数据预处理算法,然后利用数据预处理算法对基础特征数据进行预处理,其中,数据预处理算法可以包括以下选项中至少一项:缺失值处理算法、异常值处理算法、数据归一化处理算法、共线性处理算法、负向特征处理算法以及数据变换处理算法;

步骤S204:在中间特征生成算法是直接指定方式的情况下,根据排序请求,直接指定至少两个中间特征数据的属性;

步骤S205:针对任意一个中间特征数据的属性,计算得到该属性对应的中间特征数据,最后得到此次排序请求对应的中间特征数据,其中,针对任意一个中间特征数据的属性,计算得到该属性对应的中间特征数据的方法为从基础特征数据中选择出该中间特征数据对应的基础特征数据,利用熵权法,计算选择出的基础特征数据的权重值,最后利用权重值得到该中间特征数据;

步骤S206:在中间特征生成算法是主成分分析算法的情况下,直接基于主成分分析算法,根据目标对象的基础特征数据生成至少两个相关性最低的主成分,并确定生成的主成分为中间特征数据;

步骤S207:在中间特征生成算法是因子分析算法的情况下,直接基于因子分析算法,根据目标对象的基础特征数据生成至少两个因子,并确定生成的因子为中间特征数据;

步骤S208:基于熵权法确定中间特征数据的权重值,根据排序请求,设置中间特征数据的分值;

步骤S209:根据中间特征数据的分值和中间特征数据的权重值,计算目标对象的排序分值;

步骤S210:根据目标对象的排序分值,对目标对象进行排序。

根据本发明实施例的目标对象的排序技术方案,引入中间特征数据的概念,将大量的基础特征数据按照预设的算法进行归类,每个类别内的若干基础特征数据可以统一集中处理,从而区别于其他类别的基础特征,能够减少各基础特征数据之间的多重共线性等互相干扰的问题。此外,本发明实施例中利用熵权法计算中间特征数据的权重值,进而可以借助计算得到的权重值获取每个目标对象的分值,能够达到利用分值对目标对象进行排序的目的,避免了现有学习排序算法中需要获取监督信息造成的误差。并且,本发明实施例涉及的技术手段均属于简单可行的技术方案,不需要消耗人力物力获取监督信息,在降低成本的情况下,还能够适用于数据量较少的排序场景。

图3是根据本发明实施例的目标对象的排序装置的主要模块的示意图。如图3所示,本发明实施例的目标对象的排序装置300主要包括以下模块:获取模块301、生成模块302和排序模块303。

其中,获取模块301可用于根据接收的排序请求,获取排序请求对应的目标对象和目标对象的基础特征数据;生成模块302可用于利用排序请求对应的中间特征生成算法,对基础特征数据进行处理,生成目标对象的中间特征数据;排序模块303可用于基于熵权法确定中间特征数据的权重值,根据中间特征数据和中间特征数据的权重值,对目标对象进行排序。

本发明实施例中,获取模块301还可用于:接收并解析排序请求,得到排序请求对应的中间特征生成算法。其中,中间特征生成算法可以是以下选项中任意一项:直接指定方式、主成分分析算法以及因子分析算法。

本发明实施例中,生成模块302还可用于:在中间特征生成算法是直接指定方式的情况下,根据排序请求,直接指定至少两个中间特征数据的属性;针对任意一个中间特征数据的属性,采用如下方法得到中间特征数据:从目标对象的基础特征数据中选择中间特征数据对应的目标基础特征数据;基于熵权法,计算目标基础特征数据的权重值;根据目标基础特征数据和目标基础特征数据的权重值,得到中间特征数据。

本发明实施例中,生成模块302还可用于:在中间特征生成算法是主成分分析算法的情况下,直接基于主成分分析算法,根据目标对象的基础特征数据生成至少两个相关性最低的主成分,并确定生成的主成分为中间特征数据。

本发明实施例中,生成模块302还可用于:在中间特征生成算法是因子分析算法的情况下,直接基于因子分析算法,根据目标对象的基础特征数据生成至少两个因子,并确定生成的因子为中间特征数据。

本发明实施例中,获取模块301还可用于:根据排序请求,确定排序请求对应的数据预处理算法,然后利用数据预处理算法对基础特征数据进行预处理。其中,数据预处理算法可以包括以下选项中至少一项:缺失值处理算法、异常值处理算法、数据归一化处理算法、共线性处理算法、负向特征处理算法以及数据变换处理算法。

本发明实施例中,排序模块303还可用于:根据排序请求,设置中间特征数据的分值;根据中间特征数据的分值和中间特征数据的权重值,计算目标对象的排序分值;根据目标对象的排序分值,对目标对象进行排序。

从以上描述可以看出,本发明实施例的目标对象的排序装置能够引入中间特征数据的概念,将大量的基础特征数据按照预设的算法进行归类,每个类别内的若干基础特征数据可以统一集中处理,从而区别于其他类别的基础特征,能够减少各基础特征数据之间的多重共线性等互相干扰的问题。此外,本发明实施例中利用熵权法计算中间特征数据的权重值,进而可以借助计算得到的权重值获取每个目标对象的分值,能够达到利用分值对目标对象进行排序的目的,避免了现有学习排序算法中需要获取监督信息造成的误差。并且,本发明实施例涉及的技术手段均属于简单可行的技术方案,不需要消耗人力物力获取监督信息,在降低成本的情况下,还能够适用于数据量较少的排序场景。

图4示出了可以应用本发明实施例的目标对象的排序方法或目标对象的排序装置的示例性系统架构400。

如图4所示,系统架构400可以包括终端设备401、402、403,网络404和服务器405。网络404用以在终端设备401、402、403和服务器405之间提供通信链路的介质。网络404可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备401、402、403通过网络404与服务器405交互,以接收或发送消息等。终端设备401、402、403上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。

终端设备401、402、403可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。

服务器405可以是提供各种服务的服务器,例如对用户利用终端设备401、402、403所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。

需要说明的是,本发明实施例所提供的目标对象的排序方法一般由服务器405执行,相应地,目标对象的排序装置一般设置于服务器405中。

应该理解,图4中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

下面参考图5,其示出了适于用来实现本发明实施例的终端设备的计算机系统500的结构示意图。图5示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图5所示,计算机系统500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有系统500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。

以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。

特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本发明的系统中限定的上述功能。

需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括获取模块、生成模块和排序模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,获取模块还可以被描述为“根据接收的排序请求,获取排序请求对应的目标对象和目标对象的基础特征数据的模块”。

作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:根据接收的排序请求,获取排序请求对应的目标对象和目标对象的基础特征数据;利用排序请求对应的中间特征生成算法,对基础特征数据进行处理,生成目标对象的中间特征数据;基于熵权法确定中间特征数据的权重值,根据中间特征数据和中间特征数据的权重值,对目标对象进行排序。

根据本发明实施例的技术方案,引入中间特征数据的概念,将大量的基础特征数据按照预设的算法进行归类,每个类别内的若干基础特征数据可以统一集中处理,从而区别于其他类别的基础特征,能够减少各基础特征数据之间的多重共线性等互相干扰的问题。此外,本发明实施例中利用熵权法计算中间特征数据的权重值,进而可以借助计算得到的权重值获取每个目标对象的分值,能够达到利用分值对目标对象进行排序的目的,避免了现有学习排序算法中需要获取监督信息造成的误差。并且,本发明实施例涉及的技术手段均属于简单可行的技术方案,不需要消耗人力物力获取监督信息,在降低成本的情况下,还能够适用于数据量较少的排序场景。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号