
摘要
图卷积网络(Graph Convolution Network, GCN)已成为协同过滤任务中的最新技术前沿。然而,其在推荐系统中表现出色的原因尚未得到充分理解。现有将GCN应用于推荐的研究工作,普遍缺乏对GCN核心组件的系统性消融分析。GCN最初是为图分类任务设计的,集成了多种复杂的神经网络操作。然而,我们通过实证研究发现,GCN中两种最常见的设计——特征变换与非线性激活函数——对协同过滤性能的提升贡献极小。更严重的是,引入这些组件反而增加了模型训练的难度,并导致推荐性能下降。在本研究中,我们致力于简化GCN的结构设计,使其更加简洁、适配推荐任务的本质需求。为此,我们提出一种新型模型——LightGCN,该模型仅保留GCN中最核心的组件:邻域聚合(neighborhood aggregation)。具体而言,LightGCN通过在用户-物品交互图上进行线性传播来学习用户与物品的嵌入表示,并将各层学习到的嵌入进行加权求和,作为最终的嵌入表示。这种结构简单、线性且优雅的模型在实现与训练上均更为高效。在完全相同的实验设置下,LightGCN相较于当前最先进的基于GCN的推荐模型——神经图协同过滤(Neural Graph Collaborative Filtering, NGCF),平均实现了约16.0%的相对性能提升。此外,本文从理论分析与实证两个角度进一步探讨了LightGCN简洁设计的合理性,为其有效性提供了充分支持。
代码仓库
lucapantea/LightGCN
pytorch
GitHub 中提及
LehengTHU/Agent4Rec
pytorch
GitHub 中提及
Wuyxin/LightGCN-parallelized-version
tf
GitHub 中提及
JiahaoWuGit/DcRec
pytorch
GitHub 中提及
apat1n/LightGCN-Pytorch
pytorch
GitHub 中提及
Trantin84/NGCF-Tin
tf
GitHub 中提及
yshenaw/GF_CF
pytorch
GitHub 中提及
jinfeng-xu/fkan-gcf
pytorch
GitHub 中提及
gusye1234/LightGCN-PyTorch
pytorch
GitHub 中提及
nathann3/better_than_netflix_movie_recommender
tf
GitHub 中提及
tanya525625/LightGCN-PyTorch
pytorch
GitHub 中提及
sayamsingla2000/LightGCN_MovieLens
pytorch
GitHub 中提及
shuyao-wang/dsl
pytorch
GitHub 中提及
PreferredAI/cornac
tf
GitHub 中提及
kuandeng/LightGCN
官方
tf
GitHub 中提及
gusye1234/pytorch-light-gcn
官方
pytorch
GitHub 中提及
massquantity/LibRecommender
tf
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| collaborative-filtering-on-amazon-book | LightGCN | NDCG@20: 0.0315 Recall@20: 0.0411 |
| collaborative-filtering-on-gowalla | LightGCN | NDCG@20: 0.1554 Recall@20: 0.1830 |
| collaborative-filtering-on-yelp2018 | LightGCN | NDCG@20: 0.0530 Recall@20: 0.0649 |
| recommendation-systems-on-amazon-book | LightGCN | Recall@20: 0.0411 nDCG@20: 0.0315 |
| recommendation-systems-on-gowalla | LightGCN | Recall@20: 0.1830 nDCG@20: 0.1554 |
| recommendation-systems-on-yelp2018 | LightGCN | NDCG@20: 0.0530 Recall@20: 0.0649 |