DiffNet++: A Neural Influence and Interest Diffusion Network for Social Recommendation

一、概述

《DiffNet++: A Neural Influence and Interest Diffusion Network for Social Recommendation》提出了一个名为DiffNet++的神经网络模型,用于社交推荐任务中的用户兴趣和影响扩散建模。

在传统的协同过滤推荐系统中,由于用户行为数据的稀疏性问题,用户和物品的嵌入往往难以准确学习。为了解决这个问题,社交推荐方法利用用户之间的社交关系来预测用户的未知偏好。然而,早期的方法仅仅使用每个用户的一阶社交邻居的兴趣信息,未能对全局社交网络结构中的社交影响扩散过程进行建模。

为了解决这个问题,作者们在之前的研究中提出了一个名为DiffNet的神经网络模型,用于社交推荐。DiffNet通过为每个用户建模递归的社交扩散过程,捕捉了高阶社交网络中隐藏的影响扩散过程,从而提升了推荐性能。然而,作者们认为仅仅建模社交网络中的影响扩散过程会忽视用户-物品兴趣网络中隐藏的潜在协同兴趣。因此,在本文中,他们提出了DiffNet++,它是DiffNet的改进算法,可以在一个统一的框架中建模神经影响扩散和兴趣扩散

DiffNet++通过将社交网络和兴趣网络作为输入,将社交推荐问题重新定义为一个异构图的问题。它从三个方面迭代地聚合每个用户的嵌入,包括用户的先前嵌入、社交网络中社交邻居的影响聚合以及用户-物品兴趣网络中物品邻居的兴趣聚合。此外,作者们设计了一个多层注意力网络,学习如何从这三个方面有针对性地聚合用户嵌入。通过在四个真实世界数据集上进行广泛的实验,作者们验证了所提出模型的有效性。

该论文提出了一个新颖的神经网络模型,通过建模用户的兴趣和影响扩散过程,在社交推荐任务中取得了较好的性能。该模型在利用社交关系和用户兴趣进行推荐时具有潜在的应用前景。

二、主要贡献

本文提出了一种改进的DiffNet结构,用于联合建模社交推荐中的两种图结构(用户-物品图和用户-用户图)。虽然在每个用户的社交网络和兴趣网络上执行消息传递似乎是直观的,但在实践中设计不当,因为这两种图作为不同的信息源来反映每个用户的潜在偏好。此外,不同的用户在平衡这两个图时可能有不同的偏好,有些用户可能更容易受到社交邻居的影响,而其他用户则更喜欢保持自己的兴趣。

总结起来,主要贡献如下

  1. 相对于DiffNet [42],本文将用户-物品兴趣图和用户-用户社交图作为输入,预测用户-物品兴趣图中的缺失边。
  2. DiffNet++在一个统一的模型中建模了社交网络中的高阶社交影响扩散和兴趣网络中的兴趣扩散。
  3. 我们精心设计了一个多级注意网络,学习如何从图中的不同节点以及不同图中聚合用户嵌入。

通过在两个真实数据集上进行广泛的实验,DiffNet++模型的有效性得到了明确的证明。与性能最好的基线相比,DiffNet++在Yelp上提高了约14%,在Flickr上提高了约21%,在Epinions上提高了约12%,在Dianping上提高了约4%的前10推荐性能。

三、模型的构建用户的

DiffNet++的架构包括四个主要部分:嵌入层、融合层、影响扩散层和兴趣扩散层,以及评分预测层。

  1. 用户嵌入层:将用户表示为低维度的嵌入向量,捕捉的特征和兴趣。
  2. 扩散层:
    1. 影响扩散层:通过建模社交扩散过程来模拟用户在社交网络中的影响传播。该层由多个层组成,每一层都表示用户的影响状态,通过聚合社交邻居的信息和将用户自身的嵌入与邻居信息相结合,可以更新用户在下一层表示。
    2. 兴趣扩散层:考虑用户兴趣的演化过程,该层对用户的历史行为和兴趣进行建模。它捕捉了用户在时间上的偏好变化和兴趣演化。
  3. 注意力机制:引入注意力机制来对不同的元素进行加权,以区分他们的重要性,这包括对社交邻居的注意力权重和对历史行为的注意力权重。
  4. 推荐层:根据用户的嵌入和注意力权重生成推荐结果,推荐层可以使用不同的方法,如基于兴趣相似度或协同过滤。

3.1 嵌入层

嵌入层在DiffNet++中用于将用户和物品编码为相应的自由向量表示。它利用自由潜在嵌入矩阵P和Q,分别表示用户和物品的自由嵌入。对于给定的用户a的独热表示,嵌入层通过索引选择操作从用户自由嵌入矩阵P中选择第a行,并输出其作为用户的自由潜在嵌入pa的转置。类似地,对于物品i,嵌入层从物品自由嵌入矩阵Q中选择第i行,并输出其作为物品的自由潜在嵌入qi的转置。

3.2 Fusion Layer(融合层)

融合层在DiffNet++中用于将用户和物品的自由潜在嵌入与它们的特征向量进行融合。对于每个用户a,融合层接收用户的自由潜在嵌入pa和关联的特征向量xa作为输入,并通过一个转换函数g和转换矩阵W1输出用户的融合嵌入u0 a。

类似地,对于每个物品i,融合层接收物品的自由潜在嵌入qi和特征向量yi作为输入,并通过转换函数g和转换矩阵W2输出物品的融合嵌入v0 i。

融合层可以通过不同的转换函数和转换矩阵实现不同的融合操作,如拼接操作等,以捕捉用户和物品的初始兴趣。

3.3 Influence and Interest Diffusion Layers(影响和兴趣扩散层)

影响和兴趣扩散层在DiffNet++中使用逐层卷积递归地建模了用户的潜在偏好和物品在图中的潜在偏好传播。通过将每个用户a的融合嵌入u0 a和每个物品i的融合嵌入v0 i作为输入,层间卷积递归地更新了用户和物品的嵌入。在每一层k+1,通过取上一层k中用户a的嵌入uk a和物品i的嵌入vk i作为输入,这些层递归地输出了vk+1 i和uk+1 a的更新嵌入,使用扩散操作进行计算。迭代步骤从k=0开始,当递归过程达到预定义的深度K时停止。由于每个物品仅出现在用户-物品兴趣图GI中,因此首先介绍了如何更新物品的嵌入,然后介绍了如何使用影响和兴趣扩散来更新用户的嵌入。

3.3.1 更新物品的嵌入

对于每个物品i,根据其第k层的嵌入vk i,使用用户-物品兴趣图GI模型来计算物品在第(k+1)层的更新嵌入vk+1 i。更新过程包括两个步骤:

1. 物品邻居聚合:通过对物品i的邻居用户的嵌入进行加权聚合,聚合权重由式(8)中的hk+1 ia表示。

这里使用注意力网络(MLP)来学习注意力权重,MLP的输入是第k层的物品嵌入vk i和相关用户嵌入uk a。注意力权重通过式(11)进行归一化,确保每个注意力权重大于0。

2. 物品嵌入更新:利用物品邻居聚合得到的聚合嵌入~vk+1 i与物品i在第k层的嵌入vk i进行融合。这里采用加法作为融合函数,即式(9)所示。更新后的嵌入vk+1 i成为物品i在第(k+1)层的嵌入。

通过这样的迭代过程,可以逐层更新物品的嵌入,捕捉用户-物品兴趣图中物品的潜在偏好传播。

3.3.2 更新用户的嵌入

在用户嵌入更新过程中,考虑了社交网络和兴趣网络的影响。每个用户的更新嵌入取决于她在当前层的潜在嵌入,以及来自社交邻居的影响扩散和兴趣物品邻居的兴趣扩散的聚合嵌入。使用多级注意力网络来学习不同图中的注意力权重。

具体而言,我们有三组权重:社交影响力、兴趣影响力和图层级权重。社交影响力(公式13中的α)和兴趣影响力(公式14中的β)是节点级权重,表示用户在社交网络和兴趣网络中如何平衡不同邻居节点的影响。图层级权重(公式12中γ)表示用户如何平衡社交影响和历史记录对更新嵌入的影响。

使用多级注意力网络来学习这些权重。节点注意力网络用于学习社交影响力和兴趣影响力,通过将用户嵌入和物品嵌入作为输入。图注意力网络将节点注意力权重作为输入,通过考虑用户的嵌入和从节点注意力网络中学到的加权表示,计算图层级权重。

在这个模型中,使用了多级注意力网络来建模用户嵌入的更新过程。模型包括图注意力网络和节点注意力网络两个部分。

在节点注意力网络中,学习了社交影响力和兴趣影响力的节点级权重。社交影响力权重表示用户在社交网络中不同邻居节点的影响贡献,兴趣影响力权重表示用户在兴趣网络中不同兴趣物品邻居的影响贡献。通过多层感知机(MLP)来学习这些权重,将用户嵌入和相关的节点嵌入作为输入。

在图注意力网络中,将节点注意力权重作为输入,通过考虑用户的嵌入和从节点注意力网络中学到的加权表示,计算图层级的注意力权重。这些注意力权重表示用户在更新嵌入时,对于影响扩散和兴趣扩散的重要性权衡。通过学习到的注意力权重,可以区分不同方面对用户嵌入更新的贡献。

总的来说,这个模型利用多级注意力网络来建模用户在社交网络和兴趣网络中的影响扩散和兴趣扩散,从而更准确地更新用户的嵌入表示。这种个性化的权重学习可以帮助我们更好地理解用户行为并提高推荐系统等应用的效果。

3.4 预测层

在这个模型中,通过K层的迭代扩散过程,获得了用户和物品的嵌入表示。用户的最终嵌入是将每一层的嵌入拼接在一起,物品的最终嵌入也是类似的拼接操作。预测评分通过最终用户和物品嵌入的内积来建模。

与直接使用第K层嵌入进行预测相比,使用拼接层的LR-GCCF模型能够有效解决过度平滑的问题。拼接层将每一层的嵌入进行拼接,相当于进行了残差偏好学习,可以缓解过度平滑的问题。

这个模型在用户-物品二分图结构中表现出了先进的性能,通过多层迭代和拼接层的设计,能够更准确地预测用户对物品的评分。

3.5 模型训练

在模型训练中,使用了一种基于配对排序的损失函数进行优化。

损失函数包括正样本和负样本之间的差异以及正则化项。其中,正样本是已观察到的用户-物品对,负样本是从未观察到的用户-物品对中随机采样得到的。通过最小化损失函数,可以调整模型参数以使正样本的预测评分高于负样本的预测评分。

模型的参数初始化使用高斯分布,并且没有调整卷积层中嵌入大小的维度,保持统一。多级注意力网络中的多层感知机采用两层结构。

通过这种训练方法,可以提高模型在隐式反馈数据上的性能,从而更准确地预测用户对物品的偏好。

四、总结

本文提出了一种名为DiffNet++的神经社交和兴趣扩散模型,用于社交推荐。通过联合建模社交网络和兴趣网络的高阶结构,可以相互增强推荐效果。模型将社交推荐问题转化为异构图,并通过卷积递归学习用户嵌入,直接将高阶社交结构和兴趣网络纳入用户建模过程。此外,模型还采用多级注意力网络,以更好地聚合图和节点级别的表示,提高用户建模效果。实验结果显示,该模型在两个真实数据集上表现出明显的有效性。未来的研究方向包括探索图推理模型,以解释用户行为的路径。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值