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 - ankit@aiboost.in