Build an appropriate Machine Learning Model that will help various Zomato Restaurants to predict their respective Ratings based on certain features.
The main goal of this project is to perform extensive Exploratory Data Analysis(EDA) on the Zomato Dataset and build an appropriate Machine Learning Model that will help various Zomato Restaurants to predict their respective Ratings based on certain features.
Before we run the project, make sure that you are having MongoDB in your local system, with Compass since we are using MongoDB for data storage. You also need AWS account to access the service like S3, ECR and EC2 instances.
The training set contains 57000 examples in total number of Attributes is 13.
- Python
- FastAPI
- Machine learning algorithms
- Docker
- MongoDB
- AWS S3
- AWS EC2
- AWS ECR
- Git Actions
Before we run the project, make sure that you are having MongoDB in your local system, with Compass since we are using MongoDB for data storage. You also need AWS account to access the service like S3, ECR and EC2 instances.
git clone https://github.com/MaheshKumarMK/Restaurant-rating-prediction.git
conda create -n venv python=3.7.6 -y
conda activate venv
pip install -r requirements.txt
export AWS_ACCESS_KEY_ID=<AWS_ACCESS_KEY_ID>
export AWS_SECRET_ACCESS_KEY=<AWS_SECRET_ACCESS_KEY>
export AWS_DEFAULT_REGION=<AWS_DEFAULT_REGION>
export MONGODB_URL>
python main.py
or
uvicorn main:app
http://localhost:8080/train
http://localhost:8080/predict
-
Check if the Dockerfile is available in the project directory
-
Build the Docker image
docker build -t ratings-predictions .
- Run the Docker image
docker run -d -e AWS_ACCESS_KEY_ID="${{ secrets.AWS_ACCESS_KEY_ID }}" -e AWS_SECRET_ACCESS_KEY="${{ secrets.AWS_SECRET_ACCESS_KEY }}" -e AWS_DEFAULT_REGION="${{ secrets.AWS_DEFAULT_REGION }}" -e MONGODB_URL="${{ secrets.MONGODB_URL }}" -p 8080:8080 ratings-predictions