- Goal: After learning about the different types of recommendation system algorithms during Part 1, now we compare the two algorithms we explored. Also, we create a more advanced version of a recommendation system using a hybrid approach.
- Dates: from 16th to 23rd November.
- Where:
#project-of-the-week
in DataTalks.Club (get in slack here: https://datatalks.club/slack.html)
For more information about the "Project of the Week" initiative at DataTalks.Club, see README.md.
If you want to receive reminders about this event, sign up here
- Scikit-Learn
- LightFM
- Jupyter notebooks
Note: this is a suggested list of technologies, you can chose alternatives instead
This is a proposed plan only, you don’t have to follow it day-by-day.
- Recap of the project you work on during Part 1 of this project-of-the-week.
- If you couldn’t work on Part 1 of this project-of-the-week, then you can catch up by quickly reviewing some of the suggested materials.
- Create a GitHub project
- Share your progress in Slack and on social media
Suggested materials
- 💻 Sample project for Part 1.
Would you like to add your project for Part 1? Create a PR with links!
- Learn about evaluation metrics for recommender systems.
- Check which metrics are available
- Learn more about average precision and MAP.
- Share your progress in Slack and on social media.
Tip: You may find useful to have a baseline solution (e.g. sorting by frequency) and try to evaluate it.
Suggested materials
- 🗒️ Recommender Systems — It’s Not All About the Accuracy
- 💻 Github-repo code for performance metrics
- 🗒️ Evaluation Metrics for Recommender Systems
- 🗒️ Recommender Systems: Machine Learning Metrics and Business Metrics
- 📺 Week 6: Recommender Systems - Part 4: Evaluation of Recommender Systems
- Continue learning about evaluation metrics for recommender systems.
- Map@k and Mar@k
- Coverage
- Novelty
- Personalization
- MSE and RMSE
- ROC and AUC
- Decide which metrics you will consider for comparing the recommender systems you created.
- Commit your changes
- Share your progress in Slack and on social media
Suggested materials
- 🗒️ Evaluation Metrics for Recommender Systems
- 💻 recmetrics - A python library of evalulation metrics and diagnostic tools for recommender systems.
- 🗒️ Recommender Systems: Machine Learning Metrics and Business Metrics
- 📺 Week 6: Recommender Systems - Part 4: Evaluation of Recommender Systems
Found good materials? Create a PR with links!
- Compare the recommender systems you created (Content based and Collaborative filtering) using the metrics that you selected.
- Come up with a conclusion why both recommender systems are different and write about it.
- Push your changes to GitHub.
- Share your progress in Slack and on social media.
Note: If you didn't have the chance to work on the project, have a look at projects from Part 1.
- Continue exploring more about this topic.
- Polish the documentation for your project.
- Push your changes to GitHub.
- Share your progress in Slack and on social media.
- Give us feedback.
- Add the link to your project to this project of the week GitHub page.
Datasets
Materials legend:
- 🏫 Course
- 💾 Dataset
- 🗒️ Article
- 📺 Video tutorial
- 💻 Code
There are other things you can try:
- Create a hybrid recommender system.
- Use Deep Learning to create another recommender system and compare it with the ones you created.
Suggested materials
- 🗒️ A Hybrid Approach using Collaborative filtering and Content based Filtering for Recommender System
- 🗒️ Recommender Systems from Learned Embeddings
- 🗒️ Recommendation Using Deep Neural Network
- 📺 Maciej Kula - Hybrid Recommender Systems in Python
List of projects from our participants: