Skip to content
/ TVA Public

This project is built around PyTorch-Lightning, offering a structured and friendly environment for anyone exploring sequential recommendation systems. This platform is designed to simplify the machine learning workflow, letting you focus more on the strategic aspects of model development and less on setup complexities.

License

Notifications You must be signed in to change notification settings

Aidenzich/TVA

Repository files navigation

TVA: Sequential Recommendation Playground

bg

This project is built around PyTorch-Lightning, offering a structured and friendly environment for anyone exploring sequential recommendation systems. This platform is designed to simplify the machine learning workflow, letting you focus more on the strategic aspects of model development and less on setup complexities.

Requirements

  1. Docker and Docker Compose: You can download them here.
  2. Python 3.x and Conda: You can download them from Anaconda distribution or Miniconda.

Setup

Clone this repository to your local machine and navigate to the directory containing the Makefile.

git clone https://github.com/Aidenzich/TVA.git
cd TVA

We use conda as default environment in this repo. To create the tvar conda environment, run the following command:

conda create --name tvar python=3.8
conda activate tvar
pip install -r requirements.txt

Functionalities

demo

  • 🗣️ Training, Preprocessing, Inference with Interactive Commands
  • 📊 Well-organized logging and TensorBoard visualization
  • 📑 Configs based hyperparameters and configurations system

Support Models

Model Venue Year Support
TVA (a model still in development, the concept is to enable the model to aware Temporal Variance) - - -
ContrastVAE: Contrastive Variational AutoEncoder for Sequential Recommendation CIKM '22
CBiT: Contrastive Learning with Bidirectional Transformers for Sequential Recommendation CIKM '22
BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer CIKM '19
VAECF: Variational Autoencoders for Collaborative Filtering WWW '18
SASRec: Self-Attentive Sequential Recommendation ICDM '18

Usage

Preprocess the Data

To run the preprocessing script:

make pp

Train

To run the training script:

make train

Inference

To run the inference script:

make infer

TensorBoard

To start TensorBoard:

make panel

About

This project is built around PyTorch-Lightning, offering a structured and friendly environment for anyone exploring sequential recommendation systems. This platform is designed to simplify the machine learning workflow, letting you focus more on the strategic aspects of model development and less on setup complexities.

Topics

Resources

License

Stars

Watchers

Forks