一种推荐方法、装置和设备与流程

未命名 08-12 阅读:116 评论:0


1.本技术涉及推荐技术领域,尤其涉及一种推荐方法、装置和设备。


背景技术:

2.近年来,随着互联网技术的飞速发展,推荐技术逐渐兴起,在推荐技术中,如何对用户的多样性兴趣偏好进行挖掘和刻画成为当前研究的重点。
3.目前的主流技术是通过低维嵌入向量表征用户的兴趣偏好,例如,采用双塔模型提取兴趣偏好矩阵,但是,现有的双塔模型的两个塔相互独立,特征交互能力较弱,无法有效的挖掘和刻画多样性兴趣偏好,推荐效果不佳,用户满意度较差。


技术实现要素:

4.有鉴于此,本技术提供一种推荐方法、装置和设备,以有效的刻画多样性兴趣,提高推荐效果,提高用户满意度。
5.具体地,本技术是通过如下技术方案实现的:
6.本技术第一方面提供一种推荐方法,所述方法包括:
7.获取目标用户的用户数据和待为所述目标用户推荐的目标兴趣物的推荐数据;
8.分别以所述目标用户和所述目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合;其中,所述各个交互物为基于该计算对象的用户数据或推荐数据中的历史交互数据获取到的交互物集合中的各个交互物;
9.确定所述计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的综合偏好程度;
10.针对每个子行为,基于所述计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到所述计算对象在该子行为中在各个兴趣维度下的特征向量,并将所述计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵;
11.基于所述目标用户对应的兴趣偏好矩阵和所述目标兴趣物对应的兴趣偏好矩阵,确定是否向所述目标用户推荐所述目标兴趣物。
12.本技术第二方面提供一种推荐装置,所述装置包括获取模块、处理模块、计算模块和判断模块;其中,
13.所述获取模块,用于获取目标用户的用户数据和待为所述目标用户推荐的目标兴趣物的推荐数据;
14.所述获取模块,还用于分别以所述目标用户和所述目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合;其中,所述各个交互物为基于该计算对象的用户数据或推荐数据中的历史交互数据获取到的交互物集合中的各个交互物;
15.所述处理模块,用于确定所述计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的综合偏好程度;
16.所述计算模块,用于针对每个子行为,基于所述计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到所述计算对象在该子行为中在各个兴趣维度下的特征向量,并将所述计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵;
17.所述判断模块,用于基于所述目标用户对应的兴趣偏好矩阵和所述目标兴趣物对应的兴趣偏好矩阵,确定是否向所述目标用户推荐所述目标兴趣物。
18.本技术第三方面提供一种推荐设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本技术第一方面提供的任一项所述方法的步骤。
19.本技术第四方面提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本技术第一方面提供的任一项所述方法的步骤。
20.本技术提供的推荐方法、装置和设备,通过获取目标用户的用户数据和待为目标用户推荐的目标兴趣物的推荐数据,其次分别以目标用户和目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合;其中,各个交互物为基于该计算对象的用户数据或推荐数据中的历史交互数据获取到的交互物集合中的各个交互物,进而确定计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的偏好程度,然后针对每个子行为,基于计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到计算对象在该子行为中在各个兴趣维度下的特征向量,并将计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵,最后基于目标用户对应的兴趣矩阵和目标兴趣物对应的兴趣偏好矩阵,确定是否向目标用户推荐目标兴趣物。这样,通过构建子行为,进而基于细粒度的子行为,从多个兴趣维度对兴趣偏好进行描述,使得对目标用户的刻画更加全面。此外,通过全局共享的兴趣矩阵,可将目标用户和目标兴趣物的高层表征映射到相同的兴趣空间,并在兴趣维度上进行对齐,这样,可提高特征交互能力,有效挖掘和刻画多样性兴趣偏好,提高推荐效果,进而提高用户满意度。
附图说明
21.图1为本技术一实施例示出的一种推荐方法的流程图;
22.图2为本技术一示例性实施例示出的一种计算综合偏好程度的实现原理图;
23.图3为本技术另一实施例示出的一种推荐方法的流程图;
24.图4为本技术另一实施例示出的一种推荐方法的流程图;
25.图5为本技术再一实施例示出的一种推荐方法的流程图;
26.图6为本技术一示例性实施例示出的一种双塔模型的结构示意图;
27.图7为本技术提供的推荐装置所在推荐设备的一种硬件结构图;
28.图8为本技术提供的推荐装置实施例一的结构示意图。
具体实施方式
29.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例
中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
30.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
31.应当理解,尽管在本技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
32.本技术提供一种推荐方法、装置和设备,以有效的刻画多样性兴趣,提高推荐效果,提高用户满意度。
33.本技术提供的推荐方法、装置和设备,通过获取目标用户的用户数据和待为用户推荐的目标兴趣物的推荐数据,其次分别以目标用户和目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合;其中,各个交互物为基于该计算对象的用户数据或推荐数据中的历史交互数据获取到的交互物集合中的各个交互物,进而确定计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的偏好程度,然后针对每个子行为,基于计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到计算对象在该子行为中在各个兴趣维度下的特征向量,并将计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵,最后基于目标用户对应的兴趣矩阵和目标兴趣物对应的兴趣偏好矩阵,确定是否向目标用户推荐目标兴趣物。这样,通过构建子行为,进而基于细粒度的子行为,从多个兴趣维度对兴趣偏好进行描述,使得对目标用户的刻画更加全面。此外,通过全局共享的兴趣矩阵,可将目标用户和目标兴趣物的高层表征映射到相同的兴趣空间,并在兴趣维度上进行对齐,这样,可提高特征交互能力,有效挖掘和刻画多样性兴趣偏好,提高推荐效果,进而提高用户满意度。
34.下面给出具体的实施例,用以详细介绍本技术的技术方案。
35.图1为本技术一实施例示出的一种推荐方法的流程图。请参照图1,本实施例提供的推荐方法,可以包括:
36.s101、获取目标用户的用户数据和待为所述目标用户推荐的目标兴趣物的推荐数据。
37.具体的,用户数据和推荐数据的具体数据类型是根据实际需要设定的,本实施例中,不对用户数据和推荐数据所包括的具体数据类型进行限定。例如,一实施例中,用户数据可以包括用户的静态属性信息和用户与交互物交互的历史交互数据;推荐数据可以包括目标兴趣物的静态属性信息和目标兴趣物和用户交互的历史交互数据。
38.需要说明的是,待为目标用户(为方便区分,将目标用户记为用户1)推荐的目标兴趣物可以为商品、文章、音乐、社交对象等。本实施例中,不对待为目标用户推荐的目标兴趣物进行限定。下面以待为目标用户推荐的目标兴趣物为商品为例进行说明,此时,用户数据
包括用户的静态属性信息以及该目标用户与商品交互的历史交互数据(其中,目标用户与商品交互的历史交互数据包括但不限于该目标用户购买商品1的行为、该目标用户收藏商品2的行为、该目标用户对商品3的评价行为等交互行为产生的交互数据)。进一步地,此时,目标兴趣物的推荐数据包括目标兴趣物(例如,目标兴趣物为商品5)的静态属性数据和该目标兴趣物和用户交互的交互数据(交互数据包含但不限于该兴趣物被用户2购买的行为,该兴趣物被用户3收藏的行为,该兴趣物被用户4评价的行为等交互行为产生的交互数据)。
39.进一步地,可以通过不同方式获取用户数据和推荐数据。本实施例中,不对此进行限定。
40.s102、分别以所述目标用户和所述目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合;其中,所述各个交互物为基于该计算对象的用户数据或推荐数据中的历史交互数据获取到的交互物集合中的各个交互物。
41.参见前面的描述,历史交互数据为计算对象与交互物发生交互行为所产生的数据。计算对象为目标用户时,该历史交互数据为目标用户与交互物(例如,商品)发生交互行为(例如,购买、收藏、评价等行为)所产生的数据。计算对象为目标兴趣物(例如,目标兴趣物为商品)时,此时,历史交互数据为该目标兴趣物物(商品)与交互物(用户)发生交互行为(例如,被购买、被收藏、被评价等行为)所产生的数据。
42.需要说明的时,一条历史交互数据涉及计算对象与至少一个交互物发生交互行为所产生的数据。
43.本步骤中,针对目标用户,基于该目标用户的用户数据中的历史交互数据,先获取到与该目标用户交互的所有交互物组成的交互物集合1,进而针对该交互物集合1中的每个交互物,获取该目标用户与该交互物发生交互行为的子行为,最终得到目标用户对应的子行为集合1。
44.针对目标兴趣物,基于该目标兴趣物的推荐数据中的历史交互数据,先获取到与该目标兴趣物交互的所有交互物组成的交互物集合2,进而针对该交互物集合2中的每个交互物,获取该目标兴趣物与该交互物发生交互行为的子行为,最终得到目标兴趣物对应的子行为集合2。
45.例如,一实施例中,待为目标用户(为方便区分,记为用户1)推荐的目标兴趣物可以为社交对象1,此时,获取到的目标用户的用户数据中的历史交互数据包括:用户1对用户2和用户5进行点赞,用户1将用户3加为好友,用户1将用户4加入黑名单;相应地,此时,构建好的目标用户的子行为集合1包含四个子行为,这四个子行为分别为:用户1对用户2进行点赞的子行为11,用户1对用户5进行点赞的子行为12,用户1将用户3加为好友的子行为13,用户1将用户4加入黑名单的子行为14(需要说明的是,11、12、13、14为子行为集合1中各个子行为的标识信息)。
46.再例如,本例中,获取到的社交对象1的推荐数据中的历史交互数据包括:社交对象1将用户6设置为喜欢用户,社交对象1将用户7加为好友,社交对象对用户9进行点赞,此时,构建好的社交对象1的子行为集合2包括三个子行为,这三个子行为分别为:社交对象1将用户6设置为喜欢用户的子行为21,社交对象1将用户7加为好友的子行为22,社交对象对用户9进行点赞的子行为23(需要说明的是,21、22、23为子行为集合2中各个子行为的标识信息)。
47.需要说明的是,可选的,一实施例中,每个子行为可以用一个1*d的向量表征,针对某个计算对象,当该计算对象对应的子行为集合涉及n个子行为时,该子行为集合可用一个n*d的矩阵表征。
48.进一步地,下面将给出具体的例子,用以详细介绍本步骤的具体实现过程,此处不再赘述。
49.s103、确定所述计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的综合偏好程度。
50.具体的,兴趣矩阵包含多个兴趣维度,例如,目标兴趣物为商品时,该兴趣矩阵包含的兴趣维度可以为价格、质量、评分、外观和品牌等。需要说明的是,兴趣矩阵是根据实际需要设定的,本实施例中,不对兴趣矩阵的具体内容进行限定。在具体设置兴趣矩阵时,尽量使得设置好的兴趣矩阵能够覆盖完整的兴趣空间。
51.例如,一实施例中,兴趣矩阵用一个m*1的矩阵表征,该矩阵的每一行表征一个兴趣维度,该兴趣矩阵共包含m个兴趣维度,每个兴趣维度可以用一个1*d的向量表征。
52.具体实现时,该步骤的实现过程,可以包括:
53.(1)针对所述每个子行为,将所述子行为映射到所述兴趣矩阵对应的兴趣空间中,得到所述计算对象在该子行为中在所述兴趣空间中的偏好向量;其中,所述偏好向量中的每个元素表征所述计算对象在该子行为中对所述兴趣矩阵中的每个兴趣维度的偏好度。
54.例如,结合上面的例子,计算对象为目标用户时,此时,该目标用户包括4个子行为,本步骤中,针对子行为11,将其映射到所述兴趣矩阵对应的兴趣空间中,得到所述计算对象在该子行为11中在所述兴趣空间中的偏好向量。图2为本技术一示例性实施例示出的一种计算综合偏好程度的实现原理图。请参照图2,具体映射时,首先将该子行为11映射到兴趣矩阵中的兴趣维度0,得到计算对象在该子行为中11对所述兴趣矩阵中的兴趣维度0的偏好度。进一步地,针对兴趣矩阵中的每个兴趣维度,重复上述过程,得到计算对象在该子行为11中在该兴趣矩阵对应的兴趣空间中的偏好向量。进一步地,针对其他子行为,重复上述过程,得到计算对象在该各个子行为中在所述兴趣空间中的偏好向量。
55.需要说明的是,结合图2以及上面的例子,每个子行为可用一个1*d的向量表征,当该计算对象对应的子行为集合涉及n个子行为时,该子行为集合可用一个n*d的矩阵表征,兴趣矩阵可用一个m*1的矩阵表征,相应的,具体映射时,计算子行为集合对应的矩阵与兴趣矩阵的相关性矩阵,该相关性矩阵的每一列即为该计算对象在一个子行为中在所述兴趣空间中的偏好向量。结合上面的例子,相关性矩阵为一个m*n的矩阵(矩阵中的每个元素用一个1*d的向量表征)。
56.进一步的,结合图2,具体实现时,该步骤的实现过程,可用如下公式表征:
[0057][0058]
其中,ri为计算对象在第i个子行为中在兴趣空间中的偏好向量,q为兴趣矩阵,ki为子行为i对应的向量。可以理解的是,当兴趣矩阵包括m个维度时,该ri包含m个数值,为下文方便说明,将这m个数值记为ri1、
……
rim。其中,rij表征计算对象在第i个子行为中对兴趣矩阵中的第j个兴趣维度的偏好度。
[0059]
(2)针对每个兴趣维度,将所述计算对象在各个子行为中对该兴趣维度的偏好度进行聚合,得到所述计算对象对该兴趣维度的综合偏好程度。
[0060]
结合上面的例子,针对n个子行为,该计算对象在所有子行为中在所述兴趣空间中的偏好向量组成的矩阵为一个m*n的矩阵,该矩阵的每一行表征计算对象在各个子行为中对某一兴趣维度的偏好度,本步骤中,就将该矩阵的每一行进行聚合,得到计算对象对各个兴趣维度的综合偏好程度。结合上面的例子,计算对象对所有兴趣维度的综合偏好程度组成的矩阵为一个m*1的矩阵表示,该矩阵的每一行用一个1*d的向量表征,换言之,计算对象对所有兴趣维度的综合偏好程度组成的矩阵为一个m*d的矩阵。
[0061]
具体实现时,针对每个兴趣维度,聚合的过程可以有下述公式表征:
[0062]
aj=softmax(r1j、r2j
……
、rnj)
[0063]
其中,aj表示计算对象对第j个兴趣维度的综合偏好程度,rnj为计算对象在第n个子行为中对兴趣矩阵中第j个兴趣维度的偏好度。
[0064]
s104、针对每个子行为,基于所述计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到所述计算对象在该子行为中在各个兴趣维度下的特征向量,并将所述计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵。
[0065]
参见前面的描述,计算对象对所有兴趣维度的综合偏好程度构成的矩阵表示为a,a=[a1、a2,
……
,am],结合图2,该步骤的具体实现过程,可以表示为:
[0066]vmat
=a*k
[0067]
其中,v
mat
为计算对象对应的兴趣偏好矩阵,a为计算对象对所有兴趣维度的综合偏好程度构成的矩阵,k为计算对象的子行为集合对应的矩阵。
[0068]
s105、基于所述目标用户对应的兴趣偏好矩阵和所述目标兴趣物对应的兴趣偏好矩阵,确定是否向所述目标用户推荐所述目标兴趣物。
[0069]
结合上面的例子,以用户1为目标用户,以目标兴趣物为商品5时,在获取到用户1和商品5对应的兴趣偏好矩阵后,基于该这两个兴趣矩阵确定是否向目标用户推荐该目标兴趣物。具体的,有关该步骤的具体实现过程和实现原理可以参见相关技术中的描述,此处不再赘述。例如,一实施例中,可计算这两个兴趣偏好矩阵的相似度值,进而在相似度值大于预设阈值时,确定向所述目标用户推荐所述目标兴趣物。
[0070]
本实施例提供的推荐方法,通过获取用户的用户数据和待为用户推荐的目标兴趣物的推荐数据,其次分别以用户和目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合;其中,各个交互物为基于该计算对象的用户数据或推荐数据中的历史交互数据获取到的交互物集合中的各个交互物,进而确定计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的偏好程度,然后针对每个子行为,基于计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到计算对象在该子行为中在各个兴趣维度下的特征向量,并将计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣矩阵,最后基于用户对应的兴趣矩阵和目标兴趣物对应的兴趣矩阵,确定是否向用户推荐目标兴趣物。这样,通过对用户复杂兴趣偏好进行有效建模,有效的解决深度匹配模型固有的特征筛选问题,可以更正有针对性的进行推荐。
[0071]
图3为本技术另一实施例示出的一种推荐方法的流程图。请参照图3,在上述实施例的基础上,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合的
过程,可以包括:
[0072]
s301、对所述计算对象的用户数据或推荐数据中的属性信息和历史交互数据分别进行特征提取,得到所述计算对象的对象嵌入向量和与该计算对象交互的各个交互物的物体嵌入向量。
[0073]
需要说明的是,可以基于传统的特征提取方法进行特征提取,也可以是基于神经网络的特征提取方法进行特征提取。例如,采用传统的特征提取方法进行特征提取时,该方法可以是基于行为特征提取方法、基于统计学的特征提取方法等。再例如,采用基于神经网络的特征提取方法时,该方法可以是基于预先训练好的特征提取网络进行特征提取。进一步的,当基于预先训练好的特征提取网络进行特征提取时,可将计算对象的用户数据或推荐数据中的属性信息和历史交互数据分别输入到预先训练好的特征提取网络中,以通过所述特征提取网络对输入的数据进行特征提取,得到计算对象的对象嵌入向量和与该计算对象交互的各个交互物的物体嵌入向量。
[0074]
s302、针对每个交互物,基于所述对象嵌入向量和该交互物的物体嵌入向量构建一个子行为。
[0075]
具体实现时,针对每个交互物,将计算对象与该交互物发生的交互行为用该计算对象的对象嵌入向量和该交互物的物体嵌入向量组成的向量表征。
[0076]
结合上面的例子,例如,针对子行为11(用户1对用户2进行点赞的行为),可以用用户1的对象嵌入向量与用户2的物体嵌入向量组成的向量表征该子行为11。
[0077]
本实施例提供的方法,给出了一种构建子行为的方法,通过对计算对象的用户数据或推荐数据中的属性信息和历史交互数据分别进行特征提取,得到计算对象的对象嵌入向量和与该计算对象交互的各个交互物的物体嵌入向量,进而针对每个交互物,基于对象嵌入向量和该交互物的物体嵌入向量构建一个子行为,通过这种子行为的构建方法,可以构建出子行为,便于后续的计算与推荐。
[0078]
图4为本技术另一实施例示出的一种推荐方法的流程图。请参照图4,本实施例提供的方法,在上述实施例的基础上,所述将所述计算对象在各个子行为中对该兴趣维度的偏好度进行聚合,得到所述计算对象对该兴趣维度的综合偏好程度,可以包括:
[0079]
s401、针对每个兴趣维度,从所述计算对象在各个子行为中对该兴趣维度的偏好度中,选择指定数目个偏好度。
[0080]
具体的,指定数目是根据实际需要设定的,本实施例中,不对指定数据进行限定。当本案通过模型实现时,模型训练好后,该指定数目便确定。
[0081]
具体实现时,针对每个兴趣维度,可将偏好度按照从高到底的顺序,从计算对象在各个子行为中对该兴趣维度的偏好度中,选择指定数目个偏好度。
[0082]
s402、将选择好的偏好度进行聚合。
[0083]
有关该步骤的具体实现过程和实现原理可以参见前面实施例中的描述,此处不再赘述。
[0084]
本实施例提供的方法,在确定计算对象对该兴趣维度的综合偏好程度,针对每个兴趣维度,通过从所述计算对象在各个子行为中对该兴趣维度的偏好度中,选择指定数目个偏好度,进而将选择好的偏好度进行聚合,得到计算对象对该兴趣维度的综合偏好程度,这样,可保证子行为仅在最显著的指定数目个兴趣上被激活,排除可不显著兴趣的影响,保
证后续兴趣聚合的稀疏性,实现目标用户和目标推荐物体匹配过程中特征选择和相关信息有效交互,使得兴趣偏好矩阵能够有效的挖掘和刻画多样性兴趣偏好。
[0085]
图5为本技术再一实施例示出的一种推荐方法的流程图。请参照图5,本实施例提供的方法,可以包括:
[0086]
s501、获取目标用户的用户数据和待为所述目标用户推荐的目标兴趣物的推荐数据。
[0087]
有关该步骤的具体实现过程和实现原理可以参见前面实施例中的描述,此处不再赘述。
[0088]
s502、分别以所述目标用户和所述目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合;其中,所述各个交互物为基于该计算对象的用户数据或推荐数据中的历史交互数据获取到的交互物集合中的各个交互物。
[0089]
s503、针对所述每个子行为,将所述子行为映射到所述兴趣矩阵对应的兴趣空间中,得到所述计算对象在该子行为中在所述兴趣空间中的偏好向量;其中,所述偏好向量中的每个元素表征所述计算对象在该子行为中对所述兴趣矩阵中的每个兴趣维度的偏好度。
[0090]
s504、针对每个兴趣维度,从所述计算对象在各个子行为中对该兴趣维度的偏好度中,选择指定数目个偏好度,并将选择好的偏好度进行聚合,得到所述计算对象对该兴趣维度的综合偏好程度。
[0091]
s505、针对每个子行为,基于所述计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到所述计算对象在该子行为中在各个兴趣维度下的特征向量,并将所述计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣矩阵。
[0092]
具体的,一可能的实现方式中,获取所述计算对象的兴趣偏好矩阵的过程基于预先训练好的双塔模型中的双塔获取得到。例如,图6为本技术一示例性实施例示出的一种双塔模型的结构示意图。参照图6,该双塔模型包括第一塔和第二塔,第一个塔用于基于输入的所述用户数据获取所述用户对应的兴趣偏好矩阵,所述双塔模型中的第二个塔用于基于输入的所述推荐数据获取所述目标兴趣物对应的兴趣偏好矩阵。
[0093]
进一步地,参照图6,所述双塔模型还设置有兴趣矩阵层,所述兴趣矩阵层中预先配置有所述兴趣矩阵,所述兴趣矩阵层分别与所述第一塔和所述第二塔连接,用于向所述第一塔和所述第二塔提供所述兴趣矩阵。
[0094]
需要说明的是,参照图6,具体实现时,在步骤s502中,将目标用户的用户数据输入到双塔模型中的第一塔,将目标兴趣物的推荐数据输入到双塔模型中的第二塔,进而由双塔模型的第一塔输出目标用户的兴趣偏好矩阵,由双塔模型的第二塔输出目标兴趣物的兴趣偏好矩阵。
[0095]
具体的,请继续参照图6,双塔模型的第一塔和第二塔包括特征提取层和子行为构建层,步骤s502中,将用户数据输入到第一塔、将推荐数据输入到第二塔后,特征提取层可对输入的用户数据或推荐数据中的属性信息和历史交互数据分别进行特征提取,得到计算对象(目标用户或目标推荐物)的对象嵌入向量和与该计算对象交互的各个交互物的物体嵌入向量。
[0096]
进一步地,子行为构建层针对每个交互物,基于所述对象嵌入向量和该交互物的
物体嵌入向量构建一个子行为。
[0097]
请继续参照图6,该所述第一塔和所述第二塔还包括多兴趣注意力机制层,所述多兴趣注意力机制层分别与所述兴趣矩阵层和所述子行为构建层连接;其中,
[0098]
所述多兴趣注意力机制层,具体用于确定所述计算对象对所述兴趣矩阵中的各个兴趣维度的偏好程度,并针对每个子行为,基于所述计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到所述计算对象在该子行为中在各个兴趣维度下的特征向量,并将各个子行为在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵。
[0099]
具体实现时,参照图6,多兴趣注意力机制层,具体用于针对所述每个子行为,将所述子行为映射到所述兴趣矩阵对应的兴趣空间中,得到所述计算对象在该子行为中在所述兴趣空间中的偏好向量;其中,所述偏好向量中的每个元素表征所述计算对象在该子行为中对所述兴趣矩阵中的每个兴趣维度的偏好度;
[0100]
多兴趣注意力机制层,还具体用于针对每个兴趣维度,将所述计算对象在各个子行为中对该兴趣维度的偏好度进行聚合,得到所述计算对象对该兴趣维度的综合偏好程度。
[0101]
具体实现时,多兴趣注意力机制层,主要用于执行步骤s503至s505的步骤。有关步骤s503至s505的具体实现过程和实现原理可以参见前面的描述,此处不再赘述。
[0102]
需要说明的是,参见图6,在得到兴趣偏好矩阵后,可将兴趣偏好矩阵向量化,进而基于向量化后的兴趣偏好矩阵决定是否推荐。
[0103]
s506、基于所述目标用户对应的兴趣偏好矩阵和所述目标兴趣物对应的兴趣偏好矩阵,确定是否向所述目标用户推荐所述目标兴趣物。
[0104]
具体的,请继续参照图6,该双塔模型还包括匹配计算层。匹配计算层与双塔中的多兴趣注意力机制层连接,匹配计算层具体用于,获取第一塔和第二塔输出的兴趣偏好矩阵,将两个兴趣偏好矩阵进行相似度计算,得到相似度值,进而基于相似度值来确定是否进行推荐。
[0105]
需要说明的是,在训练该双塔模型时,需要对指定数目k进行训练。该指定数目k的选择方式在训练模型时尤为重要,当将指定数目k设定为较小的特定值时,模型的训练难度大大提升,模型几乎无法收敛。因此,具体训练时,可以采用指导学习的训练方式进行训练,模拟由易到难的学习过程,指定数目k初始设定为一个较大的值,简化训练任务,快速使模型达到一定的可靠性,进而随着训练的推进,逐渐缩小指定数目k的值,逐步提升模型的训练难度,直到模型达到相对稳定的收敛状态。通过这种模型训练的方式,既保证了模型的快速收敛,又保证了模型的可靠性
[0106]
本实施例提供的方法,至少具有以下优点:
[0107]
(1)通过全局共享的兴趣矩阵,可将目标用户和目标兴趣物的高层表征映射到相同的兴趣空间,并在兴趣维度上进行对齐,这样,可提高特征交互能力,有效挖掘和刻画多样性兴趣偏好,提高推荐效果,进而提高用户满意度。
[0108]
(2)子行为仅在最显著的指定数目个兴趣上被激活,排除不显著兴趣的影响,保证后续兴趣聚合的稀疏性,实现目标用户和目标推荐物匹配过程中特征选择和相关信息有效交互,使得兴趣偏好矩阵能够有效的挖掘和刻画多样性兴趣偏好。
[0109]
(3)在模型学习的过程中,只有两侧同时被激活的兴趣维度所对应的子行为集合才会参与最终的匹配计算和模型参数更新。即针对同一用户的高层偏好表征,面对不同的目标兴趣物参与模型训练时,用户子行为集合中将会有不同的子行为参与本次模型训练过程,这样,可有效的进行特征筛选。
[0110]
与前述一种推荐方法的实施例相对应,本技术还提供了一种推荐装置的实施例。
[0111]
本技术一种推荐装置的实施例可以应用在推荐上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在推荐设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图7所示,为本技术推荐装置所在推荐设备的一种硬件结构图,除了图7所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的推荐设备通常根据该推荐装置的实际功能,还可以包括其他硬件,对此不再赘述。
[0112]
图8为本技术提供的推荐装置实施例一的结构示意图。请参考图8,本实施例提供的装置,可以包括获取模块810、处理模块820、计算模块830和判断模块840;其中,
[0113]
所述获取模块810,用于获取目标用户的用户数据和待为所述目标用户推荐的目标兴趣物的推荐数据。
[0114]
所述获取模块810,还用于分别以所述目标用户和所述目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合;其中,所述各个交互物为基于该计算对象的用户数据或推荐数据中的历史交互数据获取到的交互物集合中的各个交互物。
[0115]
所述处理模块820,用于确定所述计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的综合偏好程度。
[0116]
所述计算模块830,用于针对每个子行为,基于所述计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到所述计算对象在该子行为中在各个兴趣维度下的特征向量,并将所述计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵。
[0117]
所述判断模块840,用于基于所述目标用户对应的兴趣偏好矩阵和所述目标兴趣物对应的兴趣偏好矩阵,确定是否向所述目标用户推荐所述目标兴趣物。
[0118]
本实施例的装置,可用于执行图1所示方法实施例的步骤,具体实现原理和实现过程可以参考前面实施例中的描述,此处不再赘述。
[0119]
可选的,所述处理模块820,具体用于针对所述每个子行为,将所述子行为映射到所述兴趣矩阵对应的兴趣空间中,得到所述计算对象在该子行为中在所述兴趣空间中的偏好向量;其中,所述偏好向量中的每个元素表征所述计算对象在该子行为中对所述兴趣矩阵中的每个兴趣维度的偏好度;
[0120]
所述处理模块820,具体还用于针对每个兴趣维度,将所述计算对象在各个子行为中对该兴趣维度的偏好度进行聚合,得到所述计算对象对该兴趣维度的综合偏好程度。
[0121]
进一步的,所述处理模块820,具体用于针对每个兴趣维度,从所述计算对象在各个子行为中对该兴趣维度的偏好度中,选择指定数目个偏好度,并将选择好的偏好度进行聚合。
[0122]
可选的,所述获取模块810,具体用于对所述计算对象的用户数据或推荐数据中的属性信息和历史交互数据分别进行特征提取,得到所述计算对象的对象嵌入向量和与该计算对象交互的各个交互物的物体嵌入向量,并针对每个交互物,基于所述对象嵌入向量和该交互物的物体嵌入向量构建一个子行为。
[0123]
可选的,获取所述计算对象的兴趣偏好矩阵的过程基于预先训练好的双塔模型中的双塔获取得到;其中,所述双塔模型的第一个塔用于基于输入的所述用户数据获取所述目标用户对应的兴趣偏好矩阵,所述双塔模型中的第二塔用于基于输入的所述推荐数据获取所述目标兴趣物对应的兴趣偏好矩阵;
[0124]
所述双塔模型还设置有兴趣矩阵层,所述兴趣矩阵层中预先配置有所述兴趣矩阵,所述兴趣矩阵层分别与所述第一塔和所述第二塔连接,用于向所述第一塔和所述第二塔提供所述兴趣矩阵。
[0125]
可选的,所述第一塔和所述第二塔还包括特征提取层和子行为构建层,其中,
[0126]
所述特征提取层,用于对所述计算对象的用户数据或推荐数据中的属性信息和历史交互数据分别进行特征提取,得到所述计算对象的对象嵌入向量和与该计算对象交互的各个交互物的物体嵌入向量;
[0127]
所述子行为构建层,用于针对每个交互物,基于所述对象嵌入向量和该交互物的物体嵌入向量构建一个子行为。
[0128]
可选的,所述第一塔和所述第二塔还包括多兴趣注意力机制层,所述多兴趣注意力机制层分别与所述兴趣矩阵层和所述子行为构建层连接;其中,
[0129]
所述多兴趣注意力机制层,具体用于确定所述计算对象对所述兴趣矩阵中的各个兴趣维度的综合偏好程度,并针对每个子行为,基于所述计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到所述计算对象在该子行为中在各个兴趣维度下的特征向量,并将各个子行为在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵。
[0130]
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0131]
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本技术方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0132]
以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术保护的范围之内。

技术特征:
1.一种推荐方法,其特征在于,所述方法包括:获取目标用户的用户数据和待为所述目标用户推荐的目标兴趣物的推荐数据;分别以所述目标用户和所述目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合;其中,所述各个交互物为基于该计算对象的用户数据或推荐数据中的历史交互数据获取到的交互物集合中的各个交互物;确定所述计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的综合偏好程度;针对每个子行为,基于所述计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到所述计算对象在该子行为中在各个兴趣维度下的特征向量,并将所述计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵;基于所述目标用户对应的兴趣偏好矩阵和所述目标兴趣物对应的兴趣偏好矩阵,确定是否向所述目标用户推荐所述目标兴趣物。2.根据权利要求1所述的方法,其特征在于,所述确定所述计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的综合偏好程度,包括:针对所述每个子行为,将所述子行为映射到所述兴趣矩阵对应的兴趣空间中,得到所述计算对象在该子行为中在所述兴趣空间中的偏好向量;其中,所述偏好向量中的每个元素表征所述计算对象在该子行为中对所述兴趣矩阵中的每个兴趣维度的偏好度;针对每个兴趣维度,将所述计算对象在各个子行为中对该兴趣维度的偏好度进行聚合,得到所述计算对象对该兴趣维度的综合偏好程度。3.根据权利要求2所述的方法,其特征在于,所述将所述计算对象在各个子行为中对该兴趣维度的偏好度进行聚合,得到所述计算对象对该兴趣维度的综合偏好程度,包括:针对每个兴趣维度,从所述计算对象在各个子行为中对该兴趣维度的偏好度中,选择指定数目个偏好度;将选择好的偏好度进行聚合。4.根据权利要求1所述的方法,其特征在于,所述获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合,包括:对所述计算对象的用户数据或推荐数据中的属性信息和历史交互数据分别进行特征提取,得到所述计算对象的对象嵌入向量和与该计算对象交互的各个交互物的物体嵌入向量;针对每个交互物,基于所述对象嵌入向量和该交互物的物体嵌入向量构建一个子行为。5.根据权利要求4所述的方法,其特征在于,获取所述计算对象的兴趣偏好矩阵的过程基于预先训练好的双塔模型中的双塔获取得到;其中,所述双塔模型的第一个塔用于基于输入的所述用户数据获取所述目标用户对应的兴趣偏好矩阵,所述双塔模型中的第二塔用于基于输入的所述推荐数据获取所述目标兴趣物对应的兴趣偏好矩阵;所述双塔模型还设置有兴趣矩阵层,所述兴趣矩阵层中预先配置有所述兴趣矩阵,所述兴趣矩阵层分别与所述第一塔和所述第二塔连接,用于向所述第一塔和所述第二塔提供所述兴趣矩阵。6.根据权利要求5所述的方法,所述第一塔和所述第二塔还包括特征提取层和子行为
构建层,其中,所述特征提取层,用于对所述计算对象的用户数据或推荐数据中的属性信息和历史交互数据分别进行特征提取,得到所述计算对象的对象嵌入向量和与该计算对象交互的各个交互物的物体嵌入向量;所述子行为构建层,用于针对每个交互物,基于所述对象嵌入向量和该交互物的物体嵌入向量构建一个子行为。7.根据权利要求6所述的方法,其特征在于,所述第一塔和所述第二塔还包括多兴趣注意力机制层,所述多兴趣注意力机制层分别与所述兴趣矩阵层和所述子行为构建层连接;其中,所述多兴趣注意力机制层,具体用于确定所述计算对象对所述兴趣矩阵中的各个兴趣维度的综合偏好程度,并针对每个子行为,基于所述计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到所述计算对象在该子行为中在各个兴趣维度下的特征向量,并将各个子行为在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵。8.一种推荐装置,其特征在于,所述装置包括获取模块、处理模块、计算模块和判断模块;其中,所述获取模块,用于获取目标用户的用户数据和待为所述目标用户推荐的目标兴趣物的推荐数据;所述获取模块,还用于分别以所述目标用户和所述目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合;其中,所述各个交互物为基于该计算对象的用户数据或推荐数据中的历史交互数据获取到的交互物集合中的各个交互物;所述处理模块,用于确定所述计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的综合偏好程度;所述计算模块,用于针对每个子行为,基于所述计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到所述计算对象在该子行为中在各个兴趣维度下的特征向量,并将所述计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵;所述判断模块,用于基于所述目标用户对应的兴趣偏好矩阵和所述目标兴趣物对应的兴趣偏好矩阵,确定是否向所述目标用户推荐所述目标兴趣物。9.一种推荐设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-7任一项所述方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1-7任一项所述方法的步骤。

技术总结
本申请提供的推荐方法,包括:获取目标用户的用户数据和待为目标用户推荐的目标兴趣物的推荐数据,分别以目标用户和目标兴趣物为计算对象,获取用于表征该计算对象与各个交互物发生的所有交互行为的子行为集合,确定计算对象对预先设置好的兴趣矩阵中的各个兴趣维度的综合偏好程度,针对每个子行为,基于计算对象对各个兴趣维度的综合偏好程度对该子行为进行特征提取,得到计算对象在该子行为中在各个兴趣维度下的特征向量,并将计算对象在各个子行为中在各个兴趣维度下的特征向量构成的矩阵确定为该计算对象对应的兴趣偏好矩阵,基于目标用户对应的兴趣偏好矩阵和目标兴趣物对应的兴趣偏好矩阵,确定是否向目标用户推荐目标兴趣物。荐目标兴趣物。


技术研发人员:钟成 吴保鑫 高君
受保护的技术使用者:北京陌陌信息技术有限公司
技术研发日:2023.06.25
技术公布日:2023/8/9
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐