This repository accompanies a comprehensive blog series on recommender systems published on Medium. The series progresses from theoretical foundations to practical implementations, providing both conceptual understanding and hands-on coding examples.
- Introduction to Recommender Systems: A Personalized Experience
- Foundational concepts and terminology
- Overview of recommender system types
- Real-world applications and use cases
- Business impact and considerations
- No companion notebook (theoretical focus)
- Delving Deeper into Recommender Systems: From Basics to State-of-the-Art
- Evolution of recommender systems
- Implementation of three fundamental approaches:
- User-Based Collaborative Filtering
- Item-Based Collaborative Filtering
- Matrix Factorization using SVD
- 📓
2.Delving Deeper into Recommender Systems.ipynb
- Working implementation using MovieLens 100K dataset
- Practical examples of each approach
-
Deep Dive into Matrix Factorization for Recommender Systems
- In-depth exploration of matrix factorization
- Advanced implementation techniques
- Two complementary notebooks:
- 📓
3.1.Understanding Matrix Factorization Step by Step.ipynb
- Core algorithm implementation
- Detailed explanations of each component
- 📓
3.2.Deep Dive into Matrix Factorization for Recommender Systems.ipynb
- Comprehensive examples
- Visualization tools
- Performance analysis
- 📓
-
Introduction to Recommender System Evaluation Beyond Accuracy (Coming Soon)
.
├── LICENSE
├── README.md
├── data
│ └── ml-100k # MovieLens 100K dataset
├── notebooks
│ ├── 2.Delving Deeper into Recommender Systems.ipynb
│ ├── 3.1.Understanding Matrix Factorization Step by Step.ipynb
│ └── 3.2.Deep Dive into Matrix Factorization for Recommender Systems.ipynb
└── requirements.txt
The repository utilizes two types of data:
-
MovieLens 100K Dataset
- Located in
data/ml-100k/
- Used in Part 2 for demonstrating collaborative filtering approaches
- Contains user-movie ratings and movie metadata
- Located in
-
Synthetic Data
- Generated within the Part 3 notebooks
- Used for demonstrating matrix factorization concepts
- Provides controlled examples for learning
conda create -n medium-recsys-series python=3.10 jupyterlab
conda activate medium-recsys-series
pip install -r requirements.txt
- Start with the Part 1 blog post for theoretical foundations
- Move to Part 2 for basic implementations:
- Read the blog post
- Follow along with the notebook using the MovieLens dataset
- Progress to Part 3 for advanced techniques:
- Start with notebook 3.1 for core implementation
- Move to 3.2 for comprehensive examples
If you find any issues with the code examples or have suggestions for improvement, please feel free to open an issue or submit a pull request. Contributions are always welcome!
This project is licensed under the MIT License. See the LICENSE file for more information.
For any questions or inquiries, please contact me via:
- LinkedIn: Connect with me
Happy exploring the world of recommender systems! 🚀