Skip to content

Latest commit

 

History

History
104 lines (60 loc) · 7.06 KB

File metadata and controls

104 lines (60 loc) · 7.06 KB

Restaurants Recommendation System

This repository contains code for Recommendation of differents restaurants. Developed using Flask and python. Website is hosted on heroku.

It's live at https://restaurants-spotter.herokuapp.com/ .

📂 Structure

The directory contains web sub directories and a sub directory for hosting model and other scripts:

  1. app.py The file which contains all the main backend operations of the website and used to run the flask server locally.

  2. Procfile for setting up heroku.

  3. requirement.txt contains all the dependencies.

  4. templates contains the html file.

    |- - - home.html contains home page.

    |- - - search.html contains search page.

  5. static contains the css file and images.

    |- - - home.css contains Styling of home page.

    |- - - search.css contains Styling of Search page/ result page.

    |- - - backgrund1.jpg contains background image of web pages.

  6. main_rest.csv contains the raw data.

  7. food1.csv contains cleaned data.

Codebase

The entire code has been developed using Python programming language and is hosted on Heroku. The analysis and model is developed using ScikitLearn library. The website is developed using Flask.

How to run the project 🚀:

  1. Open the Terminal.
  2. Clone the repository by entering $ git clone https://github.com/shsarv/Restaurant-Recommendation-System.git.
  3. Ensure that Python3 and pip are installed on the system.
  4. change the diectory to repository name using $ cd [Repository name].
  5. Create a virtualenv by executing the following command: virtualenv env.
  6. Activate the env virtual environment by executing the follwing command: source env/bin/activate.
  7. Enter the cloned repository directory and execute pip install -r requirements.txt.
  8. Now, execute the following command: flask run and it will point to the localhost server with the port 5000.
  9. Enter the IP Address: http://localhost:5000 on a web browser and use the application.

Dependencies

The following dependencies can be found in requirements.txt:

  1. scikit-learn
  2. Flask
  3. pandas
  4. numpy
  5. scikit-learn
  6. gunicorn

Cosine Similirity is used for recommendation purpose using Scikit-learn library.

References

For Building machine learning model and deployment:

  1. https://medium.com/the-andela-way/deploying-a-python-flask-app-to-heroku-41250bda27d0
  2. https://scikit-learn.org/stable/modules/generated/sklearn.metrics.pairwise.cosine_similarity.html
  3. https://www.machinelearningplus.com/nlp/cosine-similarity/
  4. https://towardsdatascience.com/cosine-similarity-how-does-it-measure-the-similarity-maths-behind-and-usage-in-python-50ad30aad7db
  5. https://uoa-eresearch.github.io/eresearch-cookbook/recipe/2014/11/26/python-virtual-env/
  6. Machine Learning course- https://www.coursera.org/learn/machine-learning/

License

  • MIT License

Thanks for visiting!