Graph Neural Networks for Social Recommendation 论文解读

Graph Neural Networks for Social Recommendation

摘要

近年来,图神经网络可以自然地整合节点信息和拓扑结构,因此已被证明在图表数据的学习中具有强大的能力。GNNs的这些优点为推进社交推荐提供了巨大的潜力,因为社会推荐系统中的数据可以表示为用户-用户社交图和用户-项目图;而且学习用户和项目的潜在因素是关键。然而,构建基于GNNs(图神经网络)的社交推荐系统面临着挑战。例如,用户-项目图对交互及其相关的意见进行编码(the user-item graph encodes both interactions and their associated opinions);社交关系具有异质强度(social relations have heterogeneous strengths);用户涉及两个图(例如,用户-用户社交图和用户-项目图)(users involve in two graphs)。为了同时解决上述三个挑战,在本文中,对于社交推荐,我们提出了一种新的图神经网络框架(GraphRec)。特别是,我们提供了一种原则性的方法来联合捕获用户-项目图中的交互和意见(user-item间的联系以及user对item的评分),并提出了框架GraphRec,该框架连贯地对两个图和异构强度进行建模。在两个实际数据集上的广泛实验证明了所提出的框架GraphRec的有效性。

 构建基于GNNs的社交推荐系统面临着三个挑战:
(1)the user-item graph encodes both interactions and their associated opinions(user-item图包含了它们之间的交互以及user对item的评分)
(2)social relations have heterogeneous strengths(社交关系具有异质强度) 
(3)users involve in two graphs(user-user, user-item)(整合user-user graph和user-item graph)
	从而提出了本文的图神经网络框架(GraphRec),同时解决以上挑战。

1.介绍

近年来,推荐系统对社会关系的利用已经引起了越来越多的关注。这些社交推荐系统是根据用户通常通过他们周围的人获取和传播信息的现象发展起来的,比如同学、朋友或同事,说明用户的潜在社交关系可以在帮助他们过滤信息方面发挥着重要作用。因此,社交关系已被证明有助于提高推荐性能。

近年来,针对图数据的深度神经网络技术得到了巨大的发展,这些深度神经网络结构被称为图神经网络(GNNs),已被提出学习对图数据有意义的表示。他们的主要思想是如何利用神经网络迭代地聚合来自局部图邻域的特征信息,与此同时,节点信息可以在转换和聚合后通过一个图进行传播。因此,GNNs自然地整合了节点信息和拓扑结构,并被证明在表示学习中具有强大的能力。另一方面,社会推荐中的数据可以用两个图表示为图形数据。如图1所示,这两个图包括一个表示用户之间关系的社交图,以及一个表示用户和项目之间交互的用户-项目图。用户同时参与两个图中,谁可以联系它们。此外,社交推荐的自然方式是将社交网络信息合并到用户和项目的潜在因素学习中,学习项目和用户的表示是构建社交推荐系统的关键。因此,鉴于它们的优点,GNNs为推进社交推荐提供了前所未有的机会。

在这里插入图片描述

图1:社交推荐中的图表数据。它包含两个图,包括用户-项目图(左侧)和用户-用户社交图(右侧)。请注意,用户项目图边缘上的数字表示用户通过交互对项目的意见(或评分)。

同时,基于GNNs的社交推荐系统的构建面临着挑战。社交推荐系统中的社交图和用户-项目图从不同的角度提供了关于用户的信息。从两个图中聚合信息以学习更好的用户表示是很重要的。因此,第一个挑战如何内在地结合这两个图(用户-项目图,用户-用户图)。此外,用户-项目图不仅包含用户和项目之间的交互,而且还包括用户对项目的意见。例如,如图1所示,用户会与“裤子”和“笔记本电脑”等项目进行交互;用户会喜欢“裤子”,而不喜欢“笔记本电脑”。因此,第二个挑战是如何共同捕获用户和项目之间的交互和意见。此外,联网的世界中链接形成链接的低成本可以导致具有不同连接强度的网络(例如,强联系和弱联系混合在一起)。相比弱联系,用户可能会与强联系的人分享更多相似的口味。平等地考虑社会关系可能导致推荐性能的下降。 因此,第三个挑战是如何区分具有异质强度的社会关系。在本文中,我们的目标是建立基于图神经网络的社交推荐系统。特别地,我们提出了一种新的社会推荐图神经网络GraphRec,它可以同时解决上述三个挑战。

我们的主要贡献总结如下:
1.  我们提出了一种新的图形神经网络GraphRec,它可以连贯地对社会建议中的图形数据进行建模;·
2.  我们提供了一种原则性的方法来联合捕获用户项图中的交互和意见;·
3.  我们介绍了一种在数学上考虑社交关系的异构强度的方法;·
4.  我们证明了所提出的框架在各种真实世界数据集上的有效性。

本文的其余部分组织如下。 我们在第二节中介绍了所提出的框架。 在第三节中,我们对两个真实世界的数据集进行了实验,以说明该方法的有效性。在第四节中,我们回顾了与我们的框架有关的工作。最后,我们在第五节中总结了我们的工作和未来的方向。

2.提出的框架

在本节中,我们将首先介绍本文使用的定义和符号,接下来概述所提出的框架,然后详细介绍每个模型组件,最后讨论如何学习模型参数。

Symbols(符号) Definitions and Descriptions(定义和描述)
用户 u i u_i ui v j v_j vj的评分
在这里插入图片描述 项目 v j v_j vj的嵌入
在这里插入图片描述 用户 u i u_i ui的嵌入
在这里插入图片描述评级r的意见嵌入,如五星评级
在这里插入图片描述嵌入向量的长度
在这里插入图片描述用户 u i u_i ui交互的项目集
在这里插入图片描述使用 u i u_i ui直接连接的社交朋友集
在这里插入图片描述交互项目 v j v_j vj的用户集
在这里插入图片描述来自用户 u i u_i ui的项目集C(i)中的item-space项目空间用户潜在因素
在这里插入图片描述来自用户 u i u_i ui的社交朋友N(I)的social-space社交空间用户潜在因素
在这里插入图片描述用户 u i u_i ui的用户潜在因素,合并了项目空间 h i I h_i^I hiI和社交空间 h i S h_i^S hiS的组合
在这里插入图片描述用户 u i u_i ui的项目 v a v_a va的意见感知交互表示
在这里插入图片描述项目 v j v_j vj的用户 u t u_t ut的意见感知交互表示
在这里插入图片描述项目 v j v_j vj的项目潜在因素
在这里插入图片描述在对 h i I h^I_i hiI的贡献中,项目va的注意力
在这里插入图片描述在对 h i S h^S_i hiS的贡献中,邻用户uo的用户注意力
在这里插入图片描述在对 z j z_j zj的贡献中,用户ut的用户注意力
在这里插入图片描述用户 u i u_i ui对项目 v j v_j vj的预测评级值
在这里插入图片描述两个向量的连接操作
在这里插入图片描述用户-用户社交图
在这里插入图片描述用户-项目评级矩阵(用户-项目图)
在这里插入图片描述神经网络中的权重和偏差

2.1 定义和符号

设U={u1,u2,…, u n u_n un}和V={v1,v2,…, v m v_m vm}分别是用户和项目的集合,其中n是用户数,m是项目数。我们假设R∈Rn×m是用户-项目评分矩阵,也称为用户-项目图。如果 U i U_i Ui V j V_j Vj评级, R i j R_ij Rij是评分,否则我们使用0来表示从 U i U_i Ui V j V_j Vj的未知评级,即Rij=0。观察到的评分Rij可以看作是用户 U i U_i Ui对项目 V j V_j Vj的意见。在这里插入图片描述是已知评分的集合,在这里插入图片描述是未知评分的集合。
设N(i)是与 u i u_i ui直接连接的用户集,C(i)是 u i u_i ui与之交互的项目集,B(j)是与 V j V_j Vj交互的用户集。此外,用户还可以彼此建立社交关系。我们使用T∈Rn×n来表示用户社交图,如果 u j u_j uj u i u_i ui有关系,其中 T i j T_ij Tij=1,否则为零。给定用户-项目R图和社交图T,我们的目标是预测R中缺失的评级值。我们使用嵌入向量 p i p_i pi R d R^d Rd表示用户 u i u_i ui,嵌入向量 q j q_j qj R d R^d Rd表示项目 v j v_j vj,其中d是嵌入向量的长度。以下小节将提供关于这些嵌入向量的更多细节。本文中使用的数学符号汇总见表1。

2.2 提出的框架的概述

该模型的架构如图2所示。该模型由三个组件组成:用户建模、项目建模和评分预测。第一个组件是用户建模,它是为了学习用户的潜在因素。由于社会推荐系统中的数据包括两种不同的图,即社交图和一个用户-项目图,因此我们得到了从不同的角度学习用户表示的绝佳机会。因此,引入了两种聚合来分别处理这两个不同的图。一种是项目聚合,它可以通过用户-项目图(或项目空间)中用户和项目之间的交互来理解用户。另一种是社交聚合,即社交图中用户之间的关系,它可以从社会视角(或社交空间)对用户进行建模。然后,结合项目空间和社交空间的信息,直观地获取用户潜在因子。第二部分是项目建模,即了解项目的潜在因素。为了同时考虑用户-项目图中的交互和意见,我们引入了用户聚合,即在项目建模中聚合用户的意见。第三个部分是通过集成用户和项目建模组件,通过预测来学习模型参数。接下来,我们将详细介绍每个模型组件。
在这里插入图片描述

*解读*:
1.user modeling包含两个部分
①item aggregation:利用用户与项目的联系生成一个embedding
②Social aggregation:利用用户与用户之间的关系生成一个embedding
	user modeling部分的输出由上述两个embedding连接成的向量

2.item modeling利用用户对物品的关系与意见产生一个embedding

3.rating prediction部分利用上述两部分的向量,对用户对某个item的打分进行预估。

2.3 用户建模

用户建模的目的是学习用户潜在因素,用户 u i u_i ui的潜在因素为 h i h_i hi R d R^d Rd。挑战是如何内在地结合用户项目图和社交图。为了解决这个问题,我们首先使用两种类型的聚合从两个图中学习因子,如图2左侧所示。第一个聚合,记为项目聚合利用用户-项目图学习项目空间的用户潜在因子 h i I h^I_i hiI R d R^d Rd。第二种聚合是社会聚合,其中社会空间用户潜在因子 h i S h^S_i hiS R d R^d Rd是从社交图中学习到的。然后,将这两个因素结合在一起,形成最终的用户潜在因素 h i h_i hi。接下来,我们将介绍项目聚合、社交聚合以及如何结合项目空间和社交空间的用户潜在因素。

项目聚合
在这里插入图片描述

用户-项目图包含不仅用户和项目之间的相互作用,而且包含用户的意见(或评级得分),对于学习用户-空间的用户潜在因子,我们提供一个原则性的方法去共同捕获用户-项目图中的交互和意见,用于通过用户项图中的交互来对用户潜在因素进行建模。

项目聚合的目的是通过考虑用户界面与之互动过的项目以及用户对这些项目的看法来学习项目空间的用户潜在因子。为了从数学上表示这个集合,我们使用以下函数:
在这里插入图片描述
其中C(i)是用户 u i u_i ui交互过的项目集(或 u i u_i ui在用户-项目图中的邻居), x i a x_{ia} xia是一个表示向量,用来表示用户 u i u_i ui和项目 v a v_a va之间的意见-感知交互, A g g r e i t e m s Aggre_{items} Aggreitems是项目聚合函数。σ为非线性激活函数(即整流线性单元),W和b为神经网络的权值和偏秩。接下来,我们将讨论如何定义意见-感知交互表示 x i a x_{ia} xia和聚合函数 A g g r e i t e m s Aggre_{items} Aggreitems

用户可以在用户与项目的交互过程中,对项目表达自己的意见(或评分分数),表示为r。这些关于物品的观点可以捕获用户对物品的偏好,有助于对物品空间的用户潜在因素进行建模。为建立意见模型,对于每种类型的意见r,我们引入一个意见嵌入向量 e r e_r er R d R^d Rd,表示每个意见r为稠密的向量表示。例如,在一个5星评级系统中,对于每个r∈{1,2,3,4,5},我们引入一个嵌入向量 e r e_r er。针对用户 u i u_i ui和项目 v a v_a va有r意见的一个交互,我们通过多层感知机(MLP),建模意见-感知交互表示模型 x i a x_{ia} xia作为一个项目嵌入 q a q_a qa和意见嵌入 e r e_r er的组合。可以将其表示为 g v g_v gv,如图2所示,将交互信息与意见信息融合在一起。MLP以项目嵌入 q a q_a qa及其意见嵌入 e r e_r er的拼接作为输入。MLP的输出是 u i u_i ui, v a v_a va之间交互的意见-感知表示, x i a x_{ia} xia,如下:
在这里插入图片描述
其中⊕为两个向量之间的拼接运算。(解读:将2个特征拼接到一块

A g g r e i t e m s Aggre_{items} Aggreitems是一个流行的聚合函数,是均值运算符,其中我们取{ x i a x_{ia} xia,∀a∈C(i)}中向量的元素均值。这个基于均值的聚合器是局域光谱卷积[15]的线性近似,函数如下:

在这里插入图片描述
对于在基于均值的聚合器上,所有项目中 a i a_i ai固定为 1 ∣ C ( i ) ∣ \frac{1}{|C(i)|} C(i)1。它假设所有交互对用户 u i u_i ui都有同样的贡献。然而,这可能不是最佳的,因为交互对用户的影响可能会有很大的不同。因此,我们应该通过给每个交互分配一个权重来允许交互对用户的潜在因素做出不同的贡献。(解读:用户去超市买一包烟和一个打火机,用户其实更喜欢烟)

为了减轻基于均值的聚合器的局限性,受注意力机制的启发[3,38],一种直观的解决方案是调整αi,以了解目标用户 u i u_i ui,即为每个( v a v_a va u i u_i ui)对分配一个个性化的权重

在这里插入图片描述
其中 α i a α_{ia} αia表示在从交互历史C(i)描述用户 u i u_i ui的偏好时,在贡献用户 u i u_i ui的项目-空间潜在因素时,与 v a v_a va交互的注意力权重。

特别地,我们用一个两层神经网络参数化项目注意力 α i a α_{ia} αia,我们称之为注意力网络。注意力网络的输入是交互-意见感知表示和目标用户 u i u_i ui的嵌入 p i p_i pi。在形式上,注意力网络被定义为,

在这里插入图片描述
使用Softmax函数对上述注意得分进行归一化,得到最终的注意权重,可解释为交互对用户 u i u_i ui的项目-空间用户潜在因素的贡献为:

在这里插入图片描述

社会聚合
在这里插入图片描述

根据社会关联理论[20,21],用户的偏好与直接联系的社交朋友相似或受其影响。我们应该结合社会信息来进一步模拟用户的潜在因素。同时,从社交图上,用户间的联系强度可以进一步影响用户的行为。也就是说,学习社交-空间用户潜在因素应考虑社交关系的异质性优势。因此,我们引入了一种注意力机制来选择具有代表性的社交好友来表征用户的社交信息,并对其进行信息聚合

为了从这一社会视角表征用户潜在因素,我们提出了社交-空间用户潜在因素,即从社交图中聚合相邻用户的项目-空间用户潜在因素。特别地,社交空间用户 u i u_i ui潜在因子, h i S h^S_i hiS,是将用户 u i u_i ui的邻居N(i)的项目-空间用户潜因子进行聚合,如下所示:
在这里插入图片描述
其中 A g g r e n e i g b h o r s Aggre_{neigbhors} Aggreneigbhors为用户邻居的聚合函数。
A g g r e n e i g b h o r s Aggre_{neigbhors} Aggreneigbhors的一个自然聚集函数也是取{ h o I h_o^I hoI,∀o ∈ N(i)}中向量的元素均值的平均算子,起以下作用:
在这里插入图片描述

对于基于均值的聚合器,对所有邻居,其中 β i β_i βi固定为 1 ∣ N ( i ) ∣ \frac{1}{|N(i)|} N(i)1。它假设所有邻居对用户ui的表示都有同样的贡献。然而,正如前面提到的,在一个社交网络中,强关系和弱关系是混合在一起的,与弱关系相比,强关系的用户可能会分享更多相似的品味

因此,我们利用两层神经网络构建注意机制,提取对 u i u_i ui有重要影响的用户,并通过将社会注意力 β i o β_{io} βio h i o h_i^o hio和用户嵌入pi联系起来,对其联结强度进行建模,如下所示:

在这里插入图片描述
其中, β i o β_{io} βio可以被看作是用户之间的强度。

学习用户潜在因素
在这里插入图片描述

为了更好的了解用户潜在因素,需要将项目-空间的用户潜在因素和社交-空间的用户潜在因子结合起来考虑,因为社交图和用户-项目图从不同的角度提供了关于用户的信息。我们建议将这两个潜在因子结合到一个标准的MLP中,将项目-空间的用户潜在因子 h i I h^I_i hiI和社交-空间的 h i S h^S_i hiS的用户潜在因子在输入到MLP之前连接起来,形成最终的用户潜在因子。形式上,用户潜在因子 h i h_i hi定义为:

在这里插入图片描述
其中,l是一个隐藏层的索引。

***解读***
1. User modeling

<1> Item aggregation

User modeling--Item Aggregation模块
这一模块是捕获user-item graph中的信息到用户的隐向量,将Item embedding和rating embeddi                ng拼接,通过一个Attention网络进行权重学习,再聚合成用户的隐式表示。

<2> Social aggregation

User modeling--Social Aggregation模块
对于这一部分的用户表示,是捕获user-user graph中的信息,将用户的邻居信息进行聚合,通过一个Attention网络进行权重学习,再聚合成用户的隐式表示。
<3> user Latent Factor

这一部分就很简单了,将上述两部分得到的embedding向量拼接,再通过一个MLP得到用户向量的最终嵌入表示。

2.4 项目建模

在这里插入图片描述

如图2右侧所示,项目建模用于学习通过用户聚合的项目 v j v_j vj的项目潜在因子,表示为 z j z_j zj。项目与用户-项目图相关联,该图包含交互以及用户的意见。因此,需要共同捕捉用户-项目图中的交互和意见,进一步学习项目潜在因素。

用户聚合。同样,我们使用类似的方法,通过项目聚合来学习项目-空间的用户潜在因素。对于每个项目 v j v_j vj,我们需要从与 v j v_j vj交互过的用户集合(表示为B(j))中聚合信息。

即使是同一个项目,在用户与项目的交互过程中,用户们也可能表达不同的意见。这些来自不同用户的意见可以通过用户提供的不同方式捕捉同一项目的特征,有助于对项目潜在因素进行建模。对于一个来自 u t u_t ut v j v_j vj有r意见的交互,我们引入了一个意见-感知的交互用户表示 f j t f_{jt} fjt,它是由基本用户嵌入 p t p_t pt和意见嵌入 e r e_r er通过MLP得到的,记作 g u g_u gu g u g_u gu将交互信息与意见信息进行融合,如图2所示:
在这里插入图片描述
然后,为了学习项目潜在因子 z j z_j zj,我们还提出为项目 v j v_j vj聚合用户在B(j)中的意见-感知交互表示。用户聚合函数表示为 A g g r e u s e r s Aggre_{users} Aggreusers,{ f j t f_{jt} fjt , ∀t ∈ B(j)} 中用户的意见感知交互表示聚合为:

在这里插入图片描述
此外,我们还引入了一种注意力机制,利用两层神经注意网络的注意机制,区分用户的重要权重 µ j t µ_{jt} µjt,以 f j t f_{jt} fjt q j q_j qj作为输入,
在这里插入图片描述
用户注意力 µ j t µ_{jt} µjt旨在捕获用户-项目交互对学习项目潜在因素的异质影响

2.5 评分预测

在这里插入图片描述

在本小节中,我们将设计推荐任务来学习模型参数。有各种各样的推荐任务,如项目排名和评分预测。在本研究中,我们将所提出的GraphRec模型应用于评分预测的推荐任务。有了用户和项目的潜在因子(即 h i h_i hi z j z_j zj),我们可以先把它们连接起来[ h i h_i hi z j z_j zj] 将其输入MLP进行评分预测为:
在这里插入图片描述
其中l为隐含层索引, r i j ’ r^’_{ij} rij u i u_i ui v j v_j vj的预测评分。

*解读*
最终的评分预测模块将User modeling 和 Item modeling得到的用户向量和项目向量拼接,通过一个MLP预测最终评分。

2.6 模型训练

为了估计GraphRec的模型参数,我们需要指定一个要优化的目标函数。由于我们在这项工作中关注的任务是对评分预测,一个常用的目标函数被表述为:
在这里插入图片描述
其中,|O|是观察到的评分数量,而 r i j r_{ij} rij是由用户i在项目j上真实评分。

为了优化目标函数,我们在实现中采用RMSprop[31]作为优化器,而不是普通的SGD(随机梯度下降)每次随机选择一个训练实例,并向其负梯度的方向更新每个模型参数。在我们的模型中有三种嵌入,分别是项目嵌入 q j q_j qj、用户嵌入 p i p_i pi和意见嵌入 e r e_r er。在训练阶段随机初始化并共同学习。由于原始特征非常大且非常稀疏,我们不使用one-hot向量来表示每个用户和项目。通过将高维稀疏特征嵌入到低维潜在空间中,模型易于训练[11]。

意见嵌入矩阵e取决于系统的评分范围。例如,对于一个5星评分系统,意见嵌入矩阵e包含5个不同的嵌入向量来表示{1,2,3,4,5}中的分数。过拟合是深度神经网络模型优化中的一个永恒问题。为了缓解这个问题,在我们的模型中应用了dropout策略[26]。dropout的思想是在训练过程中随机丢弃一些神经元当更新参数时,只有部分参数将被更新。此外,由于测试时禁用dropout,使用整个网络进行预测。

3 实验

3.1 实验设置

3.1.1 数据集

在我们的实验中,我们选择了两个具有代表性的数据集Ciao和epinions,它们来自流行的社交网站Ciao (http://www.ciao.co.uk)和Epinions (www.epinions.com)。每个社交网络服务都允许用户对项目进行评分,浏览/撰写评论,并将朋友添加到他们的“信任圈”中。因此,它们提供了大量的评分信息和社会信息。评分等级从1到5。我们根据{1,2,3,4,5}中的5个得分,随机初始化5个不同的嵌入向量的意见嵌入。这两个数据集的统计数据如表2所示。

在这里插入图片描述

3.1.2 评估指标

为了评估推荐算法的质量,采用了两种常用的度量指标,即平均绝对误差(MAE)和均方根误差(RMSE)[34]来评估预测精度MAE和RMSE值越小,预测精度越高。注意,RMSE或MAE条件的微小改善在少量的推荐中可以有显著的影响。

3.1.3 基线

为了评估该方法的性能,我们将GraphRec与传统推荐系统、传统社会推荐系统和基于深度神经网络的推荐系统三组方法进行了比较。对于每个组,我们选择有代表性的基线,并在下面详细说明。

• PMF[24]:概率矩阵分解仅利用用户-项目评分矩阵,通过高斯分布对用户和项目的潜在因子进行建模。
•SoRec[17]:社交推荐对用户-项目评分矩阵和用户-用户社会关系矩阵进行协因子分解。
•SoReg[18]:社会正规化模型将社会网络信息作为正规化术语来约束矩阵分解框架。
•SocialMF[13]:将信任信息和信任信息的传播考虑到推荐系统的矩阵分解模型中。
•TrustMF[37]:该方法采用矩阵分解技术,根据信任的方向性对信任网络进行分解,将用户映射到两个低维空间:信任空间和受信任空间。
•NeuMF[11]:该方法是一种具有神经网络架构的最先进的矩阵分解模型。最初的实现是针对推荐排序任务,我们将其损失调整为用于评分预测的平方损失。
•DeepSoR[8]:该模型利用深度神经网络从社会关系中学习每个用户的表示,并集成到概率矩阵分解中进行评分预测。
•GCMC+SN[1]:该模型是一个具有图神经网络架构的最先进的推荐系统。为了将社交网络信息整合到GCMC中,我们使用node2vec[9]生成用户嵌入作为用户其他信息,而不是直接使用原始特征社交联系 (T∈ R n × n R_{n×n} Rn×n)。这是因为原始的特征输入向量是高度稀疏和高维的。利用网络嵌入技术可以将原始的输入特征向量压缩为低维密集向量,从而使模型易于训练。

PMF和NeuMF是不含社交网络信息的纯协同过滤模型,其他都是社会推荐模型。此外,我们还比较了GraphRec与两种最先进的基于神经网络的社会推荐系统DeepSoR和GCMC+SN。

3.1.4 参数设置

我们在著名的神经网络Python库-Pytorch2的基础上实现了我们提出的方法。对于每个数据集,我们使用x%作为学习参数的训练集,(1−x%)/2作为调优超参数的验证集,(1−x%)/2作为最终性能比较的测试集,其中x变化为{80%,60%}。对于嵌入尺寸d,我们测试了[8,16,32,64,128,256]这些值。分别在[32,64,128,512]和[0.0005,0.001,0.005,0.01,0.05,0.1]中搜索批大小和学习速率。此外,我们还将隐层大小设置为与嵌入大小相同,激活函数设置为ReLU。无需特别说明,我们为所有的神经组件使用了三个隐藏层。执行早期停止策略,如果验证集上的RMSE连续增加5个时期,我们就停止训练。对于所有的神经网络方法,我们以高斯分布随机初始化模型参数,其中的均值和标准差分别为0和0.1。基线算法的参数在相应的论文中初始化,然后仔细调整以达到最佳性能。

3.2 推荐系统的性能比较

我们首先比较所有方法的推荐性能。表3显示了Ciao和Epinions数据集上推荐方法的总体评分预测误差w.r.t. RMSE和MAE。我们有以下主要发现:

在这里插入图片描述
•SoRec、SoReg、SocialMF和TrustMF的表现总是优于PMF。所有这些方法都基于矩阵分解。SoRec、SoReg、SocialMF和TrustMF利用评分和社交网络信息;而PMF只使用评分信息。这些结果表明,社交网络信息对推荐的评分信息是一种补充
•NeuMF获得比PMF更好的性能。这两种方法都只利用评分信息。然而,NeuMF是基于神经网络体系结构的,这表明了神经网络模型在推荐系统中的强大功能
•DeepSoR和GCMC+SN的表现优于SoRec、SoReg、SocialMF和TrustMF。它们都利用了评分和社交网络信息。然而,DeepSoR和GCMC+SN是基于神经网络架构的,这进一步说明了神经网络模型在推荐方面的强大作用。
•在基线中,GCMC+SN表现出相当强的性能。这意味着GNNs在图数据的表示学习方面是强大的,因为它自然地集成了节点信息和拓扑结构。
•我们的方法GraphRec始终优于所有基线方法。与DeepSoR和GCMC+SN相比,我们的模型提供了先进的模型组件来整合评分和社交网络信息。此外,我们的模型提供了一种考虑用户-项目图中的交互和意见的方法。在下面的小节中,我们将提供进一步的研究,以更好地理解模型组件对建议的框架的贡献。

综上所述,对比结果表明:
(1)社交网络信息有助于推荐
(2)神经网络模型可以提高推荐性能
(3)所提出的框架优于代表性基线

3.3 模型分析

在本小节中,我们研究模型组件和模型超参数的影响。

3.3.1 社交网络和用户意见的影响

在最后的小节中,我们已经证明了所提出的框架的有效性。该框架提供了模型组件
(1)整合社交网络信息
(2)整合用户与项目交互的意见。为了理解GraphRec的工作原理,我们将GraphRec与它的两个变体:GraphRec - SN和GraphRec - Opinion进行比较。下面定义了这两个变量:
GraphRec - SN:删除GraphRec的社交网络信息。该变量仅使用项目-空间的用户潜在因子 h i I h_i^I hiI去表示用户潜在因子 h i h_i hi,而忽略社交-空间用户潜在因子 h i S h_i^S hiS;
•**GraphRec - Opinion:**对于学习项目-空间的用户潜在因子和项目潜在因子,在学习 x i a x_{ia} xia f j t f_{jt} fjt时,剔除了意见嵌入。这种变体忽略了用户对用户-项目交互的意见。

表3给出了GraphRec及其变体在Ciao和Epinions上的性能。从结果来看,我们有以下发现:
在这里插入图片描述

•社交网络信息。我们现在专注于分析社交网络信息的有效性。GraphRec-SN的性能比GraphRec差。验证了社交网络信息对学习用户潜在因素,提高推荐性能的重要性。
•交互中的意见。我们可以看到,在没有意见信息的情况下,评分预测的性能显著恶化。例如,平均而言,Ciao和Epinions在RMSE度量上的相对减少量分别为3.50%和2.64%,在MAE度量上分别为5.84%和5.02%。验证了我们的假设,即关于用户-项目交互的意见具有有助于学习用户或项目潜在因素和提高推荐性能的信息。

3.3.2 注意力机制的作用

为了更好地理解所提出的GraphRec模型,我们进一步评估了GraphRec的关键组成部分-注意力机制。在聚合过程中存在三种不同的注意力机制,分别是项目注意力α、社交注意力β和用户注意力µ。我们比较了GraphRec与它的四种变体:GraphRec-α, GraphRec-β, GraphRec-α&β, GraphRec-µ。这四种变体的定义如下:

•GraphRec-α: GraphRec的项目注意力α在聚合项目的意见-感知交互过程中被消除。这种变体在项目聚合上使用基于均值的聚合函数来建模项目空间的用户潜在因素。
•GraphRec-β:社交注意力β是模型用户的联系强度。GraphRec的社交注意力β在变体中聚合用户的邻居时被消除。该变体在社交聚合上使用基于均值的聚合函数来建模社交-空间的用户潜在因素。
•GraphRec-α&β:这种变体消除了两种注意机制(项目注意力α和社会注意力β)在项目聚合和社会聚合上建模用户潜在因子。
•GraphRec-µ:在聚合意见-感知交互用户表示时,GraphRec的用户注意力µ被消除。这种变体在用户聚合上使用基于均值的聚合函数来建模项目潜在因子。

不同注意力机制在GraphRec上的结果如表4所示。从结果来看,我们有以下发现,
在这里插入图片描述

•并非所有用户的交互项目(购买历史)对项目-空间用户潜在因素的贡献都是相等的,并非所有的互动用户(买家)对学习项目潜在因素的重要性都是相同的。基于这些假设,我们的模型通过使用两种不同的注意力机制(α和µ)来考虑用户和项目之间的这些差异。结果表明,GraphRec-α和GraphRec-µ的性能比GraphRec差。这些结果证明了注意力机制对项目聚合和用户聚合的好处。
•如前所述,与弱关系相比,用户更有可能分享更多相似的品味与拥有强关系人。社交聚集中的注意力机制β考虑了社交关系的异质性强度。当注意机制β被移除时,GraphRec-β的表现显著下降。这证明了我们的假设:在社交聚集过程中,不同的社交好友对学习社交空间用户潜因子的影响是不同的。区分不同力量的社交关系是很重要的。

综上所述,GraphRec可以通过注意力机制捕捉所提框架聚合操作中的异构性,从而提高推荐性能

3.3.3 嵌入大小的影响

在本小节中,分析用户嵌入p、项目嵌入q和意见嵌入e的嵌入大小对我们模型性能的影响。
在这里插入图片描述

图5给出了我们提出的模型在Ciao和Epinions数据集上嵌入尺寸的性能比较。一般情况下,随着嵌入尺寸的增大,性能先增大后减小。当嵌入尺寸从8增大到64时,可显著提高性能。然而,由于嵌入尺寸为256,GraphRec降低了性能。证明了使用大量的嵌入尺寸具有强大的表示功能。但是,如果嵌入的长度过大,我们的模型的复杂度会明显增加。因此,我们需要找到一个合适的嵌入长度,以便在性能和复杂性之间取得平衡。

4 相关工作

在本节中,我们简要回顾了一些关于社交推荐、用于推荐的深度神经网络技术和高级图神经网络的相关工作。

近年来,利用社会关系进行推荐已经引起了极大的关注[27,28,37]。关于这些模型的一个常见假设是,用户的偏好与他/她周围的人(最近的邻居)相似或受其影响,这可以通过社交相关理论加以证明[20,21]。与此同时,SoRec[17]提出了一种协因子分解方法,该方法具有一个由评分和社交关系分解的共同潜在用户特征矩阵。
TrustMF[37]模拟了用户之间的相互影响,并通过分解社交信任网络,将用户映射到两个低维空间:信任空间和受信任空间。
SoDimRec[30]首先采用社区检测算法将用户划分为多个集群,然后利用社会关系的异质性和弱依赖连接进行推荐。关于社会推荐系统的全面概述可以在调查[29]中找到。

近年来,深度神经网络模型对学习有效的特征表示在各个领域产生了巨大的影响,如语音识别[12]、计算机视觉(CV)[14]和自然语言处理(NLP)[4]。最近一些研究已经将深度神经网络应用到推荐任务中,并取得了很好的效果[41],但大多数研究都使用深度神经网络来建模音乐[32]的音频特征、项目的文本描述[3,33]和图像[40]的视觉内容。

此外,NeuMF[11]提出了一种神经协同过滤框架来学习用户与物品之间的非线性交互。然而,直到最近,深度神经网络在社会推荐系统中的应用还很少见。其中,NSCR[35]将NeuMF[11]模型扩展到跨域社交推荐,即将信息域的条目推荐给社交网络的潜在用户,提出了一个神经网络的社会协作排序推荐系统。然而,限制是NSCR要求用户拥有一个或多个社交网络账户(如Facebook、Twitter、Instagram),这限制了数据收集及其应用的实践。SMR-MNRL[42]从学习用于排名的多模态异构网络表示的角度,在社交媒体中开发了社交-意识电影推荐。
他们利用递归神经网络和卷积神经网络学习电影文本描述和海报图像的表示,并将基于随机漫步的学习方法应用到多模态神经网络中。在[35][42]的所有这些工作中,他们解决了跨域社会推荐的排名度量的任务,这与传统的社会推荐系统不同。

与我们的任务最相关的神经网络包括DLMF[6]和DeepSoR[8]。DLMF[6]在评分上使用自动编码器来学习表示,以初始化现有的矩阵分解。提出了一种基于矩阵分解的两阶段信任-感知推荐过程,利用深度神经网络进行矩阵分解初始化,综合用户兴趣及其信任好友的兴趣以及社区效应的影响进行推荐。DeepSoR[8]将用户社交关系的神经网络集成到概率矩阵分解中。他们首先使用预先训练的节点嵌入技术来表示用户,并进一步利用k近邻来连接用户嵌入特征和神经网络。

最近,图神经网络(GNNs)已经被证明能够对图结构数据进行学习[2,5,7,15,25]。在推荐系统的任务中,用户与项目的交互包含了用户对项目的评分,这是一种典型的图数据。因此,我们提出了GNNs来解决推荐问题[1,22,39]。sRMGCNN[22]采用GNNs提取用户和项目的图嵌入,然后结合递归神经网络进行传播过程。GCMC[1]提出了一种图自动编码框架,通过在用户-项目图上传递可分辨消息的形式产生用户和物品的潜在特征。PinSage[39]提出了一种随机漫步图神经网络来学习webscale图中的节点嵌入。尽管以前的工作取得了令人瞩目的成功,但很少有人关注GNNs的社交推荐。在本文中,我们提出了一种用于社交推荐的图神经网络来填补这一空白。

5 结论以及未来工作

我们提出了一个图网络模型(GraphRec)来对社会推荐进行评分预测。特别地,我们提供了一种原则性的方法来共同捕获用户-项目图中的交互和意见。我们的实验表明,意见信息在提高模型性能方面起着至关重要的作用。此外,我们的GraphRec可以通过考虑社交关系的异质性优势来区分关系强度。在两个真实世界的数据集上的实验结果表明,GraphRec可以优于最先进的基线。

目前,我们只将社交图整合到推荐中,而许多现实世界的行业都有丰富的用户和物品的其他方面信息。例如,用户和项目被丰富的属性相关联。因此,探索具有属性的图神经网络推荐将是一个有趣的未来方向。除此之外,现在我们认为评分和社会信息都是静态的。然而,评分和社交信息自然是动态的。因此,我们将考虑建立动态的图神经网络的社交推荐。

*解读*
未来工作
探索用户和项目之间的更丰富、复杂的属性
考虑评分和社交关系的动态性
  • 5
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
混合图神经网络用于少样本学习。少样本学习是指在给定的样本数量非常有限的情况下,如何进行有效的学习和分类任务。混合图神经网络是一种结合了图神经网络和其他模型的方法,用于解决少样本学习问题。 首先,混合图神经网络将图神经网络与其他模型结合起来,以充分利用它们在不同任务上的优势。图神经网络可以有效地处理图结构数据,并捕捉节点之间的关系,而其他模型可能在处理其他类型的数据时更加优秀。通过将它们结合起来,混合图神经网络可以在少样本学习中更好地利用有限的数据。 其次,混合图神经网络可以通过在训练过程中使用一些预训练模型来提高学习效果。预训练模型是在大规模数据集上进行训练得到的模型,在特定任务上可能有较好的性能。通过将预训练模型与图神经网络结合,混合图神经网络可以在少样本学习中利用预训练模型的知识,以更好地适应有限的数据。 最后,混合图神经网络还可以通过设计适当的注意力机制来提高学习效果。注意力机制可以使网络更加关注重要的特征和关系,忽略无关的信息。在少样本学习中,选择性地关注有限的样本和特征对于提高学习的效果至关重要。混合图神经网络可以通过引入适当的注意力机制来实现这一点,以提取和利用关键信息。 综上所述,混合图神经网络是一种用于少样本学习的方法,它结合了图神经网络和其他模型的优势,并利用预训练模型和适当的注意力机制来提高学习效果。这种方法对于在有限数据条件下执行有效的学习和分类任务非常有帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值