Level 1 Case StudyRecommendation Systems / Mar 2022
Media Recommendation System
I developed a personalized recommendation system for movies, music, and books using multiple algorithms including collaborative filtering, content-based filtering, and clustering.
Published in IJRASET (Paper ID: IJRASET42927)Multi-algorithm recommendation delivery85% user satisfaction rate
01
TL;DR
- I developed a personalized recommendation system for movies, music, and books using multiple algorithms including collaborative filtering, content-based filtering, and clustering.
- Best published result: Published in IJRASET (Paper ID: IJRASET42927)
02
Problem
- Help users discover relevant media across different content types Media streaming platforms, discovery engines. Personalization drives engagement and user satisfaction.
03
My Role
- academic / research with defined system ownership
- Problem framing: Help users discover relevant media across different content types
- Architecture: Multiple recommendation algorithms working in ensemble
- Implementation: Flask backend, React frontend, Spotify API integration
- Evaluation: Published in IJRASET (Paper ID: IJRASET42927); Multi-algorithm recommendation delivery; 85% user satisfaction rate
- Before: Personalization drives engagement and user satisfaction
- Personally designed: Implemented multiple algorithms: Cosine Similarity for content-based filtering, Pearson Correlation for collaborative filtering, K-Nearest Neighbors (KNN) for user-based recommendations, K-Means Clustering for user segmentation, and TF-IDF for content analysis and feature extraction because Different algorithms capture different recommendation signals; Used ensemble approach because Combines strengths of multiple methods for better recommendations
- Others owned: External datasets, APIs, academic baselines, or hackathon constraints shaped the work; the project page calls out what the source data verifies.
04
Constraints
- Built Mar 2022 (academic / research). Dataset availability, algorithm variety.
05
Architecture
- Input: User ratings, viewing/listening history, item metadata
- Backend: Multiple recommendation algorithms working in ensemble
- Data & storage: Flask backend, React frontend, Spotify API integration
- External APIs: Spotify API for music metadata
- Output: Ranked recommendations across movies, music, and books
Multiple recommendation algorithms working in ensemble; Flask backend, React frontend, Spotify API integration; Ranked recommendations across movies, music, and books
- input 01Input
User ratings, viewing/listening history, item metadata
- process 02Backendinput ->
Multiple recommendation algorithms working in ensemble
- storage 03Data / storagebackend ->
Flask backend, React frontend, Spotify API integration
- external 04External APIsbackend ->
Spotify API for music metadata
- output 05Outputstorage ->external ->
Ranked recommendations across movies, music, and books
Routes
- Input -> Backend
- Backend -> Data / storage
- Backend -> External APIs
- Data / storage -> Output
- External APIs -> Output
06
Key Technical Decisions
- Implemented multiple algorithms: Cosine Similarity for content-based filtering, Pearson Correlation for collaborative filtering, K-Nearest Neighbors (KNN) for user-based recommendations, K-Means Clustering for user segmentation, and TF-IDF for content analysis and feature extraction
- Used ensemble approach
07
Implementation
- Input layer: User ratings, viewing/listening history, item metadata
- Core system: Multiple recommendation algorithms working in ensemble
- Data layer: Flask backend, React frontend, Spotify API integration
- External boundary: Spotify API for music metadata
- User output: Ranked recommendations across movies, music, and books
08
What Broke / What Didn't Work
- Rejected: Single best-performing algorithm. Chosen path: Implemented multiple algorithms: Cosine Similarity for content-based filtering, Pearson Correlation for collaborative filtering, K-Nearest Neighbors (KNN) for user-based recommendations, K-Means Clustering for user segmentation, and TF-IDF for content analysis and feature extraction.
- Rejected: Hybrid approach with explicit weighting. Chosen path: Used ensemble approach.
- Multiple algorithms increase computational complexity
- Ensemble approach harder to explain than single algorithm
09
Results
- Published in IJRASET (Paper ID: IJRASET42927) - Academic peer review validation - Academic peer review validation - resume.json
- Multi-algorithm recommendation delivery - System successfully used content-based, collaborative, K-means, TF-IDF - System successfully used content-based, collaborative, K-means, TF-IDF - resume.json
- 85% user satisfaction rate - User testing with 500+ participants - User testing with 500+ participants - master-resume
10
What I'd Change Now
- Add real-time recommendation updates
- Implement deep learning models (neural collaborative filtering)
- Add user interaction feedback loop
11
Stack
- React
- Flask
- Python
- Spotify API
- Machine Learning
- NLP
- scikit-learn
12
Links
- Source docs: 2-projects.json
Deep dive prompts
Ask me about the trade-offs.
- Why this architecture boundary exists: Multiple recommendation algorithms working in ensemble
- How I evaluated Academic peer review validation
- The hardest tradeoff: Multiple algorithms increase computational complexity
- What I would change next: Add real-time recommendation updates