CN109299344B - 排序模型的生成方法、搜索结果的排序方法、装置及设备 - Google Patents
排序模型的生成方法、搜索结果的排序方法、装置及设备 Download PDFInfo
- Publication number
- CN109299344B CN109299344B CN201811260257.5A CN201811260257A CN109299344B CN 109299344 B CN109299344 B CN 109299344B CN 201811260257 A CN201811260257 A CN 201811260257A CN 109299344 B CN109299344 B CN 109299344B
- Authority
- CN
- China
- Prior art keywords
- search
- model
- ranking
- sample
- user
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了排序模型的生成方法、搜索结果的排序方法、装置及设备。该方法包括:获取多组训练样本;其中,每组训练样本包括一次搜索操作对应的样本搜索词及其至少一个搜索结果,以及每个搜索结果标注的排序优先度;对于每一组训练样本,获取样本搜索词的各个搜索结果对应的n个维度的特征向量;采用多组训练样本对机器学习排序模型进行训练,得到完成训练的机器学习排序模型。在本申请实施例中,通过将人工拟合排序公式所涉及的排序因子转换为机器学习排序模型的特征因子,即便是在特征因子的数量较多或者特征因子发生变化时,均可自动化地训练得到机器学习排序模型,减少时间和人力成本,且有助于提升对搜索结果进行排序的准确度。
Description
技术领域
本申请实施例涉及搜索技术领域,特别涉及一种排序模型的生成方法、搜索结果的排序方法、装置及设备。
背景技术
一个搜索引擎的性能好坏,除了体现在搜索结果的准确性之外,还体现在对搜索结果的排序的准确性方面。
在相关技术中,排序算法会预先设置多个排序因子,然后基于上述排序因子人工拟合排序公式。在获得某个搜索词的多个搜索结果之后,通过上述排序公式计算每个搜索结果对应的得分,按照得分由高到低的顺序对上述多个搜索结果进行排序。
当排序因子的数量较多或者排序因子发生变化时,人工拟合的成本较高,且准确度也难以得到保证。
发明内容
本申请实施例提供一种排序模型的生成方法、搜索结果的排序方法、装置及设备。所述技术方案如下:
一方面,本申请实施例提供一种排序模型的生成方法,所述方法包括:
获取多组训练样本;其中,每组训练样本包括一次搜索操作对应的样本搜索词及其至少一个搜索结果,以及每个搜索结果标注的排序优先度;
对于每一组训练样本,获取所述样本搜索词的各个所述搜索结果对应的n个维度的特征向量,所述n为大于1的整数;
采用所述多组训练样本对机器学习排序模型进行训练,得到完成训练的所述机器学习排序模型;其中,所述机器学习排序模型用于根据所述样本搜索词的各个所述搜索结果对应的n个维度的特征向量以及所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度。
另一方面,本申请实施例提供一种搜索结果的排序方法,所述方法包括:
获取目标搜索操作对应的目标搜索词及其至少一个搜索结果;
获取所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量,所述n为大于1的整数;
调用机器学习排序模型,根据所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量以及所述n个维度各自对应的权重,计算所述目标搜索词的各个所述搜索结果对应的排序优先度;
根据所述目标搜索词的各个所述搜索结果对应的排序优先度,对所述目标搜索词的各个所述搜索结果进行排序。
再一方面,本申请实施例提供一种排序模型的生成装置,所述装置包括:
样本获取模块,用于获取多组训练样本;其中,每组训练样本包括一次搜索操作对应的样本搜索词及其至少一个搜索结果,以及每个搜索结果标注的排序优先度;
特征获取模块,用于对于每一组训练样本,获取所述样本搜索词的各个所述搜索结果对应的n个维度的特征向量,所述n为大于1的整数;
模型训练模块,用于采用所述多组训练样本对机器学习排序模型进行训练,得到完成训练的所述机器学习排序模型;其中,所述机器学习排序模型用于根据所述样本搜索词的各个所述搜索结果对应的n个维度的特征向量以及所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度。
再一方面,本申请实施例提供一种搜索结果的排序装置,所述装置包括:
结果获取模块,用于获取目标搜索操作对应的目标搜索词及其至少一个搜索结果;
特征获取模块,用于获取所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量,所述n为大于1的整数;
模型调用模块,用于调用机器学习排序模型,根据所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量以及所述n个维度各自对应的权重,计算所述目标搜索词的各个所述搜索结果对应的排序优先度;
结果排序模块,用于根据所述目标搜索词的各个所述搜索结果对应的排序优先度,对所述目标搜索词的各个所述搜索结果进行排序。
又一方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如上述方面所述的排序模型的生成方法,或者实现如上述方面所述的搜索结果的排序方法。
又一方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现如上述方面所述的排序模型的生成方法,或者实现如上述方面所述的搜索结果的排序方法。
本申请实施例提供的技术方案可以带来如下有益效果:
通过构建多组训练样本,采用机器学习算法对训练样本进行学习,得到机器学习排序模型,通过该机器学习排序模型输出对搜索结果的排序结果,通过将人工拟合排序公式所涉及的排序因子转换为机器学习排序模型的特征因子,即便是在特征因子的数量较多或者特征因子发生变化时,均可自动化地训练得到机器学习排序模型,减少时间和人力成本,且有助于提升对搜索结果进行排序的准确度。
附图说明
图1是本申请一个实施例提供的排序模型的生成方法的流程图;
图2是本申请一个实施例提供的搜索结果的排序方法的流程图;
图3是本申请一个实施例提供的排序模型的生成装置的框图;
图4是本申请一个实施例提供的搜索结果的排序装置的框图;
图5是本申请一个示例性实施例提供的计算机设备的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请实施例提供的技术方案,通过构建多组训练样本,采用机器学习算法对训练样本进行学习,得到机器学习排序模型,通过该机器学习排序模型输出对搜索结果的排序结果,通过将人工拟合排序公式所涉及的排序因子转换为机器学习排序模型的特征因子,即便是在特征因子的数量较多或者特征因子发生变化时,均可自动化地训练得到机器学习排序模型,减少时间和人力成本,且有助于提升对搜索结果进行排序的准确度。
另外,本申请实施例提供的技术方案,可适用于多种不同搜索场景下对搜索结果的排序。例如,用户在应用商店中输入搜索词,对该搜索词对应的多个应用程序资源进行排序;又例如,用户在视频应用中输入搜索词,对该搜索词对应的多个视频资源进行排序;再例如,用户在微博应用中输入搜索词,对该搜索词对应的多篇博文进行排序。上述应用场景仅是示例性和解释性的,本申请提供的技术方案还可适用于其它应用场景,本申请实施例对此不作限定。
下面,针对机器学习排序模型的训练过程以及利用完成训练的机器学习排序模型对搜索结果进行排序的过程这两个方面内容,对本申请实施例提供的技术方案进行介绍说明。
请参考图1,其示出了本申请一个实施例提供的排序模型的生成方法的流程图。该方法各步骤的执行主体可以是计算机设备,所述计算机设备是指具有计算和处理能力的电子设备,如PC(personal computer,个人计算机)、服务器等。该方法可以包括如下几个步骤。
步骤101,获取多组训练样本。
每组训练样本包括一次搜索操作对应的样本搜索词及其至少一个搜索结果,以及每个搜索结果标注的排序优先度。
一次搜索操作对应的搜索词的数量可能是一个,也有可能是多个,本申请实施例对此不作限定。以在应用商店中搜索应用程序资源为例,一次搜索操作对应的搜索词可能是“游戏”,也有可能是“游戏”和“射击”。样本搜索词是指用于构建训练样本的搜索词,其可以从历史的搜索数据中提取得到。一个样本搜索词对应的搜索结果可能是一个,也有可能是多个。
每个搜索结果有与其对应标注的排序优先度,该排序优先度用于指示搜索结果在样本搜索词的全部搜索结果中的排序位置。可选地,排序位置越靠前,排序优先度越高;反之,排序位置越靠后,排序优先度越低。
在本申请实施例中,对排序优先度的表示方式不作限定。例如,搜索结果标注的排序优先度包括正样本和负样本两种,也即划分粒度较粗。又例如,搜索结果标注的排序优先度包括5个等级,也即划分粒度较细。还例如,搜索结果标注的排序优先度还可采用分值来表示,如采用五分制、十分制或者百分制的打分来表示排序优先度。
样本搜索词的各个搜索结果所标注的排序优先度,可以由人工标注,也可以由设备根据搜索结果对应的选择率自动确定。在一个示例中,步骤101包括如下几个子步骤:
1、获取多组搜索数据;
每组搜索数据包括一次搜索操作对应的样本搜索词及其至少一个搜索结果,以及每个搜索结果对应的选择率。搜索结果对应的选择率是指该搜索结果被用户选择的概率。搜索结果对应的选择率也可称为搜索结果对应的点击率。
2、对于每一组搜索数据,根据该搜索数据中的各个搜索结果对应的选择率,为各个搜索结果标注排序优先度;
其中,搜索结果标注的排序优先度与搜索结果对应的选择率呈正相关关系。也即,搜索结果对应的选择率越高,则该搜索结果标注的排序优先度越高;反之,搜索结果对应的选择率越低,则该搜索结果标注的排序优先度越低。
在一种可能的实现方式中,预先设定选择率与排序优先度之间的对应关系,通过查找该对应关系,为各个搜索结果标注排序优先度。在另一种可能的实现方式中,预先设定排序优先度的计算公式,通过该计算公式根据搜索结果对应的选择率计算该搜索结果所对应标注的排序优先度。
3、根据各组搜索数据中的各个搜索结果标注的排序优先度,生成多组训练样本。
在为各组搜索数据中的各个搜索结果标注好排序优先度之后,便得到了与该多组搜索数据对应的多组训练样本。
步骤102,对于每一组训练样本,获取样本搜索词的各个搜索结果对应的n个维度的特征向量,n为大于1的整数。
上述n个维度的特征向量由n个维度的特征所对应的特征值组成。上述n个维度的特征是指预先设定的对排序结果有影响的特征。针对不同的搜索场景,上述n个维度的特征选取也可能有所不同。示例性地,当搜索场景为在应用商店中搜索应用程序资源时,n个维度的特征可以包括搜索词与搜索结果之间的文本相关性、搜索结果的下载量、搜索结果的类别、搜索结果的标签等特征。另外,特征的种类和数量均可根据实际情况进行选择和调整。
步骤103,采用多组训练样本对机器学习排序模型进行训练,得到完成训练的所述机器学习排序模型。
其中,机器学习排序模型用于根据样本搜索词的各个搜索结果对应的n个维度的特征向量以及n个维度各自对应的权重,计算样本搜索词的各个搜索结果对应的排序优先度。例如,对于样本搜索词的每一个搜索结果,机器学习排序模型可以对该搜索结果对应的n个维度的特征向量中包含的n个特征值进行归一化处理,然后将归一化处理后的n个特征值与n个维度各自对应的权重进行加权求和,根据加权求和结果确定该搜索结果对应的排序优先度。
可选地,上述训练过程包括如下几个子步骤:
1、调用机器学习排序模型,根据样本搜索词的各个搜索结果对应的n个维度的特征向量以及n个维度各自对应的权重,计算样本搜索词的各个搜索结果对应的排序优先度;
2、根据机器学习排序模型计算出的排序优先度和标注的排序优先度,计算机器学习排序模型对应的损失函数的值;
在对机器学习排序模型进行训练的过程中,可以通过计算机器学习排序模型对应的损失函数的值,来了解该机器学习排序模型的精度。机器学习排序模型对应的损失函数可以根据模型计算出的排序优先度和标注的排序优先度来构建,例如,可以采用模型计算出的排序优先度和标注的排序优先度之间的欧氏距离来表示。
3、若损失函数的值不符合预设条件,则调整n个维度各自对应的权重,并再次从上述步骤1开始执行;
4、若损失函数的值符合预设条件,则停止训练,得到完成训练的机器学习排序模型。
当损失函数的值不符合预设条件时,调整n个维度各自对应的权重,然后再次从上述步骤1开始执行,直至损失函数的值符合预设条件时,停止训练,并保存完成训练的机器学习排序模型。上述预设条件是预先设定的训练停止条件,如损失函数的值大于预设阈值。
综上所述,本申请实施例提供的技术方案中,通过构建多组训练样本,采用机器学习算法对训练样本进行学习,得到机器学习排序模型,通过该机器学习排序模型输出对搜索结果的排序结果,通过将人工拟合排序公式所涉及的排序因子转换为机器学习排序模型的特征因子,即便是在特征因子的数量较多或者特征因子发生变化时,均可自动化地训练得到机器学习排序模型,减少时间和人力成本,且有助于提升对搜索结果进行排序的准确度。
在基于图1实施例提供的一个可选实施例中,每组训练样本还包括执行搜索操作的样本用户,机器学习排序模型包括权重确定模型和排序模型。
相应地,上述训练过程可以包括如下几个子步骤:
1、调用权重确定模型,根据样本用户对应的m个维度的用户特征向量,确定与样本用户对应的n个维度各自对应的权重,m为大于1的整数;
权重确定模型的输入参数可以是样本用户对应的m个维度的用户特征向量,权重确定模型通过内部对样本用户对应的m个维度的用户特征向量进行处理,最终输出该样本用户对应的n个维度各自对应的权重。在本申请实施例中,对权重确定模型的模型架构不作限定,例如其可以采用神经网络模型。
样本用户对应的m个维度的用户特征向量,包括样本用户的多个维度的个性化用户特征,如年龄、性别、地址、工作、偏好等用户特征。针对不同的搜索场景,用户特征向量中包含的用户特征的种类和数量可能有所不同。可选地,获取样本用户的用户信息,根据样本用户的用户信息生成该样本用户对应的m个维度的用户特征向量。其中,样本用户的用户信息可以是与该样本用户相关的任何信息,如个人基本信息、终端的操作记录、网络资源的浏览记录、网络资源的下载记录等信息。在一个示例中,当搜索场景为在应用商店中搜索应用程序资源时,样本用户的用户信息可以包括个人基本信息(如年龄、性别等)、终端的操作记录(如终端中的已安装应用程序、常用应用程序等)、样本用户对应用程序的历史下载记录等信息,然后从这些信息中提取样本用户的用户特征向量,如包括年龄、性别、常用应用程序等用户特征。
2、调用排序模型,根据样本搜索词的各个搜索结果对应的n个维度的特征向量以及权重确定模型确定的n个维度各自对应的权重,计算样本搜索词的各个搜索结果对应的排序优先度;
3、根据排序模型计算出的排序优先度和标注的排序优先度,计算机器学习排序模型对应的损失函数的值;
4、若损失函数的值不符合预设条件,则调整权重确定模型的参数,并再次从上述步骤1开始执行;
5、若损失函数的值符合预设条件,则停止训练,得到完成训练的机器学习排序模型。
当损失函数的值不符合预设条件时,调整权重确定模型的参数,然后再次从上述步骤1开始执行,直至损失函数的值符合预设条件时,停止训练,并保存完成训练的机器学习排序模型。
综上所述,本申请实施例提供的技术方案中,在训练机器学习排序模型的过程中,同时对权重确定模型和排序模型进行训练,通过权重确定模型输出与用户特征相对应的权重,使得排序模型所采用的权重能够反映用户的个性化行为习惯,最终输出符合用户的个性化需求的排序结果。
上文对机器学习排序模型的训练过程进行了介绍说明,下面将对利用该完成训练的机器学习排序模型对搜索结果进行排序的过程进行介绍说明。
请参考图2,其示出了本申请一个实施例提供的搜索结果的排序方法的流程图。该方法各步骤的执行主体可以是计算机设备,所述计算机设备是指具有计算和处理能力的电子设备,如手机、平板电脑、PC等设备。该方法可以包括如下几个步骤。
步骤201,获取目标搜索操作对应的目标搜索词及其至少一个搜索结果。
目标搜索操作可以是任意一次搜索操作。以在应用商店中搜索应用程序资源为例,目标搜索词可以是“英语学习”,其对应的搜索结果可以包括若干个应用程序。
步骤202,获取目标搜索词的各个搜索结果对应的n个维度的特征向量,n为大于1的整数。
例如,对于每一个搜索结果,该搜索结果对应的n个维度的特征向量可以包括搜索词与搜索结果之间的文本相关性、搜索结果的下载量、搜索结果的类别、搜索结果的标签等特征。
步骤203,调用机器学习排序模型,根据目标搜索词的各个搜索结果对应的n个维度的特征向量以及n个维度各自对应的权重,计算目标搜索词的各个搜索结果对应的排序优先度。
通过将目标搜索词的各个搜索结果对应的n个维度的特征向量输入至机器学习排序模型,机器学习排序模型可以对各个搜索结果对应的n个维度的特征向量中包含的n个特征值进行归一化处理,然后将归一化处理后的n个特征值与n个维度各自对应的权重进行加权求和,根据加权求和结果确定各个搜索结果对应的排序优先度。
可选地,当机器学习排序模型包括上文介绍的权重确定模型和排序模型时,本步骤可以包括如下几个子步骤:
1、调用权重确定模型,根据执行目标搜索操作的目标用户对应的m个维度的用户特征向量,确定与目标用户对应的n个维度各自对应的权重,m为大于1的整数;
目标用户对应的m个维度的用户特征向量,包括目标用户的多个维度的个性化用户特征,如年龄、性别、地址、工作、偏好等用户特征。可选地,获取目标用户的用户信息,根据目标用户的用户信息生成该目标用户对应的m个维度的用户特征向量。其中,目标用户的用户信息可以是与该目标用户相关的任何信息,如个人基本信息、终端的操作记录、网络资源的浏览记录、网络资源的下载记录等信息。在一个示例中,当搜索场景为在应用商店中搜索应用程序资源时,目标用户的用户信息可以包括个人基本信息(如年龄、性别等)、终端的操作记录(如终端中的已安装应用程序、常用应用程序等)、目标用户对应用程序的历史下载记录等信息,然后从这些信息中提取目标用户的用户特征向量,如包括年龄、性别、常用应用程序等用户特征。
之后,将目标用户对应的m个维度的用户特征向量输入至权重确定模型,由该权重确定模型输出与目标用户对应的n个维度各自对应的权重。
2、调用排序模型,根据目标搜索词的各个搜索结果对应的n个维度的特征向量以及权重确定模型确定的n个维度各自对应的权重,计算目标搜索词的各个搜索结果对应的排序优先度。
步骤204,根据目标搜索词的各个搜索结果对应的排序优先度,对目标搜索词的各个搜索结果进行排序。
一个搜索结果的排序优先度决定了该搜索结果在全部搜索结果中的排序位置。可选地,排序优先度越高,排序位置越靠前;反之,排序优先度越低,排序位置越靠后。例如,可以按照排序优先度由高到低的顺序,对目标搜索词的各个搜索结果进行排序。
综上所述,本申请实施例提供的技术方案中,通过构建多组训练样本,采用机器学习算法对训练样本进行学习,得到机器学习排序模型,通过该机器学习排序模型输出对搜索结果的排序结果,通过将人工拟合排序公式所涉及的排序因子转换为机器学习排序模型的特征因子,即便是在特征因子的数量较多或者特征因子发生变化时,均可自动化地训练得到机器学习排序模型,减少时间和人力成本,且有助于提升对搜索结果进行排序的准确度。
另外,通过权重确定模型输出与用户特征相对应的权重,使得排序模型所采用的权重能够反映用户的个性化行为习惯,最终输出符合用户的个性化需求的排序结果。例如,对于两个不同的用户,相同搜索结果的排序结果可能有所不同。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参考图3,其示出了本申请一个实施例提供的排序模型的生成装置的框图。该装置具有实现上述方法示例的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置300可以包括:样本获取模块301、特征获取模块302和模型训练模块303。
样本获取模块301,用于获取多组训练样本;其中,每组训练样本包括一次搜索操作对应的样本搜索词及其至少一个搜索结果,以及每个搜索结果标注的排序优先度。
特征获取模块302,用于对于每一组训练样本,获取所述样本搜索词的各个所述搜索结果对应的n个维度的特征向量,所述n为大于1的整数。
模型训练模块303,用于采用所述多组训练样本对机器学习排序模型进行训练,得到完成训练的所述机器学习排序模型;其中,所述机器学习排序模型用于根据所述样本搜索词的各个所述搜索结果对应的n个维度的特征向量以及所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度。
综上所述,本申请实施例提供的技术方案中,通过构建多组训练样本,采用机器学习算法对训练样本进行学习,得到机器学习排序模型,通过该机器学习排序模型输出对搜索结果的排序结果,通过将人工拟合排序公式所涉及的排序因子转换为机器学习排序模型的特征因子,即便是在特征因子的数量较多或者特征因子发生变化时,均可自动化地训练得到机器学习排序模型,减少时间和人力成本,且有助于提升对搜索结果进行排序的准确度。
可选地,所述模型训练模块303,用于:
调用所述机器学习排序模型,根据所述样本搜索词的各个所述搜索结果对应的所述n个维度的特征向量以及所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度;
根据所述机器学习排序模型计算出的所述排序优先度和所述标注的排序优先度,计算所述机器学习排序模型对应的损失函数的值;
若所述损失函数的值不符合预设条件,则调整所述n个维度各自对应的权重,并再次从所述调用所述机器学习排序模型,根据所述样本搜索词的各个所述搜索结果对应的所述n个维度的特征向量以及所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度的步骤开始执行;
若所述损失函数的值符合所述预设条件,则停止训练,得到完成训练的所述机器学习排序模型。
可选地,每组训练样本还包括执行所述搜索操作的样本用户,所述机器学习排序模型包括权重确定模型和排序模型;
所述模型训练模块303,用于:
调用所述权重确定模型,根据所述样本用户对应的m个维度的用户特征向量,确定与所述样本用户对应的所述n个维度各自对应的权重,所述m为大于1的整数;
调用所述排序模型,根据所述样本搜索词的各个所述搜索结果对应的所述n个维度的特征向量以及所述权重确定模型确定的所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度;
根据所述排序模型计算出的所述排序优先度和所述标注的排序优先度,计算所述机器学习排序模型对应的损失函数的值;
若所述损失函数的值不符合预设条件,则调整所述权重确定模型的参数,并再次从所述调用所述权重确定模型,根据所述样本用户对应的m个维度的用户特征向量,确定与所述样本用户对应的所述n个维度各自对应的权重的步骤开始执行;
若所述损失函数的值符合所述预设条件,则停止训练,得到完成训练的所述机器学习排序模型。
可选地,所述装置300还包括:
信息获取模块,用于获取所述样本用户的用户信息;
特征生成模块,用于根据所述样本用户的用户信息,生成所述样本用户对应的m个维度的用户特征向量。
可选的,所述样本获取模块301,用于:
获取多组搜索数据;其中,每组搜索数据包括一次搜索操作对应的样本搜索词及其至少一个搜索结果,以及每个搜索结果对应的选择率;
对于每一组搜索数据,根据所述搜索数据中的各个所述搜索结果对应的选择率,为各个所述搜索结果标注排序优先度;其中,所述搜索结果标注的排序优先度与所述搜索结果对应的选择率呈正相关关系;
根据各组所述搜索数据中的各个所述搜索结果标注的排序优先度,生成所述多组训练样本。
请参考图4,其示出了本申请一个实施例提供的搜索结果的排序装置的框图。该装置具有实现上述方法示例的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置400可以包括:结果获取模块401、特征获取模块402、模型调用模块403和结果排序模块404。
结果获取模块401,用于获取目标搜索操作对应的目标搜索词及其至少一个搜索结果。
特征获取模块402,用于获取所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量,所述n为大于1的整数。
模型调用模块403,用于调用机器学习排序模型,根据所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量以及所述n个维度各自对应的权重,计算所述目标搜索词的各个所述搜索结果对应的排序优先度。
结果排序模块404,用于根据所述目标搜索词的各个所述搜索结果对应的排序优先度,对所述目标搜索词的各个所述搜索结果进行排序。
综上所述,本申请实施例提供的技术方案中,通过构建多组训练样本,采用机器学习算法对训练样本进行学习,得到机器学习排序模型,通过该机器学习排序模型输出对搜索结果的排序结果,通过将人工拟合排序公式所涉及的排序因子转换为机器学习排序模型的特征因子,即便是在特征因子的数量较多或者特征因子发生变化时,均可自动化地训练得到机器学习排序模型,减少时间和人力成本,且有助于提升对搜索结果进行排序的准确度。
可选地,所述机器学习排序模型包括权重确定模型和排序模型;
所述模型调用模块403,用于:
调用所述权重确定模型,根据执行所述目标搜索操作的目标用户对应的m个维度的用户特征向量,确定与所述目标用户对应的所述n个维度各自对应的权重,所述m为大于1的整数;
调用所述排序模型,根据所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量以及所述权重确定模型确定的所述n个维度各自对应的权重,计算所述目标搜索词的各个所述搜索结果对应的排序优先度。
可选地,所述装置400还包括:
信息获取模块,用于获取所述目标用户的用户信息;
特征生成模块,用于根据所述目标用户的用户信息,生成所述目标用户对应的m个维度的用户特征向量。
需要说明的是,上述实施例提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图5,其示出了本申请一个示例性实施例提供的计算机设备的结构框图。该计算机设备500可以包括一个或多个如下部件:处理器510和存储器520。
处理器510可以包括一个或者多个处理核心。处理器510利用各种接口和线路连接整个计算机设备500内的各个部分,通过运行或执行存储在存储器520内的指令、程序、代码集或指令集,以及调用存储在存储器520内的数据,执行计算机设备500的各种功能和处理数据。可选地,处理器510可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(ProgrammableLogic Array,PLA)中的至少一种硬件形式来实现。处理器510可集成中央处理器(CentralProcessing Unit,CPU)。
可选地,处理器510执行存储器520中的程序指令时实现上述排序模型的生成方法或者实现上述搜索结果的排序方法。
存储器520可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选地,该存储器520包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器520可用于存储指令、程序、代码、代码集或指令集。存储器520可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令、用于实现上述各个方法实施例的指令等;存储数据区可存储根据计算机设备500的使用所创建的数据等。
本领域技术人员可以理解,图5中示出的结构并不构成对计算机设备500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序由终端的处理器加载并执行以实现上述排序模型的生成方法,或者实现上述搜索结果的排序方法。
在示例性实施例中,还提供了一种计算机程序产品,当该计算机程序产品被执行时,其用于实现上述排序模型的生成方法,或者实现上述搜索结果的排序方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种排序模型的生成方法,其特征在于,所述方法包括:
获取多组训练样本;其中,每组训练样本包括一次搜索操作对应的样本搜索词及其至少一个搜索结果、执行所述搜索操作的样本用户以及每个搜索结果标注的排序优先度,所述排序优先度用于指示所述搜索结果在所述样本搜索词的全部搜索结果中的排序位置;
对于每一组训练样本,获取所述样本搜索词的各个所述搜索结果对应的n个维度的特征向量,以及所述样本用户对应的m个维度的用户特征向量,所述n和所述m均为大于1的整数;
采用所述多组训练样本对机器学习排序模型进行训练,得到完成训练的所述机器学习排序模型,所述机器学习排序模型包括权重确定模型和排序模型;其中,所述权重确定模型用于根据所述样本用户对应的m个维度的用户特征向量,确定与所述样本用户对应的所述n个维度各自对应的权重;所述排序模型用于根据所述样本搜索词的各个所述搜索结果对应的n个维度的特征向量,以及所述权重确定模型确定的所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度。
2.根据权利要求1所述的方法,其特征在于,所述采用所述多组训练样本对机器学习排序模型进行训练,得到完成训练的所述机器学习排序模型,包括:
调用所述机器学习排序模型,根据所述样本搜索词的各个所述搜索结果对应的所述n个维度的特征向量以及所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度;
根据所述机器学习排序模型计算出的所述排序优先度和所述标注的排序优先度,计算所述机器学习排序模型对应的损失函数的值;
若所述损失函数的值不符合预设条件,则调整所述n个维度各自对应的权重,并再次从所述调用所述机器学习排序模型,根据所述样本搜索词的各个所述搜索结果对应的所述n个维度的特征向量以及所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度的步骤开始执行;
若所述损失函数的值符合所述预设条件,则停止训练,得到完成训练的所述机器学习排序模型。
3.根据权利要求1所述的方法,其特征在于,所述采用所述多组训练样本对机器学习排序模型进行训练,得到完成训练的所述机器学习排序模型,包括:
调用所述权重确定模型,根据所述样本用户对应的m个维度的用户特征向量,确定与所述样本用户对应的所述n个维度各自对应的权重;
调用所述排序模型,根据所述样本搜索词的各个所述搜索结果对应的所述n个维度的特征向量以及所述权重确定模型确定的所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度;
根据所述排序模型计算出的所述排序优先度和所述标注的排序优先度,计算所述机器学习排序模型对应的损失函数的值;
若所述损失函数的值不符合预设条件,则调整所述权重确定模型的参数,并再次从所述调用所述权重确定模型,根据所述样本用户对应的m个维度的用户特征向量,确定与所述样本用户对应的所述n个维度各自对应的权重的步骤开始执行;
若所述损失函数的值符合所述预设条件,则停止训练,得到完成训练的所述机器学习排序模型。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
获取所述样本用户的用户信息;
根据所述样本用户的用户信息,生成所述样本用户对应的m个维度的用户特征向量。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述获取多组训练样本,包括:
获取多组搜索数据;其中,每组搜索数据包括一次搜索操作对应的样本搜索词及其至少一个搜索结果,以及每个搜索结果对应的选择率;
对于每一组搜索数据,根据所述搜索数据中的各个所述搜索结果对应的选择率,为各个所述搜索结果标注排序优先度;其中,所述搜索结果标注的排序优先度与所述搜索结果对应的选择率呈正相关关系;
根据各组所述搜索数据中的各个所述搜索结果标注的排序优先度,生成所述多组训练样本。
6.一种搜索结果的排序方法,其特征在于,所述方法包括:
获取目标用户的用户信息,以及目标搜索操作对应的目标搜索词及其至少一个搜索结果,所述目标搜索操作是由所述目标用户执行的;
获取所述目标用户对应的m个维度的用户特征向量,以及所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量,所述n和所述m均为大于1的整数;
调用权重确定模型,根据所述目标用户对应的m个维度的用户特征向量,确定与所述目标用户对应的所述n个维度各自对应的权重;
调用排序模型,根据所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量以及所述权重确定模型确定的所述n个维度各自对应的权重,计算所述目标搜索词的各个所述搜索结果对应的排序优先度,所述排序优先度用于指示所述搜索结果在所述目标搜索词的全部搜索结果中的排序位置;
根据所述目标搜索词的各个所述搜索结果对应的排序优先度,对所述目标搜索词的各个所述搜索结果进行排序。
7.一种排序模型的生成装置,其特征在于,所述装置包括:
样本获取模块,用于获取多组训练样本;其中,每组训练样本包括一次搜索操作对应的样本搜索词及其至少一个搜索结果、执行所述搜索操作的样本用户以及每个搜索结果标注的排序优先度,所述排序优先度用于指示所述搜索结果在所述样本搜索词的全部搜索结果中的排序位置;
特征获取模块,用于对于每一组训练样本,获取所述样本搜索词的各个所述搜索结果对应的n个维度的特征向量,以及所述样本用户对应的m个维度的用户特征向量,所述n和所述m均为大于1的整数;
模型训练模块,用于采用所述多组训练样本对机器学习排序模型进行训练,得到完成训练的所述机器学习排序模型,所述机器学习排序模型包括权重确定模型和排序模型;其中,所述权重确定模型用于根据所述样本用户对应的m个维度的用户特征向量,确定与所述样本用户对应的所述n个维度各自对应的权重;所述排序模型用于根据所述样本搜索词的各个所述搜索结果对应的n个维度的特征向量,以及所述权重确定模型确定的所述n个维度各自对应的权重,计算所述样本搜索词的各个所述搜索结果对应的排序优先度。
8.一种搜索结果的排序装置,其特征在于,所述装置包括:
结果获取模块,用于获取目标用户的用户信息,以及目标搜索操作对应的目标搜索词及其至少一个搜索结果,所述目标搜索操作是由所述目标用户执行的;
特征获取模块,用于获取所述目标用户对应的m个维度的用户特征向量,以及所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量,所述n和所述m均为大于1的整数;
模型调用模块,用于调用权重确定模型,根据所述目标用户对应的m个维度的用户特征向量,确定与所述目标用户对应的所述n个维度各自对应的权重;调用排序模型,根据所述目标搜索词的各个所述搜索结果对应的n个维度的特征向量以及所述权重确定模型确定的所述n个维度各自对应的权重,计算所述目标搜索词的各个所述搜索结果对应的排序优先度,所述排序优先度用于指示所述搜索结果在所述目标搜索词的全部搜索结果中的排序位置;
结果排序模块,用于根据所述目标搜索词的各个所述搜索结果对应的排序优先度,对所述目标搜索词的各个所述搜索结果进行排序。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至5任一项所述的排序模型的生成方法,或者实现如权利要求6所述的搜索结果的排序方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现如权利要求1至5任一项所述的排序模型的生成方法,或者实现如权利要求6所述的搜索结果的排序方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811260257.5A CN109299344B (zh) | 2018-10-26 | 2018-10-26 | 排序模型的生成方法、搜索结果的排序方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811260257.5A CN109299344B (zh) | 2018-10-26 | 2018-10-26 | 排序模型的生成方法、搜索结果的排序方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109299344A CN109299344A (zh) | 2019-02-01 |
CN109299344B true CN109299344B (zh) | 2020-12-29 |
Family
ID=65157906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811260257.5A Active CN109299344B (zh) | 2018-10-26 | 2018-10-26 | 排序模型的生成方法、搜索结果的排序方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109299344B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782982A (zh) * | 2019-05-20 | 2020-10-16 | 北京京东尚科信息技术有限公司 | 搜索结果的排序方法、装置和计算机可读存储介质 |
CN110297848B (zh) * | 2019-07-09 | 2024-02-23 | 深圳前海微众银行股份有限公司 | 基于联邦学习的推荐模型训练方法、终端及存储介质 |
CN112348162B (zh) * | 2019-08-12 | 2024-03-08 | 北京沃东天骏信息技术有限公司 | 用于生成识别模型的方法和装置 |
CN111061968B (zh) * | 2019-11-15 | 2023-05-30 | 北京三快在线科技有限公司 | 排序方法、装置、电子设备及可读存储介质 |
CN111221943B (zh) * | 2020-01-13 | 2023-08-08 | 口口相传(北京)网络技术有限公司 | 查询结果匹配度计算方法及装置 |
CN113761084B (zh) * | 2020-06-03 | 2023-08-08 | 北京四维图新科技股份有限公司 | 一种poi搜索排序模型训练方法、排序装置与方法及介质 |
CN112000871A (zh) * | 2020-08-21 | 2020-11-27 | 北京三快在线科技有限公司 | 确定搜索结果列表的方法、装置、设备及存储介质 |
CN112287014A (zh) * | 2020-08-24 | 2021-01-29 | 深圳大学 | 产品信息可视化处理方法、装置、计算机设备 |
CN112084307B (zh) * | 2020-09-14 | 2023-11-17 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、服务器及计算机可读存储介质 |
CN112100529B (zh) * | 2020-11-17 | 2021-03-19 | 北京三快在线科技有限公司 | 搜索内容排序方法、装置、存储介质和电子设备 |
CN114528435A (zh) * | 2020-11-23 | 2022-05-24 | 北京达佳互联信息技术有限公司 | 搜索场景下的视频排序方法、装置、电子设备及存储介质 |
CN112749238A (zh) * | 2020-12-30 | 2021-05-04 | 北京金堤征信服务有限公司 | 搜索排序方法、装置、电子设备以及计算机可读存储介质 |
CN113344078B (zh) * | 2021-06-09 | 2022-11-04 | 北京三快在线科技有限公司 | 一种模型训练的方法及装置 |
CN113343130B (zh) * | 2021-06-15 | 2022-07-15 | 北京三快在线科技有限公司 | 一种模型训练的方法、信息展示的方法及装置 |
CN113344201A (zh) * | 2021-06-22 | 2021-09-03 | 北京三快在线科技有限公司 | 一种模型训练的方法及装置 |
CN113177162B (zh) * | 2021-06-29 | 2022-04-22 | 北京达佳互联信息技术有限公司 | 搜索结果的排序方法、装置、电子设备和存储介质 |
CN113987260A (zh) * | 2021-09-14 | 2022-01-28 | 北京百度网讯科技有限公司 | 一种视频推送方法、装置、电子设备及存储介质 |
CN115186163B (zh) * | 2022-06-27 | 2023-04-07 | 北京百度网讯科技有限公司 | 搜索结果排序模型的训练与搜索结果排序方法、装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077306A (zh) * | 2013-03-28 | 2014-10-01 | 阿里巴巴集团控股有限公司 | 一种搜索引擎的结果排序方法及系统 |
CN104462293A (zh) * | 2014-11-27 | 2015-03-25 | 百度在线网络技术(北京)有限公司 | 搜索处理方法、生成搜索结果排序模型的方法和装置 |
CN104615767A (zh) * | 2015-02-15 | 2015-05-13 | 百度在线网络技术(北京)有限公司 | 搜索排序模型的训练方法、搜索处理方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104679771B (zh) * | 2013-11-29 | 2018-09-18 | 阿里巴巴集团控股有限公司 | 一种个性化数据搜索方法和装置 |
US11675795B2 (en) * | 2015-05-15 | 2023-06-13 | Yahoo Assets Llc | Method and system for ranking search content |
CN106484829B (zh) * | 2016-09-29 | 2019-05-17 | 中国国防科技信息中心 | 一种微博排序模型的建立及微博多样性检索方法 |
-
2018
- 2018-10-26 CN CN201811260257.5A patent/CN109299344B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077306A (zh) * | 2013-03-28 | 2014-10-01 | 阿里巴巴集团控股有限公司 | 一种搜索引擎的结果排序方法及系统 |
CN104462293A (zh) * | 2014-11-27 | 2015-03-25 | 百度在线网络技术(北京)有限公司 | 搜索处理方法、生成搜索结果排序模型的方法和装置 |
CN104615767A (zh) * | 2015-02-15 | 2015-05-13 | 百度在线网络技术(北京)有限公司 | 搜索排序模型的训练方法、搜索处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109299344A (zh) | 2019-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109299344B (zh) | 排序模型的生成方法、搜索结果的排序方法、装置及设备 | |
CN112632385B (zh) | 课程推荐方法、装置、计算机设备及介质 | |
CN109634698B (zh) | 菜单显示方法、装置、计算机设备及存储介质 | |
CN109800307B (zh) | 产品评价的分析方法、装置、计算机设备及存储介质 | |
US11176453B2 (en) | System and method for detangling of interleaved conversations in communication platforms | |
US20200334417A1 (en) | Techniques to add smart device information to machine learning for increased context | |
US10482146B2 (en) | Systems and methods for automatic customization of content filtering | |
WO2021042763A1 (en) | Image searches based on word vectors and image vectors | |
CN108021708B (zh) | 内容推荐方法、装置与计算机可读存储介质 | |
WO2020151175A1 (zh) | 文本生成方法、装置、计算机设备及存储介质 | |
CN110874401A (zh) | 信息处理方法、模型训练方法、装置、终端及计算设备 | |
CN111275205A (zh) | 虚拟样本的生成方法、终端设备及存储介质 | |
CN112632261A (zh) | 智能问答方法、装置、设备及存储介质 | |
CN114818729A (zh) | 一种训练语义识别模型、查找语句的方法、装置及介质 | |
CN113239697B (zh) | 实体识别模型训练方法、装置、计算机设备及存储介质 | |
CN111046203A (zh) | 图像检索方法、装置、存储介质及电子设备 | |
CN117194616A (zh) | 一种垂域知识图谱的知识查询方法、装置、计算机设备和存储介质 | |
CN110287284B (zh) | 语义匹配方法、装置及设备 | |
CN111552802A (zh) | 文本分类模型训练方法和装置 | |
CN111797765B (zh) | 图像处理方法、装置、服务器及存储介质 | |
CN114297449A (zh) | 内容查找方法、装置、电子设备及计算机可读介质及产品 | |
CN114741489A (zh) | 文档检索方法、装置、存储介质以及电子设备 | |
JP2022104892A (ja) | ロングテールキーワードの識別方法、キーワード検索方法及びコンピュータ機器 | |
CN112148855A (zh) | 一种智能客服问题检索方法、终端以及存储介质 | |
CN115114415A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210415 Address after: 18-24 / F, unit 2, building 2, No.158, Tianfu 4th Street, pilot Free Trade Zone, high tech Zone, Chengdu, Sichuan 610094 Patentee after: CHENGDU OPPO COMMUNICATION TECHNOLOGY Co.,Ltd. Address before: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18 Patentee before: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd. |
|
TR01 | Transfer of patent right |