A sophisticated machine learning system that recommends recipes to users based on their preferences and past interactions. The system uses collaborative filtering and latent factor models to provide personalized recipe recommendations.
- Personalized Recommendations: Uses collaborative filtering to suggest recipes based on user preferences
- Advanced Rating Prediction: Implements a latent factor model using TensorFlow for accurate rating predictions
- Comprehensive Data Analysis: Includes extensive exploratory data analysis of recipe and user interaction data
- Multiple Baseline Models: Implements various baseline models for comparison:
- Global Average Rating
- User-Based Average Rating
- Recipe-Based Average Rating
- Matrix Factorization Model
- Model Architecture: Latent factor model implemented using TensorFlow/Keras
- Performance Metrics: Uses Mean Squared Error (MSE) for model evaluation
- Data Features:
- Recipe metadata (ingredients, cooking time, nutrition info)
- User ratings and reviews
- Temporal interaction data
- Recipe characteristics and tags
baseline_model.ipynb: Implementation of baseline recommendation modelsgrid_search.ipynb: Hyperparameter tuning for the recommendation systemEDA.ipynb: Exploratory Data Analysis of the recipe datasetEDA - Jack.ipynb: Additional exploratory analysis and insights
- Global Average Baseline MSE: ~1.58
- User Average Baseline MSE: ~1.57
- Recipe Average Baseline MSE: ~1.76
- Optimized Latent Factor Model MSE: ~1.54
- Python
- TensorFlow/Keras
- Pandas
- NumPy
- Jupyter Notebook
- Implementation of content-based filtering
- Integration of ingredient-based similarity metrics
- Addition of real-time recommendation updates
- Enhanced user preference learning
- jak-weston
- nathanielgberg
- chase-of-the-fjords
This project is open source and available under the MIT License.