← all repositories
gusye1234/LightGCN-PyTorch

A leaner graph neural network for recommendation

PyTorch re-implementation of a SIGIR 2020 paper that strips GCNs down to just neighborhood aggregation for collaborative filtering.

1.1k stars Python ML FrameworksDomain Apps
LightGCN-PyTorch
Not currently ranked — collecting fresh signals.
star history

What it does

LightGCN is a graph convolutional network for recommendation systems—think “users who bought X also bought Y”—that deliberately drops the usual GCN baggage like feature transformation and nonlinear activation. The repo provides training code, four preprocessed datasets (Gowalla, Yelp2018, Amazon-book, LastFM), and reported recall/NDCG metrics for 1- to 4-layer variants.

The interesting bit

The paper’s bet is that for collaborative filtering, all that GCN complexity is just dead weight; only neighborhood aggregation matters. The README includes a C++ extension for negative sampling via pybind11, which suggests the authors actually cared about training speed, not just theory.

Key highlights

  • Reproducible by default: seeds fixed for numpy and torch, so the epoch-5 and epoch-116 logs should match exactly
  • Extensible via inheritance: plug in your own dataset (BasicDataset), model (BasicModel), or sampling method (Procedure.py)
  • Tensorboard logging supported
  • Includes matrix-splitting code that the authors themselves tell you not to use—“it will extremely slow down the training speed”

Caveats

  • Windows users may hit snags with the multicore test option
  • The C++ extension requires manual install of pybind11 and cppimport
  • No Amazon-book results shown in the README; only Gowalla and Yelp2018 tables

Verdict

Grab this if you’re benchmarking recommendation models or need a clean PyTorch baseline for graph-based collaborative filtering. Skip it if you want a batteries-included library; this is research code with extension points, not a product.

Frequently asked

What is gusye1234/LightGCN-PyTorch?
PyTorch re-implementation of a SIGIR 2020 paper that strips GCNs down to just neighborhood aggregation for collaborative filtering.
Is LightGCN-PyTorch open source?
Yes — gusye1234/LightGCN-PyTorch is an open-source project tracked on heatdrop.
What language is LightGCN-PyTorch written in?
gusye1234/LightGCN-PyTorch is primarily written in Python.
How popular is LightGCN-PyTorch?
gusye1234/LightGCN-PyTorch has 1.1k stars on GitHub.
Where can I find LightGCN-PyTorch?
gusye1234/LightGCN-PyTorch is on GitHub at https://github.com/gusye1234/LightGCN-PyTorch.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.