CN111597444B - 一种搜索方法、装置、服务器、存储介质 - Google Patents
一种搜索方法、装置、服务器、存储介质 Download PDFInfo
- Publication number
- CN111597444B CN111597444B CN202010404521.9A CN202010404521A CN111597444B CN 111597444 B CN111597444 B CN 111597444B CN 202010404521 A CN202010404521 A CN 202010404521A CN 111597444 B CN111597444 B CN 111597444B
- Authority
- CN
- China
- Prior art keywords
- missing data
- model
- column
- filling
- feature matrix
- 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
- 238000000034 method Methods 0.000 title claims abstract description 45
- 239000011159 matrix material Substances 0.000 claims abstract description 89
- 238000012549 training Methods 0.000 claims abstract description 54
- 238000012216 screening Methods 0.000 claims description 5
- 238000003672 processing method Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 239000013598 vector Substances 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 238000002716 delivery method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开关于一种搜索方法、装置、服务器、存储介质。该搜索方法包括:根据终端的搜索词获取搜索结果,其中,搜索结果中包括多条待排序信息;将包括多条待排序信息的搜索结果作为树模型的输入,并利用树模型对各待排序信息进行排序,其中,树模型为预先使用数据集训练得到,数据集中的特征矩阵通过用户信息所生成,并且特征矩阵中的缺失数据利用缺失数据填补模型进行填充;将利用树模型排序后的搜索结果发送至终端。相对于现有技术直接使用预设的缺省值进行填充的方式,由于利用了缺失数据填补模型的良好预测性能,因此填充结果与真实值之间的差距相对较小,这样所训练出的树模型在用于对搜索结果进行排序时,能够使得排序结果更加符合用户需求。
Description
技术领域
本公开涉及数据处理技术领域,尤其涉及一种搜索方法、装置、服务器、存储介质。
背景技术
随着互联网技术的发展,在将搜索结果发送给用户之前,通常可以先利用树模型对搜索结果进行排序,从而将搜索结果中更符合用户需求的信息靠前排列,以便于用户查看。
在树模型的训练过程中,可能受限于数据采集不完整、数据传输速度慢等因素,使得训练集中通常会出现部分数据缺失的情况。当训练集中的部分数据出现缺失时,目前通常以某个预设的缺省值进行填充,从而通过缺省值填充后的训练集进行树模型的训练。
然而,这种以预设的缺省值对训练集中缺失数据进行填充的方式,由于缺省值与真实值之间的差距通常较大,并不能很好的反映真实值,这样所训练出的树模型在用于对搜结果的排序时,通常会导致排序结果与用户需求偏差较大。
发明内容
本公开提供一种搜索方法、装置、服务器、存储介质,以至少解决相关技术中利用预设的缺省值对缺失数据填充时,缺省值与真实值之间的差距较大,并不能很好的反映真实值,从而导致所训练出的树模型对搜索结果的排序不符合用户实际需求的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种搜索方法,包括:
根据终端的搜索词获取搜索结果,其中,所述搜索结果中包括多条待排序信息;
将包括多条待排序信息的所述搜索结果作为树模型的输入,并利用所述树模型对各所述待排序信息进行排序,其中,所述树模型为预先使用数据集训练得到,所述数据集中的特征矩阵通过所采集的用户信息所生成,并且所述特征矩阵中的缺失数据利用缺失数据填补模型进行填充;
将利用所述树模型排序后的搜索结果发送至终端。
根据本公开实施例的第二方面,提供一种搜索装置,包括:
获取单元,被配置为执行根据终端的搜索词获取搜索结果,其中,所述搜索结果中包括多条待排序信息;
排序单元,被配置为执行将包括多条待排序信息的所述搜索结果作为树模型的输入,并利用所述树模型对各所述待排序信息进行排序,其中,所述树模型为预先使用数据集训练得到,所述数据集中的特征矩阵通过所采集的用户信息所生成,并且所述特征矩阵中的缺失数据利用缺失数据填补模型进行填充;
发送单元,被配置为将利用所述树模型排序后的搜索结果发送至终端。
根据本公开实施例的第三方面,提供一种服务器,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现本公开实施例中的搜索方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得所述服务器能够执行本公开实施例中的搜索方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本公开实施例中的搜索方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
采用本公开实施例所提供的搜索方法,根据终端的搜索词获取搜索结果,然后将包括多条待排序信息的所述搜索结果作为树模型的输入,并利用所述树模型对各所述待排序信息进行排序,然后将利用所述树模型排序后的搜索结果发送至终端。由于该树模型为预先使用数据集训练得到,数据集中的特征矩阵通过用户信息所生成,并且特征矩阵中的缺失数据利用缺失数据填补模型进行填充。相对于现有技术直接使用预设的缺省值进行填充的方式,利用了缺失数据填补模型的良好预测性能,更能够准确反映真实值,因此与真实值之间的差距相对较小,这样所训练出的树模型在用于对搜索结果进行排序时,能够使得排序结果更加符合用户需求,从而解决了现有技术中的问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是本公开实施例中的技术方案能够适用的一种应用场景,在该场景中,可以包括服务器和终端。
图2是根据一示例性实施例示出的搜索方法的具体流程示意图。
图3是根据一示例性实施例示出的,用于树模型训练的缺失数据处理方法的具体流程示意图。
图4是根据一示例性实施例示出的,特征矩阵的示意图。
图5是根据一示例性实施例示出的,训练集的示意图。
图6是根据一示例性实施例示出的,针对特征矩阵各列分别预先建立所对应的缺失数据填补模型的流程示意图。
图7是根据一示例性实施例示出的结合实际场景下的搜索方法的具体流程示意图。
图8是根据一示例性实施例示出的,用于树模型训练的缺失数据处理装置的具体结构示意图。
图9是根据一示例性实施例示出的搜索装置的具体结构示意图。
图10是根据一示例性实施例示出的服务器的具体结构示意图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
实际应用中,在将搜索结果送给用户之前,可以先利用树模型对内容进行排序。通常受限于数据采集不完整、数据传输速度慢等因素,使得训练集中出现部分数据缺失的情况,往往需要以某个预设的缺省值进行填充。但是,由于缺省值与真实值之间的差距通常较大,并不能很好的反映真实值,这样所训练出的树模型在用于对搜结果的排序时,通常会导致排序结果与用户的实际需求偏差较大。
比如,用户可以在手机、电脑等终端上进行搜索,服务器在向终端发送搜索结果时,可以先利用树模型对搜索结果中的多条信息进行排序。在训练该树模型时,针对训练集中的缺失数据,目前以预设的缺省值,比如0、1或其他预设数值进行填充,但是这些缺省值与真实值之间的差距通常较大,并不能很好的反映真实值,从而可能导致所训练出的树模型的排序结果与用户的实际需求偏差较大。
以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1所示为本公开实施例中的技术方案能够适用的一种应用场景,在该场景中,可以包括服务器10和终端20。
服务器10可以为应用服务器或者网站服务器。应用服务器例如可以为视频应用、直播应用、即时通讯应用或者新闻资讯应用等应用软件(Application,APP)的后台服务器,该应用服务器能够向用户进行内容发送,比如响应于终端20的搜索向终端20发送搜索结果;网站服务器例如可以为各新闻网站的后台服务器。
终端20可以是诸如手机、电脑或平板电脑等终端或移动终端,终端20中可以安装与服务器10对应的应用软件,或者可以通过终端20中的浏览器打开新闻网站的网页。
以服务器10为视频应用的后台服务器为例,视频应用的后台服务器可以根据用户在终端20上提交的搜索词确定出搜索结果,并利用树模型对搜索结果中的各条信息进行排序,将排序后的搜索结果发送至终端20。
当然,本公开实施例提供的方法并不限用于图1所示的应用场景中,还可以用于其他可能的应用场景,对此本公开实施例并不进行限制。对于图1所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。
如图2所示为本公开实施例所提供的搜索方法的具体流程示意图,包括如下步骤:
步骤S31:服务器获取搜索结果,其中,该搜索结果中包括多条待排序信息。
通常当用户通过终端提交搜索词后,服务器可以根据该搜索词获取搜索结果。当然,该步骤S31中的服务器,可以为应用服务器或者网站服务器来执行。由于网络资源较为丰富,搜索结果中可能会包括多条信息,比如用户通过手机上的应用软件输入视频名称进行搜索,搜索结果可能会有多条视频信息,服务器在向终端的用户发送搜索结果之前,需要对这些视频信息进行排序。
步骤S32:服务器利用树模型,对搜索结果中的各待排序信息进行排序,其中,该树模型为预先使用数据集训练得到,该数据集中的特征矩阵通过用户信息所生成,并且特征矩阵中的缺失数据利用缺失数据填补模型进行填充。
服务器通常可以将搜索结果中的各待排序信息作为树模型的输入,从而输入到该树模型,并利用该树模型对搜索结果中的各待排序信息进行排序后所输出的排序结果,作为排序后的搜索结果。
比如,将对视频的搜索结果作为该树模型的输入,利用该树模型对搜索结果中的多条信息进行排序,并在排序完成之后,输出排序结果,作为排序后的搜索结果。
需要说明的是,该树模型为使用数据集训练得到,并且该数据集中的特征矩阵中的缺失数据为,可以利用本公开实施例中所提供的缺失数据处理方法进行处理填充,对于该缺失数据处理方法将再后续中进行详细说明。
另外,该树模型为使用数据集训练得到,在使用数据集训练生成该树模型时,可以是采用诸如XGBoost算法来训练生成的,能够用于对搜索结果进行排序的树模型,也可以采用卷积神经网络来训练生成的,能够用于对搜索结果进行排序的树模型,也可以采用其他算法来训练生成该树模型,这里对此不再赘述。
步骤S33:服务器将利用该树模型排序后的搜索结果发送至终端。
比如,服务器将进行排序后的搜索结果发送至终端,从而便于用户在终端进行查看。其中,由于数据集中的特征矩阵中的缺失数据利用缺失数据填补模型进行填充,相对于现有技术中以某个预设的缺省值进行填充的方式,利用了缺失数据填补模型的良好预测性能,因此更能够准确反映真实值,与真实值之间的差距相对较小,从而所训练出的树模型在用于对搜索结果进行排序时,能够使得排序结果更加符合用户需求。
特别是,该缺失数据填补模型也可以是利用XGBoost算法所生成,这样利用了XGBoost算法所生成的缺失数据填补模型的良好预测性能,更能够准确反映真实值,从而进一步使得最终的排序结果符合用户需求。
采用本公开所提供的搜索方法,利用树模型对搜索结果中的各待排序信息进行排序,由于树模型为使用数据集训练得到,而数据集中的特征矩阵中的缺失数据为利用缺失数据填补模型进行填充,相对于现有技术直接使用预设的缺省值进行填充的方式,更能够准确反映真实值,因此与真实值之间的差距相对较小,从而所训练出的树模型在用于对搜索结果进行排序时,能够使得排序结果更加符合用户需求。
下面将对本公开实施例中所提供的缺失数据处理方法的具体步骤进行说明,该缺失数据处理方法,能够用于对数据集中的特征矩阵中的缺失数据进行填充,从而利用填充之后的数据集来训练得到树模型,并利用该树模型对搜索结果中的多条待排序信息进行排序。
参考图3为本公开实施例所提供的,用于树模型训练的缺失数据处理方法的具体流程示意图,包括如下步骤。
步骤S41:确定用于树模型训练的特征矩阵,该特征矩阵中的多列数据中,至少包括一个含有缺失数据的目标列。
在实际应用中,通常可以以多个特征向量形成特征矩阵,在特征矩阵中包括多列数据,其中每列数据通常可以表示为一个特征向量。比如,如图4所示的特征矩阵能中,包括X1、X2至Xn等多个特征向量。
在该步骤S41中所确定出的,用于树模型训练的特征矩阵,该特征矩阵中的多列数据中至少包括一个目标列,该目标列是指含有缺失数据的列。
步骤S41中确定特征矩阵的方式可以是,从已有的训练集中提取出其中的特征矩阵,也可以是根据所获取的数据生成特征向量,并根据特征向量所生成的特征矩阵。
比如,对如图5所示的训练集,该训练集中包括监督数据矩阵Y以及特征矩阵X,特征矩阵X中包括X1至Xn等多个特征向量,监督数据矩阵Y中包括label1至labeln等多个监督信息,该监督信息通常可以应用于模型的有监督训练(也成监督学习)。可以从该图4所示的训练集中提取出特征矩阵X。
步骤S42:针对特征矩阵中含有缺失数据的各个目标列,分别确定对应的缺失数据填补模型。
其中,各缺失数据填补模型均可以利用XGBoost(Extreme Gradient Boosting)算法所生成,该缺失数据填补模型能够用于对目标列中的缺失数据进行填充,这样可以利用到XGBoost算法的良好预测性能,使得所生成的各缺失数据填补模型对数据的填充结果更加接近于真实值。
这里有多种方式来确定各目标列分别所对应的缺失数据填补模型,比如,方式一中,当预先已经生成各目标列分别所对应的缺失数据填补模型时,可以从缺失数据填补模型库中筛选出与目标列所对应的缺失数据填补模型即可;方式二中,可以直接通过训练生成各个目标列分别所对应的缺失数据填补模型。
对于上述方式一,即已经预先针对各个目标列分别了对应的缺失数据填补模型,并在需要对缺失数据进行填充时,先确定需要填充的目标列的列编号,然后利用该列编号,从缺失数据填补模型库中筛选出与相应的缺失数据填补模型。目标列的列编号表征了该目标列在特征矩阵所处的某一列。比如,目标列的列编号为m,即表征了该目标列处于特征矩阵的m列。
通常可以将缺失数据填补模型的标识,例如名称等,与所对应的目标列的列编号关联,在确定目标列的列编号之后,可以利用该列编号来获取相应的缺失数据填补模型。比如,将缺失数据填补模型的名称与所对应的目标列的列编号建立一一对应关系,或者将目标列的列编号直接作为所对应的缺失数据填补模型的名称。
通过该方式一来确定各目标列分别对应的缺失数据填补模型,由于各个缺失数据填补模型已经预先生成,只需要通过查询匹配就能够确定各目标列分别对应的缺失数据填补模型,因此效率通常较高,可以在需要快速响应的场景下较为使用。
对于上述方式二,可以如下所示:首先,分别将各目标列作为当前目标列,并获取特征矩阵中,当前目标列之外的各列数据。然后,基于当前目标列之外的各列数据,利用XGBoost算法训练生成与当前目标列对应的缺失数据填补模型。
比如,特征矩阵包括n个特征向量X1、X2、X3、X4~Xn,其中X2、X3中有数据缺失,为目标列。通过方式二确定X2、X3分别对应的缺失数据填补模型时,可以先将X2(也可以是X3)作为当前目标列,并获取X2之外的各列数据X1、X3、X4~Xn,然后以X1、X3、X4~Xn作为训练集,利用XGBoost算法训练生成与X2对应的缺失数据填补模型。之后,利用相同的方式来确定X3对应的缺失数据填补模型。通过该方式二来确定各目标列分别对应的缺失数据填补模型,并不需要预先生成多个缺失数据填补模型。
另外,上述方式一在预先生成各个缺失数据填补模型时,也可以是预先采用方式二来生成这些缺失数据填补模型,该方式一与方式二的区别在于,方式一由于预先已经生成各个缺失数据填补模型,从而可以通过查询匹配来确定,比较适用于需要快速响应的场景。但方式二由于并不需要预先生成并存储多个缺失数据填补模型,在实现成本上相对于方式一较低。
步骤S43:分别利用各缺失数据填补模型,对对应的目标列中的缺失数据进行填充。
在步骤S42中确定出各个目标列分别所对应的缺失数据填补模型之后,可以利用各缺失数据填补模型,对对应的目标列中的缺失数据进行填充,其具体方式可以如下所示:
首先,分别将各缺失数据填补模型作为当前缺失数据填补模型,并确定当前缺失数据填补模型所对应的目标列中缺失数据的所在行。然后,将特征矩阵中缺失数据所在行的其他数据,作为该当前缺失数据填补模型的输入,并利用当前缺失数据填补模型的输出对目标列中的缺失数据进行填充。
比如,特征矩阵包括n个特征向量X1、X2、X3、X4~Xn,其中X2为目标列,并且X2中缺失数据的所在行为第三行,X2所对应的缺失数据填补模型为缺失数据填补模型A。可以将特征矩阵第三行的其他数据,即X1、X3、X4~Xn中第三行的数据,作为缺失数据填补模型A的输入,并将缺失数据填补模型A的输出填充至X2中的第三行。
特别是,当目标列中有多个缺失数据时,比如X2中缺失数据的所在行为第二行和第三行,可以将X1、X3、X4~Xn中第二行的数据,作为缺失数据填补模型A的输入,并将缺失数据填补模型A的输出填充至X2中的第二行,然后将X1、X3、X4~Xn中第三行的数据,作为缺失数据填补模型A的输入,并将相应的输出填充至X2中的第三行。
采用本公开实施例所提供的用于树模型训练的缺失数据处理方法,确定用于树模型训练的特征矩阵,针对各个目标列,分别确定对应的缺失数据填补模型,然后分别利用各缺失数据填补模型,对对应的目标列中的缺失数据进行填充。特别是,各目标列分别所对应的缺失数据填补模型均可以利用XGBoost算法生成,从而通过XGBoost算法所生成各缺失数据填补模型对缺失数据进行填充,相对于现有技术直接使用预设的缺省值进行填充的方式,利用了缺失数据填补模型,尤其是XGBoost算法所生成缺失数据填补模型的良好预测性能,使得对缺失数据的填充结果更能够准确反映真实值,因此与真实值之间的差距相对相对较小。
在实际应用中,该缺失数据处理方法还可以包括如下步骤:
步骤S44:通过缺失数据填充后的特征矩阵和监督数据矩阵生成数据集。
其中,该监督数据矩阵中包括应用于有监督训练的监督信息。
步骤S45:基于所生成数据集,训练生成用于内容排序的树模型。
在生成数据集之后,基于所生成数据集,可以采用XGBoost算法来训练生成用于内容排序的树模型,也可以采用卷积神经网络(Convolutional Neural Networks,CNN)来训练生成用于内容排序的树模型,也可以采用其他算法来生成该树模型。
在实际应用中还可以利用如图6所示的步骤,针对特征矩阵中的各个列(而不仅是目标列)分别预先建立所对应的缺失数据填补模型,从而在出现数据缺失时,通过各个列的列编号匹配获取相应的缺失数据填补模型来进行缺失数据的填充。如图6所示,包括如下步骤:
步骤S51:提供一特征矩阵。
例如,所提供的特征矩阵X包括n个特征向量X1、X2、X3、X4~Xn。其中,各个特征向量X1、X2、X3、X4~Xn中,可以包括离散值特征和连续值特征。离散值特征用于表征某一个具体的类别,比如,职业、血型、性别等。连续值特征取值通常为具体的数值,比如,距离。
步骤S52:针对特征矩阵中的每一列,分别基于其它各列的数据,利用XGBoost算法训练生成对应的缺失数据填补模型。
比如,针对步骤S51中的特征矩阵X的第一列X1,基于X2、X3、X4~Xn,利用XGBoost算法训练生成与X1对应的缺失数据填补模型。同理,可以生成分别与X2、X3、X4~Xn对应的缺失数据填补模型。这里可以将第m列所对应的缺失数据填补模型称之为model_m,其中m可以为1、2、3或4~n中的任意一个。
上述是对本公开所提供的搜索方法的具体说明,为了便于理解,下面还可以结合实际应用场景,对该搜索方法进一步说明。
在实际应用中,为了提供更加精准和符合用户需求的搜索结果,服务器通常会直接或者通过终端来采集用户的个人信息,并通过特征提取器从其中提取出特征,用于生成特征矩阵,并最终结合监督数据矩阵Y来生成数据集,当然,由于网络传输速度等原因,可能会导致某些个人信息的漏采集,使得特征矩阵中出现数据缺失,本公开首先对缺失数据进行填充,然后利用填充后的数据集生成树模型。结合到搜索的应用场景中,用户可以通过终端向服务器提交检索词,服务器在确定出搜索结果之后,利用该树模型对其进行排序,并最终向终端反馈排序后的搜索结果,该过程的示意图如图7所示。因此,该搜索方法可以包括如下步骤:
步骤S61:采集用户的个人信息(后续称之为用户信息)。
该个人信息中包括可以用于分析用户的个人爱好等需求的信息,可以利用这些信息分析用户的个人爱好等需求,从而向其提供更加符合需要的搜索结果。比如,该个人信息可以包括用户所在城市、用户性别、年龄、消费习惯等。
步骤S62:利用特征提取器从用户信息中提取出特征。
在实际应用中,通常可以将所采集的用户信息进行存储,这里的步骤S62可以是特征提取器利用所存储的用户信息,并从其中提取出特征。也可以是利用实时采集的用户信息,并从其中提取出特征。
特征提取器通常可以根据预设的提取规则来从用户信息中提取出特征,比如,预先设定各个城市的编号,其中北京编号为1、上海的编号为2,当用户甲所在城市为北京时,其相应的一个特征为1。当然,在实际应用中,该预设的提取规则还可以包括其他内容,比如针对用户的性别,男性对应1,女性对应2等,这里并不对特征提取器如何进行特征的提取进行限定。
步骤S63:将所提取的特征生成特征矩阵。
通常可以将从某个用户的用户信息中所提取的特征按照一定的顺序排列为有序数列,并将多个用户分别所生成的这种有序数列组合为特征矩阵,这样所生成的特征矩阵的各列数据分别对应不同的用户信息,比如第一列对应用户性别、第二列对应用户所在城市,第三列对应用户年龄。
步骤S64:利用XGBoost算法针对特征矩阵中的各个目标列分别生成对应的缺失数据填补模型。
其中,可以通过如下方式来利用XGBoost算法生成各个目标列分别生成对应的缺失数据填补模型:分别将各目标列(目标列中含有缺失数据)作为当前目标列,并获取特征矩阵中该当前目标列之外的各列数据,然后基于当前目标列之外的各列数据,利用XGBoost算法训练生成与当前目标列对应的缺失数据填补模型。
在实际应用中,还可以针对特征矩阵中的每一列均生成对应的缺失数据填补模型,从而在后续中,当任意一列出现了数据缺失时,均可从通过获取的方式获取相应的缺失数据填补模型,从而提高处理效率。
步骤S65:利用各缺失数据填补模型对所对应的各个目标列中的缺失数据进行填充。
步骤S66:以数据填充后的特征矩阵结合监督数据矩阵生成数据集,并利用该数据集结合诸如XGBoost算法、CNN算法等算法生成树模型。
将特征矩阵中的缺失数据为利用XGBoost算法所生成的缺失数据填补模型进行填充。
步骤S67:根据终端所提交的搜索词确定出搜索结果,其中,该搜索结果中包括多条待排序信息。
步骤S68:将包括多条待排序信息的该搜索结果作为树模型的输入,从输入层输入至该树模型,利用该树模型的数据处理层对各待排序信息进行排序,并从该树模型的输出层输出排序后的搜索结果。
步骤S69:将利用树模型排序后的搜索结果发送至终端。
基于与本公开实施例用于树模型训练的缺失数据处理方法相同的发明构思,本公开还提供了一种用于树模型训练的缺失数据处理装置。如图8是根据一示例性实施例示出的该缺失数据处理装置的框图。参照图8,该装置60包括:特征矩阵获取单元601,缺失数据填补模型确定单元602和缺失数据填充单元603,其中:
该特征矩阵确定单元601,被配置为执行确定通过所采集的用户信息所生成的特征矩阵,所述特征矩阵中的多列数据中,至少包括一个含有缺失数据的目标列;
该缺失数据填补模型确定单元602,被配置为执行针对各所述目标列,分别确定对应的缺失数据填补模型,其中,各所述缺失数据填补模型均利用XGBoost算法生成;
该缺失数据填充单元603,被配置为分别利用各所述缺失数据填补模型,对对应的目标列中的缺失数据进行填充。
关于上述实施例中的装置60,其中各个单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。另外,由于该装置60采用与本公开实施例用于树模型训练的缺失数据处理方法相同的发明构思,因此也能够解决现有技术中的问题,这里对此不再赘述。
基于与本公开实施例一种内容发送方法相同的发明构思,本公开还提供了一种搜索装置。如图9是根据一示例性实施例示出的该搜索装置的框图。参照图9,该搜索装置70包括:获取单元701、排序单元702和发送单元703,其中:
获取单元701,被配置为执行根据终端的搜索词获取搜索结果,其中,所述搜索结果中包括多条待排序信息;
排序单元702,被配置为执行将包括多条待排序信息的所述搜索结果作为树模型的输入,并利用所述树模型对各所述待排序信息进行排序,其中,所述树模型为预先使用数据集训练得到,所述数据集中的特征矩阵通过所采集的用户信息所生成,并且所述特征矩阵中的缺失数据利用缺失数据填补模型进行填充;
发送单元703,被配置为将利用所述树模型排序后的搜索结果发送至终端。
关于上述实施例中的搜索装置70,其中各个单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
在实际应用中,缺失数据填补模型可以为利用XGBoost算法所生成。
另外,该装置70还可以包括特征矩阵获取单元、模型确定单元和缺失数据填充单元,其中:特征矩阵获取单元,被配置为执行获取所述数据集中的特征矩阵,其中,所述特征矩阵的各列数据分别对应不同的用户信息;模型确定单元,被配置为执行针对所述特征矩阵中含有缺失数据的各个目标列,分别确定对应的缺失数据填补模型;缺失数据填充单元,被配置为执行分别利用各所述缺失数据填补模型,对对应的目标列中的缺失数据进行填充。因此,能够通过缺失数据填补模型,实现对特征矩阵中的缺失数据进行填充。
对于该模型确定单元还可以包括数据获取子单元和模型生成子单元,其中:数据获取子单元,被配置为分别将各所述目标列作为当前目标列,并获取所述特征矩阵中,所述当前目标列之外的各列数据;模型生成子单元,被配置为基于所述当前目标列之外的各列数据,并利用XGBoost算法训练生成与所述当前目标列对应的缺失数据填补模型。这样通过该数据获取子单元和模型生成子单元,最终生成相应的缺失数据填补模型。
当然,该模型确定单元也可以包括列编号获取子单元和模型筛选子单元,其中:列编号获取子单元,被配置为分别确定各所述目标列的列编号;模型筛选子单元,被配置为分别利用各所述目标列的列编号,从缺失数据填补模型库中筛选出与各所述目标列对应的缺失数据填补模型。
对于缺失数据填充单元,可以包括行确定子单元和填充子单元,其中:行确定子单元,被配置为分别将各所述缺失数据填补模型作为当前缺失数据填补模型,并确定所述当前缺失数据填补模型所对应的目标列中缺失数据的所在行;填充子单元,被配置为将所述特征矩阵中缺失数据所在行的其他数据,作为所述当前缺失数据填补模型的输入,并利用所述当前缺失数据填补模型的输出对所述目标列中的缺失数据进行填充。
另外,本公开实施例还可以提供一种服务器。图10是根据一示例性实施例示出的服务器80的框图。该服务器80包括处理器801,以及用于存储处理器801可执行指令的存储器802。其中,处理器801被配置为执行所述指令,以实现本公开实施例的内容发送方法,或本公开实施例的缺失数据处理方法。
在实际应用中,该服务器80还可以包括网络接口803、I/O控制器804、大容量存储设备805,以及用于连接它们的总线806。
在示例性实施例中,本公开还提供了一种包括指令的存储介质,例如包括指令的存储器802,上述指令可由服务器800的处理器801执行以完成上述方法。其中,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本公开实施例还可以提供一种计算机程序产品,当其在计算机上运行时,使得所述计算机执行本公开实施例所提供的内容发送方法或用于树模型训练的缺失数据处理方法。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本公开实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (9)
1.一种搜索方法,其特征在于,包括:
根据终端的搜索词获取搜索结果,其中,所述搜索结果中包括多条待排序信息;
将包括多条待排序信息的所述搜索结果作为树模型的输入,并利用所述树模型对各所述待排序信息进行排序,其中,所述树模型为预先使用数据集训练得到,所述数据集中的特征矩阵通过用户信息所生成,并且所述特征矩阵中的缺失数据利用缺失数据填补模型进行填充;
将利用所述树模型排序后的搜索结果发送至终端;
所述方法还包括:
获取所述数据集中的特征矩阵,其中,所述特征矩阵的各列数据分别对应不同的用户信息;
针对所述特征矩阵中含有缺失数据的各个目标列,分别确定对应的缺失数据填补模型;其中,针对所述特征矩阵中含有缺失数据的各个目标列,分别确定对应的缺失数据填补模型,具体包括:分别将各所述目标列作为当前目标列,并获取所述特征矩阵中,所述当前目标列之外的各列数据;基于所述当前目标列之外的各列数据,生成与所述当前目标列对应的缺失数据填补模型;
分别利用各所述缺失数据填补模型,对对应的目标列中的缺失数据进行填充。
2.根据权利要求1所述的方法,其特征在于,生成与所述当前目标列对应的缺失数据填补模型,具体包括:
利用XGBoost算法训练生成与所述当前目标列对应的缺失数据填补模型。
3.根据权利要求1所述的方法,其特征在于,针对所述特征矩阵中含有缺失数据的各个目标列,分别确定对应的缺失数据填补模型,具体包括:
分别确定各所述目标列的列编号;
分别利用各所述目标列的列编号,从缺失数据填补模型库中筛选出与各所述目标列对应的缺失数据填补模型。
4.根据权利要求1所述的方法,其特征在于,分别利用各所述缺失数据填补模型,对对应的目标列中的缺失数据进行填充,具体包括:
分别将各所述缺失数据填补模型作为当前缺失数据填补模型,并确定所述当前缺失数据填补模型所对应的目标列中缺失数据的所在行;
将所述特征矩阵中缺失数据所在行的其他数据,作为所述当前缺失数据填补模型的输入,并利用所述当前缺失数据填补模型的输出对所述目标列中的缺失数据进行填充。
5.一种搜索装置,其特征在于,包括:
获取单元,被配置为执行根据终端的搜索词获取搜索结果,其中,所述搜索结果中包括多条待排序信息;
排序单元,被配置为执行将包括多条待排序信息的所述搜索结果作为树模型的输入,并利用所述树模型对各所述待排序信息进行排序,其中,所述树模型为预先使用数据集训练得到,所述数据集中的特征矩阵通过所采集的用户信息所生成,并且所述特征矩阵中的缺失数据利用缺失数据填补模型进行填充;
发送单元,被配置为将利用所述树模型排序后的搜索结果发送至终端;
所述装置还包括:特征矩阵获取单元、模型确定单元和缺失数据填充单元,其中:
特征矩阵获取单元,被配置为执行获取所述数据集中的特征矩阵,其中,所述特征矩阵的各列数据分别对应不同的用户信息;
模型确定单元,被配置为执行针对所述特征矩阵中含有缺失数据的各个目标列,分别确定对应的缺失数据填补模型;所述模型确定单元包括:数据获取子单元和模型生成子单元,其中:数据获取子单元,被配置为分别将各所述目标列作为当前目标列,并获取所述特征矩阵中,所述当前目标列之外的各列数据;模型生成子单元,被配置为基于所述当前目标列之外的各列数据,生成与所述当前目标列对应的缺失数据填补模型;
缺失数据填充单元,被配置为执行分别利用各所述缺失数据填补模型,对对应的目标列中的缺失数据进行填充。
6.根据权利要求5所述的装置,其特征在于,所述模型生成子单元,被配置为利用XGBoost算法训练生成与所述当前目标列对应的缺失数据填补模型。
7.根据权利要求5所述的装置,其特征在于,所述模型确定单元包括:列编号获取子单元和模型筛选子单元,其中:
列编号获取子单元,被配置为分别确定各所述目标列的列编号;
模型筛选子单元,被配置为分别利用各所述目标列的列编号,从缺失数据填补模型库中筛选出与各所述目标列对应的缺失数据填补模型。
8.一种服务器,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至4中任一项所述的搜索方法。
9.一种存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得所述服务器能够执行如权利要求1至4中任一项所述的搜索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010404521.9A CN111597444B (zh) | 2020-05-13 | 2020-05-13 | 一种搜索方法、装置、服务器、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010404521.9A CN111597444B (zh) | 2020-05-13 | 2020-05-13 | 一种搜索方法、装置、服务器、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111597444A CN111597444A (zh) | 2020-08-28 |
CN111597444B true CN111597444B (zh) | 2024-03-05 |
Family
ID=72185509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010404521.9A Active CN111597444B (zh) | 2020-05-13 | 2020-05-13 | 一种搜索方法、装置、服务器、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111597444B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115130008B (zh) * | 2022-08-31 | 2022-11-25 | 喀斯玛(北京)科技有限公司 | 一种基于机器学习模型算法的搜索排序方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462293A (zh) * | 2014-11-27 | 2015-03-25 | 百度在线网络技术(北京)有限公司 | 搜索处理方法、生成搜索结果排序模型的方法和装置 |
CN109102896A (zh) * | 2018-06-29 | 2018-12-28 | 东软集团股份有限公司 | 一种分类模型生成方法、数据分类方法及装置 |
CN109410068A (zh) * | 2018-08-21 | 2019-03-01 | 平安科技(深圳)有限公司 | 电子装置、基于XGBoost的电力数据缺失值填充方法及存储介质 |
CN110766030A (zh) * | 2018-07-25 | 2020-02-07 | 北京国双科技有限公司 | 缺失值处理方式的确定方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8073869B2 (en) * | 2008-07-03 | 2011-12-06 | The Regents Of The University Of California | Method for efficiently supporting interactive, fuzzy search on structured data |
-
2020
- 2020-05-13 CN CN202010404521.9A patent/CN111597444B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462293A (zh) * | 2014-11-27 | 2015-03-25 | 百度在线网络技术(北京)有限公司 | 搜索处理方法、生成搜索结果排序模型的方法和装置 |
CN109102896A (zh) * | 2018-06-29 | 2018-12-28 | 东软集团股份有限公司 | 一种分类模型生成方法、数据分类方法及装置 |
CN110766030A (zh) * | 2018-07-25 | 2020-02-07 | 北京国双科技有限公司 | 缺失值处理方式的确定方法及装置 |
CN109410068A (zh) * | 2018-08-21 | 2019-03-01 | 平安科技(深圳)有限公司 | 电子装置、基于XGBoost的电力数据缺失值填充方法及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111597444A (zh) | 2020-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11122333B2 (en) | User feature generation method and apparatus, device, and computer-readable storage medium | |
CN110837579B (zh) | 视频分类方法、装置、计算机以及可读存储介质 | |
CN109086439B (zh) | 信息推荐方法及装置 | |
CN110909182B (zh) | 多媒体资源搜索方法、装置、计算机设备及存储介质 | |
CN111666401B (zh) | 基于图结构的公文推荐方法、装置、计算机设备及介质 | |
US20210019599A1 (en) | Adaptive neural architecture search | |
CN107688605B (zh) | 跨平台数据匹配方法、装置、计算机设备和存储介质 | |
EP3885966B1 (en) | Method and device for generating natural language description information | |
CN109168047B (zh) | 视频推荐方法、装置、服务器及存储介质 | |
CN113641835B (zh) | 多媒体资源推荐方法、装置、电子设备及介质 | |
CN111159563A (zh) | 用户兴趣点信息的确定方法、装置、设备及存储介质 | |
CN111597444B (zh) | 一种搜索方法、装置、服务器、存储介质 | |
CN110162689B (zh) | 信息推送方法、装置、计算机设备和存储介质 | |
CN114528474A (zh) | 推荐对象确定方法、装置、电子设备及存储介质 | |
CN112115354B (zh) | 信息处理方法、装置、服务器及存储介质 | |
CN103425767A (zh) | 一种提示数据的确定方法和系统 | |
US20230334314A1 (en) | Content recommendation method and apparatus, device, storage medium, and program product | |
CN113420203A (zh) | 对象推荐方法、装置、电子设备及存储介质 | |
CN116956183A (zh) | 多媒体资源推荐方法、模型训练方法、装置及存储介质 | |
CN114491093B (zh) | 多媒体资源推荐、对象表征网络的生成方法及装置 | |
CN113434633B (zh) | 基于头像的社交话题推荐方法、装置、设备及存储介质 | |
CN115878874A (zh) | 多模态检索方法、设备和存储介质 | |
CN111797765B (zh) | 图像处理方法、装置、服务器及存储介质 | |
CN114329049A (zh) | 视频搜索方法、装置、计算机设备和存储介质 | |
CN111881352A (zh) | 内容推送方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |