dynamic-recommendation

Explore methods for dynamic recommendation systems for CSE543. Authored by David Wang, Shirley Li, Kathleen Weng, Donghong Cai, Xinhang Yuan.

https://github.com/d-wang1/dynamic-recommendation

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.3%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Explore methods for dynamic recommendation systems for CSE543. Authored by David Wang, Shirley Li, Kathleen Weng, Donghong Cai, Xinhang Yuan.

Basic Info
  • Host: GitHub
  • Owner: d-wang1
  • Language: Python
  • Default Branch: main
  • Size: 6.57 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created 11 months ago · Last pushed 10 months ago
Metadata Files
Readme Citation

README.md

dynamic-recommendation

Explore methods for dynamic recommendation systems for CSE543. Authored by David Wang, Shirley Li, Kathleen Weng, Donghong Cai, Xinhang Yuan.

Setup:

  1. Use uv for package handling. It should exist in the venv, but if it doesn't, pip install uv.
  2. Run uv init if pyproject.toml does not exist. If it does, run uv sync --frozen
  3. Activate the venv via source venv/bin/activate on Mac/Linux and .\venv\Scripts\activate on Windows. Don't track the venv by adding it to the .gitignore file (via the following line: venv)
  4. To add new requirements / packages, run uv add <package>, e.g. uv add pandas If you hand-installed any packages, run uv lock
  5. To install all the packages in pyproject.toml, run uv sync --frozen. This is the equivalent of using pip install -r requirements.txt. This will fail if the pyproject.toml and uv.lock have diverged. If this happens, uv lock -diff can show the packages that bumped

(If pip is missing, use python -m ensurepip --upgrade)

  • Install pytorch for your specific CUDA version on https://pytorch.org/get-started/locally/. Add uv in front of the pip so the command looks like uv pip install torch <etc...> (To check your CUDA version, run nvidia-smi on your terminal and look on the first row)

Training

  • For logging, either set the comet API key via export COMET_API_KEY="yourapikey" or change the api key value in config.json (not recommended for final release)
  • Activate venv via step 3 in setup
  • python train.py

Evaluation

  • To change the checkpoint location, modify app.ckpt_to_use in config.json
  • To get statistics such as RMSE, run eval.py
  • To get sample user recommendations, run test_outputs.py

Owner

  • Login: d-wang1
  • Kind: user

Citation (citations.md)

- F. Maxwell Harper and Joseph A. Konstan. 2015. The MovieLens Datasets: History
and Context. ACM Transactions on Interactive Intelligent Systems (TiiS) 5, 4,
Article 19 (December 2015), 19 pages. DOI=http://dx.doi.org/10.1145/2827872

*For NeuMF architecture*
[- Ong K, Ng KW, Haw SC. Neural matrix factorization++ based recommendation system. F1000Res. 2021 Oct 25;10:1079. doi: 10.12688/f1000research.73240.1. PMID: 38550618; PMCID: PMC10973760.](https://arxiv.org/abs/1708.05031)

GitHub Events

Total
  • Member event: 3
  • Push event: 22
Last Year
  • Member event: 3
  • Push event: 22