一种模型训练的方法、信息展示的方法及装置与流程

文档序号:26504450发布日期:2021-09-04 07:27阅读:131来源:国知局
一种模型训练的方法、信息展示的方法及装置与流程

1.本说明书涉及计算机技术领域,尤其涉及一种模型训练的方法、信息展示的方法及装置。


背景技术:

2.随着电子技术和网络技术的不断发展,互联网中存在大量的信息,可以根据用户的搜索语句,确定向用户展示的搜索结果,由于页面展示的搜索结果有限,因此,需要将这些搜索结果进行排序,将用户感兴趣的搜索结果进行优先展示。
3.在实际应用中,对搜索结果进行排序的方法,往往根据用户输入的搜索语句与搜索结果之间的相似性进行排序。这种对搜索结果进行排序的方式,确定出的搜索词与搜索结果之间的相关性的准确性并不高,可能会出现将搜索词与搜索结果之间并不相关的特征进行关联,导致输出的排序结果并不能满足用户的实际需求,使得用户的信息浏览体验不佳。
4.因此,如何能够提高排序模型对搜索结果排序的合理性,则是一个亟待解决的问题。


技术实现要素:

5.本说明书提供一种模型训练的方法、信息展示的方法及装置,以部分的解决现有技术存在的上述问题。
6.本说明书采用下述技术方案:
7.本说明书提供了一种模型训练的方法,包括:
8.获取训练样本,所述训练样本包含搜索语句、所述搜索语句对应的各搜索结果、第一相关信息,以及所述各搜索结果对应的第二相关信息,所述第一相关信息表征发送所述搜索语句的用户的用户特征,针对每个搜索结果,该搜索结果对应的第二相关信息表征该搜索结果归属的对象的对象特征;
9.通过待训练的排序模型,确定所述搜索语句在所述第一相关信息的补偿作用下的编码结果,作为第一编码结果,以及该搜索结果在该搜索结果对应的第二相关信息的补偿作用下的编码结果,作为该搜索结果对应的第二编码结果;
10.根据所述第一编码结果以及各搜索结果对应的第二编码结果,得到针对所述各搜索结果的排序结果,并根据所述排序结果以及所述各搜索结果对应的标签信息,训练所述排序模型。
11.可选地,所述排序模型中包含有整体相关子模型,整体相关子模型包含有特征层以及编码层;
12.通过待训练的排序模型,确定所述搜索语句在所述第一相关信息的补偿作用下的编码结果,作为第一编码结果,以及该搜索结果在该搜索结果对应的第二相关信息的补偿作用下的编码结果,作为该搜索结果对应的第二编码结果,具体包括:
13.将所述搜索语句以及所述第一相关信息输入到所述特征层,以得到所述搜索语句对应的特征向量,以及所述第一相关信息对应的特征向量,并将所述搜索语句对应的特征向量以及所述第一相关信息对应的特征向量输入到所述编码层中进行编码,得到所述第一编码结果;
14.将该搜索结果以及该搜索结果对应的第二相关信息输入到所述特征层,以得到该搜索结果对应的特征向量以及该搜索结果对应的第二相关信息的特征向量,并将该搜索结果对应的特征向量以及该搜索结果对应的第二相关信息的特征向量输入到所述编码层中进行编码,得到该搜索结果对应的第二编码结果。
15.可选地,排序模型还包括特征关联子模型;
16.根据所述第一编码结果以及各搜索结果对应的第二编码结果,得到针对所述各搜索结果的排序结果之前,所述方法还包括:
17.针对每个搜索结果,将所述搜索语句、该搜索结果、所述第一相关信息,以及该搜索结果对应的第二相关信息作为目标信息输入到所述特征关联子模型中,以在确定出所述目标信息中涉及的至少部分特征维度之间关联性的前提下,确定所述搜索语句与该搜索结果之间的辅助相关性;
18.根据所述第一编码结果以及各搜索结果对应的第二编码结果,得到针对所述各搜索结果的排序结果,具体包括:
19.根据所述第一编码结果、各搜索结果对应的第二编码结果以及所述辅助相关性,得到针对所述各搜索结果的排序结果。
20.可选地,所述特征关联子模型包括:全量特征关联模型;
21.在确定出所述目标信息中涉及的至少部分特征维度之间关联性的前提下,确定所述搜索语句与该搜索结果之间的辅助相关性,具体包括:
22.确定各特征维度组合,每个特征维度组合包含有所述目标信息中涉及的至少一个特征维度;
23.针对每个特征维度组合,通过所述全量特征关联模型,确定该特征维度组合与每个其他特征维度组合之间的关联性;
24.根据确定出的各特征维度组合之间的关联性,确定该搜索结果与所述搜索语句之间的辅助相关性。
25.可选地,所述特征关联子模型包括:设定特征关联模型;
26.在确定出所述目标信息中涉及的至少部分特征维度之间关联性的前提下,确定所述搜索语句与该搜索结果之间的辅助相关性,具体包括:
27.从所述目标信息中确定出各设定特征维度的特征信息,所述各设定特征维度为所述目标信息中涉及的所有特征维度中的部分特征维度;
28.将所述特征信息输入到所述设定特征关联模型中,以针对每个设定特征维度,确定出该设定特征维度与每个其他设定特征维度之间的关联性;
29.根据确定出的各设定特征维度之间的关联性,确定该搜索结果与所述搜索语句之间的辅助相关性。
30.可选地,根据所述第一编码结果、各搜索结果对应的第二编码结果以及所述辅助相关性,得到针对所述各搜索结果的排序结果,具体包括:
31.针对每个搜索结果,根据所述第一编码结果以及该搜索结果对应的第二编码结果,确定在将所述第一相关信息与所述搜索语句进行整体编码,以及将该搜索结果对应的第二相关信息与该搜索结果进行整体编码的情况下,该搜索结果与所述搜索语句之间的相关性,作为综合相关性;
32.根据所述综合相关性以及所述辅助相关性,确定针对该搜索结果的排序评分;
33.根据每个搜索结果对应的排序评分,确定所述排序结果。
34.可选地,根据所述排序结果以及所述各搜索结果对应的标签信息,训练所述排序模型,具体包括:
35.确定所述排序结果的排序结果评价分值,作为原始排序评价分值;
36.根据基于所述标签信息所确定出的已点击的搜索结果,对所述排序结果进行调整,得到调整后排序结果,并确定所述调整后排序结果对应的排序结果评价分值,作为最优排序评价分值;
37.以最小化所述原始排序评价分值与所述最优排序评价分值之间的偏差为优化目标,训练所述排序模型。
38.本说明书提供了一种信息展示的方法,包括:
39.接收用户输入的搜索语句;
40.确定所述搜索语句对应的各搜索结果;
41.将所述各搜索结果输入到预先训练的排序模型中,得到所述搜索语句对应的排序结果,所述排序模型是通过上述模型训练的方法训练得到的;
42.根据所述排序结果,向所述用户进行信息展示。
43.本说明书提供了一种模型训练的装置,包括:
44.获取模块,用于获取训练样本,所述训练样本包含搜索语句、所述搜索语句对应的各搜索结果、第一相关信息,以及所述各搜索结果对应的第二相关信息,所述第一相关信息表征发送所述搜索语句的用户的用户特征,针对每个搜索结果,该搜索结果对应的第二相关信息表征该搜索结果归属的对象的对象特征;
45.编码模块,用于通过待训练的排序模型,确定所述搜索语句在所述第一相关信息的补偿作用下的编码结果,作为第一编码结果,以及该搜索结果在该搜索结果对应的第二相关信息的补偿作用下的编码结果,作为该搜索结果对应的第二编码结果;
46.训练模块,用于根据所述第一编码结果以及各搜索结果对应的第二编码结果,得到针对所述各搜索结果的排序结果,并根据所述排序结果以及所述各搜索结果对应的标签信息,训练所述排序模型。
47.本说明书提供了一种信息展示的装置,包括:
48.接收模块,用于接收用户输入的搜索语句;
49.确定模块,用于确定所述搜索语句对应的各搜索结果;
50.排序模块,用于将所述各搜索结果输入到预先训练的排序模型中,得到所述搜索语句对应的排序结果,所述排序模型是通过上述模型训练的方法训练得到的;
51.展示模块,用于根据所述排序结果,向所述用户进行信息展示。
52.本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述模型训练的方法以及信息展示的方法。
53.本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述模型训练的方法以及信息展示的方法。
54.本说明书采用的上述至少一个技术方案能够达到以下有益效果:
55.在本说明书提供的模型训练的方法以及信息展示的方法中,获取训练样本,训练样本包含搜索语句、搜索语句对应的各搜索结果、第一相关信息,以及各搜索结果对应的第二相关信息,第一相关信息表征发送搜索语句的用户的用户特征,针对每个搜索结果,该搜索结果对应的第二相关信息表征该搜索结果归属的对象的对象特征。其次,通过待训练的排序模型,确定搜索语句在第一相关信息的补偿作用下的编码结果,作为第一编码结果,以及该搜索结果在该搜索结果对应的第二相关信息的补偿作用下的编码结果,作为该搜索结果对应的第二编码结果。最后,根据第一编码结果以及各搜索结果对应的第二编码结果,得到针对各搜索结果的排序结果,并根据排序结果以及各搜索结果对应的标签信息,训练排序模型。
56.从上述方法中可以看出,本方法可以根据搜索语句在第一相关信息的补偿作用下的编码结果,与该搜索结果在该搜索结果对应的第二相关信息的补偿作用下的编码结果,确定针对各搜索结果的排序结果。也就是说,将搜索语句对应的所有特征相结合整体进行编码,以及将搜索结果对应的所有特征相结合整体进行编码,以进一步提高搜索语句与各搜索结果之间的相关性对排序结果的影响,尽可能避免与搜索语句之间相关性较低的搜索结果排序靠前的情况发生,使得搜索语句对应的排序结果更为合理,从而将相关性较高的搜索结果在页面中展示给用户,以提高用户的信息浏览体验。
附图说明
57.此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
58.图1为本说明书中一种模型训练的方法的流程示意图;
59.图2为本说明书实施例提供的一种排序模型的模型结构的示意图;
60.图3为本说明书实施例提供的一种排序模型的模型结构的示意图;
61.图4为本说明书中一种信息展示的方法的流程示意图;
62.图5为本说明书提供的一种模型训练的装置的示意图;
63.图6为本说明书提供的一种信息展示的装置的示意图;
64.图7为本说明书提供的一种对应于图1的电子设备的示意图。
具体实施方式
65.为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
66.以下结合附图,详细说明本说明书各实施例提供的技术方案。
67.图1为本说明书中一种模型训练的方法的流程示意图,包括以下步骤:
68.s100:获取训练样本,所述训练样本包含搜索语句、所述搜索语句对应的各搜索结果、第一相关信息,以及所述各搜索结果对应的第二相关信息,所述第一相关信息表征发送所述搜索语句的用户的用户特征,针对每个搜索结果,该搜索结果对应的第二相关信息表征该搜索结果归属的对象的对象特征。
69.在本说明书实施例中,对排序模型进行训练的执行主体可以是服务器,也可以是诸如台式电脑等电子设备,为了便于描述,下面仅以服务器为执行主体,对本说明书提供的排序模型的训练方法进行说明。
70.在本说明书实施例中,服务器可以获取训练样本,训练样本包含搜索语句、搜索语句对应的各搜索结果、第一相关信息,以及各搜索结果对应的第二相关信息,第一相关信息表征发送搜索语句的用户的用户特征。针对每个搜索结果,该搜索结果对应的第二相关信息表征该搜索结果归属的对象的对象特征。
71.搜索语句可以是指用户根据实际需求输入的搜索句或搜索关键词等。第一相关信息用于反映用户在发送该搜索语句时所对应的特征,如,用户发送该搜索语句时所在地理位置、用户的个人喜好、用户在历史上点击的信息所对应的业务类别等。当然,第一相关信息还可以包括搜索语句对应的本身属性,如搜索语句中对应的类别(搜索语句为宫保鸡丁,类别为菜品)。
72.第二相关信息用于反映搜索结果归属的对象的个性化特点,如,若是搜索结果归属的对象为商户,则第二相关信息可以用于表示该商户的所在区域、该商户的商户名等。第二相关信息还可以包括搜索结果对应的类别(如搜索语句为宫保鸡丁时,搜索出的搜索结果可以包括宫保鸡丁的菜品,以及宫保鸡丁的相关评论这两种搜索结果,这两种搜索结果属于不同的类别)、搜索结果对应的描述性文本(如,若搜索结果为菜品a,则该搜索结果对应的描述性文本可以包括该菜品a的口味、制作材料等)等。
73.训练样本中还包含有各搜索结果对应的标签信息,这里提到的标签信息可以用于表征用户在历史上对各搜索结果对应的实际浏览情况,如用户对搜索语句对应的搜索结果是否进行点击。当然,该标签信息也可以是人为通过实际经验设置出的。
74.s102:通过待训练的排序模型,确定所述搜索语句在所述第一相关信息的补偿作用下的编码结果,作为第一编码结果,以及该搜索结果在该搜索结果对应的第二相关信息的补偿作用下的编码结果,作为该搜索结果对应的第二编码结果。
75.在本说明书实施例中,服务器可以通过待训练的排序模型,确定搜索语句在第一相关信息的补偿作用下的编码结果,作为第一编码结果,以及该搜索结果在该搜索结果对应的第二相关信息的补偿作用下的编码结果,作为该搜索结果对应的第二编码结果。
76.在实际应用中,服务器根据用户输入的搜索语句对应的文本信息与搜索结果对应的各个文本信息之间的相似性对搜索结果进行排序,这种方式确定出的搜索语句与搜索结果之间的相关性的准确性较低,可能导致输出的排序结果并不能满足用户的实际需求。因此,服务器在模型训练的过程中,不仅仅根据搜索语句对应的文本信息与搜索结果对应的文本信息之间的相似性,还可以根据搜索语句对应的用户的用户特征以及搜索结果归属的对象的对象特征,确定出各特征之间的相似性,进而来确定搜索语句与搜索结果之间的相关性,以提高搜索语句与搜索结果之间的相关性的准确性。
77.在本说明书实施例中,排序模型中包含有整体相关子模型,整体相关子模型包含有特征层以及编码层。服务器可以将搜索语句以及第一相关信息输入到特征层,以得到搜索语句对应的特征向量,以及第一相关信息对应的特征向量,并将搜索语句对应的特征向量以及第一相关信息对应的特征向量输入到编码层中进行编码,得到第一编码结果。再将该搜索结果以及该搜索结果对应的第二相关信息输入到特征层,以得到该搜索结果对应的特征向量以及该搜索结果对应的第二相关信息的特征向量,并将该搜索结果对应的特征向量以及该搜索结果对应的第二相关信息的特征向量输入到编码层中进行编码,得到该搜索结果对应的第二编码结果。
78.在本说明书实施例中,服务器可以从第一相关信息中,提取搜索语句在整体相关子模型中对应的用户的用户特征,以及从该搜索结果对应的第二相关信息中,提取该搜索结果在整体相关子模型中归属的对象的对象特征。
79.其次,将搜索语句以及搜索语句在整体相关子模型中对应的用户的用户特征输入到整体相关子模型的特征层中,得到搜索语句对应的特征向量,以及搜索语句对应的用户的用户特征的特征向量。并将搜索语句对应的特征向量,以及搜索语句对应的用户的用户特征的特征向量输入到整体相关子模型的编码层中,得到将搜索语句与搜索语句对应的用户的用户特征相结合,进行整体编码后的第一编码结果。
80.将该搜索结果以及该搜索结果归属的对象的对象特征输入到整体相关子模型的特征层中,得到该搜索结果对应的特征向量,以及该搜索结果归属的对象的对象特征的特征向量。并将该搜索结果对应的特征向量,以及该搜索结果归属的对象的对象特征的特征向量输入到整体相关子模型的编码层中,得到将该搜索结果与该搜索结果归属的对象的对象特征相结合,进行整体编码后的该搜索结果对应的第二编码结果。
81.最后,根据第一编码结果以及该搜索结果对应的第二编码结果,确定搜索语句与该搜索结果之间的相关性,作为综合相关性,其中,若是第一编码结果与该搜索结果对应的第二编码结果之间的相似度越高,综合相关性越高。由于第一编码结果以及该搜索结果对应的第二编码结果都是在搜索结果以及搜索语句文本的基础上,进一步地将从用于表示用户特征的第一相关信息,以及用于表示该搜索结果对应的对象特征的第二相关信息中提取出的多个特征,融合到编码过程中得到,因此,通过这种方式确定出的搜索语句与该搜索结果之间相关性,能够有效地体现出搜索语句与该搜索结果在各个层面上的关联性,从而保证了确定出的搜索语句与该搜索结果之间相关性的准确性。
82.在本说明书实施例中,服务器可以通过排序模型中的整体相关子模型包含的子神经网络,这个子神经网络可以是卷积神经网络((convolutional neural networks,cnn))或者循环神经网络(rnn),确定出搜索语句对应的用户的用户特征的特征向量,以及该搜索结果归属的对象的对象特征的特征向量。服务器确定编码结果的方式可以有多种。例如,服务器可以将搜索语句对应的特征向量与搜索语句对应的用户的用户特征的特征向量进行相加求和,通过池化层作池化操作,得到第一编码结果。同样的,服务器可以将该搜索结果对应的特征向量与该搜索结果归属的对象的对象特征的特征向量进行相加求和,通过池化层作池化操作,得到该搜索结果对应的第二编码结果。
83.再例如,服务器可以将搜索语句对应的特征向量与搜索语句对应的用户的用户特征的特征向量进行拼接,通过全连接层统一特征向量的维度,得到第一编码结果。同样的,
服务器可以将该搜索结果对应的特征向量与该搜索结果归属的对象的对象特征的特征向量进行拼接,通过全连接层统一特征向量的维度,得到该搜索结果对应的第二编码结果。本说明书对确定整体特征信息的方式不做限定。
84.在本说明书实施例中,服务器确定综合相关性的方式可以有多种。例如,服务器可以通过余弦相似度(cosine similarity)运算方式对搜索语句对应的第一编码结果与该搜索结果对应的第二编码结果进行计算,得到搜索语句与该搜索结果之间的夹角余弦值,夹角余弦值越大,搜索语句与该搜索结果之间的综合相关性越大。
85.再例如,服务器可以通过哈达玛积(hadamard product)运算方式对搜索语句对应的第一编码结果与该搜索结果对应的第二编码结果进行计算,得到搜索语句与该搜索结果之间的哈达玛积,哈达玛积越大,搜索语句与该搜索结果之间的综合相关性越大。本说明书对确定综合相关性的方式不做限定。
86.通过上述方法,服务器可以通过提高搜索语句与搜索结果之间的综合相关性,使得展示给用户的搜索结果与用户输入的搜索语句的相关性较强,避免出现搜索结果与搜索语句不符的情况发生,使得确定出搜索语句对应的排序结果更加满足用户的实际需求。
87.在本说明书实施例中,排序模型中还包括特征关联子模型,服务器可以针对每个搜索结果,将搜索语句、该搜索结果、第一相关信息,以及该搜索结果对应的第二相关信息作为目标信息输入到特征关联子模型中,以在确定出目标信息中涉及的至少部分特征维度之间关联性的前提下,确定搜索语句与该搜索结果之间的辅助相关性,根据第一编码结果、各搜索结果对应的第二编码结果以及辅助相关性,得到针对各搜索结果的排序结果。如图2所示。
88.图2为本说明书实施例提供的排序模型的模型结构的示意图。
89.在图2中,服务器可以针对每个搜索结果,将搜索语句、该搜索结果、第一相关信息,以及该搜索结果对应的第二相关信息作为目标信息输入到排序模型中,通过整体相关子模型确定搜索语句与该搜索结果之间对应的综合相关性,通过特征关联子模型确定搜索语句与该搜索结果之间对应的辅助相关性。服务器再根据综合相关性以及辅助相关性,确定针对各搜索结果的排序结果。这里提到的确定各搜索结果的排序结果的方法有多种。例如,服务器可以将综合相关性以及辅助相关性直接相加进行求和,确定各搜索结果对应的求和结果,根据各搜索结果对应的求和结果,得到针对各搜索结果的排序结果。
90.再例如,服务器可以将综合相关性以及辅助相关性输入到预先设定的权重层,通过预先调整综合相关性以及辅助相关性对应的权重,来得到更为准确的各搜索结果的排序结果。本说明书对确定各搜索结果的排序结果的方法不做限定。
91.在本说明书实施例中,特征关联子模型包括:全量特征关联模型,服务器可以确定各特征维度组合,每个特征维度组合包含有目标信息中涉及的至少一个特征维度。这里提到的特征维度可以是搜索语句的用户的用户特征或搜索结果归属的对象的对象特征。针对每个特征维度组合,通过全量特征关联模型,确定该特征维度组合与每个其他特征维度组合之间的关联性,根据确定出的各特征维度组合之间的关联性,确定该搜索结果与搜索语句之间的辅助相关性。
92.服务器可以将搜索语句对应的各特征维度以及该搜索结果对应的各特征维度输入到全量特征关联模型中,确定搜索语句与该搜索结果之间的辅助相关性。其中,根据确定
出的各特征维度组合之间的关联性,确定搜索语句对应的特征维度组合与该搜索结果对应的特征维度组合之间关联性较高的特征维度关联组合,作为高阶特征组合,若是搜索语句对应的各特征维度以及该搜索结果对应的各特征维度之间,通过全量特征关联模型确定出的高阶特征组合越多,搜索语句与该搜索结果之间的辅助相关性越高。
93.这里提到的高阶特征组合可以是指通过全量特征关联模型在训练过程中确定出各特征维度组合之间关联性较高的特征组合。也就是说,高阶特征组合可以理解成用来体现全量特征关联模型通过从一段句子与一段句子之间的关联性所学习出的高阶的隐式特征关联能力,通过多个特征维度与多个特征维度之间的计算,来探索不同特征维度组合之间的关联性。
94.在实际应用中,服务器可以通过全量特征关联模型可以确定出搜索语句与搜索结果之间的高阶特征组合的数量,并以此来确定搜索语句与搜索结果之间的辅助相关性。
95.具体的,服务器确定搜索语句与搜索结果之间的高阶特征组合的方式可以有多种。例如,服务器可以将搜索语句与该搜索结果输入到全量特征关联模型中,确定各特征维度组合。其次,针对每个确定各特征维度组合,将该特征维度组合与每个其他特征维度组合进行相乘,确定各特征维度组合之间的关联性,以最小化搜索语句对应的排序结果,与基于标签信息确定出的搜索语句对应的最优排序结果之间的偏差为优化目标,对排序模型进行训练,以此得到准确的各特征维度组合之间的高阶特征组合。
96.再例如,服务器可以通过全量特征关联模型包含的深度神经网络(deep neural networks,dnn),确定各特征维度组合之间的关联性,得到准确的各特征维度组合之间的高阶特征组合。通过上述方法,服务器可以确定出各特征维度组合之间的关联性,使得排序模型的排序结果更加多样化。
97.需要说明的是,由于全量特征关联模型可以在训练过程中确定各特征维度组合之间的关联性,若一种特征维度对应的样本数量极小,可能会对全量特征关联模型的训练造成干扰,导致全量特征关联模型的训练效率降低。因此,服务器可以在选取特征维度组合之前,对训练样本进行预处理,将训练样本中该特征维度去除,以提高全量特征关联模型的训练效率。
98.在实际应用中,排序模型中的全量特征关联模型确定出各个特征维度组合之间的高阶特征组合可能是错误的,导致得到的搜索语句对应的排序结果的准确性较低。为了提高搜索语句对应的排序结果的准确性,服务器可以通过搜索语句对应的特征维度组合与该搜索结果对应的特征维度组合之间预先设定的设定关系,来提高搜索语句对应的排序结果的准确性。
99.在本说明书实施例中,特征关联子模型包括:设定特征关联模型,服务器可以从目标信息中确定出各设定特征维度的特征信息,各设定特征维度为目标信息中涉及的所有特征维度中的部分特征维度,将特征信息输入到设定特征关联模型中,以针对每个设定特征维度,确定出该设定特征维度与每个其他设定特征维度之间的关联性,根据确定出的各设定特征维度之间的关联性,确定该搜索结果与搜索语句之间的辅助相关性。这里提到的设定特征维度可以是根据人为经验确定出的具有设定关系的各特征维度,也就是说,通过人为设定的单个特征与单个特征之间的设定关系,以此保证搜索语句与搜索结果之间的关联性不会过低。
100.服务器可以将搜索语句对应的各设定特征维度以及该搜索结果对应的各设定特征维度输入到设定特征关联模型中,确定搜索语句与该搜索结果之间的辅助相关性。其中,根据预先确定出的各特征维度组合之间的设定关系,确定搜索语句对应的设定特征维度与该搜索结果对应的设定特征维度之间具有设定关系的设定特征维度,若是搜索语句对应的各特征维度以及该搜索结果对应的各特征维度之间,通过设定特征关联模型确定出的具有设定关系的设定特征维度越多,搜索语句与该搜索结果之间的辅助相关性越高。
101.通过上述方法,服务器可以将搜索语句与搜索结果之间根据经验确定出的重要的特征维度进行设定,在训练过程中以具有设定关系的设定特征维度为基础对排序模型进行训练,以加快排序模型的收敛速度,提高排序模型的训练效率。
102.需要说明的是,服务器可以通过全量特征关联模型确定出的各特征维度组合之间的关联性,以及通过设定特征关联模型确定出的各设定特征维度之间的关联性,共同确定出该搜索结果与搜索语句之间的辅助相关性。如图3所示。
103.图3为本说明书实施例提供的一种排序模型的模型结构的示意图。
104.在图3中可以看出,特征关联子模型可以包含有全量特征关联模型以及设定特征关联模型,由全量特征关联模型以及设定特征关联模型共同确定出特征关联子模型对应的辅助相关性,从上述方法中可以看出排序模型中以整体相关子模型输出的综合相关性为主体,辅助相关性用于进一步提高排序结果的准确性以及多样性。也就是说,搜索语句与搜索结果之间的综合相关性对排序模型得到的排序结果影响较强。
105.本说明书实施例中,特征关联子模型可以有多种形式,例如,基于因式分解机的预测神经网络(a factorization

machine based neural network for ctr prediction,deepfm)、深度记忆网络(wide&deep learning for recommender systems)、深度交叉网络(deep&cross network,dcn)等,本说明书不对特征关联子模型进行具体的限定。
106.在本说明书实施例中,服务器可以将搜索语句对应的特征维度以及搜索结果对应的特征维度,输入到特征关联子模型中,而特征关联子模型无法区分出特征维度是属于搜索语句或是搜索结果,因此,特征关联子模型确定出的各特征维度之间的关联性,会对搜索语句对应的各特征维度或搜索结果对应的各特征维度进行无效的计算,可能会导致特征关联子模型输出的辅助相关性并不准确,而整体相关子模型输出的综合相关性是搜索语句对应的整体编码后的第一编码结果,与该搜索结果对应的整体编码后的第二编码结果进行计算,避免了搜索语句自身所涉及的各特征维度之间进行相互的计算,以及搜索结果自身所涉及的各特征维度之间进行相互的计算,从而提高了排序模型训练的效率,进一步的提高了排序模型确定出的排序结果的合理性。
107.s104:根据所述第一编码结果以及各搜索结果对应的第二编码结果,得到针对所述各搜索结果的排序结果,并根据所述排序结果以及所述各搜索结果对应的标签信息,训练所述排序模型。
108.在本说明书实施例中,服务器可以根据第一编码结果以及各搜索结果对应的第二编码结果,得到针对各搜索结果的排序结果,并根据排序结果以及各搜索结果对应的标签信息,训练排序模型。针对每个搜索结果,搜索语句与该搜索结果之间对应的综合相关性越高,该搜索结果的排序越靠前,搜索语句与该搜索结果之间对应的辅助相关性越高,该搜索结果的排序越靠前。
109.在本说明书实施例中,服务器可以针对每个搜索结果,根据第一编码结果以及该搜索结果对应的第二编码结果,确定在将第一相关信息与搜索语句进行整体编码,以及将该搜索结果对应的第二相关信息与该搜索结果进行整体编码的情况下,该搜索结果与搜索语句之间的相关性,作为综合相关性。其次,根据综合相关性以及辅助相关性,确定针对该搜索结果的排序评分。最后,根据每个搜索结果对应的排序评分,确定排序结果。
110.在本说明书实施例中,服务器可以确定排序结果的排序结果评价分值,作为原始排序评价分值。这里提到的原始排序评价分值可以用于衡量搜索语句对应的排序结果整体的好坏程度。根据基于标签信息所确定出的已点击的搜索结果,对排序结果进行调整,得到调整后排序结果,并确定调整后排序结果对应的排序结果评价分值,作为最优排序评价分值。以最小化原始排序评价分值与最优排序评价分值之间的偏差为优化目标,训练排序模型。经过多轮的迭代训练,可以使偏差不断减小,并收敛在一个数值范围内,进而完成排序模型的训练。
111.具体的,排序结果评价分值可以是根据搜索结果所在的排序位置确定的,搜索结果所在的排序位置越靠前,搜索结果对应的评价分值越高,将搜索语句对应的各搜索结果对应的评价分值进行求和,得到排序结果对应的排序结果评价分值。
112.上述提到的最优排序结果可以是根据包含有各搜索结果的点击情况的标签信息,按照根据综合相关性以及辅助相关性,确定针对各搜索结果的排序分值,从高到低依次排序,再将标签信息中用户进行点击的搜索结果调整到排序结果中靠前的位置,以确定搜索语句对应的调整后排序结果。服务器再根据调整后排序结果,确定最优排序评价分值。当然,服务器也可以根据人为预先确定的排序结果,作为最优排序结果,确定最优排序评价分值。
113.从上述过程中可以看出,本方法可以根据设定特征关联模型可以通过人为经验确定出的特征之间的设定关系,确定搜索语句与搜索结果之间的关联性不会过低。通过全量特征关联模型可以通过训练的方式,学习出各特征维度组合(特征维度组合中包含有多个特征维度)之间的关联性,即,发现搜索语句与各搜索结果之间隐含的关联性,从而使得搜索语句对应的排序结果更为多样化。上述方法通过设定特征关联模型以及全量特征关联模型确定出的搜索语句与搜索结果之间具有一定程度的关联性以及更为多样化。但是,确定出的搜索语句与搜索结果之间的匹配程度可能并不是十分精确。因此,服务器可以通过整体相关子模型确定出的搜索语句与搜索结果之间的综合相关性,以进一步提高搜索语句与各搜索结果之间的相关性对排序结果的影响,尽可能避免与搜索语句之间相关性较低的搜索结果排序靠前的情况发生,使得搜索语句对应的排序结果更为合理,进一步的提高了用户的信息浏览体验。
114.本说明书实施例在排序模型的训练完成后,可以通过排序模型向用户进行信息展示,具体过程如图4所示。
115.图4为本说明书中一种信息展示的方法的流程示意图。
116.s400:接收用户输入的搜索语句。
117.s402:确定所述搜索语句对应的各搜索结果。
118.s404:将所述各搜索结果输入到预先训练的排序模型中,得到所述搜索语句对应的排序结果,所述排序模型是通过上述模型训练的方法训练得到的。
119.s406:根据所述排序结果,向所述用户进行信息展示。
120.在本说明书实施例中,服务器可以接收用户输入的搜索语句,确定搜索语句对应的各搜索结果。根据搜索语句,确定出第一相关信息、各搜索结果以及各搜索结果对应的第二相关信息。其次,服务器可以将搜索语句、第一相关信息、各搜索结果以及各搜索结果对应的第二相关信息输入到预先训练的排序模型中,得到搜索语句对应的排序结果,排序模型是通过上述模型训练的方法训练得到的。最后,服务器可以根据排序结果,向用户进行信息展示。
121.在本说明书实施例中,服务器可以将搜索语句与各搜索结果输入到排序模型中,确定搜索语句与各搜索结果对应的特征向量,再根据搜索语句与各搜索结果对应的特征向量,确定搜索语句对应的排序结果。其中,确定搜索语句对应的排序结果的方式,与上述模型训练过程中提到的方式基本相同,在此就不进行详细赘述了。
122.从上述内容可以看出,首先,服务器先通过排序模型来确定搜索语句与各搜索结果对应的综合相关性以及辅助相关性。而后,服务器再根据搜索语句与各搜索结果对应的综合相关性以及辅助相关性,确定搜索语句对应的排序结果。这样通过综合相关性能够保证排序结果中排序位置靠前的搜索结果与搜索语句之间的相关性较高,通过辅助相关性保证排序结果中搜索结果与搜索语句之间的相关性的准确性,以及保证排序结果的多样化,从而进一步地提高了用户的信息浏览体验。
123.以上为本说明书的一个或多个实施例提供的模型训练的方法以及信息展示的方法,基于同样的思路,本说明书还提供了相应的模型训练的装置以及信息展示的装置,如图5所示。
124.图5为本说明书提供的一种模型训练的装置示意图,包括:
125.获取模块500,用于获取训练样本,所述训练样本包含搜索语句、所述搜索语句对应的各搜索结果、第一相关信息,以及所述各搜索结果对应的第二相关信息,所述第一相关信息表征发送所述搜索语句的用户的用户特征,针对每个搜索结果,该搜索结果对应的第二相关信息表征该搜索结果归属的对象的对象特征;
126.编码模块502,用于通过待训练的排序模型,确定所述搜索语句在所述第一相关信息的补偿作用下的编码结果,作为第一编码结果,以及该搜索结果在该搜索结果对应的第二相关信息的补偿作用下的编码结果,作为该搜索结果对应的第二编码结果;
127.训练模块504,用于根据所述第一编码结果以及各搜索结果对应的第二编码结果,得到针对所述各搜索结果的排序结果,并根据所述排序结果以及所述各搜索结果对应的标签信息,训练所述排序模型。
128.可选地,所述编码模块502具体用于,所述排序模型中包含有整体相关子模型,整体相关子模型包含有特征层以及编码层,将所述搜索语句以及所述第一相关信息输入到所述特征层,以得到所述搜索语句对应的特征向量,以及所述第一相关信息对应的特征向量,并将所述搜索语句对应的特征向量以及所述第一相关信息对应的特征向量输入到所述编码层中进行编码,得到所述第一编码结果,将该搜索结果以及该搜索结果对应的第二相关信息输入到所述特征层,以得到该搜索结果对应的特征向量以及该搜索结果对应的第二相关信息的特征向量,并将该搜索结果对应的特征向量以及该搜索结果对应的第二相关信息的特征向量输入到所述编码层中进行编码,得到该搜索结果对应的第二编码结果。
129.可选地,所述编码模块502具体用于,排序模型还包括特征关联子模型,针对每个搜索结果,将所述搜索语句、该搜索结果、所述第一相关信息,以及该搜索结果对应的第二相关信息作为目标信息输入到所述特征关联子模型中,以在确定出所述目标信息中涉及的至少部分特征维度之间关联性的前提下,确定所述搜索语句与该搜索结果之间的辅助相关性,根据所述第一编码结果、各搜索结果对应的第二编码结果以及所述辅助相关性,得到针对所述各搜索结果的排序结果。
130.可选地,所述编码模块502具体用于,所述特征关联子模型包括:全量特征关联模型,确定各特征维度组合,每个特征维度组合包含有所述目标信息中涉及的至少一个特征维度,针对每个特征维度组合,通过所述全量特征关联模型,确定该特征维度组合与每个其他特征维度组合之间的关联性,根据确定出的各特征维度组合之间的关联性,确定该搜索结果与所述搜索语句之间的辅助相关性。
131.可选地,所述编码模块502具体用于,所述特征关联子模型包括:设定特征关联模型,从所述目标信息中确定出各设定特征维度的特征信息,所述各设定特征维度为所述目标信息中涉及的所有特征维度中的部分特征维度,将所述特征信息输入到所述设定特征关联模型中,以针对每个设定特征维度,确定出该设定特征维度与每个其他设定特征维度之间的关联性,根据确定出的各设定特征维度之间的关联性,确定该搜索结果与所述搜索语句之间的辅助相关性。
132.可选地,所述训练模块504具体用于,针对每个搜索结果,根据所述第一编码结果以及该搜索结果对应的第二编码结果,确定在将所述第一相关信息与所述搜索语句进行整体编码,以及将该搜索结果对应的第二相关信息与该搜索结果进行整体编码的情况下,该搜索结果与所述搜索语句之间的相关性,作为综合相关性,根据所述综合相关性以及所述辅助相关性,确定针对该搜索结果的排序评分,根据每个搜索结果对应的排序评分,确定所述排序结果。
133.可选地,所述训练模块504具体用于,确定所述排序结果的排序结果评价分值,作为原始排序评价分值,根据基于所述标签信息所确定出的已点击的搜索结果,对所述排序结果进行调整,得到调整后排序结果,并确定所述调整后排序结果对应的排序结果评价分值,作为最优排序评价分值,以最小化所述原始排序评价分值与所述最优排序评价分值之间的偏差为优化目标,训练所述排序模型。
134.图6为本说明书提供的一种信息展示的装置示意图,包括:
135.接收模块600,用于接收用户输入的搜索语句;
136.确定模块602,用于确定所述搜索语句对应的各搜索结果;
137.排序模块604,用于将所述各搜索结果输入到预先训练的排序模型中,得到所述搜索语句对应的排序结果,所述排序模型是通过上述模型训练的方法训练得到的;
138.展示模块606,用于根据所述排序结果,向所述用户进行信息展示。
139.本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的一种模型训练的方法以及信息展示的方法。
140.本说明书还提供了图7所示的一种对应于图1的电子设备的示意结构图。如图7所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程
序到内存中然后运行,以实现上述图1所述的模型训练的方法以及信息展示的方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
141.在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmable logic device,pld)(例如现场可编程门阵列(field programmable gate array,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardware description language,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advanced boolean expression language)、ahdl(altera hardware description language)、confluence、cupl(cornell university programming language)、hdcal、jhdl(java hardware description language)、lava、lola、myhdl、palasm、rhdl(ruby hardware description language)等,目前最普遍使用的是vhdl(very

high

speed integrated circuit hardware description language)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
142.控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc 625d、atmel at91sam、microchip pic18f26k20以及silicone labs c8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
143.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
144.为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
145.本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
146.本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
147.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
148.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
149.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
150.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
151.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
152.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要
素的过程、方法、商品或者设备中还存在另外的相同要素。
153.本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
154.本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
155.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
156.以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1