Skip to content

부스트캠프 AI Tech 3기 RecSys-10 / 🎞 Movie Recommendation Competition 🎞

Notifications You must be signed in to change notification settings

boostcampaitech3/level2-movie-recommendation-level2-recsys-10

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

level2-movie-recommendation-recsys-10

메인로고

❗ 주제 및 데이터 설명

  • 사용자의 영화 평가 이력 데이터(user-item interaction)와 영화들의 다양한 정보(side-information)를 제공받음
  • 해당 데이터를 기반으로 사용자가 다음에 시청하거나 이전에 시청했던 영화를 예측하는 추천 시스템을 개발

👋 팀원 소개

신민철 유승태 이동석 이아현 임경태
Avatar Avatar Avatar Avatar Avatar

⚙ 프로젝트 수행 절차 및 방법

구조도

  • EDA | 주어진 데이터에 대한 파악
  • Data Processing | 주어진 데이터를 Model에 학습시킬 수 있도록 구조화
  • Modeling | 목적에 부합하는 모델 선정 및 개발
  • Training | 개발한 모델을 준비한 데이터로 학습
  • Validation | 학습된 모델을 평가하여 성능을 확인
  • Inference | 학습된 모델로 각 유저 당 10개의 아이템을 추천

🔨 Installation

  • 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

🏢 Structure

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

⚙️ Training 명령어

각 모델의 README를 참고하시면 됩니다 :)

✨ WRAP-UP REPORT

WRAP-UP REPORT

📜 참고자료

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

ADMM SLIM: Sparse Recommendations for Many Users

Implicit

RecBole

About

부스트캠프 AI Tech 3기 RecSys-10 / 🎞 Movie Recommendation Competition 🎞

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published