In this project, you will apply the skills you have acquired in this course to operationalize a Machine Learning Microservice API.
You are given a pre-trained, sklearn
model that has been trained to predict housing prices in Boston according to several features, such as average rooms in a home and data about highway access, teacher-to-pupil ratios, and so on. You can read more about the data, which was initially taken from Kaggle, on the data source site. This project tests your ability to operationalize a Python flask app—in a provided file, app.py
—that serves out predictions (inference) about housing prices through API calls. This project could be extended to any pre-trained machine learning model, such as those for image recognition and data labeling.
- Create an environment:
virtualenv env_devops
- Set your environment:
source env_devops/bin/activate
- Install dependencies:
make install
orpip install -r requirements.txt
- Run app:
python app.py
- Run in Docker:
- Install Docker
- Execute the script:
sh ./run_docker.sh
- Application will be expose on port 80
- Run in Kubernetes:
- Install or activate MiniKube
- Execute the script:
sh ./run_kubernetes.sh
- Application will be expose on port 80
After application is running you can do calls to the housing pricing model with the next script:
sh ./make_prediction.sh