MLOps - An Engineering Discipline
Angad Gupta ,MIEEE, BITS-Pilani
Renewable Energy | Clean Tech | DR | VPP| DERMS|EV
Introduction:MLOps is a combination of ML + DEV +OPS. MLOps basically helps to increase production scalability and quality of production. Models by increasing automation.
MLOps team includes the data scientist who curate datasets and design AI models and ML engineers who runs those models and datasets in the automated ways.
Covers the followings:
1. Why MLOps is important
2. Goals of MLOps
3. Major benefits
4. Best practices
5. MLOps vs DevOps
6. Platforms and tools required for MLOps
Why MLOps is important : MLOps tam will help you the following issues
1. Deployment issues:
a. Machine learning build with multiple languages
b. Model deployment on development & production environments
c. Troubleshooting with issues raised during model deployments
d. Preparedness of deployment packages with different languages
2. Monitoring Issues:
a. Model performance monitoring.
b. Consistent way to monitor the models deployed across the organizations
3. Model lifecycle management issues:
a. Need involvement of data scientist to update the production models and maintenance activities
b. Keep track of model decay after initial deployments
4. Model Governance
a. Production Access Control.
b. Traceable Model Results.
c. Model Audit Trails.
d. Model Upgrade Approval Workflows.
Goals of the MLOps:
a) Deployment and automation
b) Model training and upgradations
c) Operation Diagnostics & Fixes
d) Data Governance and business regulatory compliance
e) Production Scalability
f) Team Collaboration
g) Monitoring and management
Major Benefits
· Creation of reproducible workflows pipelines and ML models.
- Create Machine Learning pipelines to design, deploy and reproducible model deployment.
- Provide mechanism to trace the code version, data and various matrices as well as execution logs.
- Easy model deployment at any production environment
- deployment of machine learning model quickly and perfectly
- automated control of uses of cloud resources
- running model validation and various tests before get deployed
- predefined dedicated system to migrate models from deployment to production systems
Management of machine learning life cycle
- use effective integration tools to track the model development and its components and integrate all the components via dedicated tools
- advanced bias data analysis to cross verify model performance over the period of time
Machine Learning Resource control and management
- keep track of model version history for audit purpose
- evaluate the importance of features and create more advanced models with minimal bias using uniform distribution metrics;
- set resource quota and establish proper policies for increase/decrease the same as requirement to run model efficiently
- create audit trails to meet regulatory requirements as you mark machine learning resources and automatically trace experiments.
Best Practices
ML Pipelines : Setup of ML pipelines like data pipeline to define the dependencies and its execution order and produce the matrices for the monitoring of same.
- Hybrid Teams : MLOps includes the work of a data scientist, machine learning engineer, DevOps engineer and data engineer. A hybrid team will handle issues quickly and efficiently.
- Model and Data Versioning: In addition to maintain the code version, we also need to maintain the machine learning model version and data used for train the model, hyper parameters and meta-data of models.
- Model validation: Need to setup the statistical tests or matrices for the model validation because model validation can’t be pass/fail or true/false.
- Data validation : Before model train on the provided data, input data has to be validated to avoid the uncertainty and bias from the model.
- Monitoring: it is become more important to monitor the model performance on the various environment by visualizing the various matrices of resources being used by the model.
MLOps vs DevOps
Continuous Integration (CI) : likewise in DevOps we are no longer only depends upon testing & validate the code and its components in MLOps we need to validate the data, models and its associated components.
- Continuous Deployment (CD) : DevOps prepare the data pipelines which mainly includes the software packages and its associated services whereas in MLOps prepares the pipeline for model training and model prediction functioning also enables the system to automatically take care of required software packages or supportive services while upgrading or rolling back to model.
- Continuous Testing (CT): MLOps has added a new word in their dictionary about model training and testing which is never ending process.
- MLOps experimental in nature: unlike DevOps, MLOps is much more experiential in nature as data scientists try different features, parameters, models. In all these iterations, they must manage the code base and create reproducible results.
- Data Profile changes the system requirements: Over the period data profile changes may cause of the models requirement changes accordingly, which is not the case with traditional DevOps.
- Team Composition : MLOps having a hybrid team of data scientist, Machine learning engineer and DevOps engineers to handle the issues raised during production time
Platforms and tools to assist with MLOps
- Model tracking, model history & model registry related information
- Model version control system
- Cloud services to conduct experiments of model and deploy them on ML pipelines
#machinelearning #MLOps #MLoperation #DevOps #Datascience #ML #Cloud #model #machinelearningmodel #programming #angadgupta