
摘要
学习用户和项目的向量表示(即嵌入)是现代推荐系统的核心。从早期的矩阵分解到最近出现的基于深度学习的方法,现有的努力通常通过映射预先存在的描述用户(或项目)的特征来获得用户的(或项目的)嵌入,这些特征包括ID和属性等。我们认为,这类方法的一个固有缺陷在于,用户-项目交互中潜在的协作信号并未在嵌入过程中编码。因此,生成的嵌入可能不足以捕捉协作过滤效应。在本研究中,我们提出将用户-项目交互——更具体地说是二分图结构——整合到嵌入过程中。我们开发了一种新的推荐框架Neural Graph Collaborative Filtering(NGCF),该框架通过在用户-项目图上传播嵌入来利用其图结构。这使得能够对用户-项目图中的高阶连接性进行富有表现力的建模,从而以显式方式有效地将协作信号注入嵌入过程。我们在三个公开基准数据集上进行了广泛的实验,结果表明与HOP-Rec和Collaborative Memory Network等几种最先进的模型相比,我们的方法具有显著改进。进一步分析验证了嵌入传播对于学习更好的用户和项目表示的重要性,证明了NGCF的合理性和有效性。代码可在https://github.com/xiangwang1223/neural_graph_collaborative_filtering 获取。
代码仓库
zzz2010/ngcf-paddle2
paddle
GitHub 中提及
weiyinwei/mmgcn
pytorch
GitHub 中提及
immabe/NGCF_pytorch
pytorch
GitHub 中提及
madansinghal/graphranko
tf
GitHub 中提及
huangtinglin/NGCF-PyTorch
pytorch
GitHub 中提及
weiyinwei/huign
pytorch
GitHub 中提及
CHFsky/ngcf-paddle
paddle
GitHub 中提及
xiangwang1223/neural_graph_collaborative_filtering
官方
tf
GitHub 中提及
jinfeng-xu/fkan-gcf
pytorch
GitHub 中提及
nathann3/better_than_netflix_movie_recommender
tf
GitHub 中提及
florianeBhz/NGCF_Pytorch
pytorch
GitHub 中提及
chfhf/ngcf-paddle
paddle
GitHub 中提及
talkingwallace/NGCF-pytorch
pytorch
GitHub 中提及
lt610/DAGNN
pytorch
GitHub 中提及
xiaoleiHou214/BGCF-pytorch-master
pytorch
GitHub 中提及
MiloudBi/NGCF-pytorch
pytorch
GitHub 中提及
PreferredAI/cornac
tf
GitHub 中提及
liu-jc/PyTorch_NGCF
pytorch
massquantity/LibRecommender
tf
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| collaborative-filtering-on-gowalla | NGCF | Recall@20: 0.1570 |
| link-prediction-on-movielens-25m | NGCF | Hits@10: 0.7807 nDCG@10: 0.4866 |
| recommendation-systems-on-amazon-book | NGCF | Recall@20: 0.0344 nDCG@20: 0.0263 |
| recommendation-systems-on-gowalla | NGCF | Recall@20: 0.1570 nDCG@20: 0.1327 |