An open API service indexing awesome lists of open source software.

https://github.com/owj0421/recsys_basics

Implementation of Basic Recommendation System Models with PyTorch
https://github.com/owj0421/recsys_basics

collaborative-filtering ctr-prediction pytorch recommendation recommender-system session-based-recommendation-system

Last synced: about 1 year ago
JSON representation

Implementation of Basic Recommendation System Models with PyTorch

Awesome Lists containing this project

README

          

#

Torch Recsys Basics

Implementation of Basic Recommendation System Models with PyTorch

## ๐Ÿค— Introduction

์•ˆ๋…•ํ•˜์„ธ์š”! ์ด๊ณณ์€ PyTorch๋ฅผ ํ™œ์šฉํ•ด ๊ธฐ์ดˆ ์ถ”์ฒœ์‹œ์Šคํ…œ ๋ชจ๋ธ์„ AtoZ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. ๋”ฅ๋Ÿฌ๋‹ ์—ฐ๊ตฌ ๋Œ€๋ถ€๋ถ„์ด Torch๋กœ ์ด๋ฃจ์–ด์ง์—๋„, ํ•ด๋‹น ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•œ ์ œ๋Œ€๋กœ๋œ ๊ตฌํ˜„๊ฐ€์ด๋“œ๊ฐ€ ์—†์–ด ์ œ์ž‘ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Feature Engineering๊ณผ ๊ฐ™์€ ์ •ํ™•๋„๋ฅผ ๋†’ํžˆ๊ธฐ ์œ„ํ•œ ํŠœ๋‹์€ ๋ฐฐ์ œํ•˜๊ณ  ๋ชจ๋ธ์˜ ์ •ํ™•ํ•œ ๊ตฌํ˜„์— ์ค‘์ ์„ ๋‘๊ณ  ๊ตฌํ˜„ํ•˜์˜€์Šต๋‹ˆ ์ถ”์ฒœ์‹œ์Šคํ…œ์„ ์ฐพ๊ฑฐ๋‚˜ ๊ณต๋ถ€ํ•˜๋Š” ํ•™์ƒ๋“ค์—๊ฒŒ ๋„์›€์ด ๋˜๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์ž์œ ๋กญ๊ฒŒ ์“ธ ์ˆ˜ ์žˆ์œผ๋‚˜, ๋งŒ์•ฝ ์ฝ”๋“œ์— ์ž˜๋ชป๋œ ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด ๊ผญ ์•Œ๋ ค์ฃผ์„ธ์š”.

### Datasets
๋ชจ๋“  ๊ตฌํ˜„์€ Movielens ๋ฐ์ดํ„ฐ์…‹์„ ์‚ฌ์šฉํ•ด ํ‰๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
[movielens-latest-small](https://grouplens.org/datasets/movielens/)

## ๐Ÿ“š 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|0|0|0|
|2 |[BERT4Rec]()|0|0|0|0|0|0|
|3 |[SASRec]()|0|0|0|0|0|0|

### Factorization Machine
๊ธฐ๋ณธ์ ์ธ ์ฝ”๋“œ์˜ ๊ตฌ์„ฑ์€ deepCTR์„ ์ฐธ๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค.

CTR Prediction์ด ์•„๋‹Œ, 4์ ์ด์ƒ์„ 1, ๋ฏธ๋งŒ์„ 0์œผ๋กœ ํ•œ Classification์— ๋Œ€ํ•ด ํ•™์Šตํ•œ ๊ฒฐ๊ณผ ์ž…๋‹ˆ๋‹ค.
|Index|Model(Review)|RMSE|F1|AUC|LogLoss|
|:-:|:-|:-:|:-:|:-:|:-:|
|1 |[Factorization machines](https://superficial-freeze-172.notion.site/Factorization-machines-85debc8b650a40f39156be320ec46a47?pvs=4)|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](https://superficial-freeze-172.notion.site/DeepFM-a-factorization-machine-based-neural-network-for-CTR-prediction-5891d516dbad413fb0da3e834c10771c?pvs=4)|0.408|0.467|0.752||
|5 |[Adaptive Factorization Network]()|0.|0.|0.||

## ๐Ÿ”” Note
๊ฐ ๊ตฌํ˜„์— ๋Œ€ํ•œ ๋…ผ๋ฌธ ๋ฆฌ๋ทฐ๋Š” [์—ฌ๊ธฐ์„œ](https://superficial-freeze-172.notion.site/e20c78a9926b47e49d0921d229f64d4f?v=e3f1f712b2cf4abb94c14730710721cf&pvs=4) ๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.