摘要:我们从链路预测的视角考虑推荐系统的matrix completion。像电影评分的交互数据可以表示为一个user-item的二分图,其中的edge表示观测到的评分。这种表示是特别有用的在额外的基于图的side information存在时。在近来深度学习在图结构数据上取得进展的基础上,我们基于二分图交互图上的differentiable message passing提出了一个图自编码器框架。进一步,为了验证提出的message passing 策略,我们在协同过滤任务上测试我们的模型并且展示出了competitive results.
Matrix Completion的解释参考矩阵补全(matrix completion)的经典算法有哪些?
1 Introduction
推荐系统的一个子任务就是matrix completion. 在这个工作中,我们把matrix completion视作在图上的链路预测问题:users和items的交互数据可以被表示成一个二分图,观测到的评分/购买用links表示。预测评分就对应于预测在二分图中的labeled links。
In accordance with (按照)这个观点,我们提出了图卷积矩阵不全(GC-MC):一个基于图的用于matrix completioin的自编码器框架,自编码器产生users和items节点的latent features通过一种在二分交互图上的message passing形式。这些 latent user and item representations被用来重构rating links通过一个bilinear decoder.
当recommender graph伴随着结构化的外部信息例如社交网络是,将matrix completion形式化为一个在二分图上的链路预测任务的好处是特别明显的。将这些外部信息和交互数据结合起来可以减轻与冷启动问题相关的性能瓶颈。我们的图自编码器模型有效的将交互数据和side information结合起来,without resorting to (不诉诸,不使用) 在文献[20]中的recurrent frameworks. 我们进一步展示出在存粹的协同过滤背景下,我们的方法能够compete with(角逐) 近来的 state of the art models.
我们的主要贡献如下:(1)我们把graph neural networks连同结构化的side-information(侧面信息)应用到matrix completion任务中,并且展示了我们简单的message passing model 性能优于更加复杂的基于图的方法例如文献[20]。(2)我们引入node dropout,一种有效的正则化技术。
开源实现可以在https://github.com/riannevdberg/gc-mc 上找到。
2 Matrix completion as link prediction in bipartite graphs
考虑一个rating matrix \(M ( N_u \times N_v)\),其中Nu是users的数量,Nv是items的数量。矩阵中一个非零的entry \(M_{ij}\)表示一个观测到的rating from user i for item j. \(M_{ij}=0\) 表示一个没有观测到的rating。我们matrix completion的任务就是预测M中没有观测到的entry。
可以把matrix completion看作是在一个二分图上的链路预测问题,这种connection(转换方法)之前在文献[16]中做过探索并且导致在推荐问题上基于图方法的发展.
之前在推荐系统上的基于图的方法(see [16] for an overview) 通常是利用一个 multi-stage pipeline,包括图特征抽取模型和一个链路预测模型,它们都是分别训练的。然而进来的结果已经表明对于无监督的学习和链路预测的实验结果可以被显著提升通过用end-to-end的学习技巧特别是使用图自编码器在图结构数据上建模。接下来,我们介绍一个在矩阵补全任务中特殊的图自编码器变体。我们将会展示graph-based side information是如何自然地被包括进去的。
2.1 Revisiting graph auto-encoders
我们revisit graph auto-encoders,这最开始由[12, 26]引入作为一个对于无向图上非监督学习[26]和链路预测[12]的end-to-end model。