The source code and dataset for the RecGURU paper (WSDM 2022)

Overview

RecGURU

About The Project

Source code and baselines for the RecGURU paper "RecGURU: Adversarial Learning of Generalized User Representations for Cross-Domain Recommendation (WSDM 2022)"

Code Structure

RecGURU  
├── README.md                                 Read me file 
├── data_process                              Data processing methods
│   ├── __init__.py                           Package initialization file     
│   └── amazon_csv.py                         Code for processing the amazon data (in .csv format)
│   └── business_process.py                   Code for processing the collected data
│   └── item_frequency.py                     Calculate item frequency in each domain
│   └── run.sh                                Shell script to perform data processing  
├── GURU                                      Scripts for modeling, training, and testing 
│   ├── data                                  Dataloader package      
│     ├── __init__.py                         Package initialization file 
│     ├── data_loader.py                      Customized dataloaders 
│   └── tools                                 Tools such as loss function, evaluation metrics, etc.
│     ├── __init__.py                         Package initialization file
│     ├── lossfunction.py                     Customized loss functions
│     ├── metrics.py                          Evaluation metrics
│     ├── plot.py                             Plot function
│     ├── utils.py                            Other tools
│  ├── Transformer                            Transformer package
│     ├── __init__.py                         Package initialization 
│     ├── transformer.py                      transformer module
│  ├── AutoEnc4Rec.py                         Autoencoder based sequential recommender
│  ├── AutoEnc4Rec_cross.py                   Cross-domain recommender modules
│  ├── config_auto4rec.py                     Model configuration file
│  ├── gan_training.py                        Training methods of the GAN framework
│  ├── train_auto.py                          Main function for training and testing single-domain sequential recommender
│  ├── train_gan.py                           Main function for training and testing cross-domain sequential recommender
└── .gitignore                                gitignore file

Dataset

  1. The public datasets: Amazon view dataset at: https://nijianmo.github.io/amazon/index.html
  2. Collected datasets: https://drive.google.com/file/d/1NbP48emGPr80nL49oeDtPDR3R8YEfn4J/view
  3. Data processing:

Amazon dataset:

```shell
cd ../data_process
python amazon_csv.py   
```

Collected dataset

```shell
cd ../data_process
python business_process.py --rate 0.1  # portion of overlapping user = 0.1   
```

After data process, for each cross-domain scenario we have a dataset folder:

."a_domain"-"b_domain"
├── a_only.pickle         # users in domain a only
├── b_only.pickle         # users in domain b only
├── a.pickle              # all users in domain a
├── b.pickle              # all users in domain b
├── a_b.pickle            # overlapped users of domain a and b   

Note: see the code for processing details and make modifications accordingly.

Run

  1. Single-domain Methods:
    # SAS
    python train_auto.py --sas "True"
    # AutoRec (ours)
    python train_auto.py 
  2. Cross-Domain Methods:
    # RecGURU
    python train_gan.py --cross "True"
Owner
Chenglin Li
Chenglin Li
Breast cancer is been classified into benign tumour and malignant tumour.

Breast cancer is been classified into benign tumour and malignant tumour. Logistic regression is applied in this model.

1 Feb 04, 2022
Self-Supervised Learning for Domain Adaptation on Point-Clouds

Self-Supervised Learning for Domain Adaptation on Point-Clouds Introduction Self-supervised learning (SSL) allows to learn useful representations from

Idan Achituve 66 Dec 20, 2022
DeepConsensus uses gap-aware sequence transformers to correct errors in Pacific Biosciences (PacBio) Circular Consensus Sequencing (CCS) data.

DeepConsensus DeepConsensus uses gap-aware sequence transformers to correct errors in Pacific Biosciences (PacBio) Circular Consensus Sequencing (CCS)

Google 149 Dec 19, 2022
In this repo we reproduce and extend results of Learning in High Dimension Always Amounts to Extrapolation by Balestriero et al. 2021

In this repo we reproduce and extend results of Learning in High Dimension Always Amounts to Extrapolation by Balestriero et al. 2021. Balestriero et

Sean M. Hendryx 1 Jan 27, 2022
Code accompanying the paper Shared Independent Component Analysis for Multi-subject Neuroimaging

ShICA Code accompanying the paper Shared Independent Component Analysis for Multi-subject Neuroimaging Install Move into the ShICA directory cd ShICA

8 Nov 07, 2022
A faster pytorch implementation of faster r-cnn

A Faster Pytorch Implementation of Faster R-CNN Write at the beginning [05/29/2020] This repo was initaited about two years ago, developed as the firs

Jianwei Yang 7.1k Jan 01, 2023
CowHerd is a partially-observed reinforcement learning environment

CowHerd is a partially-observed reinforcement learning environment, where the player walks around an area and is rewarded for milking cows. The cows try to escape and the player can place fences to h

Danijar Hafner 6 Mar 06, 2022
https://sites.google.com/cornell.edu/recsys2021tutorial

Counterfactual Learning and Evaluation for Recommender Systems (RecSys'21 Tutorial) Materials for "Counterfactual Learning and Evaluation for Recommen

yuta-saito 45 Nov 10, 2022
[CVPR2022] Bridge-Prompt: Towards Ordinal Action Understanding in Instructional Videos

Bridge-Prompt: Towards Ordinal Action Understanding in Instructional Videos Created by Muheng Li, Lei Chen, Yueqi Duan, Zhilan Hu, Jianjiang Feng, Jie

58 Dec 23, 2022
Machine learning framework for both deep learning and traditional algorithms

NeoML is an end-to-end machine learning framework that allows you to build, train, and deploy ML models. This framework is used by ABBYY engineers for

NeoML 704 Dec 27, 2022
Experimental solutions to selected exercises from the book [Advances in Financial Machine Learning by Marcos Lopez De Prado]

Advances in Financial Machine Learning Exercises Experimental solutions to selected exercises from the book Advances in Financial Machine Learning by

Brian 1.4k Jan 04, 2023
WatermarkRemoval-WDNet-WACV2021

WatermarkRemoval-WDNet-WACV2021 Thank you for your attention. Citation Please cite the related works in your publications if it helps your research: @

LUYI 63 Dec 05, 2022
Torchserve server using a YoloV5 model running on docker with GPU and static batch inference to perform production ready inference.

Yolov5 running on TorchServe (GPU compatible) ! This is a dockerfile to run TorchServe for Yolo v5 object detection model. (TorchServe (PyTorch librar

82 Nov 29, 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
This is the workbook I created while I was studying for the Qiskit Associate Developer exam. I hope this becomes useful to others as it was for me :)

A Workbook for the Qiskit Developer Certification Exam Hello everyone! This is Bartu, a fellow Qiskitter. I have recently taken the Certification exam

Bartu Bisgin 66 Dec 10, 2022
Array Camera Ptychography

Array Camera Ptychography This repository provides the code for the following papers: Schulz, Timothy J., David J. Brady, and Chengyu Wang. "Photon-li

Brady lab in Optical Sciences 1 Nov 15, 2021
Code for WSDM 2022 paper, Contrastive Learning for Representation Degeneration Problem in Sequential Recommendation.

DuoRec Code for WSDM 2022 paper, Contrastive Learning for Representation Degeneration Problem in Sequential Recommendation. Usage Download datasets fr

Qrh 46 Dec 19, 2022
Multi-label classification of retinal disorders

Multi-label classification of retinal disorders This is a deep learning course project. The goal is to develop a solution, using computer vision techn

Sundeep Bhimireddy 1 Jan 29, 2022
PCAM: Product of Cross-Attention Matrices for Rigid Registration of Point Clouds

PCAM: Product of Cross-Attention Matrices for Rigid Registration of Point Clouds PCAM: Product of Cross-Attention Matrices for Rigid Registration of P

valeo.ai 24 May 31, 2022
Arbitrary Distribution Modeling with Censorship in Real Time 59 2 60 3 Bidding Advertising for KDD'21

Arbitrary_Distribution_Modeling This repo implements the Neighborhood Likelihood Loss (NLL) and Arbitrary Distribution Modeling (ADM, with Interacting

7 Jan 03, 2023