A Neural Influence Diffusion Model for Social Recommendation

一、概述

《A Neural Influence Diffusion Model for Social Recommendation》这篇文章介绍了一种名为"DiffNet"的神经影响扩散模型,用于社交推荐系统,文章的目标是改善推荐系统的性能,特别是在处理稀疏用户行为数据和利用社交网络信息方面。文章指出,传统的协同过滤方法由于用户行为数据的稀疏性限制了推荐系统的性能。为了解决这个问题,社交推荐系统利用用户的社交关系来减轻数据稀疏性,以更好地建模用户的嵌入表示。然而,现有的社交推荐模型仅仅利用每个用户的局部邻居,而没有模拟全局社交网络中的递归扩散过程,导致推荐性能不佳。

为了解决这个问题,文章提出了一种深度影响传播模型,模拟用户如何受递归社交扩散过程的影响进行社交推荐。该模型以融合相关特征和捕捉潜在行为偏好的自由用户潜在向量的初始嵌入开始扩散过程。文章的关键思想是设计了一种逐层影响传播结构,模拟用户的潜在嵌入如何随着社交扩散过程的进行而演化。研究人员还展示了该模型的普适性,并且在用户(项目)属性或社交网络结构不可用时也能应用。

文章在两个真实数据集上进行了大量实验,明确证明了他们提出的模型的有效性,对于两个数据集的前10个推荐,相比最佳基准模型,性能提升超过13%。

总之,该文章提出了一种用于社交推荐的DiffNet模型,通过模拟递归社交扩散过程来改进用户和项目的嵌入建模,取得了显著的性能提升。

二、主要贡献

  • 提出了DiffNet模型,采用逐层影响传播结构,用于模拟社交推荐中的递归动态社交扩散。
  • 显示了DiffNet模型相比于基于嵌入的推荐模型在时间和存储效率上的优势,并且灵活适用于缺乏用户和物品属性的情况。
  • 在真实数据集上进行的实验证明了DiffNet模型的有效性,相较于基线模型,在Yelp和Flickr数据集的前10个推荐中分别提高了13.5%和15.5%的性能。

 三、模型的构建

DiffNet分为四个部分:

1. 嵌入层:嵌入层以用户-物品对<a, i>作为输入,并为用户和物品输出自由嵌入。这些嵌入捕捉了用户和物品在低维空间中的潜在表示。

2. 融合层:融合层将用户和物品的自由嵌入与它们的相关特征进行融合。对于每个用户(物品),融合层通过将用户(物品)的自由嵌入与相关特征相结合,生成混合用户(物品)嵌入。这种融合过程通过将相关特征纳入表示中,增强了用户和物品的表示能力。

3. 影响扩散层:影响扩散层采用分层结构来建模社交网络中的递归社交扩散过程,这是DiffNet的关键思想。在影响扩散过程达到稳定状态后,输出层生成用户-物品对的最终预测偏好。

4. 预测层:预测层生成用户对物品的预测偏好概率rˆai。它接收经过影响扩散过程处理后的用户嵌入,并输出用户对物品的最终预测结果。

3.1 Embedding Layer(嵌入层)

Embedding Layer(嵌入层)的作用是将用户和物品的自由嵌入提取出来。自由嵌入是通过矩阵 P(用户自由嵌入矩阵)和矩阵 Q(物品自由嵌入矩阵)表示的,它们捕捉了用户和物品之间的协同潜在表示。在嵌入层中,根据用户 a 和物品 i 的 one-hot 表示,进行索引操作,从自由嵌入矩阵 P 和 Q 中提取出对应的自由用户潜在向量 pa 和自由物品潜在向量 qi。这些向量将作为后续层的输入,用于进一步的推荐模型建模和预测。

3.2 Fusion Layer(融合层)

Fusion Layer(融合层)的作用是将用户和物品的自由嵌入与其关联的特征进行融合。对于每个用户,融合层接收用户的自由嵌入 pa 和关联特征向量 xa,并通过一个全连接神经网络进行非线性变换,生成用户的融合嵌入 h0 a,该嵌入捕捉了用户初始兴趣的综合信息。

W0是一个变换矩阵,且我们在全连接神经网络中省略了偏置项。这个融合层可以泛化许多典型的融合操作。eg:通过设置W0为单位矩阵,将h0 a定义为[xa,pa]的拼接操作

类似地,对于每个物品,融合层将物品的自由嵌入 qi 和特征向量 yi 进行非线性变换,生成物品的融合嵌入 vi。

这个过程通过引入变换矩阵和非线性函数,将自由嵌入和特征信息结合起来,增强了用户和物品的表示能力,更好地捕捉了它们之间的关联信息。

3.3 Influence Diffusion Layers(影响扩散层)

影响扩散层的作用是模拟社交网络中用户潜在偏好的扩散过程。该模型包含多个层级,每一层级接收前一层级的用户嵌入作为输入,并在当前层级的社交扩散过程完成后输出更新后的用户嵌入。每个用户在每个层级的潜在嵌入通过聚合来自受信任用户的影响进行更新。聚合操作可以是平均池化或最大池化(平均池化效果更好),生成一个固定长度的向量。

更新后的嵌入是当前层级的用户嵌入和影响扩散嵌入聚合的组合。为了建模用户对这两部分的权衡,使用非线性神经网络进行组合。

通过预定义的扩散深度,影响扩散层逐步进行扩散,直到达到指定的深度。该模型只对用户潜在向量进行扩散,不涉及物品向量的扩散,因为物品的潜在嵌入是静态的且不在社交网络中传播。

3.4 Prediction Layer(预测层)

在预测层中,使用用户在经过迭代扩散过程后的第K层嵌入hKa和每个物品i的融合向量vi来建模用户对物品的预测偏好。用户的最终潜在表示ua由两部分组成:来自社交扩散层输出的嵌入hKa和用户历史行为的偏好∑(vi / |Ra|)。第一部分捕捉了用户在社交网络结构中通过递归扩散过程形成的兴趣,而第二部分类似于SVD++模型,利用用户历史反馈来解决数据稀疏性问题。用户的最终潜在向量与物品的潜在向量之间的内积用于衡量最终的预测评分。

3.5 模型训练

在模型训练中,本文类似于BPR中广泛使用的基于排名的损失函数设计了一个基于配对排名的损失函数来优化模型。

该损失函数考虑了用户的隐式反馈,并通过比较预测评分之间的差异来进行排名。模型参数通过使用Adam优化算法进行训练,并使用小批量的方式进行训练数据的划分,以避免重复计算用户的潜在嵌入。由于只能观察到用户的正反馈,为了增加负反馈信号,我们在训练过程中随机采样未观察到的反馈作为伪负反馈。训练过程中的目标是最小化损失函数,并通过正则化参数来控制模型的复杂度。整体而言,模型训练过程结合了用户的隐式反馈和排名机制,以提高对用户偏好的预测能力。

3.6 时空复杂度

3.6.1 空间复杂度

DiffNet模型的空间复杂度与经典的嵌入模型相同。模型参数分为两部分:用户和物品的自由嵌入Θ1和参数集Θ2。Θ1的空间复杂度与经典嵌入模型相同,随着用户和物品数量线性增长。而Θ2中的参数在所有用户和物品之间共享,并且每个参数的维度远小于用户和物品的数量,因此额外的存储成本可以忽略不计。

3.6.2 时间复杂度

DiffNet模型的时间复杂度主要取决于层级的影响扩散过程。该过程的时间复杂度为O(MKL),其中M是用户数量,K表示扩散深度,L表示每个用户的平均社交邻居数。更新参数的额外时间复杂度也为O(MKL)。因此,DiffNet的额外时间复杂度为O(MKL)。根据实证研究和实验结果,当K = 2且每个用户的平均社交邻居数L远小于用户数量M时,DiffNet的性能表现最佳。因此,DiffNet的额外时间复杂度是可接受的,并且适用于实际的社交推荐系统。

3.7 模型泛化

DiffNet模型在不同数据输入不可用的情况下具有广泛的适用性。

  • 当用户或物品特征不可用时,相应的融合层会消失,潜在嵌入退化为默认值。
  • 模型的核心思想是利用社交网络结构进行精心设计的社交扩散层。当推荐系统没有社交网络信息时,社交扩散层也会消失,模型退化为增强的SVD++模型,其中用户和物品的潜在嵌入包含了融合的自由嵌入和相关的用户和物品特征。这表明模型在不同数据输入情况下都具有泛化能力,并可以适用于不同类型的推荐系统。

3.8 与基于图卷积网络的模型进行比较

将DiffNet模型与基于图卷积网络(GCN)的模型进行比较。GCN是一种用于图表示学习的先进技术,它通过递归的消息传递或信息扩散方式生成节点的嵌入。在推荐任务中,有一些模型尝试将GCN的思想应用于构建推荐系统。

其中,GC-MC 是最早尝试将图卷积直接应用于推荐任务的方法之一。GC-MC 从用户-物品的交互行为中定义了一个用户-物品的二分图 [37]。然后,每个用户的嵌入通过聚合其评价过的物品的嵌入进行卷积操作。类似地,每个物品的嵌入通过聚合评价过它的用户的嵌入进行卷积操作。然而,在 GC-MC 中,图卷积仅在用户和物品之间的观察连接上进行操作,而忽略了图的层间传播结构。

PinSage是为大型推荐系统中的相似物品推荐而设计的模型,它扩展了图卷积的思想,将物品的内容特征纳入推荐过程中 [37]。PinSage 构建了一个连接用户和物品的图,并在图中加入了物品的内容作为额外的节点。然后,在这个扩展的图上进行图卷积操作,学习用户和物品的嵌入。PinSage的主要贡献在于设计了高效的采样技术来加速训练过程。但与 GC-MC 类似,PinSage 也没有考虑图的层间传播结构。

与这些模型不同,DiffNet模型通过设计层级扩散部分,利用社交网络的递归信息传播来生成用户的潜在表示。相比于在物品-物品或用户-物品图上进行消息传递,DiffNet更加真实地反映了用户如何动态受到社交影响扩散的影响。

综上所述,DiffNet模型与GCN-based模型相比具有独特的层级扩散结构,能更好地适应社交推荐任务的特点,并提供更准确的用户表示学习。

四、实验

主要回答一下几个问题

  1. DiffNet是否优于社交推荐任务的最先进基线模型?
  2. 这些模型在不同数据稀疏性下的性能如何?
  3. DiffNet中每个部分的有效性

在这个部分中,对DiffNet模型与其他基线模型在两个数据集上的性能进行了全面比较。使用了不同的评估指标,如HR@10和NDCG@10,来衡量推荐的准确性。通过比较结果,得出了以下结论:

1. DiffNet模型在社交推荐任务中优于其他基线模型。与仅考虑用户-物品评分信息的BPR模型相比,DiffNet考虑了社交网络结构和社交扩散过程,并表现出更好的推荐性能。与其他基线模型相比,包括考虑节点特征和社交网络信息的FM和TrustSVD模型,以及使用用户、物品特征和社交网络结构的ContextMF模型,DiffNet始终表现更好。

2. DiffNet在不同数据稀疏性下的性能表现稳定。对数据集进行了不同程度的稀疏化处理,并评估了模型在不同稀疏性条件下的性能。结果显示,DiffNet模型对于稀疏数据具有较好的鲁棒性和泛化能力。

3. DiffNet模型在不同参数设置下的性能表现较为稳定。我们对潜在维度大小D进行了变化,并观察了模型的性能变化。发现一些模型在特定的潜在维度大小下达到最佳性能,而DiffNet模型在D=64时表现最佳。

4. DiffNet模型在不同推荐列表大小N下的性能优越。通过评估HR@N和NDCG@N指标,发现DiffNet模型始终表现最好,无论推荐列表的大小如何。

综上所述,基于对比实验结果,我们可以得出结论:DiffNet模型在社交推荐任务中的表现优于其他基线模型,无论是在不同的评估指标、数据稀疏性还是参数设置下。这证明了DiffNet模型的有效性和优越性。

五、总结

本文提出了一种名为DiffNet的神经模型,用于社交推荐任务。DiffNet模型通过逐层影响扩散的方式捕捉用户潜在偏好在社交网络中的传播过程。该模型具有时间和存储效率高、灵活性强的特点,即使在没有用户和物品属性信息的情况下也能很好地工作。实验结果表明,DiffNet模型在Flickr数据集上相对于基线模型的NDCG@10指标有超过15%的显著改进。未来的研究方向可以考虑将该模型扩展到考虑用户兴趣随时间变化的情况,以进一步提高推荐效果。

  • 18
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值