作者: 浅梦的学习笔记
“ 本系列主要介绍图表示学习在推荐系统中常见的 user-item interaction 数据上的建模。我们可以将 user-item interaction data 看做是关于 user-item 的二分图 Bipartite,这样可以基于 GNN 的方法进行 user 和 item embedding 的学习。本篇介绍来自 KDD18 的工作 GCMC:Graph Convolutional Matrix Completion。”
文章来源:蘑菇先生 http://xtf615.com/2020/02/13/Representation-Learning-on-Bipartite-Graphs/
主要介绍两篇文章,如下:
-
KDD2018,GCMC:Graph Convolutional Matrix Completion,在 movie-len 上的 state of the art 模型。
-
SIGIR2019,NGCF:Neural Graph Collaborative Filtering,据我所知应该是首次提出图协同过滤的概念。
本文介绍第一篇 GCMC。
Graph Convolutional Matrix Completion
KDD2018: Graph Convolutional Matrix Completion
Introduction
这是一篇发表在 KDD2018(二作 T.N.Kipf 是著名的 GCN 的一作)的文章。将矩阵补全问题看做是关于 user-item 二分图的链接预测问题(a bipartite user-item graph with labeled edges),每种链接边可以看做是一种 label(例如多种交互行为:点击,收藏,喜欢,下载等;在评分中,1~5 分可以分别看做一种 label)。有点像 multi-view bipartite graph。作者提出了一个差异化信息传递(differentiable message passing)的概念,通过在 bipartite interaction graph 上进行差异化信息传递来学习结点的嵌入,再通过一个 bilinear decoder 进行链接预测。
- 本文地址:二部图表示学习 | Graph Convolutional Matrix Completion
- 本文版权归作者和AIQ共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出
Formulation
Models
Graph convolutional encoder
Bilinear decoder
Model Training
Side Information
Summary
Summary
关于图二分图的挖掘,是推荐系统中的核心问题之一。传统的图表示学习直接对二部图进行挖掘是有问题的。个人认为传统的 graph embedding 在建模时实际上很依赖于 graph 的手动构造,连边权重的合理设置,且没有把二分图中的 collaborative signals 直接建模到结点的 embedding 表示中,而只是通过目标函数来间接引导。而二分图的构建是基于原始数据的,没有连边权重,且数据过于稀疏,蕴含在二分图中的协同信息是非常隐晦的和难以挖掘的,故传统的图表示学习方法很难处理。本文章中介绍工作基于 message passing 范式的 GNN 来挖掘二分图,将 collaborative signals 直接建模到 embedding 中,这是非常值得借鉴的。另外,文章的实现在 GitHub 都有源码,且代码风格都不错,值得学习和实践。
References
-
KDD2018,GCMC:Graph Convolutional Matrix Completion(https://www.kdd.org/kdd2018/files/deep-learning-day/DLDay18_paper_32.pdf)
-
Github, GCMC, Source Code(https://github.com/riannevdberg/gc-mc)
注意:本文归作者所有,未经作者允许,不得转载