Skip to content
forked from BishopLiu/ETEGRec

[SIGIR'25] Code of "Generative Recommender with End-to-End Learnable Item Tokenization".

Notifications You must be signed in to change notification settings

RUCAIBox/ETEGRec

 
 

Repository files navigation

ETEGRec

This is the official PyTorch implementation for the paper:

Generative Recommender with End-to-End Learnable Item Tokenization

Overview

We propose ETEGRec, a novel End-To-End Generative Recommender that unifies item tokenization and generative recommendation into a cohesive framework. Built on a dual encoder-decoder architecture, ETEGRec consists of an item tokenizer and a generative recommender. To enable synergistic interaction between these components, we propose a recommendation-oriented alignment strategy, which includes two key optimization objectives: sequence-item alignment and preference-semantic alignment. These objectives tightly couple the learning processes of the item tokenizer and the generative recommender, fostering mutual enhancement. Additionally, we develop an alternating optimization technique to ensure stable and efficient end-to-end training of the entire framework.

model

Requirements

torch==2.4.0+cu121
numpy
accelerate
faiss
tqdm
scikit-learn
transformers

Dataset

You can download the SASRec embeddings, pretrained RQVAE weights and interaction data used in our paper from Google Drive

RQVAE Pretrain

cd RQVAE
bash run_pretrain.sh

Train

bash run.sh

About

[SIGIR'25] Code of "Generative Recommender with End-to-End Learnable Item Tokenization".

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.3%
  • Shell 0.7%