In this repository, I have covered following topics -
- What are Recommendations Systems?
- Why do we need Recommendation Systems?
- Collaborative Filtering
- Types of Collaborative Filtering
- Memory Based CF
- User-Based CF
- Item-Based CF
- Model Based CF
- K-Nearest Neighbours
- Singular Value Decomposition
- Non-Negative Matrix Factorization
- Matrix Factorization using Deep Learning
- Introduction to Embedding Layer
- Architecture 1 with dot operation
- Architecture 2 with concatenation operation
- Evaluating RMSE
- References
You can find the kernel on Kaggle too - Recommender Systems with CF and DL Techniques
I have used Movielens 100k ratings dataset to study about various Recommendation Techniques. Since the dataset size is small, I have used basic techniques but with more size we need to use hybrid and dimensionality reduction techniques.
I have covered one such recommendation technique using autoencoder in another repository (here). This is currently the second best recommendation technique, released by NVIDIA in 2017 named Training Deep AutoEncoders for Collaborative Filtering.