https://github.com/simoncw/recommender-for-donorschoose
https://github.com/simoncw/recommender-for-donorschoose
Last synced: 16 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/simoncw/recommender-for-donorschoose
- Owner: SimonCW
- Created: 2018-05-11T09:29:02.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2018-11-12T10:30:04.000Z (over 7 years ago)
- Last Synced: 2025-01-25T07:25:31.475Z (over 1 year ago)
- Language: Jupyter Notebook
- Size: 32.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Recommender-for-DonorsChoose
This notebook explores different approaches to helping DonorsChoose recommend the right project to right user in this kaggle competition https://www.kaggle.com/donorschoose/io. So far we have tried the following methods:
- Content-based recommendations using tfidf
- tfidf project descriptions
- Calcualte document distances (e.g. cosine similarity)
- Explore document similarity
- Create recommendations based on similarity
- Create evaluation metric to test whether similarity is a good predictor for recommendations
- E.g. For users with #donations > 1 omit last donation, get ranking based on similar projects, check the ranking score of actually donated (omitted) projects
- Compare score agains popularity "algorithm" performance and "recommending distinct projects" or "random projects"
...
Other relevant methods:
- Topic models using LDA
- Tag generation (automated tagging)
Links
- Nice tfidf helper code: https://towardsdatascience.com/hacking-scikit-learns-vectorizers-9ef26a7170af
- We started doing approximately the content based recommender from here: https://www.kaggle.com/ranliu/donor-project-matching-with-recommender-systems/code (with more code but different challenge here: https://www.kaggle.com/gspmoreira/recommender-systems-in-python-101/code)