Code Monkey home page Code Monkey logo

recommender_system's Introduction

Recommender Systems ๐Ÿ‘จ๐Ÿผโ€๐Ÿ’ป

Report Bug ๐Ÿ› ยท Request Feature ๐Ÿฃ

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License
  6. Contact

About The Project

This repository holds user & item-based recommender systems in python ๐Ÿง‘๐Ÿฝโ€๐Ÿ’ป.

what is a recommender system? ๐Ÿค”

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 ๐Ÿฃ

Types covered in this repository

  • 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() # ๐Ÿคง

Dataset

we will be using MovieLens data set, which consists of 100,000 movies along with ratings.

Built With

  • Python3 ๐Ÿ
  • pandas ๐Ÿผ
  • numpy ๐Ÿง 
  • scipy โš›๏ธ
  • tensorflow ๐Ÿค–

Getting Started

you need a computer/laptop ๐Ÿ’

Structure

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

Prerequisites

Installation

  1. Clone the repo
    git clone https://github.com/ankit5577/recommender_system.git
  2. Go to Folder
    cd code
  3. 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

Usage

clone the repo ๐Ÿ‘‰ run the recommender you want ๐Ÿ‘‰ let it train & run ๐Ÿง‘๐Ÿฝโ€๐Ÿ’ป

Contributing

For AiBoost.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Ankit Kaushal - @ankit55771 - [email protected]

recommender_system's People

Contributors

ankit5577 avatar

Stargazers

Samrath Chauhan avatar

Watchers

 avatar Samrath Chauhan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.