Report Bug ๐ ยท Request Feature ๐ฃ
Table of Contents
This repository holds user & item-based recommender systems in python ๐ง๐ฝโ๐ป.
Recommender systems are the systems that are designed to recommend things to the user based on many different factors Types of recommender systems: Collaborative Recommender system, Content-based recommender system, Demographic-based recommender system, Utility-based recommender system, Knowledge-based recommender system, and Hybrid recommender system & many more ๐ฃ
- Item Based ๐ฑ: a form of collaborative filtering for recommender systems based on the similarity between items calculated using people's ratings of those items.
- User-Based ๐โโ๏ธ: model finds the relation between user to user & check the probability of item getting selected by the particular user.
- Hybrid ๐ฝ: model find relations between items first then relations b/w users.
in short
It works as an item-based recommender system first & after it switches to a user-based recommender.
still confused? ๐ฅฒ
if len(dataset > 100,000,000): userBasedRecommender() # ๐คก else: itemBasedRecommender() # ๐คง
we will be using MovieLens data set, which consists of 100,000 movies along with ratings.
- Python3 ๐
- pandas ๐ผ
- numpy ๐ง
- scipy โ๏ธ
- tensorflow ๐ค
you need a computer/laptop ๐
code/
โฃ ml-100k/ # movie dataset
โฃ item_based_filtering.py # item based recommender system
โฃ predict_rating.py # predict rating of a movie based on user
โฃ recommender_system.py # normal recommender system
โฃ user_recommend.py # user based recommender system
- python - https://www.python.org/downloads/
- Machine Learning libraries tensorflow, pandas, numpy, scipy, nltk:
pip install tensorflow, pandas, numpy, scipy, nltk
- Clone the repo
git clone https://github.com/ankit5577/recommender_system.git
- Go to Folder
cd code
- Run Python File
# for user based recommender system python user_recommend.py # for item based recommender system python item_based_filtering.py # mixed recommender python recommender_system.py
clone the repo ๐ run the recommender you want ๐ let it train & run ๐ง๐ฝโ๐ป
For AiBoost.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Ankit Kaushal - @ankit55771 - [email protected]