基于社交网络的推荐模型训练方法及装置

文档序号:32344112发布日期:2022-11-26 10:45阅读:28来源:国知局
基于社交网络的推荐模型训练方法及装置

1.本技术涉及计算机技术领域,特别涉及一种基于社交网络的推荐模型训练方法。本技术同时涉及一种基于社交网络的推荐模型训练装置,一种计算设备,以及一种计算机可读存储介质。


背景技术:

2.在信息过载的背景下,推荐系统被广泛应用,为用户匹配其感兴趣的内容,例如商品、视频、音乐等等,推荐系统,作为一种解决信息过载问题的重要手段,被广泛应用于电商平台、社交媒体平台,为用户推荐其他感兴趣的商品或其他用户。
3.但是目前的推荐系统,极度依赖用户的交互数据和用户的隐私数据,随着用户隐私意识的提高,推荐系统无法收集和使用用户的隐私数据,仅使用用户交互数据进行推荐,损失了用户的使用体验,因此,亟需一种不侵犯用户隐私数据的推荐系统。


技术实现要素:

4.有鉴于此,本技术实施例提供了一种基于社交网络的推荐模型训练方法。本技术同时涉及一种基于社交网络的推荐模型训练装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术问题。
5.根据本技术实施例的第一方面,提供了一种基于社交网络的推荐模型训练方法,包括:
6.确定目标用户和所述目标用户的参考用户集群;
7.获取所述目标用户的本地对象信息和所述参考用户集群的公开对象信息,其中,所述公开对象信息为参考用户公开的对象信息;
8.基于所述本地对象信息和所述公开对象信息构建对象超图,并基于所述对象超图确定所述目标用户的用户偏好信息;
9.根据所述用户偏好信息训练本地推荐模型,获得本地训练梯度,其中,所述本地训练梯度为经过加密编码后的模型梯度;
10.将所述本地训练梯度上传至服务器,以使所述服务器根据所述本地训练梯度更新目标推荐模型。
11.根据本技术实施例的第二方面,提供了一种基于社交网络的推荐模型训练装置,包括:
12.确定模块,被配置为确定目标用户和所述目标用户的参考用户集群;
13.获取模块,被配置为获取所述目标用户的本地对象信息和所述参考用户集群的公开对象信息,其中,所述公开对象信息为参考用户公开的对象信息;
14.构建模块,被配置为基于所述本地对象信息和所述公开对象信息构建对象超图,并基于所述对象超图确定所述目标用户的用户偏好信息;
15.训练模块,被配置为根据所述用户偏好信息训练本地推荐模型,获得本地训练梯
度,其中,所述本地训练梯度为经过加密编码后的模型梯度;
16.上传模块,被配置为将所述本地训练梯度上传至服务器,以使所述服务器根据所述本地训练梯度更新目标推荐模型。
17.根据本技术实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述计算机指令时实现所述基于社交网络的推荐模型训练方法的步骤。
18.根据本技术实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现所述基于社交网络的推荐模型训练方法的步骤。
19.本技术提供的基于社交网络的推荐模型训练方法,确定目标用户和所述目标用户的参考用户集群;获取所述目标用户的本地对象信息和所述参考用户集群的公开对象信息,其中,所述公开对象信息为参考用户公开的对象信息;基于所述本地对象信息和所述公开对象信息构建对象超图,并基于所述对象超图确定所述目标用户的用户偏好信息;根据所述用户偏好信息训练本地推荐模型,获得本地训练梯度,其中,所述本地训练梯度为经过加密编码后的模型梯度;将所述本地训练梯度上传至服务器,以使所述服务器根据所述本地训练梯度更新目标推荐模型。
20.本技术一实施例实现了在基于社交网络的推荐模型训练方法中,对于每个用户而言,确定用于对应的参考用户,再根据目标用户的本地对象信息和参考用户公开的对象信息来进行处理,满足了每个用户不同的隐私保护需求,还满足了每个用户自由公开交互对象信息的需求。
21.其次,通过每个对象的对象信息构建对象超图,进一步的通过对象超图确定用户的偏好信息,除了具有高推荐效果外,还无需收集用户的行为,具有强隐私保护效果。
22.最后,在用户向中心服务器上传本地训练梯度的过程中,通过为本地训练梯度添加噪声的方式,避免攻击者基于用户的本地训练梯度反向推断用户的隐私数据,进一步保护用户的隐私数据安全。
附图说明
23.图1是本技术一实施例提供的一种基于社交网络的推荐模型训练方法的流程图;
24.图2是本技术一实施例提供的用户u对应的对象超图示意图;
25.图3是本技术一实施例提供的对象超图蒸馏获得兴趣图的示意图;
26.图4是本技术一实施例提供的一种应用于商品推荐场景的基于社交网络的推荐模型训练方法的处理流程图;
27.图5是本技术一实施例提供的一种基于社交网络的推荐模型训练装置的结构示意图;
28.图6是本技术一实施例提供的一种计算设备的结构框图。
具体实施方式
29.在下面的描述中阐述了很多具体细节以便于充分理解本技术。但是本技术能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本技术内涵的情况
下做类似推广,因此本技术不受下面公开的具体实施的限制。
30.在本技术一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术一个或多个实施例。在本技术一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本技术一个或多个实施例中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
31.应当理解,尽管在本技术一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
32.在信息过载的背景下,用户需要面临海量的商品数据,往往无法找到其所感兴趣的商品。而推荐系统,作为一种解决信息过载问题的重要手段,被广泛应用于电商平台、社交媒体平台,为用户推荐其感兴趣的商品或其它用户。但是,随着隐私保护意识的提高,推荐系统所依赖的用户交互数据和用户特征,非常难以收集和使用,制约了现有推荐系统的推荐性能。因此,构建一种不侵犯用户隐私数据的推荐系统是当下研究的重点问题。
33.如何构建不侵犯用户隐私的推荐系统非常具有挑战性,具体来源于两个方面。第一是用户隐私保护需求的多样性。用户具有公布他们交互数据信息的权利,如在商品推荐系统中,用户常常参考其他用户的评论,作为是否购买的重要依据。如果简单将所有用户交互数据作为隐私数据,从长期来看,损失了用户体验。第二是在保护用户隐私数据的前提下,进行准确推荐。用户交互数据和用户特征是推荐系统进行准确推荐的重要依据。用户交互数据和用户特征是用户的隐私数据,平台通过用户特征推断用户交互。
34.目前的推荐方法或推荐系统,有一些推荐系统虽然具有较高的推荐准确度,但其基于用户隐私数据进行建模,侵犯了用户隐私;而基于隐私保护的推荐系统,尽管其能够保护用户隐私,但其将所有用户交互数据视为隐私数据,不利于用户体验。此外,现有方法都忽略了用户交互过程中可能存在噪声(例如误操作等等),并且大部分方法使用规则模型或评分矩阵进行建模,不利于建模用户的深层次兴趣,制约了模型的推荐效果。
35.基于此,在本技术中,提供了一种基于社交网络的推荐模型训练方法,本技术同时涉及一种基于社交网络的推荐模型训练装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
36.图1示出了根据本技术一实施例提供的一种基于社交网络的推荐模型训练方法的流程图,具体包括以下步骤:
37.步骤102:确定目标用户和所述目标用户的参考用户集群。
38.其中,目标用户具体是指执行当前推荐模型训练方法的终端对应的用户,例如当前推荐模型训练方法是在用户a使用的终端中执行的,则用户a为目标用户。参考用户具体是指参与到本技术提供的推荐模型训练方法中用于与目标用户一起参与模型训练的用户,在实际应用中,参考用户对应的数量可以为一个、两个或多个。
39.在本技术提供的一具体实施方式中,确定目标用户为用户a,同时确定目标用户对应的参考用户集群中包括用户b、用户c和用户d,其中,用户b、用户c和用户d构成了用户a对
应的参考用户集群。
40.在实际应用中,参考用户的确认并不是随意确认的,需要根据目标用户的属性信息来确认,这样的参考用于对于推荐模型的训练才有参考意义,具体的,确定目标用户和所述目标用户的参考用户集群,包括:
41.获取所述目标用户的地理位置信息和社交网络信息;
42.基于所述地理位置信息确定第一参考用户集群,基于所述社交网络信息确定第二参考用户集群;
43.根据所述第一参考用户集群和/或所述第二参考用户集群生成参考用户集群。
44.其中,地理位置信息具体是指目标用户当前所在的实际的地理空间位置,例如用户当前位于**市**区**大街,用户的地理位置信息可以通过用户所使用的终端经过卫星地位确定,也可以通过用户手动输入的地理位置信息确定;社交网络信息具体是指目标用户具有社交属性的信息,包括但不限于社交网、电话通讯录等等,例如用户的社交网络有社交媒体1、购物网站2、即时通讯工具3、电话通讯录等等,目标用户的社交网络信息可以通过用户公开的信息确定,本技术中的社交网络信息都是目标用户允许公开的信息,不涉及到用户的隐私信息。
45.第一参考用户集群具体是指在与目标用户具有地理空间位置相近的参考用户的集群,地理空间位置具体是指现实中的地理空间位置相邻,例如目标用户的地理位置信息对应的方圆1公里范围内的用户为第一参考用户集群。
46.第二参考用户集群具体是指根据目标用户的社交网络信息来确定的参考用户集群,当社交网络信息为即时通讯工具时,第二参考用户可以是即时通讯工具中的常用联系人;当社交网络信息为社交媒体时,第二参考用户可以是社交媒体中关注目标用户的人和/或被目标用户关注的人;当社交网络信息为购物网站时,第二参考用户可以为用户浏览商品的商品评论用户等等,在本技术中,对第二参考用户集群中第二参考用户不做具体限定,以实际应用为准。
47.在确定了第一参考用户集群和第二参考用户集群后,可以确定第一参考用户集群和/或第二参考用户集群为参考用户集群。即可以只将第一参考用户集群确定为参考用户集群,可以只将第二参考用户集群确定为参考用户集群,也可以将第一参考用户集群和第二参考用户集群确定为参考用户集群。
48.在本技术中,对于用户u,其对应的参考用户集群可以表示为
49.在本技术提供的一具体实施方式中,以目标用户为用户a为例,获取用户a的地理位置信息和社交网络信息,根据用户a的地理位置信息获得第一参考用户集群(用户b、用户d
……
),根据用户a的社交网络信息获取第二参考用户集群(用户c、用户f
……
),根据第一参考用户集群和第二参考用户集群确定用户a对应参考用户集群(用户b、用户d、用户c、用户f
……
)。
50.步骤104:获取所述目标用户的本地对象信息和所述参考用户集群的公开对象信息,其中,所述公开对象信息为参考用户公开的对象信息。
51.在本技术中申请保护一种基于社交网络的推荐模型训练方法,该推荐模型用于给目标用户推荐相应的对象,该对象可以是商品、视频、音频等等各种各样可以用于推荐的内容。相应的,本地对象信息具体为目标用户进行交互的对象对应的信息,在实际应用中,在
目标用户所使用的终端中记录有目标用户在本地与对象进行交互的信息,例如以网络购物为例,对象即为商品,目标用户在终端浏览、评论、咨询、购买过的对象都可以作为本地对象,每个本地对象对应的对象信息即为本地对象信息,在实际应用中,本地对象信息由于是在本地终端中的,其可以是目标用户对外公开过的本地对象,例如某个对象的评论、咨询等等;也可以是目标用户未对外公开过的本地对象,例如对某个对象的浏览、购买等信息。
52.参考用户集群的公开对象信息具体是指在参考用户集群中每个参考用户公开的交互对象的对象信息,需要注意的是,在本技术中提及的公开对象信息为参考用户自行决定可以进行公开的对象信息。
53.需要注意的是,在本技术提供的方法中,无论是目标用户还是参考用户都可以自由的选择自己交互的对象信息哪些可以公开,哪些不公开,对于目标用户而言,可以使用目标用户对应的本地对象信息,对于参考用户而言,只会用到参考用户选择公开的对象对应的公开对象信息。
54.为了满足用户隐私保护需求的多样性,在本技术中允许用户自由选择公开的交互数据,对于用户u,其交互的物品集合为其中,公开交互的物品为
55.在本技术提供的一具体实施方式中,以目标用户为用户u为例,参考用户为参考用户v和参考用户w,对于用户w,其公开的对象为1和2,对于用户u,其交互的对象为3、4、5、6,对于用户v其公开的对象为7、8、9。其中,1和2为用户w公开的交互对象,7、8、9是用户v公开的交互对象,3、4、5、6是用户u本地的交互对象。
56.步骤106:基于所述本地对象信息和所述公开对象信息构建对象超图,并基于所述对象超图确定所述目标用户的用户偏好信息。
57.其中,超图是对图的概括,在超图中,一条边可以链接任意数量的定点,在形式上,超图h是一对h=(x,e),其中x是一组元素,成为节点或定点,e是一组非空子集,称为超边或链接。
58.在本技术提供的方法中,在获得本地对象信息和公开对象信息之后,即可构建对象超图,该对象超图具体是指目标用户对应的对象超图。对于用于u,构建的对象超图的具体定义参见下述公式1。
[0059][0060]
其中,表示了物品集合,具体的,为目标用户u交互的物品集合,为用户v交互的公开物品集合,用户v是目标用户u的参考用户。是对象信息标签关联矩阵,具体的,对于每个元素表示节点i被超边t链接,t属于对象集合。如果节点i具有标签t,则反之,
[0061]
在超图中,用deg(i)和deg(t)分别表示对象i和超边t的度,其中,对于一个对象i,如果其与3个超边相连,则deg(i)=3,对于一个超边t,如果其与5个节点相连,则deg(t)=5。
[0062]
进一步的,在本技术中,使用表示节点的对角度矩阵,节点的对角
度矩阵大小与节点相关,节点有5个,则节点的对角度矩阵大小为5*5,节点有10个,则节点的对角度矩阵大小为10*10。用d
t
∈r
|t|
×
|t|
表示超边的对角度矩阵。超边的对角度矩阵大小与超边的数量有关,超边有4个,则超边的对角度矩阵为4*4,超边为8条,则超边的对角度矩阵为8*8。
[0063]
以上为对象超图的基本介绍,在实际应用中,需要根据上述的本地对象信息和公开对象信息构建对象超图,具体的,基于所述本地对象信息和所述公开对象信息构建对象超图,包括:
[0064]
确定所述本地对象信息和所述公开对象信息的对象信息集合;
[0065]
获取所述对象信息集合对应的对象标签集合;
[0066]
基于所述对象信息集合和所述对象标签集合构建对象信息标签关联矩阵;
[0067]
根据所述对象信息标签关联矩阵生成对象超图。
[0068]
在获得本地对象信息和公开对象信息之后,即可确定对象信息集合,获取对象信息中每个对象对应的对象标签,组成对象标签集合,再判断每个对象是否包括有对应的对象标签,若有则标记为1,若没有则标记为0,从而生成对象信息标签关联矩阵再根据对象信息标签关联矩阵生成对象超图。
[0069]
在本技术提供的一具体实施方式中,沿用上例,根据本地对象信息(3、4、5、6)和公开对象信息(1、2、7、8、9)构建对象信息集合(1、2、3、4、5、6、7、8、9)。获取每个对象的对象标签,从而构建对象信息标签关联矩阵,并根据对象信息标签关联矩阵生成对象超图,参见图2,图2示出了本技术实施例提供的用户u对应的对象超图示意图。如图2所示,节点1和节点2是用户w的公开交互对象,节点7、8、9是用户v公开的交互对象,节点3、4、5、6是用户u本地的交互对象,其中,4和5是用户u公开的交互对象,3和6是用户u未公开的交互对象。
[0070]
如图2所所示,经过对象信息标签关联矩阵可以确定,节点1、2、3、4之间有相同的标签,则这4个节点用一个超边链接,节点2和节点6之间有相同的标签,则这2个节点用一个超边链接,节点5、6、8、9之间有相同的标签,则这4个节点用一个超边链接,节点4和节点7之间有相同的标签,则这2个节点之间用一个超边链接。对于节点1,其与1条超边相连,则节点1的度为1,对于节点2,其与2条超边相连,则节点2的度为2。相应的对于1、2、3、4之间的超边,其链接了4个节点,则该条超边的度为4,对于节点2和节点6之间的超边,其链接了2个节点,则该条超边的度为2。对于该超图,其对应的节点的对角度矩阵大小为9*9,对应的超边的对角度矩阵为4*4。
[0071]
在确定了目标用户对应的对象超图之后,则可以基于该对象超图来建模确定目标用户的用户兴趣图,通过用户兴趣图可以获取目标用户的用户偏好信息。从整体上看,可以分为超图蒸馏、兴趣池化和偏好预估三个阶段。具体的,基于所述对象超图确定所述目标用户的用户偏好信息,包括:
[0072]
s1062、获取所述对象超图中每个对象的对象特征信息,确定预设的兴趣簇数量。
[0073]
在构建的对象超图中,链接的物品倾向于反应相同的用户兴趣,因为超边相连的对象具有相同的标签,但是用户的兴趣点仍然分散在这些标签之中,需要通过进一步蒸馏上述步骤中获得的对象超图,便于后续获得用户的兴趣特征。
[0074]
具体的,根据对象超图可以获得对象超图中的每个对象,从而可以获得每个对象
对应的对象特征信息,对象特征信息具体可以是指每个对象的特征向量。在本技术中,可以用特征向量ei∈rd来表示第i个对象的对象特征信息,其中d表示特征的大小(例如32维、64维等等)。通过来表示对象超图中所有对象对应的对象特征信息。
[0075]
兴趣簇是指根据每个对象可以总结分析出的用户所感兴趣的内容,需要注意的是在,在本技术中,只需要预先规定好兴趣簇的数量即可,无需设定兴趣簇的内容,例如预先设置4个兴趣簇数量,则预设的兴趣簇数量为4。
[0076]
s1064、根据所述每个对象的对象特征信息和所述兴趣簇数量,获得对象聚集特征信息和对象兴趣映射权重。
[0077]
在获得每个对象的对象特征信息和预设的兴趣簇数量之后,可以通过超图卷积神经网络将对象分配到不同的兴趣簇中,从而获得对象超图经过超图蒸馏后获得的对象聚集特征信息和对象兴趣映射权重。
[0078]
在本技术中,用表示对象超图中每个对象特征信息进行聚集之后,获得的对象聚集特征信息,用表示每个对象映射到不同兴趣簇的权重。其中,表示对象集合,di表示兴趣簇的维度,ni表示兴趣簇数量。
[0079]
具体的,根据所述每个对象的对象特征信息和所述兴趣簇数量,获得对象聚集特征信息和对象兴趣映射权重,包括:
[0080]
对所述每个对象的对象特征信息进行信息聚集,获得对象聚集特征信息;
[0081]
根据所述每个对象的对象特征信息和所述兴趣簇数量确定每个对象对应的兴趣映射权重,获得对象兴趣映射权重。
[0082]
在实际应用中,通过下属公式2,实现对每个对象的对象特征信息的信息聚集。
[0083][0084]
其中,表示对象聚集特征信息,dv表示节点(对象超图中的对象)的对角度矩阵,和均为拉普拉斯矩阵的参数,这2个参数的意义是指每一个节点,可能会链接很多的超边,节点的度会非常大,节点接触的信息是过量的,需要对节点其进行平均,是的转置矩阵,两者相乘是实现将物品的特征在物品中进行传递。其代表的含义可以是认为在对象超图中,如果对象1链接了对象2,对象2链接了对象3,则说明对象1和对象3是可以链接的。在实际应用中,一条超边还可能会大量的对象节点,需要通过对超边进行平均的操作处理。w1是一个可学习的转换矩阵,通过来对热门的节点、超边来进行平均,用来抑制热门的对象和热门的超边。和用来发送对象特征信息,实现对象特征信息的聚集。
[0085]
除了对对象特征信息进行聚集之外,还需要通过卷积神经网络来映射每个对象对应的兴趣簇的映射权重,具体的,参见下述公式3,通过下述公式3可以计算每个对象映射到不同兴趣簇的对象兴趣映射权重。
[0086]
[0087]
其中,也是一个可学习的转换矩阵,softmax是归一化函数。
[0088]
s1066、根据所述对象聚集特征信息和所述对象兴趣映射权重计算所述对象超图对应的兴趣特征矩阵和兴趣邻接矩阵。
[0089]
在对对象超图进行蒸馏,获得对象聚集特征信息和对象兴趣映射权重之后,可以根据对象聚集特征信息和对象兴趣映射权重,确定每个对象对应的兴趣簇,即可根据蒸馏后构建的对象超图来计算对象超图对应的兴趣特征矩阵和兴趣邻接矩阵,从而便于后续生成目标用户的用户偏好信息。
[0090]
在本技术提供的实施方式中,用表示兴趣特征矩阵,用表示兴趣邻接矩阵,对象超图被蒸馏之后,获得对象超图蒸馏,可以标识每个对象对应的兴趣簇,再对对象图蒸馏进一步进行兴趣提取,获得对象超图经过蒸馏后的兴趣图。
[0091]
具体的,根据所述对象聚集特征信息和所述对象兴趣映射权重计算所述对象超图对应的兴趣特征矩阵和兴趣邻接矩阵,包括:
[0092]
获取所述对象超图的对象信息标签关联矩阵;
[0093]
根据所述对象聚集特征信息和所述对象兴趣映射权重计算所述对象超图对应的兴趣特征矩阵;
[0094]
根据所述对象兴趣映射权重和所述对象信息标签关联矩阵计算所述对象超图对应的兴趣邻接矩阵。
[0095]
对象信息标签关联矩阵是在创建的对象超图时生成的矩阵。在获得对象超图之后,可以直接根据对象超图获得对应的对象信息标签关联矩阵。
[0096]
根据对象聚集特征信息和对象兴趣映射权重su即可计算对象超图对应的兴趣特征矩阵具体参见下述公式4。
[0097][0098]
其中,为对象兴趣映射权重su的转置矩阵。
[0099]
通过对象兴趣映射权重su和对象信息标签关联矩阵可以计算对象超图对应的兴趣邻接矩阵具体参见下述公式5。
[0100][0101]
其中,为对象兴趣映射权重su的转置矩阵。兴趣邻接矩阵中的元素表示兴趣i和兴趣j之间的联通权重。
[0102]
参见图3,图3示出了本技术一实施例提供的对象超图蒸馏获得兴趣图的示意图,如图3所示,在获得目标用户的对象超图之后,对对象超图进行蒸馏,根据预设的兴趣簇数量4,可以将每个对象进行分类,计算每个对象对应的兴趣簇,根据图3可以得知,对象1、2、3属于兴趣b,对象4、7属于兴趣c,对象5、6属于兴趣a,对象8、9属于兴趣d,进一步的,可以将兴趣进行提取,获得由兴趣a、b、c、d组成的用户兴趣图。
[0103]
s1068、对所述兴趣特征矩阵和所述兴趣邻接矩阵进行池化处理,获得所述目标用
户的用户偏好信息。
[0104]
经过上述步骤后,可以获得目标用户的用户兴趣图,但是在该兴趣图中仍然存在噪声,噪声是指在用户兴趣图中存在一些与用户真实的兴趣存在出入的行为,存在噪声的原因可能会有多个方面,例如用户的一些误操作行为,会影响用户兴趣的表示;另外,在获取用户兴趣图的过程中,会用到参考用户的信息,但是参考用户与目标用户之间并不总保持相似的兴趣。
[0105]
基于此,在本技术中,提出了一种注意力机制,即兴趣注意力机制,根据兴趣注意力机制来对用户的兴趣特征矩阵和兴趣邻接矩阵进行池化处理。从而获得目标用户的用户偏好信息。
[0106]
具体的,对所述兴趣特征矩阵和所述兴趣邻接矩阵进行池化处理,获得所述目标用户的用户偏好信息,包括:
[0107]
基于所述兴趣特征矩阵和所述兴趣邻接矩阵确定每个兴趣簇的兴趣权重;
[0108]
根据每个兴趣簇的兴趣权重和所述兴趣特征矩阵确定所述目标用户的用户偏好信息。
[0109]
在实际应用中,在获得兴趣特征矩阵和兴趣邻接矩阵之后,即可根据兴趣注意力机制来确定目标用户对每个兴趣簇的兴趣权重,具体的,可以参考下述公式6来计算每个兴趣簇的兴趣权重。
[0110][0111]
其中,表示目标用户u的第i个兴趣簇的兴趣权重,表示在兴趣特征矩阵中目标用户u的第i个兴趣簇的兴趣特征向量,表示在兴趣特征矩阵中目标用户u的第j个兴趣簇的兴趣特征向量,表示在兴趣邻接矩阵中,第i和第j个兴趣的关联权重。w3、w4、w5是三个可训练的转换矩阵,各自的维度均为
[0112]
在获得每个兴趣簇的兴趣权重之后,再根据每个兴趣簇的兴趣权重和兴趣特征矩阵通过下述公式7进行处理,获得目标用户的用户偏好信息。
[0113][0114]
其中,eu是目标用户u的用户偏好信息,表示目标用户u对应各个兴趣簇的兴趣权重矩阵,为的转置矩阵,目标用户u的兴趣特征矩阵。
[0115]
步骤108:根据所述用户偏好信息训练本地推荐模型,获得本地训练梯度,其中,所述本地训练梯度为经过加密编码后的模型梯度。
[0116]
经过上述步骤,可以获得目标用户的用户偏好信息,该用户偏好信息是根据目标用户本地交互信息和参考用户的公开交互信息来确定的。在获得目标用户的用户偏好信息之后,就可以联合本地交互对象信息来计算目标用于与目标对象的交互概率。
[0117]
具体的,根据所述用户偏好信息训练本地推荐模型,获得本地训练梯度,包括:
[0118]
获取样本对象集合中每个样本对象对应的样本对象信息,其中,所述样本对象集合包括交互样本对象和待推荐样本对象;
[0119]
根据所述用户偏好信息和每个样本对象信息确定所述目标用于与每个样本对象
的样本对象交互权重;
[0120]
根据交互样本对象的样本对象交互权重和待推荐样本对象的样本对象交互权重计算本地推荐模型的模型损失值;
[0121]
根据所述模型损失值确定本地训练梯度。
[0122]
在实际应用中,将用户偏好信息与样本对象信息的对象特征信息进行拼接,在本技术中,用户偏好信息用eu表示,对象特征信息用ei表示,两者进行拼接用eu||ei表示,其中,||代表特征信息的拼接,以eu为64维、ei为128维为例,两者进行拼接之后,即为192维的特征向量。在拼接之后,通过多层感知机神经网络模型来评估目标用户u与样本对象i的样本对象交互权重。即其中,代表目标用户u与样本对象i的样本对象交互权重。
[0123]
为了训练推荐模型,需要计算模型的损失函数,在本技术中,优选的,使用贝叶斯个性化排序损失作为损失函数,在实际应用中,以目标用户交互过的对象预测概率为基础,已经交互过的对象的预测概率应高于未交互过的对象的预测概率。基于此,通过下述公式8来计算模型损失值。
[0124][0125]
其中,代表模型损失值,iu表示目标用户对应的交互样本对象,表示目标用户未交互过的对象集合,即待推荐样本对象,σ代表sigmoid函数,代表交互样本对象的样本对象交互权重,代表待推荐样本对象的样本对象交互权重。
[0126]
在计算获得损失值后,计算推荐模型的本地训练梯度在实际应用中,为了保护用户隐私数据,避免中心化服务器基于用于上传的梯度逆向推断用户隐私数据,在本技术中,还需要对更新梯度进行相应的处理,在本技术提供的方法中,可以先对根据损失指确定的梯度进行裁剪,然后为其添加拉普拉斯噪声,具体的,根据所述模型损失值确定本地训练梯度,包括:
[0127]
根据所述模型损失值确定初始训练梯度;
[0128]
为所述初始训练梯度添加噪声干扰,获得所述初始训练梯度对应的本地训练梯度。
[0129]
在实际应用中,先根据模型损失指确定模型的更新梯度gu,再根据下述公式9,来计算本地训练梯度。
[0130][0131]
其中,clip(gu,δ)表示将更新梯度gu裁剪至范围δ内,laplacian(0,λ)表示均值为0,标准差为λ的拉普拉斯噪声。从而获得本地训练梯度
[0132]
步骤110:将所述本地训练梯度上传至服务器,以使所述服务器根据所述本地训练梯度更新目标推荐模型。
[0133]
在获得本地训练梯度之后,即可将本地训练梯度上传至模型训练的中心服务器,由中心服务器接收各个用户上传的各自的本地梯度,来对推荐模型进行模型训练。
[0134]
中心服务器接收到各个用户上传的本地训练梯度之后,可以使用同步更新,也可以使用异步更新,在本技术中,对模型更新的形式不做限定,以实际应用为准。
[0135]
本技术提供的基于社交网络的推荐模型训练方法,是一种分布式模型训练方法,中心服务器接收各个用户上传的本地训练梯度进行训练,对于每个用户,该方法包括确定目标用户和所述目标用户的参考用户集群;获取所述目标用户的本地对象信息和所述参考用户集群的公开对象信息,其中,所述公开对象信息为参考用户公开的对象信息;基于所述本地对象信息和所述公开对象信息构建对象超图,并基于所述对象超图确定所述目标用户的用户偏好信息;根据所述用户偏好信息训练本地推荐模型,获得本地训练梯度,其中,所述本地训练梯度为经过加密编码后的模型梯度;将所述本地训练梯度上传至服务器,以使所述服务器根据所述本地训练梯度更新目标推荐模型。
[0136]
在本技术提供的基于社交网络的推荐模型训练方法中,对于每个用户而言,确定用于对应的参考用户,再根据目标用户的本地对象信息和参考用户公开的对象信息来进行处理,满足了每个用户不同的隐私保护需求,还满足了每个用户自由公开交互对象信息的需求。
[0137]
其次,通过每个对象的对象信息构建对象超图,进一步的通过对象超图确定用户的偏好信息,除了具有高推荐效果外,还无需收集用户的行为,具有强隐私保护效果。
[0138]
最后,在用户向中心服务器上传本地训练梯度的过程中,通过为本地训练梯度添加噪声的方式,避免攻击者基于用户的本地训练梯度反向推断用户的隐私数据,进一步保护用户的隐私数据安全。
[0139]
下述结合附图4,以本技术提供的基于社交网络的推荐模型训练方法在商品推荐场景的应用为例,对所述基于社交网络的推荐模型训练方法进行进一步说明。其中,图4示出了本技术一实施例提供的一种应用于商品推荐场景的基于社交网络的推荐模型训练方法的处理流程图,具体包括以下步骤:
[0140]
步骤402:确定目标用户a和参考用户b、参考用户c。
[0141]
步骤404:获取目标用户的本地交互商品1、2、3、4,获取参考用户b公开交互商品5、6,获取参考用户c公开交互商品7、8。
[0142]
步骤406:基于本地交互商品1、2、3、4和公开交互商品5、6、7、8构建目标用户a对应的商品超图。
[0143]
步骤408:获取商品超图中每个商品的商品特征信息,同时确定预设的兴趣簇数量4。
[0144]
步骤410:根据商品特征信息和兴趣簇数量4,确定商品聚集特征信息和商品兴趣映射权重。
[0145]
步骤412:根据商品聚集特征信息和商品兴趣映射权重确定对象超图的商品兴趣图,商品兴趣图中包括商品兴趣特征矩阵和商品兴趣邻接矩阵。
[0146]
步骤414:对商品兴趣特征矩阵和商品兴趣邻接矩阵进行池化,获取目标用户a对应的用户偏好信息。
[0147]
步骤416:拼接用户偏好信息和商品特征信息,并使用多层感知机神经网络模型来计算目标用于a与商品交互的交互权重。
[0148]
步骤418:根据已经交互过的商品的交互权重和未交互过的商品的交互权重来计算目标用户a的初始训练梯度。
[0149]
步骤420:对初始训练梯度进行剪裁后添加拉普拉斯噪声,目标用户a的本地训练
梯度。
[0150]
步骤422:将本地训练梯度上传至中心服务器,以使中心服务器根据本地训练梯度训练商品推荐模型。
[0151]
与上述方法实施例相对应,本技术还提供了基于社交网络的推荐模型训练装置实施例,图5示出了本技术一实施例提供的一种基于社交网络的推荐模型训练装置的结构示意图。如图5所示,该装置包括:
[0152]
确定模块502,被配置为确定目标用户和所述目标用户的参考用户集群;
[0153]
获取模块504,被配置为获取所述目标用户的本地对象信息和所述参考用户集群的公开对象信息,其中,所述公开对象信息为参考用户公开的对象信息;
[0154]
构建模块506,被配置为基于所述本地对象信息和所述公开对象信息构建对象超图,并基于所述对象超图确定所述目标用户的用户偏好信息;
[0155]
训练模块508,被配置为根据所述用户偏好信息训练本地推荐模型,获得本地训练梯度,其中,所述本地训练梯度为经过加密编码后的模型梯度;
[0156]
上传模块510,被配置为将所述本地训练梯度上传至服务器,以使所述服务器根据所述本地训练梯度更新目标推荐模型。
[0157]
可选的,所述确定模块502,进一步被配置为:
[0158]
获取所述目标用户的地理位置信息和社交网络信息;
[0159]
基于所述地理位置信息确定第一参考用户集群,基于所述社交网络信息确定第二参考用户集群;
[0160]
根据所述第一参考用户集群和/或所述第二参考用户集群生成参考用户集群。
[0161]
可选的,所述构建模块506,进一步被配置为:
[0162]
确定所述本地对象信息和所述公开对象信息的对象信息集合;
[0163]
获取所述对象信息集合对应的对象标签集合;
[0164]
基于所述对象信息集合和所述对象标签集合构建对象信息标签关联矩阵;
[0165]
根据所述对象信息标签关联矩阵生成对象超图。
[0166]
可选的,所述构建模块506,进一步被配置为:
[0167]
获取所述对象超图中每个对象的对象特征信息,确定预设的兴趣簇数量;
[0168]
根据所述每个对象的对象特征信息和所述兴趣簇数量,获得对象聚集特征信息和对象兴趣映射权重;
[0169]
根据所述对象聚集特征信息和所述对象兴趣映射权重计算所述对象超图对应的兴趣特征矩阵和兴趣邻接矩阵;
[0170]
对所述兴趣特征矩阵和所述兴趣邻接矩阵进行池化处理,获得所述目标用户的用户偏好信息。
[0171]
可选的,所述构建模块506,进一步被配置为:
[0172]
对所述每个对象的对象特征信息进行信息聚集,获得对象聚集特征信息;
[0173]
根据所述每个对象的对象特征信息和所述兴趣簇数量确定每个对象对应的兴趣映射权重,获得对象兴趣映射权重。
[0174]
可选的,所述构建模块506,进一步被配置为:
[0175]
获取所述对象超图的对象信息标签关联矩阵;
[0176]
根据所述对象聚集特征信息和所述对象兴趣映射权重计算所述对象超图对应的兴趣特征矩阵;
[0177]
根据所述对象兴趣映射权重和所述对象信息标签关联矩阵计算所述对象超图对应的兴趣邻接矩阵。
[0178]
可选的,所述构建模块506,进一步被配置为:
[0179]
基于所述兴趣特征矩阵和所述兴趣邻接矩阵确定每个兴趣簇的兴趣权重;
[0180]
根据每个兴趣簇的兴趣权重和所述兴趣特征矩阵确定所述目标用户的用户偏好信息。
[0181]
可选的,所述训练模块508,进一步被配置为:
[0182]
获取样本对象集合中每个样本对象对应的样本对象信息,其中,所述样本对象集合包括交互样本对象和待推荐样本对象;
[0183]
根据所述用户偏好信息和每个样本对象信息确定所述目标用于与每个样本对象的样本对象交互权重;
[0184]
根据交互样本对象的样本对象交互权重和待推荐样本对象的样本对象交互权重计算本地推荐模型的模型损失值;
[0185]
根据所述模型损失值确定本地训练梯度。
[0186]
可选的,所述训练模块508,进一步被配置为:
[0187]
根据所述模型损失值确定初始训练梯度;
[0188]
为所述初始训练梯度添加噪声干扰,获得所述初始训练梯度对应的本地训练梯度。
[0189]
本技术提供的基于社交网络的推荐模型训练装置,由中心服务器接收各个用户上传的本地训练梯度进行训练,对于每个用户,该装置包括确定目标用户和所述目标用户的参考用户集群;获取所述目标用户的本地对象信息和所述参考用户集群的公开对象信息,其中,所述公开对象信息为参考用户公开的对象信息;基于所述本地对象信息和所述公开对象信息构建对象超图,并基于所述对象超图确定所述目标用户的用户偏好信息;根据所述用户偏好信息训练本地推荐模型,获得本地训练梯度,其中,所述本地训练梯度为经过加密编码后的模型梯度;将所述本地训练梯度上传至服务器,以使所述服务器根据所述本地训练梯度更新目标推荐模型。
[0190]
在本技术提供的基于社交网络的推荐模型训练方法中,对于每个用户而言,确定用于对应的参考用户,再根据目标用户的本地对象信息和参考用户公开的对象信息来进行处理,满足了每个用户不同的隐私保护需求,还满足了每个用户自由公开交互对象信息的需求。
[0191]
其次,通过每个对象的对象信息构建对象超图,进一步的通过对象超图确定用户的偏好信息,除了具有高推荐效果外,还无需收集用户的行为,具有强隐私保护效果。
[0192]
最后,在用户向中心服务器上传本地训练梯度的过程中,通过为本地训练梯度添加噪声的方式,避免攻击者基于用户的本地训练梯度反向推断用户的隐私数据,进一步保护用户的隐私数据安全。
[0193]
上述为本实施例的一种基于社交网络的推荐模型训练装置的示意性方案。需要说明的是,该基于社交网络的推荐模型训练装置的技术方案与上述的基于社交网络的推荐模
型训练方法的技术方案属于同一构思,基于社交网络的推荐模型训练装置的技术方案未详细描述的细节内容,均可以参见上述基于社交网络的推荐模型训练方法的技术方案的描述。
[0194]
图6示出了根据本技术一实施例提供的一种计算设备600的结构框图。该计算设备600的部件包括但不限于存储器610和处理器620。处理器620与存储器610通过总线630相连接,数据库650用于保存数据。
[0195]
计算设备600还包括接入设备640,接入设备640使得计算设备600能够经由一个或多个网络660通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备640可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域网(wlan)无线接口、全球微波互联接入(wi-max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。
[0196]
在本技术的一个实施例中,计算设备600的上述部件以及图6中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图6所示的计算设备结构框图仅仅是出于示例的目的,而不是对本技术范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
[0197]
计算设备600可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备600还可以是移动式或静止式的服务器。
[0198]
其中,处理器620执行所述计算机指令时实现所述的基于社交网络的推荐模型训练方法的步骤。
[0199]
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的基于社交网络的推荐模型训练方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述基于社交网络的推荐模型训练方法的技术方案的描述。
[0200]
本技术一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现如前所述基于社交网络的推荐模型训练方法的步骤。
[0201]
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的基于社交网络的推荐模型训练方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述基于社交网络的推荐模型训练方法的技术方案的描述。
[0202]
上述对本技术特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0203]
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、
对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0204]
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本技术所必须的。
[0205]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
[0206]
以上公开的本技术优选实施例只是用于帮助阐述本技术。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本技术的内容,可作很多的修改和变化。本技术选取并具体描述这些实施例,是为了更好地解释本技术的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本技术。本技术仅受权利要求书及其全部范围和等效物的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1