Git Product home page Git Product logo

jgcf's Introduction

JGCF

A simple, efficient and effective Jacobi polynomial-based graph collaborative filtering algorithm built on recbole.

Requirements

conda env create -f environment.yaml

Quich Start

python run.py --dataset gowalla

Datasets

For large scale datasets, you need to downlowd tha dataset to use.

For Amazon_Books

For alibaba, you can download Amazon_Books.zip from Google Drive. Then

mkdir dataset/Amazon_Books
mv Amazon_Books.zip dataset/Amazon_Books
unzip Amazon_Books.zip
python run.py --dataset Amazon_Books

For Alibaba-iFashion

For alibaba, you can download alibaba.zip from Google Drive. Then

mv alibaba.zip dataset
unzip alibaba.zip
python run.py --dataset alibaba

Benchmarking

Gowalla:

Metrics LightGCN (K=3) JGCF (K=3)
Recall@10 0.1382 0.1574
NDCG@10 0.1003 0.1145
Recall@20 0.1983 0.2232
NDCG@20 0.1175 0.1332
Recall@50 0.3067 0.3406
NDCG@50 0.1438 0.1619

Citation

If you find our work useful, please cite:

@inproceedings{
    jgcf2023on,
    title={On Manipulating Signals of User-Item Graph: A Jacobi Polynomial-based Graph Collaborative Filtering},
    author={Jiayan Guo, Lun Du, Xu Chen, Xiaojun Ma, Qiang Fu, Shi Han, Dongmei Zhang, Yan Zhang},
    booktitle={29th SIGKDD Conference on Knowledge Discovery and Data Mining},
    year={2023},
}

jgcf's People

Contributors

spacelearner avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

jeongwhanchoi

jgcf's Issues

About Figure 2:

Hi,

I recently read your novel work, but have some questions about Figure 2. I calculated the values of Jacobi Polynomial Bases (over ten points in the range of [-1, 1]):

Layer-0:
  [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]
Layer-1:
  [-2.0, -1.5555555820465088, -1.1111111640930176, -0.666666567325592, -0.22222226858139038, 0.22222226858139038, 0.666666567325592, 1.1111111640930176, 1.5555555820465088, 2.0]
Layer-2:
  [3.0, 1.5185185670852661, 0.4074075222015381, -0.3333333730697632, -0.703703761100769, -0.703703761100769, -0.3333333730697632, 0.4074074625968933, 1.5185185670852661, 3.0]
Layer-3:
  [-4.0, -0.9602195024490356, 0.46639204025268555, 0.7407405376434326, 0.3237311840057373, -0.323731392621994, -0.7407404184341431, -0.4663921892642975, 0.9602195024490356, 4.0]
Layer-4:
  [5.0, 0.1348886489868164, -0.825331449508667, -0.18518459796905518, 0.5189761519432068, 0.5189759731292725, -0.18518538773059845, -0.8253315091133118, 0.13488838076591492, 5.0]
Layer-5:
  [-6.0, 0.6252102851867676, 0.46486878395080566, -0.5185177326202393, -0.38622209429740906, 0.3862217962741852, 0.5185186266899109, -0.4648689031600952, -0.625209629535675, 6.0]

The results appear quite different to Figure 2 of which the values are no greater than 1. Could you share the code for plotting?

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.