一种基于机器学习的搜索结果排序方法及系统转让专利

申请号 : CN202011033035.7

文献号 : CN112100444B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 马荣深吴上波韩亚吴廷锋闫立鑫陈灵

申请人 : 四川长虹电器股份有限公司

摘要 :

本发明涉及数据排序技术领域,公开了一种基于机器学习的搜索结果排序方法及系统,用以对搜索结果进行更加精准排序,从而提高搜索系统的可信度与用户的使用体验。本发明通过对过去时间内的用户搜索日志进行数据集与特征的构建,在数据集构建时,查询条件与返回文档之间的相关度是根据用户信息与检索条件两者结合进行分组统计点击率,而后根据点击率的大小确定的。将最后得到的数据集进行迭代训练得到排序模型,通过该模型进行排序。本发明适用于搜索结果排序。

权利要求 :

1.一种基于机器学习的搜索结果排序方法,其特征在于,包括以下步骤:步骤一:获得要进行排序的搜索召回集,过去一周的检索记录,以及所涉及到的影片信息数据和用户信息数据;

步骤二:对所述检索记录进行预处理,所述预处理包括确定检索条件与物品相关度;在确定相关度时将用户信息与检索条件两者结合进行分组,对于每个分组分别统计该分组下每部影片的点击率,根据该分组下每部影片的点击率,确定这些影片对于该检索条件的每部影片的相关度;

步骤三:根据所述检索记录、用户信息与影片信息生成排序特征,并排序特征附加到训练集与测试集上;

步骤四:对训练集进行编码;

步骤五:利用编码后的训练集训练模型,并使用得到的模型对测试集进行预测得到预测结果;

步骤六:利用所述预测结果对物品候选集的物品进行排序。

2.如权利要求1所述的一种基于机器学习的搜索结果排序方法,其特征在于,检索记录包含了用户ID、检索条件、检索的视频ID列表、观看时间及点击位置;用户信息包括了用户ID和用户设备信息;影视信息包括了影片所属地区、影片类型、导演、演员、评分、收费信息、电影年龄、集数及播放次数。

3.如权利要求1所述的一种基于机器学习的搜索结果排序方法,其特征在于,步骤三生成的排序特征包括用户特征、影片特征、匹配类特征及上下文特征。

4.如权利要求1所述的一种基于机器学习的搜索结果排序方法,其特征在于,步骤四对训练集编码的步骤包括:将训练集中所有类别特征映射到从1开始的数字编号中,所述类别特征是指在有限选项内取值的特征,在编码完成后需要将这些字段的映射关系导出到数据库中进行存储。

5.一种基于机器学习的搜索结果排序系统,其特征在于,包括:数据获取模块,用于数据的获取,获取的数据包括:要进行排序的搜索召回集,过去一周的检索记录,以及所涉及到的影片信息数据和用户信息数据;

数据预处理模块,用于数据的预处理操作,包括确定检索条件与物品相关度;在确定相关度时将用户信息与检索条件两者结合进行分组,对于每个分组分别统计该分组下每部影片的点击率,根据该分组下每部影片的点击率,确定这些影片对于该检索条件的每部影片的相关度;

编码模块,用于对训练集进行编码;

特征构建模块,用于根据检索记录、用户信息与影片信息生成排序特征,将排序特征附加到训练集与测试集上;

训练模块,用于模型的训练,将训练集传入模型进行迭代训练,得到模型;

排序模块,用于对搜索引擎所召回的物品进行排序。

6.如权利要求5所述的一种基于机器学习的搜索结果排序系统,其特征在于,检索记录包含了用户ID、检索条件、检索的视频ID列表、观看时间及点击位置;用户信息包括了用户ID和用户设备信息;影视信息包括了影片所属地区、影片类型、导演、演员、评分、收费信息、电影年龄、集数及播放次数。

7.如权利要求5所述的一种基于机器学习的搜索结果排序系统,其特征在于,所述排序特征包括用户特征、影片特征、匹配类特征及上下文特征。

8.如权利要求5所述的一种基于机器学习的搜索结果排序系统,其特征在于,编码模块对训练集编码的步骤包括:将训练集中所有类别特征映射到从1开始的数字编号中,所述类别特征是指在有限选项内取值的特征,在编码完成后需要将这些字段的映射关系导出到数据库中进行存储。

说明书 :

一种基于机器学习的搜索结果排序方法及系统

技术领域

[0001] 本发明涉及数据排序技术领域,特别涉及一种基于机器学习的搜索结果排序方法及系统。

背景技术

[0002] 随着人工智能与大数据的迅猛发展,计算机能够根据用户输入的检索条件,从海量的物品中选出与当前检索条件相关的物品展示给用户。然而,所检索出的物品并不是都
与当前检索条件相关,我们要做的便是对所召回的这些物品根据用户的需求进行有效的排
序。因此如何正确地对召回集中的物品进行排序是搜索领域非常关注的问题。
[0003] 目前的排序方案大多是根据人工制定的策略进行排序,如当用户检索刘德华的电影,人工地制定策略对所检索出的影片的各个信息字段进行加权,而这些权重需要特定的
专家人员根据业务的需求进行确定。这一方案的缺点很明显,就是非常耗费人力成本与时
间成本,且每当业务需求变化时,便需要重新确定这些权重。近几年来随着业务的多元化,
这类方法对复杂的业务场景的适应性较差,已经不再适应新的业务场景。因此需要一种高
效且准确的排序方法来提升搜索系统的准确度。

发明内容

[0004] 本发明要解决的技术问题是:提供一种基于机器学习的搜索结果排序方法及系统,用以对搜索结果进行更加精准排序,从而提高搜索系统的可信度与用户的使用体验。
[0005] 为解决上述问题,本发明采用的技术方案是:
[0006] 一种基于机器学习的搜索结果排序方法,其特征在于,包括以下步骤:
[0007] 步骤一:获得要进行排序的搜索召回集,过去一周的检索记录,以及所涉及到的影片信息数据和用户信息数据;
[0008] 步骤二:对所述检索记录进行预处理,所述预处理包括确定检索条件与物品相关度;在确定相关度时将用户信息与检索条件两者结合进行分组,对于每个分组分别统计该
分组下每部影片的点击率,根据该分组下每部影片的点击率,确定这些影片对于该检索条
件的每部影片的相关度;
[0009] 步骤三:根据所述检索记录、用户信息与影片信息生成排序特征,并排序特征附加到训练集与测试集上;
[0010] 步骤四:对训练集进行编码;
[0011] 步骤五:利用编码后的训练集训练模型,并使用得到的模型对测试集进行预测得到预测结果;
[0012] 步骤六:利用所述预测结果对物品候选集的物品进行排序。
[0013] 为了最大化的实现精准排序,具体的,检索记录包含了用户ID、检索条件、检索的视频ID列表、观看时间及点击位置;用户信息包括了用户ID和用户设备信息;影视信息包括
了影片所属地区、影片类型、导演、演员、评分、收费信息、电影年龄、集数及播放次数。
[0014] 进一步的,步骤三生成的排序特征可包括用户特征、影片特征、匹配类特征及上下文特征。
[0015] 进一步的,步骤四对训练集编码的步骤包括:将训练集中所有类别特征映射到从1开始的数字编号中,所述类别特征是指在有限选项内取值的特征,在编码完成后需要将这
些字段的映射关系导出到数据库中进行存储,以便在下次编码时能够保证映射关系的唯一
性。
[0016] 一种基于机器学习的搜索结果排序系统,包括:
[0017] 数据获取模块,用于数据的获取,获取的数据包括:要进行排序的搜索召回集,过去一周的检索记录,以及所涉及到的影片信息数据和用户信息数据;
[0018] 数据预处理模块,用于数据的预处理操作,包括确定检索条件与物品相关度;在确定相关度时将用户信息与检索条件两者结合进行分组,对于每个分组分别统计该分组下每
部影片的点击率,根据该分组下每部影片的点击率,确定这些影片对于该检索条件的每部
影片的相关度;
[0019] 编码模块,用于对训练集进行编码;
[0020] 特征构建模块,用于根据检索记录、用户信息与影片信息生成排序特征,将排序特征附加到训练集与测试集上;
[0021] 训练模块,用于模型的训练,将训练集传入模型进行迭代训练,得到模型;
[0022] 排序模块,用于对搜索引擎所召回的物品进行排序。
[0023] 具体的,检索记录包含了用户ID、检索条件、检索的视频ID列表、观看时间及点击位置;用户信息包括了用户ID和用户设备信息;影视信息包括了影片所属地区、影片类型、
导演、演员、评分、收费信息、电影年龄、集数及播放次数。
[0024] 具体的,所述排序特征可包括用户特征、影片特征、匹配类特征及上下文特征。
[0025] 具体的,编码模块对训练集编码的步骤包括:将训练集中所有类别特征映射到从1开始的数字编号中,所述类别特征是指在有限选项内取值的特征,在编码完成后需要将这
些字段的映射关系导出到数据库中进行存储。
[0026] 本发明的有益效果是:本发明结合用户特征与检索条件得到的相关度所训练出的模型更能够拟合不同类型用户的检索意图,这样做有效地提升了搜索引擎的准确率,同时
也优化了用户的使用体验,使得用户能够更好地体验科技发展带来的便利。

附图说明

[0027] 图1是本发明基于机器学习的搜索结果排序方法的程序流程图;
[0028] 图2是本发明实施例结合用户特征与检索条件两者共同确定相关度的流程图。

具体实施方式

[0029] 本发明为了能对搜索结果进行精准排序,从而提高搜索系统的可信度与用户的使用体验,通过对过去时间内的用户搜索日志进行数据集与特征的构建,在数据集构建时,查
询条件与返回文档之间的相关度是根据用户信息与检索条件两者结合进行分组统计点击
率,而后根据点击率的大小确定的。将最后得到的数据集进行迭代训练得到排序模型,通过
该模型进行排序。
[0030] 本发明与其它技术方案不同的是:本技术方案在确定查询条件与返回文档之间的相关度时不是像其它方案一样仅根据检索条件下的物品点击率确定相关度,而是检索条件
与用户特征两者进行分组确定点击率。比如说检索条件为“actor:刘德华”,用户特征为用
户的机器型号,那么在进行统计时就根据“actor:刘德华”与用户的机器型号两者一起分
组,对每组分别计算点击率(影片点击数/检索条件出现总数),根据点击率的大小确定相关
度。其它方案则是仅根据“actor:刘德华”进行分组统计而没有考虑到用户的机器型号。
[0031] 本发明的具体步骤包括:
[0032] (1)从日志中获取一周的检索记录,以及从数据库中获取用户信息与影视信息;其中,检索记录通常包含了用户ID、检索条件、检索结果、点击结果、观看时间和观影时长;用
户信息通常包括了用户ID和用户设备信息;影视信息通常包括了影视ID、导演、演员、所属
地区、上映日期、资源方、收费信息、时长、类型、评分、集数及播放次数。
[0033] (2)通过遍历检索记录,根据所涉及到的用户信息与检索条件两者结合进行分组,对于每个分组统计各个影片的点击次数与检索条件的次数,根据这些统计值,分别计算各
个影片的点击率,点击率=某检索条件下影片点击数/检索条件出现数;根据该分组下每部
影片的点击率,确定这些影片对于该检索条件的每部影片的相关度。
[0034] (3)根据所述检索记录、用户信息与影片信息生成排序特征,该排序特征是指在机器学习过程中所需要学习的维度,排序特征包括但不限于:
[0035] a)用户特征:根据用户信息可直接得到用户的设备信息。
[0036] b)影片特征:根据影视信息可直接得到影片所属地区、影片类型、导演、演员、评分、收费信息、电影年龄、集数及播放次数。
[0037] c)匹配类特征:根据检索条件与影片的信息,可以计算出检索条件与影片之间的匹配度。
[0038] d)上下文特征:根据检索记录可以得到用户在星期几观看、哪个小时段观看。
[0039] (4)对数据集进行编码。所述编码是指对类别特征从1开始进行编号。所述类别特征是指在有限选项内取值的特征,如影片的类型、导演等。
[0040] (5)模型训练与预测,使用机器学习的方法对上述编码后的数据集进行拟合,得到模型。使用上述模型对搜索引擎检索出的影片做排序。
[0041] 下面通过实施例和附图对本发明做进一步的说明。
[0042] 参考图1,图1为实施例提供的基于机器学习的搜索结果排序方法的程序流程图,具体包括:
[0043] (1)数据的读取:该部分主要通过数据获取模块从日志平台获取过去一周内的用户检索日志,记录的字段为用户ID、检索条件、检索的视频ID列表、点击结果及检索时间。同
时也需要从数据库中获取用户和影片的相关信息,包括了影片所属地区、影片类型、导演、
演员、评分、收费信息、电影年龄、集数及播放次数。
[0044] (2)数据预处理:通过数据预处理模块遍历检索记录,将用户的设备信息与之关联。参考图2,图2为本发明实施例结合用户特征与检索条件两者共同确定相关度的流程图,
具体包括,将用户信息(这里指的是设备信息)与检索条件两者结合进行分组,对于每个分
组分别统计该分组下每部影片的点击率,所述点击率的计算公式为:点击率=在该分组下
的影片点击数/该组出现次数。根据该分组下每部影片的点击率,确定这些影片对于该检索
条件的每部影片的相关度。例如,根据点击率将相关度划分为5个等级(0最不相关,4为最相
关);点击率小于0.1为等级0,0.1到0.2为等级1,0.2到0.4为等级2,0.4到0.5为等级3,点击
率大于0.5的为等级4。
[0045] (3)特征构建:特征构建模块根据所述检索记录、用户信息与影片信息生成排序特征,将排序特征附加到训练集与测试集上,所述排序特征是指在机器学习过程中所需要学
习的维度,特征包括但不限于:
[0046] a)用户特征:根据用户信息可直接得到用户的设备信息。
[0047] b)影片特征:根据影视信息可直接得到影片所属地区、影片类型、导演、演员、评分、收费信息、电影年龄、集数、播放次数。
[0048] c)匹配类特征:根据检索条件与影片的信息,可以计算出检索条件与影片之间的匹配度。
[0049] d)上下文特征:根据检索记录可以得到用户在星期几观看、哪个小时段观看。
[0050] (4)编码:该部分主要通过编码模块对训练集中的类别特征进行了编码,将所有类别特征映射到从1开始的数字编号中,所述类别特征是指在有限选项内取值的特征,如影片
的类型、导演等。这样做的原因是训练阶段所用到的训练工具(LightGBM框架)只支持非负
数的类别特征。需注意的是,在编码完成后需要将这些字段的映射关系导出到数据库中进
行存储,以便在下次编码时能够保证映射关系的唯一性。
[0051] (5)模型训练:该部分将前面编码好的数据传入LightGBM框架中进行训练,所述LightGBM框架是一个梯度提升框架,使用基于决策树的学习算法,能够高效的处理大规模
数据。在训练模型时需先设置好模型的训练参数,设置的主要参数包括但不限于:'
boosting_type':'gbdt'、'objective':'lambdarank'、'max_depth':7、'min_data_in_
leaf':100、'num_leaves':70、'bagging_freq':5、'min_gain_to_split':0.2、learning_
rate':0.01、'feature_fraction':0.8、'bagging_fraction':0.8。
[0052] (6)排序:该部分将运用训练好的模型对检索结果进行排序;在进行排序之前,先要根据数据中的用户ID与影片ID从数据库中获取相应数据,附加步骤(3)涉及到的特征,其
次根据步骤(4)所述进行编码操作;需要注意的是。编码好后便可以使用模型进行预测了,
对每部影片的预测值从大到小进行排序即可得到预测后的排序结果了。