社交媒体的普及, 产生了海量社交网络数据. 社交推荐的目的是利用社交网络数据中存在的社交关系为每个用户生成个性化的推荐项目. 在此过程中, 对社交关系的建模至关重要. 典型的社交关系建模方法, 如: TrustSVD[1]和ContextMF[2]同时考虑了评分和信任信息对用户建模的影响. 此外, 后者还提出了一种新的概率矩阵分解模型来融合潜在空间中的个人偏好和交互信息. 以往的研究证实了结合社交关系建模方法, 可以提高传统推荐系统的性能.
目前, 现有的社交关系建模方法主要关注显式关系的建模[1, 3]. 这些方法在一定程度上提升了推荐系统的性能, 并部分缓解了数据稀疏问题. 然而, 在现实世界中, 用户的选择和偏好不仅会受到显式关系的影响, 还会受到高阶隐式关系的影响, 这称为社交影响传播现象[4]. 图1以电影推荐为例, 展示了这一传播学现象. 假定用户
|
图 1 社交影响传播示例 (实线表示用户间的社交关系. 虚线表示用户和项目的交互关系) |
(1) 在现实的社交网络中, 数据具有稀疏性并且存在噪声.
(2) 传统的社交推荐方法很少考虑到高阶隐式关系对不同用户具有不同重要性这一现象. 直观上看, 对于具有很多一阶邻居的节点, 建模显式关系可能就足以表征用户. 因此, 高阶隐式关系对此类用户而言, 可能就不那么重要, 而对于具有少量一阶邻居的用户而言, 建模高阶隐式关系的重要性则不言而喻.
(3) 在高阶隐式关系建模中, 很难模拟和保留社交影响传播过程.
针对上述挑战, 本文提出的AHIRM模型能够自适应地对高阶隐式关系进行建模. 此模型不仅能有效过滤不可靠关系, 挖掘出用户间的潜在可靠关系, 还能够自适应地构建用户间的高阶隐式关系, 并在建模过程中同时考虑社交结构和个人偏好的影响, 从而提高推荐性能. 具体而言, 该模型由3个部分组成: 首先, 本文首次提出了潜在用户候选对的概念, 利用杰卡德和余弦相似度计算函数去除用户间的不可靠关系并发现一些新的潜在可靠关系, 以实现对噪声数据的过滤与潜在可靠关系的生成; 其次, 考虑到高阶隐式关系建模在不同用户间的差异性, 设计了一个自适应随机游走生成器, 根据节点的重要性自适应地生成控制随机游走倾向的进出参数, 个性化地为用户捕获不同阶数的邻居, 使生成的节点序列更加符合社交网络中节点的传播特性, 构建用户间的高阶隐式关系, 进而进行图重构; 最后, 为了进一步缓解数据稀疏性带来的不利影响, 本文采用基于GCN的用户表示学习组件. 通过为邻居节点分配不同的权重, 灵活地调整学习过程, 能够在更细的粒度上区分不同邻居节点的重要性, 生成更加准确的用户嵌入. 在此过程中, 模拟并保留了社交影响传播过程. 据了解, 还没有相关研究过多关注高阶隐式关系建模在不同用户间的差异性. 在3个真实数据集上的大量实验结果表明该模型的有效性和合理性.
本文第1节对推荐系统和高阶隐式关系建模的相关工作进行回顾. 第2节对基本概念进行描述并给出问题定义. 第3节详细介绍本文算法. 第4节给出在真实数据集上的实验结果, 并对实验结果加以分析. 第5节对本文工作进行总结和展望.
1 相关工作本文的工作涉及基于图神经网络(graph neural network, GNN)的推荐系统和高阶隐式关系建模两个方面, 本节对这两方面工作进行总结与分析.
1.1 基于GNN的推荐系统推荐中的大多数数据都可以抽象成图结构. 近年来, 由于GNN在图数据的表示学习方面展现出的卓越性能, 越来越多的人开始研究基于GNN的推荐系统. 不同类型的信息网络可以表征为不同结构的图, 例如: 消费网络具有两种类型的节点, 可以抽象成用户-项目二部图; 社交网络是一张同构图, 只包含一种类型的节点; 而知识图谱[6, 7]是异构图, 具有多种类型的节点和边. Malik等人[8]根据使用信息的类型, 对现有的基于GNN的推荐系统进行了总结, 将推荐系统分为两类: 基于用户-项目交互信息的推荐系统和基于社交网络增强的推荐系统.
(1)基于用户-项目交互信息的推荐系统
为了充分发挥GNN在二部图上的建模优势, 研究人员需要考虑怎样将交互项目以及用户的信息传递给用户和项目, 以获得最终的表示. 图的结构对传递信息的类型和范围至关重要. Sun等人提出了NIA-GCN模型[9], 直接在原始用户-项目二部图上应用GNN进行推荐. 然而, 此方法存在以下两方面的限制: ① 仅使用原始用户-项目二部图, 所包含的信息不足以学习出一个好的用户-项目表示; ② 当数据量非常大的时候, 在原始图上传播信息的开销巨大. 因此, 为了丰富原有图结构, Multi-GCCF[10]通过建立用户-用户图和项目-项目图来提高推荐质量. 针对在原始图上传播信息的挑战, 研究人员们提出了图采样方法, 让模型能够在大规模图数据上实现高效、准确的图神经网络训练. Ying等人[11]提出了图卷积网络算法PinSage, 结合随机游走和图卷积操作生成包含图结构和节点特征信息的节点嵌入. 这类模型的性能取决于采样策略, 本文对采样策略进行了进一步的研究和优化. 聚合策略也是图结构中信息传播的重要因素, 它决定了邻居传播的信息量. HashGNN[12]使用一种最直接的平均池化聚合策略, 不加区分地看待每个邻居. 这种方法的实现方式简单, 但现实世界不同邻居对个人偏好的影响程度存在很大差异. 因此, LR-GCCF模型[13]依据图结构为节点分配不同的权重. 然而这些方法仅根据图结构决定权重, 而忽视了用户的个人偏好. NGCF[14]依据人们更有可能向与自己喜好相似的朋友推荐符合用户兴趣的项目这一心理学现象, 提出运用注意力机制区分邻居节点的重要性, 以达到更加准确的推荐结果.
(2)基于社交网络增强的推荐系统
社交网络增强的推荐系统旨在利用社交关系所隐含的用户相关性来提高传统推荐系统的性能. 由于社交推荐系统引入了多种社交信息的特性, 能获取到更准确的个人偏好, 高效解决冷启动、数据稀疏等问题[15,16]. 因此, 近年来, 社交推荐的研究已经成为一个热门话题. 例如, LOCABAL模型[17]运用局部和全局社会信息进行推荐. TrustSVD[1], 一种基于信任的矩阵分解技术, 综合使用评级和信任信息进行推荐. ARSE[18]是一种基于递归神经网络结构的社会推荐模型, 主要从动态兴趣和静态兴趣两方面对用户偏好进行建模. 虽然上述工作部分缓解了数据稀疏的问题, 但它们主要关注于显式关系的建模, 而忽略了高阶隐式关系的影响. DiffNet[19]模型能够模拟社交网络中的社会扩散过程, 从而捕获用户的高阶关系以生成更加准确的用户和项目嵌入. DiffNet++[20]是对DiffNet的扩展, 此方法能在统一的框架内联合建模影响力扩散和兴趣扩散过程. 此类方法考虑到高阶隐式关系, 但并未考虑到高阶隐式关系对不同用户具有不同重要性. 由于GNN能够建模用户社交影响的递归扩散过程, 它已成为社交关系建模的研究热点. 其中, 具有代表性的工作如NGCF[14]、GraphRec[21]等证实了运用GNN进行建模能够有效增强模型性能. 在建模过程中, 一个重要的问题是邻居影响力的建模. 然而, 大多数情况下, 社交网络中仅描述了用户之间的关系, 却没有刻画社交关系的强度. 因此, 研究人员进一步对社交影响强度进行了研究. DiffNet++[20] 运用注意力机制区分不同邻居社交影响力强度, 提高了模型的整体性能. 然而, 上述方法没有考虑到不同邻居由于受到所处环境以及个人偏好等因素的影响, 其重要性也存在明显差异. 本文所提出的方法将邻居的权重与社交结构、个人偏好联系起来, 既表征了用户的社交关系, 又表征了用户偏好, 以期提升推荐系统性能.
1.2 高阶隐式关系建模作为一种普遍存在的社交结构, 隐式关系的挖掘有着广泛的应用. 其中, 高阶隐式关系建模是一个非常热门的研究方向. 例如, TFBA[22], 一种基于张量因子分解的高阶关系模式归纳法. 联合分解从高阶张量导出的多个低阶张量以克服数据稀疏的问题. 高阶隐式关系建模的关键之一是对社交影响传播过程的表征. 受到图卷积神经网络(GCN)的逐层更新机制的启发, 人们提出运用GCN建模社交影响传播过程. GCN将卷积运算的思想扩展到图数据上. 现有的GCN方法主要分为两类: 谱方法和非谱方法. 谱方法希望借助图谱理论实现图上的卷积操作. 在图形信号处理方面, 通过引入滤波器, 谱方法[23]将图卷积运算定义为从图形信号中去除噪声. 非谱方法[24]基于节点的空间关系定义图卷积操作, 将图卷积运算定义为聚合来自相邻节点的特征信息. 消息传递神经网络(MPNN)[25]将图卷积定义为消息传递过程, 通过
本文的工作深受这些开创性工作的启发. 由于本文提出的任务涉及特定的研究挑战, 以往的工作很少考虑到高阶隐式关系对不同用户具有不同重要性这一特殊现象. 因此, 本文的研究重点在于如何为每个用户自适应地制定相应的高阶隐式关系聚合策略.
2 问题定义 2.1 基本概念定义1. 社交网络. 用图
定义2. 结构相似度. 结构相似度定义为两个用户在社交结构上的相似程度. 采用杰卡德相似系数计算用户
| $ {\mathit{Sim}}\_structure({u_i}, {u_j}) = \frac{{|{N_{{u_i}}} \cap {N_{{u_j}}}|}}{{|{N_{{u_i}}} \cup {N_{{u_j}}}|}} $ | (1) |
其中,
定义3. 偏好相似度. 偏好相似度定义为两个用户在历史交互项目上的相似程度. 采用余弦相似度计算用户
| $ {\mathit{Sim}}\_{\mathit{preference}}({u_i}, {u_j}) = \frac{{{{\vec{r} }_i} \cdot {{\vec{r} }_j}}}{{||{{\vec{r} }_i}|| \cdot ||{{\vec{r} }_j}||}} $ | (2) |
其中,
定义4. 整体相似度. 整体相似度表示用户在社交网络和用户-项目交互网络上的综合相似度. 通过用户的社交结构和个人偏好进行计算, 同时使用权重动态决定各部分影响程度, 即通过对结构相似度
| $ {\mathit{Sim}}({u_i}, {u_j}) = \sigma ({w_1}{\mathit{Sim}}\_structure({u_i}, {u_j}) + {w_2}{\mathit{Sim}}\_{\mathit{preference}}({u_i}, {u_j})) $ | (3) |
其中,
定义5. 潜在用户候选对. 若用户
定义6.
定义7.
如图2所示, 假定用户
|
图 2 二阶嵌入传播示例 |
本文用
一个好的高阶隐式关系建模方法需要很好地表征现实世界中的网络. 为了在社交推荐场景下实现这一目标, 本文提出的自适应高阶隐式关系建模方法(AHIRM)包含以下3个部分.
(1) 结合用户的社交结构和个人偏好, 设计不可靠关系过滤及潜在可靠关系发现规则, 更新原始的社交网络, 旨在避免不可靠关系带来的负面影响, 并部分缓解数据稀疏的问题.
(2) 根据网络中节点的中心度, 设计自适应随机游走算法为用户捕获不同阶数的邻居, 构建用户间的高阶隐式关系, 进而重构社交网络.
(3) 基于GCN的逐层更新机制, 定义高阶隐式关系的嵌入传播过程, 建模社交影响传播过程, 以学习出更加准确的用户表示.
AHIRM的整体框架如图3所示. 首先, 结合用户的社交结构和个人偏好进行相似度计算, 滤除社交网络中的不可靠关系, 并补全新的潜在可靠关系, 构建一个新的社交网络; 其次, 对更新后的社交网络执行本文提出的自适应随机游走算法, 捕获不同阶数的邻居, 构建用户间的高阶隐式关系, 进而重构社交网络; 最后, 在用户表示学习模块定义了高阶隐式关系的嵌入传播过程, 并利用GCN来聚合高阶隐式关系, 从而更有效地对高阶隐式关系进行建模.
|
图 3 AHIRM模型的整体框架(实线表示用户间的社交关系. 虚线表示用户和项目的交互关系) |
通常, 将社交关系应用于推荐系统能够提升传统推荐系统的性能. 然而, Tang等人的调查[27]表明人们高估了此方法所带来的性能提升. 主要原因在于: (1)社交关系质量参差不齐. 建立关系的低成本使得一个用户在社交网络中存在很多个朋友. 然而, 并不是所有社交关系都有利于推荐任务. 例如, 用户可能存在一些不可靠的朋友, 他们之间既没有共同好友, 偏好也完全不相似, 不加区分的使用所有显式关系, 可能会引入噪声数据, 对推荐系统性能产生负面影响. 此外, 由于垃圾邮件发送者以及僵尸程序的存在, 用户之间可能会建立虚假的关系, 这些关系也会降低推荐性能; (2)社交关系和用户-项目交互数据一样存在稀疏性.
针对上述两点原因, 本文设计了不可靠关系过滤及潜在可靠关系生成模块. 通过过滤不可靠关系和生成潜在可靠关系来解决这个问题. 针对噪声数据, 根据公式(3), 通过设置权重
算法1. 不可靠关系过滤及潜在可靠关系生成.
输入: 用户集
输出: 滤除不可靠关系, 添加潜在可靠关系的用户邻居集
1. 根据公式(1)计算用户
2. 根据公式(2)计算用户
3. 根据公式(3)计算用户
4. 重复步骤1–3, 直至遍历所有用户对.
5. 对于每一个用户
6. 若用户
7. 对于每一个用户
8. 若用户
9. 返回用户邻居集合
过滤不可靠关系、生成潜在可靠关系部分缓解了数据稀疏性问题. 然而, 仅利用用户的个人偏好和显式关系, 很难捕获到节点之间更高阶和更复杂的连接模式. 事实上, 先前的研究已经指出了高阶隐式关系和推荐系统性能之间的潜在联系[4], 因此本文设计了一个能够自适应构建用户间高阶隐式关系的模型.
现有的高阶隐式关系建模方法并没有考虑真实世界的社交网络中不同用户在关系数量上可能存在的较大差异. 因此在聚合邻居信息时, 一般会采用固定阶数的方法为每个用户聚合相同阶数的邻居. 但是, 当一个用户
随机游走是将网络转化为节点序列集的一种常见方法, 这种方法已被广泛用于一些网络嵌入方法中[28, 29]. 然而, 若不考虑到高阶隐式关系对不同用户具有不同重要性这一特殊现象, 直接在社交网络上执行随机游走, 则无法表征真实的社交网络. 因此, 此类方法生成的节点语料库质量有待提升. 本文提出的自适应随机游走生成器可以有效捕获不同阶数的邻居, 构建用户间的高阶隐式关系, 较好地刻画了这一现象. 其核心设计如下.
为了模拟真实世界的偏好传播情况, 本文采用自适应随机游走生成器将两节点间的转移概率与节点的重要性联系起来, 以保留节点的重要性特征, 为每个用户制定个性化的游走策略. 首先, 规范化每个节点的中心度:
| $ c = {\mathit{Softmax}}\left(\frac{{Centrality({u_i})}}{m}\right) $ | (4) |
此时,
| $ q = \left\{ {\begin{array}{*{20}{l}} {{{\rm{e}}^{c{{ }}}}{{ }},\;c \geqslant g} \\ {{{\rm{e}}^{c - 1}},\;{\text{ }}c < g} \end{array}} \right. $ | (5) |
其中,
本文提出的自适应随机游走策略具体步骤见算法2.
算法2. 自适应随机游走算法.
输入: 图
输出: 节点序列集
1. 初始化节点序列集
2. 根据公式(4)计算节点重要程度
3. 根据公式(5)计算节点进出参数
4. 将每个节点进出参数
5. 重复步骤2–4直至遍历用户集中的每一个用户.
6. 预处理计算转移概率
7. 将这个转移概率加到图
8. 执行随机游走, 生成节点序列.
9. 将节点序列
10. 重复步骤8和9, 进行迭代更新, 直到达到设置的最大迭代次数
11. 返回节点序列集
自适应随机游走算法保留了Node2vec算法在DeepWalk算法[30]上进行的改进, 通过引入规范化后的节点中心度控制随机游走的倾向. 本文提出的自适应随机游走算法考虑到不同用户对高阶隐式关系的差异性, 依赖更符合实际情况的中心度计算得到进出参数
针对重构后的社交网络, 本文采用表示学习方法来建模显式和高阶隐式关系, 以获取更准确的用户表示, 并进一步缓解数据稀疏问题. 给定用户-项目交互矩阵
(1) 显式关系建模. 根据社交影响传播现象, 用户的偏好会间接受到社交网络中显式关系的影响. 因此, 本文首先对社交网络中的显式关系进行建模. 第1步, 模拟两个相关联用户之间的相互作用; 第2步, 从用户不同的显式关系中聚合嵌入.
每一个用户
| $ {\vec {P} _{ij}} = \frac{1}{{\sqrt {|{N_{{u_i}}}||{N_{{u_j}}}|} }}{\vec {u} _j}W $ | (6) |
其中,
| $ {\vec {u} _i}^{(1)} = \tanh \left(\sum\limits_{{u_j} \in {N_{{u_i}}} \cup \{ {u_i}\} } {{w_{ij}}{{\vec {P} }_{ij}}} \right) $ | (7) |
值得注意的是, 在聚合阶段AHIRM模型不仅考虑到显式关系而且考虑到用户的自连接. 本文选取双曲函数
(2) 高阶隐式关系建模. 通过对显式社交关系的建模, 用户
| $ {\vec {u} _i}^{(k)} = \tanh \left(\sum\limits_{{u_j} \in {N_{{u_i}}} \cup \{ {u_i}\} } {{w_{ij}}} {\vec {P} _{ij}}^{(k)}\right) $ | (8) |
对应的传播嵌入
| $ {\vec {P} _{ij}}^{(k)} = \frac{1}{{\sqrt {|{N_{{u_i}}}||{N_{{u_j}}}|} }}{\vec {u} _j}^{(k - 1)}{W^{(k)}} $ | (9) |
其中,
在得到用户
| $ {\hat y_{{u_i}{i_j}}} = {\vec {u} _i}^{(k)} \cdot {\vec {i} _j}^ {\;\;\top } $ | (10) |
为了让计算更加的高效, 本文在训练过程中运用了负采样策略, 损失函数
| $ L = \sum\limits_{{u_i} \in U} {\left(\sum\limits_{{i_j}:{y_{{u_i}{i_j}}} = 1} \mathcal{J} ({y_{{u_i}{i_j}}}, {{\hat y}_{{u_i}{i_j}}}) - \sum\limits_{j = 1}^{{F_u}} {{\mathbb{E}_{{i_j} \sim p({i_j})}}\mathcal{J}} ({y_{{u_i}{i_j}}}, {{\hat y}_{{u_i}{i_j}}})\right)} + \lambda ||\mathcal{F}|{|_2} $ | (11) |
其中,
算法3. AHIRM算法.
输入: 用户集
输出: 预测函数
1. 初始化用户和项目嵌入向量
2. 用
3. 计算用户
4. 更新用户
5. 重复步骤3和4直至遍历用户
6. 更新节点的最终嵌入表示
7. 重复步骤2–6直至遍历用户-项目交互矩阵
8. 计算最终预测概率
9. 用梯度下降法更新参数.
10. 直至算法收敛, 返回预测函数
定理1. AHIRM算法的时间复杂度为
证明: 由于AHIRM模型的3个关键过程为不可靠关系过滤及潜在可靠关系生成、图重构和嵌入传播聚合. 不可靠关系过滤及潜在可靠关系生成包括相似度计算, 过滤和潜在可靠关系的发现3个步骤, 时间复杂度为
定理2. AHIRM算法的空间复杂度为
证明: 在不可靠关系过滤及潜在可靠关系生成阶段, 由于有
定理3. 本文提出的参数的启发式设置策略是合理的.
证明: AHIRM模型引入的节点重要程度
为了更加直观地理解本文提出的AHIRM算法, 本文采用了由6个节点和8条边组成的小型社交网络以及12个节点组成的简单用户-项目交互网络, 来说明本文算法的计算过程. 具体如图4所示.
|
图 4 AHIRM运行示例 |
计算流程: 设置过滤阈值
为了评价本文提出的AHIRM模型的性能, 在两个真实数据集上进行了多组实验. 通过实验分析, 本文旨在回答以下研究问题.
RQ1: 与最先进的社交推荐方法相比, AHIRM模型的表现如何?
RQ2: 不可靠关系过滤及潜在可靠关系生成能否提高现有社交推荐方法的有效性?
RQ3: 本文提出的自适应随机游走生成器如何影响AHIRM模型的性能?
RQ4: 关键参数如何影响AHIRM模型的性能?
接下来, 首先介绍实验设置, 然后依次回答上述研究问题.
4.1 实验设置(1) 数据集. 本文在LastFM ( http://files.grouplens.org/datasets/hetrec2011/)、Douban ( http://smiles.xjtu.edu.cn/Download/download Douban.html)和Gowalla ( https://www.dropbox.com/sh/qy3s8rs66nirhl9/AAClmTnFO-rR-4ecEYO-jU4ba?dl=0)数据集上进行实验. LastFM数据集包含 https://www.last.fm社交音乐网站内用户的社交网络数据和用户收听偏好信息. Douban数据集被广泛用于电影推荐领域, 作为基准数据集, 记录了人们根据自己的喜好对电影的评分, 以及用户间的社交关系. Gowalla数据集包含用户的好友及签到信息. 由于Douban数据集是显式反馈, 本文将其转换为隐式反馈再进行计算. 在Douban数据集上将评分大于3分的视为正例, 负例通过负采样获取. 关于数据集的描述性统计信息如表1所示.
| 表 1 数据集的描述 |
(2)评价指标. 对于每个数据集, 随机抽取60%的实例作为训练集, 20%的实例作为验证集, 其余20%的实例作为测试集. 为了评估模型的推荐性能, 采用了学术界广泛使用的Precision@
(3) 对比方法. 为了验证本文提出的AHIRM算法在推荐结果上的有效性, 将AHIRM算法与以下对比方法进行比较.
• BPR[33]: 一个贝叶斯个性化排序模型. 通过最小化成对排序损失优化了矩阵分解. 该模型仅适用于用户与项目之间存在隐性反馈的情境.
• SBPR[34]: 此模型在贝叶斯个性化排序中结合用户的社交反馈信息进行排序.
• IF-BPR[35]: 利用基于元路径的嵌入表示学习来识别异构信息网络中的隐式关系.
• DiffNet++[20]: 一种标准的跨领域社交推荐方法, 系统地聚合信息域的用户-项目交互信息和社交域的关系信息.
• RSGAN[36]: 一种基于生成对抗网络的端到端社交推荐框架, 通过将对抗性学习引入到社交推荐中, 模型可以自适应的在观察到和未观察到的社交网络中识别可靠的朋友, 预测当前用户的偏好.
• LightGCN[37]: 一种新的协同过滤模型, 旨在简化GCN的设计, 使其更简洁, 更适合推荐. 该模型通过在用户-项目交互网络上进行线性传播来学习用户和项目的嵌入.
• ESRF[38]: 一个基于图卷积网络(GCN)的深度对抗框架, 将对抗性训练和GCNs结合起来解决社交推荐系统的挑战.
(4)参数设置. 本文提出的AHIRM算法以及所有对比方法均在PyTorch上实现. 实验涉及参数均通过网格实验选取最佳性能参数. 本文将所有模型的潜在因子向量维度均设置为50, 正则化系数
表2展示了对比方法和AHIRM的性能, 实验结果及分析如下.
| 表 2 LastFM, Douban和Gowalla数据集上Top-10推荐的性能比较 |
(1) 社交推荐模型SBPR、IF-BPR、RSGAN和LightGCN的推荐性能均显著优于一般推荐模型BPR. 这表明在推荐系统中引入社交关系有助于提高推荐系统的性能.
(2) 社交推荐模型中IF-BPR和RSGAN推荐性能优于SBPR, 表明直接使用显示关系是次优的. 可能的原因在于显示关系存在噪声和稀疏性现象, 降低了推荐模型的性能. 因此, 有必要滤除噪声数据和探索隐式关系.
(3)一般推荐模型中LightGCN性能优于BPR方法. 在直接运用显示关系进行推荐的模型中, DiffNet++性能优于SBPR. 这可能是由于LightGCN和DiffNet++均为基于GCN的推荐模型, 表明在推荐模型中运用GCN的有效性.
(4)在LastFM和Douban数据集上, ESRF和AHIRM性能优于其他对比方法, 表明在推荐过程中建模高阶隐式关系的有效性. 值得注意的是, 虽然IF-BPR也对高阶隐式关系进行建模, 但并没有呈现较好的性能. 这可能是因为它没有自适应根据用户对的情况为关系分配不同的权重, 降低了模型的性能.
(5) 为了验证AHIRM能部分缓解数据稀疏问题, 我们在更加稀疏的Gowalla数据集上进行实验. 由于Gowalla数据集的稀疏性, 相较于LastFM和Douban数据集, 在Gowalla数据集上模型整体性能有所下降. 值得注意的是, AHIRM在此数据集上实现了F1@10以及NDCG@10两个指标上的最大性能提升, 分别为10.13%和10.71%. 这表明本文提出的模型能有效缓解数据稀疏问题. 此外, 除了本文提出的AHIRM模型, IF-BPR、RSGAN以及ESRF模型性能优于其他模型, 表明过滤不可靠关系及探索隐式关系的必要性.
(6) AHIRM在3个数据集上的推荐性能优于所有对比方法. 在Douban数据集上, 本算法的F1@10和NDCG@10值相较于目前最优的模型(ESRF)分别提升了9.76%和10.27%, 表明本文提出的高阶隐式关系建模方法的有效性.
4.3 不可靠关系过滤及潜在可靠关系生成的影响 (RQ2)不可靠关系过滤及潜在可靠关系生成旨在缓解不可靠关系带来的不利影响, 并部分缓解数据稀疏性问题. 为了验证其有效性, 本节通过将AHIRM和其3个模型变体: 仅使用结构相似度的模型(AHIRMOS), 仅使用偏好相似度的模型(AHIRMOP)以及移除整个不可靠关系过滤及潜在可靠关系生成模块的模型(AHIRMNS)进行比较. 结果如表3所示: (1)通过将AHIRM模型和AHIRMNS模型比较, 可知: AHIRM模型性能显著优于AHIRMNS, 表明引入不可靠关系过滤及潜在可靠关系生成模块的重要性; (2)为了进一步分析结构相似度与偏好相似度对模型性能的影响, 我们将AHIRMOS和AHIRMOP两个变体方法与另一变体AHIRMNS进行比较: AHIRMOS和AHIRMOP的性能与AHIRMNS相比均有一定的提升, 表明引入结构相似度和偏好相似度对提高推荐系统性能都具有重要作用; (3)在3个数据集上, AHIRMOP的性能均高于AHIRMOS, 表明偏好相似度相对于结构相似度而言, 对推荐系统性能具有更大的影响. 这可能是由于社交关系建立的随机性, 部分不可靠的社交关系会带来负面影响. 总的来说, 在3个数据集上AHIRM模型都获得了最佳性能, 表明综合考虑社交结构和个人偏好进行不可靠关系过滤及潜在可靠关系生成的必要性和合理性.
| 表 3 不可靠关系过滤及潜在可靠关系生成的作用 |
为了验证本文提出的自适应随机游走算法的有效性, 本节将AHIRM与采用不同随机游走算法的变体进行比较. 在保持其他条件完全相同的情况下, 使用自适应随机游走算法的替代算法来替换本文提出的自适应随机游走算法. 本实验选取的替代算法包括具有代表性的随机游走算法DeepWalk以及文献[29]提出的有偏自适应随机游走生成器, 替换后的模型分别记为AHIRMDeep和AHIRMBine. 结果如表4所示, AHIRMBine和AHIRM模型的性能均优于AHIRMDeep模型, 这表明自适应概念的引入能更好地刻画高阶隐式关系对不同用户具有不同重要性这一特殊现象, 提高了推荐系统的性能. 在LastFM数据集上, 相较于AHIRMBine算法, AHIRM模型分别在F1@10和NDCG@10两个指标上分别提升了6.03%和4.20%. 这表明本文提出的根据用户节点重要性为每个用户制定不同的随机游走策略是有效的.
| 表 4 不同随机游走策略的AHIRM |
在本节中, 分析了AHIRM中4个关键参数对模型性能的影响, 包括用来控制结构相似度和偏好相似度的权重
本文先固定
|
图 5 采样邻居数量z对算法性能的影响 |
然后, 分别将两个数据集的
|
图 6 过滤阈值
|
最后, 在LastFM数据集的实验和Douban数据集的实验分别把z固定为4和7, 然后把
|
图 7 权重
|
为了详细分析模型如何建模高阶隐式关系和捕获不同阶数的邻居, 进行案例分析. 本文随机选取 6 个用户
| 表 5 初始社交网络数据 |
| 表 6 用户对项目的交互数据 |
| 表 7 更新后的社交网络数据 |
基于上述得到的社交网络, 执行本文提出的自适应随机游走, 首先依据公式(4)和公式(5)计算出不同用户规范化后的节点中心度
| 表 8 自适应随机游走相关信息 |
| 表 9 重构后的社交网络数据 |
| 表 10 用户对项目的偏好 |
最终, 根据表10中的预测偏好数据, 按由高到低排列. 最终, 目标用户
本文研究社交推荐场景下的高阶隐式关系建模问题. 与已有的高阶隐式关系建模方法不同, 本文研究如何自适应地为用户聚合高阶隐式关系, 使生成的用户嵌入更加符合推荐场景. 本文提出的高阶隐式关系建模方法(AHIRM), 结合社交结构和个人偏好过滤不可靠关系并生成潜在可靠关系; 基于规范化后的节点中心度设计自适应随机游走算法捕获不同阶数的邻居, 构建用户间的高阶隐式关系; 最后, 运用GCN模拟社交影响传播过程, 并对高阶隐式关系进行建模. 在社交推荐任务上的大量实验验证了AHIRM方法的有效性和合理性.
尽管考虑到高阶隐式关系在不同用户间的差异性, 但是用户的偏好可能会随着时间和其他因素动态变化. 因此, 未来计划研究如何有效地更新动态网络的嵌入. 此外, 尽管本文通过潜在可靠关系生成和高阶隐式关系建模部分缓解了数据稀疏问题. 但是, 就推荐系统而言, 数据稀疏问题依然是极具挑战的, 在未来的工作中, 我们计划引入更多的辅助信息, 如: 用户简档、项目特征和其他属性等, 进行更准确的建模.
| [1] |
Guo GB, Zhang J, Yorke-Smith N. TrustSVD: Collaborative filtering with both the explicit and implicit influence of user trust and of item ratings. In: Proc. of the 29th AAAI Conf. on Artificial Intelligence. Austin: AAAI Press, 2015. 123–129.
|
| [2] |
Jiang M, Cui P, Wang F, Zhu WW, Yang SQ. Scalable recommendation with social contextual information. IEEE Trans. on Knowledge and Data Engineering, 2014, 26(11): 2789-2802.
[doi:10.1109/TKDE.2014.2300487] |
| [3] |
Wang X, He XN, Nie LQ, Chua TS. Item silk road: Recommending items from information domains to social users. In: Proc. of the 40th Int’l ACM SIGIR Conf. on Research and Development in Information Retrieval. Shinjuku: ACM, 2017. 185–194.
|
| [4] |
Liu Y, Chen L, He XN, Peng JY, Zheng ZB, Tang J. Modelling high-order social relations for item recommendation. arXiv:2003.10149, 2020.
|
| [5] |
Qiu JZ, Tang J, Ma H, Dong YX, Wang KS, Tang J. DeepInf: Social influence prediction with deep learning. In: Proc. of the 24th ACM SIGKDD Int’l Conf. on Knowledge Discovery & Data Mining. London: ACM, 2018. 2110–2119.
|
| [6] |
Wang X, Chen WX, Yang YJ, Zhang XW, Feng ZY. Research on knowledge graph partitioning algorithms: A survey. Chinese Journal of Computers, 2021, 44(1): 235-260(in Chinese with English abstract).
[doi:10.11897/SP.J.1016.2021.00235] |
| [7] |
Dou JH, Tian B, Zhang Y, Xing CX. A novel embedding model for knowledge graph completion based on multi-task learning. In: Proc. of the 26th Int’l Conf. on Database Systems for Advanced Applications. Taipei: Springer, 2021. 240–255.
|
| [8] |
Malik S, Rana A, Bansal M. A survey of recommendation systems. Information Resources Management Journal, 2020, 33(4): 4.
[doi:10.4018/IRMJ.2020100104] |
| [9] |
Sun JN, Zhang YX, Guo W, Guo HF, Tang RM, He XQ, Ma C, Coates M. Neighbor interaction aware graph convolution networks for recommendation. In: Proc. of the 43rd Int’l ACM SIGIR Conf. on Research and Development in Information Retrieval. ACM, 2020. 1289–1298.
|
| [10] |
Sun JN, Zhang YX, Ma C, Coates M, Guo HF, Tang RM, He XQ. Multi-graph convolution collaborative filtering. In: Proc. of the 19th IEEE Int’l Conf. on Data Mining. Beijing: IEEE, 2019. 1306–1311.
|
| [11] |
Ying R, He RN, Chen KF, Eksombatchai P, Hamilton WL, Leskovec J. Graph convolutional neural networks for Web-scale recommender systems. In: Proc. of the 24th ACM SIGKDD Int’l Conf. on Knowledge Discovery & Data Mining. London: ACM, 2018. 974–983.
|
| [12] |
Tan QY, Liu NH, Zhao X, Yang HX, Zhou JR, Hu X. Learning to hash with graph neural networks for recommender systems. In: Proc. of the 2020 Web Conf. Taipei: ACM, 2020. 1988–1998.
|
| [13] |
Chen L, Wu L, Hong RC, Zhang K, Wang M. Revisiting graph based collaborative filtering: A linear residual graph convolutional network approach. In: Proc. of the 34th AAAI Conf. on Artificial Intelligence. Palo Alto: AAAI Press, 2020. 27–34.
|
| [14] |
Wang X, He XN, Wang M, Feng FL, Chua TS. Neural graph collaborative filtering. In: Proc. of the 42nd Int’l ACM SIGIR Conf. on Research and Development in Information Retrieval. Paris: ACM, 2019. 165–174.
|
| [15] |
Liao GQ, Lan TM, Huang XM, Chen H, Wan CX, Liu DX, Liu XP. Survey on recommendation systems in event-based social networks. Ruan Jian Xue Bao/Journal of Software, 2021, 32(2): 424–444 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/6145.htm
|
| [16] |
Zhao S, Liu XM, Duan Z, Zhang YP, Tang J. A survey on social ties mining. Chinese Journal of Computers, 2017, 40(3): 535-555(in Chinese with English abstract).
[doi:10.11897/SP.J.1016.2017.00535] |
| [17] |
Tang JL, Hu X, Gao HJ, Liu H. Exploiting local and global social context for recommendation. In: Proc. of the 23rd Int’l Joint Conf. on Artificial Intelligence. Beijing: AAAI Press, 2013. 2712–2718.
|
| [18] |
Sun PJ, Wu L, Wang M. Attentive recurrent social recommendation. In: Proc. of the 41st Int’l ACM SIGIR Conf. on Research & Development in Information Retrieval. Ann Arbor: ACM, 2018. 185–194.
|
| [19] |
Wu L, Sun PJ, Fu YJ, Hong RC, Wang XT, Wang M. A neural influence diffusion model for social recommendation. In: Proc. of the 42nd Int’l ACM SIGIR Conf. on Research and Development in Information Retrieval. Paris: ACM, 2019. 235–244.
|
| [20] |
Wu L, Li JW, Sun PJ, Hong RC, Ge Y, Wang M. DiffNet++: A neural influence and interest diffusion network for social recommendation. arXiv:2002.00844, 2021.
|
| [21] |
Yin HZ, Zhou XF, Cui B, Wang H, Zheng K, Nguyen QVH. Adapting to user interest drift for POI recommendation. IEEE Trans. on Knowledge and Data Engineering, 2016, 28(10): 2566-2581.
[doi:10.1109/TKDE.2016.2580511] |
| [22] |
Nimishakavi M, Gupta M, Talukdar P. Higher-order relation schema induction using tensor factorization with back-off and aggregation. In: Proc. of the 56th Annual Meeting of the Association for Computational Linguistics. Melbourne: Association for Computational Linguistics, 2018. 1575–1584.
|
| [23] |
Monti F, Bronstein MM, Bresson X. Geometric matrix completion with recurrent multi-graph neural networks. In: Proc. of the 31st Int’l Conf. on Neural Information Processing Systems. Long Beach: Curran Associates Inc., 2017. 3700–3710.
|
| [24] |
Zhuang CY, Ma Q. Dual graph convolutional networks for graph-based semi-supervised classification. In: Proc. of the 2018 World Wide Web Conf. Lyon: ACM, 2018. 499–508.
|
| [25] |
Gilmer J, Schoenholz SS, Riley PF, Vinyals O, Dahl GE. Neural message passing for Quantum chemistry. In: Proc. of the 34th Int’l Conf. on Machine Learning. Sydney: JMLR.org, 2017. 1263–1272.
|
| [26] |
Hamilton WL, Ying R, Leskovec J. Inductive representation learning on large graphs. In: Proc. of the 31st Int’l Conf. on Neural Information Processing Systems. Long Beach: Curran Associates Inc., 2017. 1025–1035.
|
| [27] |
Tang JL, Hu X, Liu H. Social recommendation: A review. Social Network Analysis and Mining, 2013, 3(4): 1113-1133.
[doi:10.1007/s13278-013-0141-9] |
| [28] |
Gao M, Chen LH, He XN, Zhou AY. BiNE: Bipartite network embedding. In: Proc. of the 41st Int’l ACM SIGIR Conf. on Research & Development in Information Retrieval. Ann Arbor: ACM, 2018. 715–724.
|
| [29] |
Grover A, Leskovec J. Node2vec: Scalable feature learning for networks. In: Proc. of the 22nd ACM SIGKDD Int’l Conf. on Knowledge Discovery and Data Mining. San Francisco: ACM, 2016. 855–864.
|
| [30] |
Perozzi B, Al-Rfou R, Skiena S. DeepWalk: Online learning of social representations. In: Proc. of the 20th ACM SIGKDD Int’l Conf. on Knowledge Discovery and Data Mining. New York: ACM, 2014. 701–710.
|
| [31] |
Dahl RA. Freedom and control in modern society. American Sociological Review, 1954, 19(6): 807-808.
[doi:10.2307/2087947] |
| [32] |
Kingma DP, Ba J. Adam: A method for stochastic optimization. In: Proc. of the 3rd Int’l Conf. on Learning Representations. San Diego, 2015.
|
| [33] |
Rendle S, Freudenthaler C, Gantner Z, Schmidt-Thieme L. BPR: Bayesian personalized ranking from implicit feedback. In: Proc. of the 25th Conf. on Uncertainty in Artificial Intelligence. Montreal: AUAI Press, 2009. 452–461.
|
| [34] |
Zhao T, McAuley J, King I. Leveraging social connections to improve personalized ranking for collaborative filtering. In: Proc. of the 23rd ACM Int’l Conf. on Information and Knowledge Management. Shanghai: ACM, 2014. 261–270.
|
| [35] |
Yu JL, Gao M, Li JD, Yin HZ, Liu H. Adaptive implicit friends identification over heterogeneous network for social recommendation. In: Proc. of the 27th ACM Int’l Conf. on Information and Knowledge Management. Torino: ACM, 2018. 357–366.
|
| [36] |
Yu JL, Gao M, Yin HZ, Li JD, Gao CM, Wang QY. Generating reliable friends via adversarial training to improve social recommendation. In: Proc. of the 2019 IEEE Int’l Conf. on Data Mining. Beijing: IEEE, 2019. 768–777.
|
| [37] |
He XN, Deng K, Wang X, Li Y, Zhang YD, Wang M. LightGCN: Simplifying and powering graph convolution network for recommendation. In: Proc. of the 43rd Int’l ACM SIGIR Conf. on Research and Development in Information Retrieval. ACM, 2020. 639–648.
|
| [38] |
Yu JL, Yin HZ, Li JD, Gao M, Huang Z, Cui LZ. Enhancing social recommendation with adversarial graph convolutional networks. IEEE Trans. on Knowledge and Data Engineering, 2022, 34(8): 3727–3739.
|
| [6] |
王鑫, 陈蔚雪, 杨雅君, 张小旺, 冯志勇. 知识图谱划分算法研究综述. 计算机学报, 2021, 44(1): 235-260.
[doi:10.11897/SP.J.1016.2021.00235] |
| [15] |
廖国琼, 蓝天明, 黄晓梅, 陈辉, 万常选, 刘德喜, 刘喜平. 基于事件社会网络推荐系统综述. 软件学报, 2021, 32(2): 424–444. http://www.jos.org.cn/1000-9825/6145.htm
|
| [16] |
赵姝, 刘晓曼, 段震, 张燕平, 唐杰. 社交关系挖掘研究综述. 计算机学报, 2017, 40(3): 535-555.
[doi:10.11897/SP.J.1016.2017.00535] |