billy-odera / nd00333_AZMLND_C2

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Project - Operationalizing Machine Learning

We used the bank marketing dataset to train, configure and deploy a machine learning model using Azure Machine Learning Studio.

Architectural Diagram

Below is the architectural diagram that we will follow

The steps are as follows :

  1. Load your dataset to azure ML studio
  2. Run the AutoML model using classification/li>
  3. Select the best model and deploy using azure container instance(ACI)
  4. Enable insights to keep track of what is happening.
  5. Use the REST endpoint to interact with the deployed model with sample data and check predictions.
  6. Using python SDK create a pipeline selecting the best AutoML model and publish it.

Key Steps

1. AutoML run

Create an experiment using Automated ML, configured a compute cluster, and used that cluster to run the experiment. Below screenshots highlight the steps. The best model was the voting ensemble with an approximate accuracy of 91.9%

2. Deploy and consume best model

We deployed the best model as captured below :

  • Enable logs
  • We choose the best model for deployment and enable "Authentication" while deploying the model using Azure Container Instance (ACI). The executed code in logs.py enables Application Insights. "Application Insights enabled" is disabled before executing logs.py.
  • Use swagger to document anf consume the RESTful web services

Run the endpoint.py file which contains rest endpoint url to interact with the deployed model. Below is the output of the model.

Run the benchmark.shas captured below.

3. Publish Machine Learning Pipeline

We use python SDK to create and publish the pipeline, as captured in the images beelow.
  • pipeline scheduled run details
  • pipeline created successfully
  • pipeline REST endpoint in active state

Future Work

  • Tuning the model parameters to enhance performance. Hyperparameter tuning help to get the best parameters for our model. In future maybe to expand the search space. (https://docs.microsoft.com/en-us/azure/machine-learning/how-to-tune-hyperparameters)
  • We could also add some additional steps to tthe pipeline like feature engineering before running the AutoML step. This would have helped in getting better results

Screen Recording

Below is the link to the video recording

Azure ML Project

About


Languages

Language:Jupyter Notebook 91.8%Language:Python 4.3%Language:Shell 3.9%