论文名称:MMGCN: Multi-modal Graph Convolution Network for Personalized Recommendation of Micro-video
论文 代码
摘要
动机:
- 现有多模态推荐系统的工作大多数局限于如何利用多模态内容丰富物品表示,将不同模态信息作为整体融合到协同过滤框架,缺少利用用户和物品之间的模态信息交换以及捕捉用户对不同模态更细粒度的偏好。
- 本文认为仅通过用户的交互历史记录挖掘用户偏好是不足够的,忽略了用户对不同模态的关注程度不同,且这种协同过滤方法无法解决数据稀疏的缺陷。
- 直接利用已有
GNN
的组合操作无法捕捉不同模态之间的联系。
挑战:
- 不同模态之间存在语义差距。如上图,i1和i2虽然有相似的视觉信息,但是文本之间却很不相同,忽略这样的模态差距将可能误导模型对物品表示的学习
- 用户对不同模态有不同的喜好,或者反过来说,不同模态对不同用户的贡献也不同。
- 不同模态其实是作为不同的渠道来探索用户的兴趣。
我们提出利用用户-项目交互来指导每个模态中的表示学习,进而实现个性化微视频推荐。我们设计了一个基于图神经网络消息传递思想的多模态图卷积网络( MMGCN
)框架,该框架可以生成用户和微视频的模态特异性表示,从而更好地捕获用户偏好。具体来说,我们在每个模态中构建一个用户-项目二部图,并结合其邻居的拓扑结构和特征来丰富每个节点的表示。通过在3个公开数据集Tiktok
、Kwai
和MovieLens
上的大量实验,我们证明了我们提出的模型能够显著优于现有的多模态推荐方法。
模型框架
框架主要有三个组件聚合层,组合层,预测层三部分组成,通过叠加多个聚合层和组合层我们将用户和项目的信息交换编码到每个模态的表示学习中。最后通过预测层融合多模态表示来预测每个用户和每个微视频之间的交互。
模态感知——用户-项目图
根据用户和微视频的之间的交互(查看,浏览,点击等),将这些交互数据表示为用户-项目图: G = {(u, i)|u ∈ U, i ∈ I},其中 U 和 I 分别表示用户和微视频集。边 y = 1,表示用户和微视频进行了交互,y = 0没有交互。
聚合层
对于用户来说,用户历史交互过的物品能够反映用户的兴趣,故可以对物品进行汇聚操作来丰富用户的表征;对于物品来说,交互过物品的**「user group」**可以作为物品除自身模态特征之外的补充信息,故可以对用户进行汇聚来提升物品的表征。
进行维度感知特征选择
平局池化操作:每个邻居对特定模态的特征的贡献是相同的
最大池化操作:选取最大的近邻值被设置为每个维度的值,不同邻居对输出表示具有不同的贡献。
组合层
本节提出了一个新的融合层,它将来自聚合层的结构化信息 hm、节点的内在信息 um 和沟通不同模态的连接信息 uid 集成
为统一的表示,其公式为:
Um 是用户u在模态m中的表示
Uid是用户id的d维嵌入
W2是将um转移到ID的嵌入空间可训练权重参数
使用了两种组合函数:
- 级联组合将两种组合串联起来,使用非线性变换
- 元素级组合,将两个表示之间的元素级特征交互
模型预测法
在堆叠多个单模态聚合层和多模态组合层之后,我们通过多模态表示的线性组合获得用户u和微视频i的最终表示: