- 사용자의 영화 평가 이력 데이터(user-item interaction)와 영화들의 다양한 정보(side-information)를 제공받음
- 해당 데이터를 기반으로 사용자가 다음에 시청하거나 이전에 시청했던 영화를 예측하는 추천 시스템을 개발
신민철 | 유승태 | 이동석 | 이아현 | 임경태 |
---|---|---|---|---|
- EDA | 주어진 데이터에 대한 파악
- Data Processing | 주어진 데이터를 Model에 학습시킬 수 있도록 구조화
- Modeling | 목적에 부합하는 모델 선정 및 개발
- Training | 개발한 모델을 준비한 데이터로 학습
- Validation | 학습된 모델을 평가하여 성능을 확인
- Inference | 학습된 모델로 각 유저 당 10개의 아이템을 추천
- numpy==1.22.2
- pandas==1.4.1
- pytz==2021.3
- python-dateutil==2.8.2
- scipy==1.8.0
- six==1.16.0
- torch==1.10.2
- tqdm==4.62.3
- typing_extensions==4.1.1
- Python==3.8.5
- RecBole==1.0.1
- implicit==0.5.2
- catboost==1.0.5
level2-movie-recommendation-recsys-10
├── README.md
├── input
├── AutoRec
│ ├── README.md
│ ├── autorec.py
│ ├── datasets.py
│ ├── models.py
│ ├── modules.py
│ ├── trainers.py
│ └── utils.py
├── Implicit_lib_model
│ ├── README.md
│ ├── implicit_model.py
│ ├── models.py
│ ├── modules.py
│ └── utils.py
├── MF
│ ├── README.md
│ ├── mf.py
│ ├── models.py
│ ├── modules.py
│ └── utils.py
├── MultiDAE
│ ├── MultiDAE.py
│ ├── README.md
│ ├── datasets.py
│ ├── models.py
│ ├── preprocessing.py
│ └── utils.py
├── MultiVAE
│ ├── MultiVAE.py
│ ├── README.md
│ ├── datasets.py
│ ├── models.py
│ ├── preprocessing.py
│ └── utils.py
├── NCF
│ ├── README.md
│ ├── datasets.py
│ ├── models.py
│ ├── modules.py
│ ├── ncf.py
│ ├── trainers.py
│ └── utils.py
├── RecBole
│ ├── ...
├── Transformer
│ ├── README.md
│ ├── datasets.py
│ ├── inference.py
│ ├── models.py
│ ├── modules.py
│ ├── preprocessing.py
│ ├── run_pretrain.py
│ ├── run_train.py
│ ├── trainers.py
│ └── utils.py
├── WideDeep
│ ├── README.md
│ ├── datasets.py
│ ├── inference.py
│ ├── models.py
│ ├── modules.py
│ ├── preprocessing.py
│ ├── run_pretrain.py
│ ├── run_train.py
│ ├── trainers.py
│ ├── utils.py
│ └── wide_deep.ipynb
├── catboost
│ ├── README.md
│ ├── catboost.ipynb
│ ├── catboost_inference.py
│ └── run_catboost.py
├── code
│ └── wide_deep.ipynb
├── deepfm
│ ├── README.md
│ ├── dataset.py
│ ├── deepfm.py
│ ├── inference.py
│ ├── preprocessing.py
│ ├── train.py
│ └── utils.py
├── ease
│ ├── __init__.py
│ ├── ease-run.ipynb
│ ├── metrics.py
│ ├── model.py
│ ├── readme.md
│ └── train.py
├── gnn
│ ├── dataset.py
│ ├── inference.py
│ └── models
│ │ ├── __init__.py
│ │ ├── lightgcn.py
│ │ └── ngcf.py
│ ├── negative_sampling_gnn.ipynb
│ ├── readme.md
│ ├── train.py
│ ├── train_all.py
│ ├── trainers.py
│ └── utils.py
├── slim
│ ├── __init__.py
│ ├── datasets.py
│ ├── hyper-parameter-tuning.ipynb
│ ├── inference.py
│ ├── models.py
│ ├── readme.md
│ └── slim-run.ipynb
└── vae
├── dataset.py
├── inference.py
├── models
│ ├── __init__.py
│ ├── recvae.py
│ └── recvae_ract.py
├── readme.md
├── train.py
├── train_all.py
├── train_ract.py
└── utils.py
각 모델의 README를 참고하시면 됩니다 :)
Embarrassingly Shallow Autoencoders for Sparse Data
RecVAE: a New Variational Autoencoder for Top-N Recommendations with Implicit Feedback
Variational Autoencoders for Collaborative Filtering
AutoRec: Autoencoders Meet Collaborative Filtering
Wide & Deep Learning for Recommender Systems
DeepFM: A Factorization-Machine based Neural Network for CTR Prediction