StackRec: Efficient Training of Very Deep Sequential Recommender Models by Iterative Stacking

Related tags

Deep LearningStackRec
Overview

StackRec: Efficient Training of Very Deep Sequential Recommender Models by Iterative Stacking

Datasets

You can download datasets that have been pre-processed:

We construct a large-scale session-based recommendation dataset (denoted as Video-6M) by collecting the interactiton behaviors of nearly 6 million users in a week from a commercial recommender system. The dataset can be used to evaluate very deep recommendation models (up to 100 layers), such as NextItNet (as shown in our paper StackRec(SIGIR2021)). If you use this dataset in your paper, you should cite our NextItNet and StackRec for publish permission.

@article{yuan2019simple,
	title={A simple convolutional generative network for next item recommendation},
	author={Yuan, Fajie and Karatzoglou, Alexandros and Arapakis, Ioannis and Jose, Joemon M and He, Xiangnan},
	journal={Proceedings of the Twelfth ACM International Conference on Web Search and Data Mining},
	year={2019}
}

@article{wang2020stackrec,
  title={StackRec: Efficient Training of Very Deep Sequential Recommender Models by Iterative Stacking},
  author={Wang, Jiachun and Yuan, Fajie and Chen, Jian and Wu, Qingyao and Li, Chengmin and Yang, Min and Sun, Yang and Zhang, Guoxiao},
  journal={Proceedings of the 44th International ACM SIGIR conference on Research and Development in Information Retrieval},
  year={2021}
}

File Description

requirements.txt: the experiment environment

train_nextitnet_sc1.sh: the shell script to train StackRec with NextItNet in CL scenario
train_nextitnet_sc2.sh: the shell script to train StackRec with NextItNet in TF scenario
train_nextitnet_sc3.sh: the shell script to train StackRec with NextItNet in TS scenario
deep_nextitnet.py: the training file of NextItNet
deep_nextitnet_coldrec.py: the training file of NextItNet customized for coldrec source dataset
data_loader.py: the dataset loading file of NextItNet and GRec
data_loader_finetune.py: the dataset loading file of NextItNet and GRec customized for coldrec dataset
generator_deep.py: the model file of NextItNet
ops.py: the module file of NextItNet and GRec with stacking methods doubling blocks
ops_copytop.py: the module file of NextItNet with stacking methods allowed to stack top blocks
ops_original.py: the module file of NextItNet with stacking methods without alpha
fineall.py: the training file of NextItNet customized for coldrec target dataset

train_grec_sc1.sh: the shell script to train StackRec with GRec in CL scenario
deep_GRec: the training file of GRec
generator_deep_GRec.py: the model file of GRec
utils_GRec.py: some tools for GRec

train_sasrec_sc1.sh: the shell script to train StackRec with SASRec in CL scenario
baseline_SASRec.py: the training file of SASRec
Data_loader_SASRec.py: the dataset loading file of SASRec
SASRec_Alpha.py: the model file of SASRec

train_ssept_sc1.sh: the shell script to train StackRec with SSEPT in CL scenario
baseline_SSEPT.py: the training file of SSEPT
Data_loader_SSEPT.py: the dataset loading file of SSEPT
SSEPT_Alpha.py: the model file of SSEPT
utils.py: some tools for SASRec and SSEPT
Modules.py: the module file of SASRec and SSEPT with stacking methods

Stacking with NextItNet

Train in the CL scenario

Execute example:

sh train_nextitnet_sc1.sh

Train in the TS scenario

Execute example:

sh train_nextitnet_sc2.sh

Train in the TF scenario

Execute example:

sh train_nextitnet_sc3.sh

Stacking with GRec

Execute example:

sh train_grec_sc1.sh

Stacking with SASRec

Execute example:

sh train_sasrec_sc1.sh

Stacking with SSEPT

Execute example:

sh train_ssept_sc1.sh

Key Configuration

  • method: five stacking methods including from_scratch, stackC, stackA, stackR and stackE
  • data_ratio: the percentage of training data
  • dilation_count: the number of dilation factors {1,2,4,8}
  • num_blocks: the number of residual blocks
  • load_model: whether load pre-trained model or not
MASS (Mueen's Algorithm for Similarity Search) - a python 2 and 3 compatible library used for searching time series sub-sequences under z-normalized Euclidean distance for similarity.

Introduction MASS allows you to search a time series for a subquery resulting in an array of distances. These array of distances enable you to identif

Matrix Profile Foundation 79 Dec 31, 2022
DNA-RECON { Automatic Web Reconnaissance Tool }

ABOUT TOOL : DNA-RECON is an automatic web reconnaissance tool written in python. This tool made for reconnaissance and information gathering with an

NIKUNJ BHATT 25 Aug 11, 2021
[CVPRW 21] "BNN - BN = ? Training Binary Neural Networks without Batch Normalization", Tianlong Chen, Zhenyu Zhang, Xu Ouyang, Zechun Liu, Zhiqiang Shen, Zhangyang Wang

BNN - BN = ? Training Binary Neural Networks without Batch Normalization Codes for this paper BNN - BN = ? Training Binary Neural Networks without Bat

VITA 40 Dec 30, 2022
E2EC: An End-to-End Contour-based Method for High-Quality High-Speed Instance Segmentation

E2EC: An End-to-End Contour-based Method for High-Quality High-Speed Instance Segmentation E2EC: An End-to-End Contour-based Method for High-Quality H

zhangtao 146 Dec 29, 2022
Machine learning library for fast and efficient Gaussian mixture models

This repository contains code which implements the Stochastic Gaussian Mixture Model (S-GMM) for event-based datasets Dependencies CMake Premake4 Blaz

Omar Oubari 1 Dec 19, 2022
Convert ONNX model graph to Keras model format.

Convert ONNX model graph to Keras model format.

Grigory Malivenko 175 Dec 28, 2022
CausaLM: Causal Model Explanation Through Counterfactual Language Models

CausaLM: Causal Model Explanation Through Counterfactual Language Models Authors: Amir Feder, Nadav Oved, Uri Shalit, Roi Reichart Abstract: Understan

Amir Feder 39 Jul 10, 2022
Facebook AI Research Sequence-to-Sequence Toolkit written in Python.

Fairseq(-py) is a sequence modeling toolkit that allows researchers and developers to train custom models for translation, summarization, language mod

20.5k Jan 08, 2023
Autonomous Driving on Curvy Roads without Reliance on Frenet Frame: A Cartesian-based Trajectory Planning Method

C++/ROS Source Codes for "Autonomous Driving on Curvy Roads without Reliance on Frenet Frame: A Cartesian-based Trajectory Planning Method" published in IEEE Trans. Intelligent Transportation Systems

Bai Li 88 Dec 23, 2022
This is a repository for a No-Code object detection inference API using the OpenVINO. It's supported on both Windows and Linux Operating systems.

OpenVINO Inference API This is a repository for an object detection inference API using the OpenVINO. It's supported on both Windows and Linux Operati

BMW TechOffice MUNICH 68 Nov 24, 2022
This is an official implementation for "Video Swin Transformers".

Video Swin Transformer By Ze Liu*, Jia Ning*, Yue Cao, Yixuan Wei, Zheng Zhang, Stephen Lin and Han Hu. This repo is the official implementation of "V

Swin Transformer 981 Jan 03, 2023
U-Net Brain Tumor Segmentation

U-Net Brain Tumor Segmentation 🚀 :Feb 2019 the data processing implementation in this repo is not the fastest way (code need update, contribution is

Hao 448 Jan 02, 2023
Mip-NeRF: A Multiscale Representation for Anti-Aliasing Neural Radiance Fields.

This repository contains the code release for Mip-NeRF: A Multiscale Representation for Anti-Aliasing Neural Radiance Fields. This implementation is written in JAX, and is a fork of Google's JaxNeRF

Google 625 Dec 30, 2022
Implementation of 'X-Linear Attention Networks for Image Captioning' [CVPR 2020]

Introduction This repository is for X-Linear Attention Networks for Image Captioning (CVPR 2020). The original paper can be found here. Please cite wi

JDAI-CV 240 Dec 17, 2022
Official Implement of CVPR 2021 paper “Cross-Modal Collaborative Representation Learning and a Large-Scale RGBT Benchmark for Crowd Counting”

RGBT Crowd Counting Lingbo Liu, Jiaqi Chen, Hefeng Wu, Guanbin Li, Chenglong Li, Liang Lin. "Cross-Modal Collaborative Representation Learning and a L

37 Dec 08, 2022
Facial Action Unit Intensity Estimation via Semantic Correspondence Learning with Dynamic Graph Convolution

FAU Implementation of the paper: Facial Action Unit Intensity Estimation via Semantic Correspondence Learning with Dynamic Graph Convolution. Yingruo

Evelyn 78 Nov 29, 2022
8-week curriculum for AI Builders

curriculum 8-week curriculum for AI Builders สารบัญ บทที่ 1 - Machine Learning คืออะไร บทที่ 2 - ชุดข้อมูลมหัศจรรย์และถิ่นที่อยู่ บทที่ 3 - Stochastic

AI Builders 134 Jan 03, 2023
An efficient PyTorch implementation of the winning entry of the 2017 VQA Challenge.

Bottom-Up and Top-Down Attention for Visual Question Answering An efficient PyTorch implementation of the winning entry of the 2017 VQA Challenge. The

Hengyuan Hu 731 Jan 03, 2023
TensorFlow2 Classification Model Zoo playing with TensorFlow2 on the CIFAR-10 dataset.

Training CIFAR-10 with TensorFlow2(TF2) TensorFlow2 Classification Model Zoo. I'm playing with TensorFlow2 on the CIFAR-10 dataset. Architectures LeNe

Chia-Hung Yuan 16 Sep 27, 2022
Pre-trained BERT Models for Ancient and Medieval Greek, and associated code for LaTeCH 2021 paper titled - "A Pilot Study for BERT Language Modelling and Morphological Analysis for Ancient and Medieval Greek"

Ancient Greek BERT The first and only available Ancient Greek sub-word BERT model! State-of-the-art post fine-tuning on Part-of-Speech Tagging and Mor

Pranaydeep Singh 22 Dec 08, 2022