Professional Documents
Culture Documents
MLops Concept
MLops Concept
Machine learning applications have become the de facto solution to many problems in our daily lives.
Building these applications is a little different from building standard software for several reasons.
Some of these differences include:
● You need to constantly monitor the performance of models because they may degrade with time
(Drifting model performance).
● Bringing a machine learning model to productions involves many people, including data scientists,
data engineers, software engineers and business people.
● Deploying and operating machine learning models at scale is a big challenge.
● Team skills: In an ML project, the team usually includes data scientists or ML researchers, who
focus on exploratory data analysis, Data analysis: Data preparation: Model training: Model
evaluation: Model validation: Model serving. These members might not be experienced software
engineers who can build production-class services.
Problem Background of MLOps
Data scientists can implement and train an ML model with predictive performance on an offline holdout dataset,
given relevant training data for their use case. However, the real challenge isn't building an ML model, the
challenge is building an integrated ML system and to continuously operate it in production.
A NeurIPS paper on hidden technical Debt in ML systems shows you developing models is just a very small part of the
whole process.
As shown in the following diagram, only a small fraction of a real-world ML system is composed of the ML code. The required surrounding
elements are vast and complex.
Problem Background of MLOps
Organizations tend to put too much emphasis on the creation of ML models and placing them
behind some API end point. This emphasis overlooks the bigger challenges such as accessing and
preparing data in production, integrating the models with online business applications, monitoring
and governing the model’s performance, or delivering continuous improvements.
One of the key challenges is that the As a team, the data science team often works in a silo, and use manual
development processes, which then need to be manually converted into production-ready ML pipelines. This requires
separate teams of ML engineers, data engineers, DevOps and developers to invest additional time and resources,
often much more.
Data
Acquisitio
n Package
Data
ML Model
Annotatio
Validation
n
Manual Monitoring Compile
convert
ML Operations
Development Team
Team
ML Model Data
Training Validation
Release Deploy
ML Model
Building
The research-oriented data science approach that is currently dominant can no longer prevail. Data
science MUST adopt agile software development practices with micro-services, continuous integration
(CI), continuous delivery (CD), code versioning (Git), and data/configuration/metadata versioning.
ML systems cannot be built in an ad hoc manner, isolated from other IT initiatives like DataOps and
DevOps. They also cannot be built without adopting and applying sound software engineering
practices.
Why use MLOps?
The goal of MLOps is to reduce technical friction to get the model from an idea into production in the shortest
possible time to market with as little risk as possible.
In most real-world applications, Business and regulatory requirements can change rapidly, requiring a more frequent
release cycle. These impact to data changes constantly, and thus models need to be retrained, or even whole
pipelines need to be rebuilt to tackle feature drift. This is where MLOps comes in to combine operational know-how
with machine learning and data science knowledge.
Developing code or models is just the first step. The biggest effort goes into making each element production-ready,
including data collection, preparation, training, serving and monitoring, and enabling each element to run repeatedly with
minimal user intervention.
Machine learning operations (MLOps) is the
practice of efficiently developing, testing,
deploying, and maintaining machine learning
(ML) applications in production.
MLOps is not about running notebooks in production environments and is not about placing an ML model
behind an API end point. MLOps is about building an automated ML production environment from data
collection and preparation to model deployment and monitoring.
Business benefits:
● Deliver business value from data and AI/ML faster
● Increase team’s productivity and eliminate silos
● Provide reliable and reproducible results
● Observe, explain, and improve model behavior and accuracy
How is MLOps different from DevOps,
Data Ops? MLOps
MLDev
DevOps
DataOps
- DevOps are standards to ensure the success of a software project. delivery of high-quality software . This practice
provides benefits such as shortening the development cycles, increasing deployment velocity, ensure that there is
continuous and dependable releases (CI/CD)
- DataOps involve a set of rules that ensure that high-quality data is available to analyze and train machine learning
models
In the machine learning space, A model’s performance can degrade over time. This could be a result of changes in
data or errors during deployment. As a result of that MLOps is also concerned with ensuring that an ML model
performs optimally at any point in time. It also ensures that the model is retrained in the event of dismal
performance.
MLOps Stages
Continuous
Delivering ML Pipelines Delivery
There are three levels of automation, starting from the initial level with manual model
training and deployment, up to running both ML and CI/CD pipelines automatically.
Characteristic:
vertex-ai
Source :
● Dataset OPs :
https://docs.google.com/presentation/d/1OqzCG9Cabx8s4AFUMHCAjvqz5HAXZsm7U0qqOFDu2yA/edit#slide=id.g10c352fa
a72_0_100
● TrainingOPs :
https://docs.google.com/presentation/d/1mM815WZRfRyl3fDEcsufgAh49y8BhinpPZTpMisCw-k/edit#slide=id.g120d349fd8e_
1_63
● Monitoring :
https://docs.google.com/presentation/d/1KljgGSqiepvkMZWCYtm7RejuBPgXt47VCA6hcC6_5K0/edit#slide=id.g105f3c1a80c
_0_124
● https://ml-ops.org/content/mlops-principles#iterative-incremental-process-in-mlops
● https://cloud.google.com/architecture/mlops-continuous-delivery-and-automation-pipelines-in-machine-learning
● https://www.freecodecamp.org/news/what-is-mlops-machine-learning-operations-explained/
● https://learn.layer.ai/what-is-mlops/#DevOps_vs_MLOps_vs_Data_Ops