Multi-view Denoising Graph Auto-Encoders on Heterogeneous Information Networks for Cold-start Recommendation阅读笔记

动机

本文是2021年KDD上的一篇文章。最近有不少工作利用异构图去解决推荐系统冷启动问题,但是这些方法都忽略了在冷启动场景下训练和推理的差异。针对以上问题,本文提出了MvDGAE模型,该模型通过将冷启动问题视为一个用户物品交互项数据缺失的问题,通过多视图增强不同方面的用户与物品之间的关系。

方法

MvDGAE整体框架如下。

Multi-view Graph Encoders

在异构图中存在着多种元路径,以下图为例,左边的元路径为用户-用户-物品、右边的元路径为用户-物品-用户。

在我们设置的一些元路径的情况下,通过聚合节点的邻居来获取自身表示,邻居节点的权重通过attention的方式获取


在获取用户、物品各种元路径下的表示后,我们可以将这些元路径下的表示聚合,以获取用户与物品的最终表示

考虑到冷启动场景下某些新物品或新用户交互较少或者信息较少,在部分元路径中缺少与其他节点的关系,因此我们在训练的过程中也模仿这个场景,随机丢失一些元路径的表示

S(m)是一个指示函数,表示第m个视图是否丢弃。

Multi-view Graph Denoising Decoding

我们需要将原始的辅助关系重构为用户-用户和物品-物品之间的关系,这里我的理解是比如说在电影推荐中,根据电影-导演-电影这个元路径重构电影-电影之间的关系,这里如果某两部电影的导演相同,它们之间就有联系,这个关系应该就是下面的矩阵A所表示的。
根据融合表示矩阵H和每个元路径下的视图权重矩阵\(W_m\)重构关系矩阵\(\hat A^{(m)}\),再将重构的关系矩阵与真实的关系矩阵求损失得

Bayesian Task Weight Learner

多视图图解码也可以看作是多任务学习,每个任务的目的都是重建特定的视图。考虑到用户和物品两个方面,整体重构损失为

由于手动调节权重成本很高,这里我们使用贝叶斯任务权重学习器可以自动实现多任务之间的平衡。

Optimization Objective

最后预测用户对物品得评分方式为

推荐部分的损失为

总的损失为

实验结果

在多个数据集上,本文提出的方法效果均最好。

总结

本文关键的地方有三点,第一点是在多个视图中获取物品或用户的表示,同时加入dropout,随机丢失一些视图下的表示,以模仿冷启动场景,增强了用户和物品的表示,二是根据获取的表示重构视图,拉近相似的用户或物品之间的表示,三是用贝叶斯任务权重学习器自适应调节不同视图的权重。

posted @ 2022-10-12 14:59  South1999  阅读(331)  评论(0编辑  收藏  举报