Skip to content

jeongwhanchoi/LT-OCF-Tutorial

Repository files navigation

Tutorial for LT-OCF

Arxiv link BigDyL Link

Links for Tutorial:

Introduction

This is the repository of our accepted CIKM 2021 paper "LT-OCF: Learnable-Time ODE-based Collaborative Filtering". Paper is available on arxiv

Citation

Citing the paper

Please cite our paper if using this code.

@inproceedings{choi2021ltocf,
  title={LT-OCF: Learnable-Time ODE-based Collaborative Filtering},
  author={Choi, Jeongwhan and Jeon, Jinsung and Park, Noseong},
  booktitle={Proceedings of the 30th ACM International Conference on Information and Knowledge Management},
  year={2021},
  organization={ACM}
}

Citing this repo

If you use tutorial materials in your own studies, and work, please cite it by using the following:

@Misc{choi2021ltocf,
  author =   {Choi, Jeongwhan},
  title =    {{LT-OCF: Learnable-Time ODE-based Collaborative Filtering}},
  howpublished = {\url{https://github.com/jeongwhanchoi/LT-OCF-Tutorial}},
  month        = November,
  year = {since 2021}
}

Our proposed LT-OCF

Our proposed dual co-evolving ODE


Setup Python environment for LT-OCF

Install python environment

conda env create -f environment.yml   

Activate environment

conda activate lt-ocf

Reproducibility

Usage

In terminal

  • Run the shell file (at the root of the project)
# run lt-ocf (gowalla dataset, rk4 solver, learnable time)
sh ltocf_gowalla_rk4.sh
# run lt-ocf (gowalla dataset, rk4 solver, fixed time)
sh ltocf_gowalla_rk4_fixed.sh

Arguments (see more arguments in parse.py)

  • gpuid
    • default: 0
  • dataset
    • gowalla, yelp2018, amazon-book
  • model
    • ltocf
  • solver
    • euler, rk4, implicit_adams, dopri5
  • adjoint
    • False, True
  • K
    • 1, 2, 3, 4
  • learnable_time
    • True, False
  • dual_res
    • False, True