Skip to content

Implementation of Basic Recommendation System Models with PyTorch

License

Notifications You must be signed in to change notification settings

owj0421/Torch-RecSys-Basics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Torch Recsys Basics

Implementation of Basic Recommendation System Models with PyTorch

🤗 Introduction

안녕하세요! 이곳은 PyTorch를 활용해 기초 추천시스템 모델을 AtoZ로 구현하는 공간입니다. 딥러닝 연구 대부분이 Torch로 이루어짐에도, 해당 라이브러리를 사용한 제대로된 구현가이드가 없어 제작하게 되었습니다. Feature Engineering과 같은 정확도를 높히기 위한 튜닝은 배제하고 모델의 정확한 구현에 중점을 두고 구현하였습니 추천시스템을 찾거나 공부하는 학생들에게 도움이 되길 바랍니다. 자유롭게 쓸 수 있으나, 만약 코드에 잘못된 부분이 있다면 꼭 알려주세요.

Datasets

모든 구현은 Movielens 데이터셋을 사용해 평가했습니다. movielens-latest-small

📚 Implement Details

Collaborative Filtering(Memory Based)

Index Model(Review) RMSE nDCG@10 HR@10 F1@10
1 User-based CF 0 0 0 0
2 Item-based CF 0 0 0 0

Collaborative Filtering(Model Based)

Index Model(Review) RMSE nDCG@10 HR F1@10
1 SVD 0 0 0 0
2 Matrix Factorization 0 0 0 0
3 Neural Collaborative Filtering 0 0 0 0

Collaborative Filtering(AutoEncoder Based)

Index Model(Review) RMSE nDCG@10 HR F1@10
5 AutoRec 0 0 0 0
6 CDAE 0 0 0 0
7 EASE 0 0 0 0
8 RecVAE 0 0 0 0

Session Based(Sequential)

Index Model(Review) HR nDCG MRR
1 GRU4Rec 0 0 0
2 BERT4Rec 0 0 0
3 SASRec 0 0 0

Factorization Machine

기본적인 코드의 구성은 deepCTR을 참고했습니다.
CTR Prediction이 아닌, 4점이상을 1, 미만을 0으로 한 Classification에 대해 학습한 결과 입니다.

Index Model(Review) RMSE F1 AUC LogLoss
1 Factorization machines 0.428 0.345 0.714
2 Field Aware Factorization Machine 0. 0. 0.
3 Wide & Deep 0.413 0.468 0.740
4 Deep FM 0.408 0.467 0.752
5 Adaptive Factorization Network 0. 0. 0.

🔔 Note

각 구현에 대한 논문 리뷰는 여기서 보실 수 있습니다.