一种基于图注意力对抗网络的社会化推荐方法及系统转让专利

申请号 : CN202110954647.8

文献号 : CN113849725B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张维玉夏忠秀翁自强

申请人 : 齐鲁工业大学

摘要 :

本公开公开的一种基于图注意力对抗网络的社会化推荐方法及系统,社会化推荐模型包括生成对抗网络和图自动编码器,将社交网络输入图自动编码器中,获得目标矩阵;将用户‑项目的交互信息输入生成对抗网络的生成器中,获得用户的兴趣嵌入矩阵;将用户节点的特征输入生成对抗网络的鉴别器中,获得用户的社交嵌入矩阵;通过社交嵌入矩阵建立目标矩阵和兴趣嵌入矩阵间的关联,对兴趣嵌入矩阵的真假进行判断,获取社会化推荐结果。在进行社会化推荐时,充分考虑了社会结构和兴趣因素,提高了社会化推荐结果的准确率。

权利要求 :

1.一种基于图注意力对抗网络的社会化推荐方法,其特征在于,包括:获取用户‑项目的交互信息和用户的社交网络信息;

从社交网络信息中获取用户节点的特征;

将用户‑项目的交互信息、用户节点的特征和社交网络信息输入训练好的社会化推荐模型中,获取社会化推荐结果;

其中,社会化推荐模型包括生成对抗网络和图自动编码器,将社交网络信息输入图自动编码器中,获得目标矩阵;将用户‑项目的交互信息输入生成对抗网络的生成器中,获得用户的兴趣嵌入矩阵;将用户节点的特征输入生成对抗网络的鉴别器中,获得用户的社交嵌入矩阵;通过社交嵌入矩阵建立目标矩阵和兴趣嵌入矩阵间的关联,对目标矩阵和兴趣嵌入矩阵的真假进行判断,获取社会化推荐结果;

生成器生成用户的兴趣嵌入矩阵时,还生成了用户‑用户的兴趣相似度;鉴别器生成社交嵌入矩阵时,还生成用户‑用户的相似度;图自动编码器获得目标矩阵时,还生成了用户‑用户的目标相似度;通过用户‑用户的相似度,建立用户‑用户的兴趣相似度和用户‑用户的目标相似度之间的关联,用于对社会化推荐模型进行训练。

2.如权利要求1所述的一种基于图注意力对抗网络的社会化推荐方法,其特征在于,获取用户信息、项目信息;

通过用户的隐式反馈对用户信息和项目信息进行分析,定义用户‑项目的交互信息。

3.如权利要求1所述的一种基于图注意力对抗网络的社会化推荐方法,其特征在于,生成器使用变分编码器。

4.如权利要求1所述的一种基于图注意力对抗网络的社会化推荐方法,其特征在于,鉴别器采用GAT编码器。

5.如权利要求1所述的一种基于图注意力对抗网络的社会化推荐方法,其特征在于,在社会化推荐模型的嵌入空间中引入距离度量,为了度量距离度量的传递结构,在社交链接中使用上下文权重函数。

6.如权利要求5所述的一种基于图注意力对抗网络的社会化推荐方法,其特征在于,使用Hadamard投影方法实现上下文权重函数中用户特征的低秩双线池化。

7.一种基于图注意力对抗网络的社会化推荐系统,其特征在于,包括:信息获取模块,用于获取用户‑项目的交互信息和用户的社交网络信息;

用户节点的特征获取模块,用于从社交网络信息中获取用户节点的特征;

社会化推荐结果获取模块,用于将用户‑项目的交互信息、用户节点的特征和社交网络信息输入训练好的社会化推荐模型中,获取社会化推荐结果;

其中,社会化推荐模型包括生成对抗网络和图自动编码器,将社交网络信息输入图自动编码器中,获得目标矩阵;将用户‑项目的交互信息输入生成对抗网络的生成器中,获得用户的兴趣嵌入矩阵;将用户节点的特征输入生成对抗网络的鉴别器中,获得用户的社交嵌入矩阵;通过社交嵌入矩阵建立目标矩阵和兴趣嵌入矩阵间的关联,对目标矩阵和兴趣嵌入矩阵的真假进行判断,获取社会化推荐结果;

生成器生成用户的兴趣嵌入矩阵时,还生成了用户‑用户的兴趣相似度;鉴别器生成社交嵌入矩阵时,还生成用户‑用户的相似度;图自动编码器获得目标矩阵时,还生成了用户‑用户的目标相似度;通过用户‑用户的相似度,建立用户‑用户的兴趣相似度和用户‑用户的目标相似度之间的关联,用于对社会化推荐模型进行训练。

8.一种电子设备,其特征在于,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成权利要求1‑6任一项所述的一种基于图注意力对抗网络的社会化推荐方法的步骤。

9.一种计算机可读存储介质,其特征在于,用于存储计算机指令,所述计算机指令被处理器执行时,完成权利要求1‑6任一项所述的一种基于图注意力对抗网络的社会化推荐方法的步骤。

说明书 :

一种基于图注意力对抗网络的社会化推荐方法及系统

技术领域

[0001] 本发明涉及社会化推荐技术领域,尤其涉及一种基于图注意力对抗网络的社会化推荐方法及系统。

背景技术

[0002] 本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。
[0003] 随着在线社交网络的发展,人们也越来越愿意在社交网络平台上查看或发布信息、关注好友、评论感兴趣的物品。社会化推荐系统利用社会关系来提升推荐系统的性能,
它已成为推荐系统领域研究的热门方向之一,因此受到了研究人员的广泛关注。
[0004] 社会化推荐系统由项目域和社交域两部分组成,它们分别表示用户‑物品交互和用户‑用户连接。目前,融合社交关系信息来改进推荐系统是主流的推荐方法。TrustSVD在
先进的推荐算法SVD++的基础上,不仅考虑评分和信任的显式影响,还将用户的隐式反馈信
息以及用户的隐式社交信息考虑到模型中,更加符合实际的社交网络情景。TBPR基于EM算
法,通过推荐准确性对社交网络的强弱关系进行分类,为所有的用户和项目学习潜在的特
征向量。DASO采用双向映射的方法,通过对抗学习在社交域和项目域之间传递用户信息,最
终优化用户和项目的表示,如图2所示,尽管用户在两个域中建立联系,但无法从社会结构
中区分不同联系人的特定偏好。例如:李明喜欢听取赵鹏关于书籍方面的建议,但在音乐方
面会虚心向王红请教。由此可知,社会关系中人们的不同偏好在一定程度上会对用户的行
为产生影响,如何使用社会化推荐系统去解决上述问题,这需要我们深入研究。
[0005] 但发明人发现,现有的大多数社会化推荐系统无法将社会影响力与用户的潜在兴趣对推荐结果的影响进行区分,影响了社会化推荐的性能。

发明内容

[0006] 本公开为了解决上述问题,提出了一种基于图注意力对抗网络的社会化推荐方法及系统,在进行社会化推荐时,同时考虑了社会影响力和兴趣因素,使得社会化推荐结果更
准确。
[0007] 为实现上述目的,本公开采用如下技术方案:
[0008] 第一方面,提出了一种基于图注意力对抗网络的社会化推荐方法,其特征在于,包括:
[0009] 获取用户‑项目的交互信息和用户的社交网络信息;
[0010] 从社交网络信息中获取用户节点的特征;
[0011] 将用户‑项目的交互信息、用户节点的特征和社交网络信息输入训练好的社会化推荐模型中,获取社会化推荐结果;
[0012] 其中,社会化推荐模型包括生成对抗网络和图自动编码器,将社交网络输入图自动编码器中,获得目标矩阵;将用户‑项目的交互信息输入生成对抗网络的生成器中,获得
用户的兴趣嵌入矩阵;将用户节点的特征输入生成对抗网络的鉴别器中,获得用户的社交
嵌入矩阵;通过社交嵌入矩阵建立目标矩阵和兴趣嵌入矩阵间的关联,对兴趣嵌入矩阵的
真假进行判断,获取社会化推荐结果。
[0013] 第二方面,提出了一种基于图注意力对抗网络的社会化推荐系统,其特征在于,包括:
[0014] 信息获取模块,用于获取用户‑项目的交互信息和用户的社交网络信息;
[0015] 用户节点的特征获取模块,用于从社交网络信息中获取用户节点的特征;
[0016] 社会化推荐结果获取模块,用于将用户‑项目的交互信息、用户节点的特征和社交网络信息输入训练好的社会化推荐模型中,获取社会化推荐结果;
[0017] 其中,社会化推荐模型包括生成对抗网络和图自动编码器,将社交网络输入图自动编码器中,获得目标矩阵;将用户‑项目的交互信息输入生成对抗网络的生成器中,获得
用户的兴趣嵌入矩阵;将用户节点的特征输入生成对抗网络的鉴别器中,获得用户的社交
嵌入矩阵;通过社交嵌入矩阵对目标兴趣矩阵和兴趣嵌入矩阵的真假进行判别,获取社会
化推荐结果。
[0018] 第三方面,提出了一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成一种基于图注意力对
抗网络的社会化推荐方法所述的步骤。
[0019] 第四方面,提出了一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成一种基于图注意力对抗网络的社会化推荐方法所述的步骤。
[0020] 与现有技术相比,本公开的有益效果为:
[0021] 1、本公开通过使用生成对抗网络分别获取了用户的兴趣嵌入矩阵和社交嵌入矩阵,使用图自动编码器获得了目标矩阵,通过社交嵌入矩阵建立目标矩阵和兴趣嵌入矩阵
间的关联,从而对兴趣嵌入矩阵的真假进行判断,获取最终的社会化推荐结果,在进行社会
化推荐时,充分考虑了社会影响力和兴趣因素,使得推荐结果更准确。
[0022] 2、本公开在社会化推荐模型中,引入了Hadamard投影的方法,目的是在上下文加权函数中实现用户特征的低秩双线池化,从而有效地避免兴趣空间的崩溃,保证了模型的
顺利运行。
[0023] 本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

[0024] 构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
[0025] 图1为本公开实施例1公开模型的结构图;
[0026] 图2为背景技术中提及的社会化推荐系统结构示意图;
[0027] 图3为评估数据集的详细信息;
[0028] 图4为推荐系统性能在Epinions的对比实验结果;
[0029] 图5为推荐系统性能在Ciao的对比实验结果;
[0030] 图6为推荐系统性能在Delicious的对比实验结果。具体实施方式:
[0031] 下面结合附图与实施例对本公开作进一步说明。
[0032] 应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常
理解的相同含义。
[0033] 需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式
也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包
括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
[0034] 实施例1
[0035] 在该实施例中,公开了一种基于图注意力对抗网络的社会化推荐方法,包括:
[0036] 获取用户‑项目的交互信息和用户的社交网络信息;
[0037] 从社交网络信息中获取用户节点的特征;
[0038] 将用户‑项目的交互信息、用户节点的特征和社交网络信息输入训练好的社会化推荐模型中,获取社会化推荐结果;
[0039] 其中,社会化推荐模型包括生成对抗网络和图自动编码器,将社交网络输入图自动编码器中,获得目标矩阵;将用户‑项目的交互信息输入生成对抗网络的生成器中,获得
用户的兴趣嵌入矩阵;将用户节点的特征输入生成对抗网络的鉴别器中,获得用户的社交
嵌入矩阵;通过社交嵌入矩阵建立目标矩阵和兴趣嵌入矩阵间的关联,对兴趣嵌入矩阵的
真假进行判断,获取社会化推荐结果。
[0040] 进一步的,获取用户信息、项目信息;通过用户的隐式反馈对用户信息和项目信息进行分析,定义用户‑项目的交互信息。
[0041] 进一步的,生成器使用变分编码器。
[0042] 进一步的,鉴别器采用GAT编码器。
[0043] 进一步的,生成器生成用户的兴趣嵌入矩阵时,还生成了用户‑用户的兴趣相似度;鉴别器生成社交嵌入矩阵时,还生成用户‑用户的相似度;图自动编码器获得目标兴趣
矩阵时,还生成了用户‑用户的目标相似度;通过用户‑用户的相似度,建立用户‑用户的兴
趣相似度和用户‑用户的目标相似度之间的关联,用于对社会化推荐模型进行训练。
[0044] 进一步的,在社会化推荐模型的嵌入空间中引入距离度量,为了度量距离度量的传递结构,在社交链接中使用上下文权重函数。
[0045] 进一步的,使用Hadamard投影方法实现上下文权重函数中用户特征的低秩双线池化。
[0046] 对本实施例公开的一种基于图注意力对抗网络的社会化推荐方法进行详细说明。
[0047] 由于现有的大多数社会化推荐系统无法将社会影响力与用户的潜在兴趣对推荐结果的影响进行区分,且没有考虑不同用户推荐项目的优先级,从而影响了社会化推荐的
性能,此外,由于社交网络中存在众多复杂的节点信息和拓扑结构,从而影响了社会化推荐
的运行速率。
[0048] 本实施例为了提高社会化推荐的准确性,公开了一种基于图注意力对抗网络的社会化推荐方法,在进行社会化推荐时,充分考虑了兴趣表示和社会结构两方面的影响,从而
使社会化推荐更准确,包括:
[0049] S1:获取用户‑项目的交互信息和用户的社交网络信息。
[0050] 在具体实施时,获取用户集合U、项目集合I和用户‑用户之间的社交网络,用户的社交网络可以用矩阵 表示,根据用户的隐式反馈对用户集合U和项目集合I进
行分析,定义用户‑项目的交互矩阵
[0051] 需要说明的是:本实施例获取的各种数据信息的数据来源均是合法的,不涉及隐私的。
[0052] S2:从社交网络信息中获取用户节点的特征。
[0053] 在具体实施时,从社交网络信息 中获取用户节点的特征,该用户节点的特征使用ont‑hot编码特征输入矩阵F表示。
[0054] S3:将用户‑项目的交互信息 用户节点的特征F和用户的社交网络输入训练好的社会化推荐模型(GAASR)中,获取社会化推荐结果。
[0055] 在具体实施时,为了更好地捕捉到用户的潜在偏好,在进行社会话推荐时进行社会约束,使用生成对抗网络实现社会正则化,生成对抗网络同时考虑了社会结构和兴趣因
素,为了使社会结构中的节点信息与拓扑结构能够进行有机结合,使用图注意力网络来学
习用户的社交嵌入向量。此外,由于无法确定是社会影响力还是潜在兴趣对用户偏好的影
响,生成对抗性网络可以把这两个因素进行区分开来,从而实现推荐器与社交网络表示的
有效结合。在生成对抗性网络中,为了避免兴趣空间的崩溃,使用上下文加权函数,从而使
得进兴趣空间有更多的选择范围。
[0056] 在具体实施时,在社会化推荐模型中使用生成对抗网络,其结构如图1所示,包括生成器、鉴别器、Hadamard投影及优化器。
[0057] 由于社交嵌入空间S和兴趣嵌入空间X的竞争关系,使用生成对抗性网络模型来实现社会正则化,其中,生成器采用变分编码器(VAE),根据先验分布获得合成样本,鉴别器视
图构造一个决策边界,来区分合成样本和真实样本,生成器通过训练合成模拟目标样本的
数据点,从而对目标分布进行编码。
[0058] 将用户‑项目的交互信息 输入生成对抗网络的生成器中,生成器通过优化可微的连续目标OG来学习用户的兴趣嵌入矩阵 其中,Xu表示用户u的行
数,dX表示嵌入维度的大小,并计算获得用户‑用户的兴趣相似度PX(u,v),通过在变分编码
器(VAE)上进行社会正则化来显示结果。
[0059] 将社交网络 输入图自动编码器(GAE)中,通过图自动编码器(GAE)来学习潜在向量,获得目标矩阵,并生成用户‑用户的目标相似度PN(u,v)。
[0060] 生成器必须模仿用户‑用户的目标相似度PN(u,v)来规范兴趣嵌入空间X。
[0061] 将用户节点的特征F输入生成对抗网络的鉴别器中,鉴别器学习独立于社交空间N的社交嵌入空间S,在社交嵌入空间S中利用GAT来学习潜在向量,获得用户的社交嵌入矩阵
其中,Su表示用户u的行数;dS表示嵌入维度的大小,并生成用户‑用户的相似
度PS(u,v),通过用户‑用户的相似度PS(u,v)构造生成的兴趣相似度PX(u,v)和目标相似度
PN(u,v)之间的连接,并试图使兴趣嵌入空间的结构学习社交嵌入空间的结构。
[0062] 给定任何用户嵌入矩阵E,可以利用下面的公式,来计算E的潜在空间的用户‑用户相似度。
[0063] PE(u,v)∝σ(Eu·Ev)(1)
[0064] 式中:u,v指的是用户, 社交嵌入空间S和兴趣嵌入空间X分别对用户的社交邻域和项目交互进行建模,从而由式(1)得到不同的用户‑用户相似度Ps、PX。
[0065] 同时相似度PN(u,v)也可以通过公式(1)计算获得。
[0066] 为了实现兴趣嵌入空间X的社会正则化,需要在兴趣嵌入空间X中引入合适的距离度量。考虑到任意距离度量DM的度量空间M的嵌入。为了在度量DM下传递结构,对于社交链接
(u,v)∈N,得到 为了防止在将社交嵌入空间S结构转换为兴趣嵌入空
间X结构时,发生兴趣嵌入空间X的崩溃,为每个成对约束引入特定的转换,在社交链接中使
用上下文权重函数w(u,v),获得 这种增强的表达能力能够在
兴趣嵌入空间X中进行非简并编码,同时通过w(u,v)保留社会结构的上下文转换。
[0067] 在该实施例中,通过一种随机稳定的方法来表示来自每个空间的有限数量的用户‑用户样本对来表示生成兴趣相似度PX的伪样本和生成目标相似度PN的目标样本,该方法
从每个空间中抽取一定数目的用户样本对,其中,生成兴趣相似度PX的伪样本称为生成源
Px,生成目标相似度的目标样本为目标源PN。PS(u,v)用来评估鉴别器中每个抽样用户对的
似然性,理想情况下,鉴别器为从目标源PN采样的真实用户对(u+,v+)分配较高的似然,而为
从生成源Px采样的伪样本对(u‑,v‑)分配较低的似然,生成器的目标是混淆鉴别器,即最大
化预期的伪样本对似然为 得到的整体目标为O:
[0068]
[0069] 式中:b是平衡参数,(u_,v_)为伪样本对,(u+,v+)为真实样本对, 为伪样本对似然, 为真实样本对似然,logPS(u_,v_)为伪样本对似然概率估计,
logPS(u+,v+)为真实样本对似然概率估计,w(u‑,v_)为上下文加权函数,生成器G学习兴趣嵌
入空间X,为了使得兴趣嵌入空间X的结构混淆鉴别器,所以最大化伪样本对似然概率估计
logPS(u‑,v‑),相反,鉴别器试图最大化真实样本对似然概率估计logPS(u+,v+),并最小化伪
样本似然概率估计log PS(u_,v_)。为了避免兴趣空间崩溃,防止PX中用户的兴趣结构接近
PN,使用了上下文加权函数w(u,v)。上述转换将乘积w(u,v)×PX(u,v)对PS进行正则化,从而
使X的选择范围更广,模型的表现力更强。
[0070] 为了更好理解社会化推荐模型,对生成器G、Hadamard投影、鉴别器D以及通过优化器对这些模块进行交替优化的方法进行详细描述。
[0071] 将对生成器的假设限制为最普遍的假设,也就是说,G通过优化可区分的连续目标OG来学习用户的兴趣嵌入X。本实施例的生成器采用在VAE上进行社交正则化,具体有以下
两种样本对抽样生成方法:
[0072] (1)伪样本对抽样:伪样本对(u_,v_)的抽样方法是先选择u‑,然后抽样v‑∝PX(u,v)。对每个用户的样本进行分层,以便每个用户在用户集合U中至少出现∈对。
[0073] (2)真实样本对抽样:真实样本对代表潜在的社交网络结构。通过将生成器嵌入替换为来自社交网络N的图自动编码器嵌入,对它们进行了类似于上述伪样本对的采样。
[0074] 为了很好得表示用户之间的同质性和异质性,使用了上下文特征之间的乘性交叉因子。在社会化推荐模型中,可以使用兴趣嵌入Xu和Xv在恰当维度上的乘性因子来推断用户
对之间的共同兴趣和差别。
[0075] 针对这种转化,使用Hadamard投影方法来实现上下文权重函数w(u,v)中用户特征的低秩双线池化。双线性池化主要用于特征融合,对于从同一个样本提取出来的特征u和特
征v,通过双线性池化得到两个特征融合后的向量,进而用来分类。学习获得一个投影矩阵,
对于样本对(u,v),输入的投影矩阵可表示为:
[0076]
[0077] 式中:投影矩阵 指上下文用户的特征维数,投影矩阵中的每一行Pi,表示用户上下文的唯一转换。
[0078] 接下来,计算每个投影仪的关注度权重值,来衡量用户在投影纬度下的对齐程度。
[0079]
[0080] 式中:an(u,v)为关注度权重值,关注度权重值an(u,v)的值越大,表明在投影纬度上的乘性交叉因子越强,用于分类越准确。
[0081] 通过关注度权重值an(u,v)计算对齐向量A(u,v)作为加权投影总和,计算式如下:
[0082]
[0083] 式中:对齐向量A(u,v)表示用户对(u,v)之间的关系,然后通过单个反馈层将其转化为成对权重值w(u,v)。
[0084] 社会化推荐模型以GAT为鉴别器,通过优化等式(2)中的最小‑最大化目标来学习社交嵌入空间S,形式定义如下:设任意节点vi在第l层所对应的特征向量为hi,
(l)
d 表示节点的特征长度,经过一个注意力机制为核心的聚合操作之后,输出的是每个节点
(l+1)
新的特征向量h′i, d 表示输出的特征向量的长度。这里将这个聚合操作称
为图注意力层。假设中心节点为vi,并设邻居节点vj到vi的权重系数为:
[0085] eij=a(Whi,Whj)#(6)
[0086] 式中: 是该层节点特征变换的权重参数。a(·)是计算两个节点相关度的函数,为了计算简单,只计算一阶邻居内的节点vi的权重系数,在GAT中,将节点本
身也视为自己的邻居。a可以用向量内积来表示一种无参数形式的相关性计算,也
可以表示为一种含参数形式的神经网络层,如果满足 就可以输
出一个标量值表示二者的相关性。这里选择了一个单层的全连接层作为相关性函数,具体
计算式如下:
[0087]
[0088] 式中:a为权重参数,具体的权重参数 LeakyReLU作为激活函数。为了将权重合理的分配,使用softmax归一化对所有的邻居的相关性计算进行归一化处理:
[0089]
[0090] 式中:aij指的是权重系数,所有邻居的相关性经过式(8)的处理,从而使得所有邻居的权重系数相加和为1。
[0091] 将式(7)和式(8)相结合,可以得到权重系数aij的计算式:
[0092]
[0093] 按照注意力机制加权求和的方法,结合式(9)得到的权重系数,可以获得节点vi新的特征向量h′i:
[0094]
[0095] 模型的鉴别器中,输入的是社交网络N中用户节点的特征,在实验中使用one‑hot编码特征输入矩阵F,并根据式(1)得到 其中Su=GAT(h′u)。
[0096] 关于通过优化器对生成器G、Hadamard投影以及鉴别器D中每个模块进行优化的说明。
[0097] 生成器G、Hadamard投影以及鉴别器D中每个模块的特定目标函数通过式(2)中分离出来的相关项来获得每个模块的优化目标。
[0098] 生成器优化:生成器G通过优化OG来学习兴趣嵌入空间X和相关参数θG,对抗项优化了G的伪样本的鉴别器似然。
[0099]
[0100] 其中,λ为对抗项权重值,指的是总体正则化的强度,生成器更新X以增加生成具有较高上下文权重和鉴别器似然的伪样本对的可能性。
[0101] 鉴别器优化:鉴别器D学习社交嵌入空间S和相关参数θD,从而使真实样本对的似然值PS最大化,并最小化从生成器的兴趣嵌入空间X采样的伪样本对的相似度。
[0102]
[0103] 作为优化的结果,鉴别器逐渐学习生成PX的伪样本和生成PN的真实样本之间的差别。反过来,生成器G有选择性的嵌入社会结构,来生成更难的伪样本。
[0104] 在本实施例公开模型中,模型的表达取决于加权的上下文特征,这就对PX和PN有无限的选择范围进行了约束。
[0105] Hadamard投影优化:Hadamard在保持X和S不变的前提下,如何确定样本配对的优先级,从而使G的损失值最小化,从而转化为以下目标:
[0106]
[0107] 这里使用了一个Lasso(每个Pn是一个组)正则化,避免了过度拟合和鼓励稀疏投影。
[0108] 每个模块通过Nadam更新交替训练,保持其他两个模块恒定不变。
[0109] 当每个模块训练完成后,获得训练好的社会化推荐模型。
[0110] 为了验证本实施例构建的社会化推荐模型的用于社会化推荐时的推荐效果,在Epinions、Ciao和Delicious三个公开的数据集上,将本实施例公开的社会化推荐模型与没
有社交网络的推荐系统BPR、NCF、VAE‑CF,传统的社会化推荐系统SBPR和SNCF,带有社交关
系的曝光推荐系统SEREC,以及基于深度神经网络的社会化推荐系统Asr‑VAE的推荐性能进
行比较,通过计算计算了Recall@K和NDCG@K对各模型的推荐性能进行评价。
[0111] Epinions数据集含有较多的数据,对于社会化推荐很适用,它不仅包含用户对电影的评分,还包含用户之间的信任与不信任关系。
[0112] Ciao数据集包含用户对购买DVD的评分、用户之间社交关系以及DVD类别的数据。
[0113] Delicious数据集是一个在线书签系统,包含用户间的社交网络、书签和标签信息。
[0114] 由于这三个数据集提供了用户对商品的评分,所有的数据经过预处理,将其转化为1作为隐式反馈,说明用户购买过此商品,图3中列汇总了这些数据集的细节。
[0115] BPR是所有隐式反馈推荐方法的基础模型。
[0116] NCF是基于神经网络的协同过滤框架,该框架将矩阵分解和多层感知器模型相结合来学习用户与项目的交互功能,利用用户的历史反馈对项目进行排名。
[0117] VAE‑CF模型基于图变分编码器的基础上用于对隐式反馈的数据进行协同过滤。
[0118] SBPR将社交联系作为获得更准确的基于排名的模型,通过假设用户倾向于给他们的朋友更喜欢的项目分配更高的排名。
[0119] SNCF通过社会网络嵌入表示来修改NCF,本文把这种变体称为SNCF。
[0120] SEREC利用社交信息来捕获用户暴露而不是用户的相似偏好,假设用户从他们接触的人那里获得商品的信息,其中一些商品会被购买。
[0121] Asr‑VAE是一种利用对抗性框架,融合社会正则化项目的推荐框架。
[0122] Recall@K是指每个用户的前K个推荐中相关项目所占的比重,当K值固定时,精确度仅有真阳性样本所决定,而召回率由真阳性和假阳性样本共同决定。NDCG用作排序结果
的评价指标,考虑理想情况下排名列表的顺序。Recall定义为:
[0123]
[0124] 式中:reli=1/0表示前K个推荐列表中排名第i的项目是否在测试集中, 表示用户u在测试集中评分的项目数。NDCG定义为:
[0125]
[0126] 式中:DCG@K和IDCG@K分别为:
[0127]
[0128]
[0129] 式中:reli表示第i个位置时的等级相关性,|REL|表示按照相关性从大到小的顺序排序,取前K个组成的集合。
[0130] NDCG@K和Recall@K的值越高,性能越好。在K=20,50的情况下评估每个排名列表,获得的结果如图4、图5、图6所示。
[0131] 将用户‑项目交互数据随机的80%作为训练集来学习参数,10%作为验证集来调整参数,最后10%作为测试集来进行性能对比。为了公平起见,将所有模型的表示维度设置
为128。对于本实施例公开的社会化推荐模型,对于权重λ和平衡度b都在(0,10]范围内调
整,将hadamard投影设置为N=10。
[0132] 在K=20,50的情况下评估每个排名列表,获得的结果如图4、图5、图6所示。
[0133] 首先,利用社交网络信息的推荐系统通常比没有利用社交网络信息的传统推荐系统整体性能上表现得好。例如,SBPR、SNCF的性能分别优于BPR、NCF,本实施例公开的GAASR
模型效果明显优于BPR与NCF。在Delicious数据集上表现最为明显,GAASR与传统的推荐系
统整体上表现最好的模型VAE‑CF相比,R@20、R@50及N@50分别提升了5.1%、3.6%和3.7%,
N@20最为明显,提升了10.4%。这些性能表现是在意料之中的,因为社交网络信息对传统的
推荐系统起到辅助作用,对历史项目交互具有补充作用,因此,能很好得帮助用户学习用户
的偏好。
[0134] 其次,本实施例公开的GAASR在三个数据集上的整体性能优于其他的推荐系统方法(最优值以粗体表示)。除了Ciao的N@20与N@50的方法外,GAASR与其他基线相比,效果都
有所的提高。与其他基线相比,GAASR在Delicious数据集上的性能具有显著的提升,即使与
最好的基准方法Asr‑VAE相比,R@20、R@50及N@50分别提高了1.9%、1.0%和1.1%,而N@20
提高了5.2%。整体而言,GAASR超过了其他的基线,在Epinions数据集上的性能也有所提
升。
[0135] 最后,可以发现GAASR和Asr‑VAE、SEREC明显高于以前的社会化推荐算法。SEREC对暴露的项目设置不同的级别,但是CB灵活的将购买能力归因于一个属性(兴趣因素或者社
会因素),而Asr‑VAE归因于上下文因素。GAASR不仅将购买能力归因与上文因素,而且巧妙
地在社交嵌入部分引入图注意力机制。本文模型性能提升主要归因于生成对抗网络架构和
基于图注意力网络的社交嵌入。
[0136] 本实施例公开的一种基于图注意力对抗网络的社会化推荐方法,为了使社会影响力和潜在兴趣能在社会化推荐中发挥最大作用,使用了生成对抗网络,其中,生成器模仿用
户‑项目交互的数据分布,利用变分编码器(VAE)生成伪样本数据,鉴别器利用图注意力机
制提取社会结构中用户的特征,并将它作为社交网络嵌入,来鉴别是真实样本数据还是伪
样本数据,在社会化推荐模型中使用Hadamard投影的方法,在上下文加权函数中实现用户
特征的低秩双线池化,从而有效地避免兴趣空间的崩溃。由于在社会化推荐时,充分考虑了
社会结构和兴趣因素,从而使得社会化推荐结果更准确。
[0137] 实施例2
[0138] 在该实施例中,公开了一种基于图注意力对抗网络的社会化推荐系统,包括:
[0139] 信息获取模块,用于获取用户‑项目的交互信息和用户的社交网络信息;
[0140] 用户节点的特征获取模块,用于从社交网络信息中获取用户节点的特征;
[0141] 社会化推荐结果获取模块,用于将用户‑项目的交互信息、用户节点的特征和社交网络信息输入训练好的社会化推荐模型中,获取社会化推荐结果;
[0142] 其中,社会化推荐模型包括生成对抗网络和图自动编码器,将社交网络输入图自动编码器中,获得目标矩阵;将用户‑项目的交互信息输入生成对抗网络的生成器中,获得
用户的兴趣嵌入矩阵;将用户节点的特征输入生成对抗网络的鉴别器中,获得用户的社交
嵌入矩阵;通过社交嵌入矩阵对目标兴趣矩阵和兴趣嵌入矩阵的真假进行判别,获取社会
化推荐结果。
[0143] 实施例3
[0144] 在该实施例中,公开了一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成实施例1公开的一
种方法所述的步骤。
[0145] 实施例4
[0146] 在该实施例中,公开了一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成实施例1公开的一种方法所述的步骤。
[0147] 本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产
品的形式。
[0148] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0149] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
[0150] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
[0151] 最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然
可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何
修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。