Web designing in a powerful way of just not an only professions. We have tendency to believe the idea that smart looking .

What is MLOps Practice

In this blog, we will try to see what is MLOps (Machine Learning Operations) and how it is related/different from traditional software development operations or what we call DevOps. We will see why it is important to talk about it and lastly where it is not a necessity.

What is MLOps?

Machine Learning Operations (MLOps) is a set of core activities of machine learning engineering. It aims to put a process to make a reusable pipeline (We will see later, what an ML pipeline is) to explore, build, test, deploy, serve, and monitor machine learning models. It goal of the MLOps process is not very different from the DevOps which aims to automate the development, deployment, and monitoring of the applications.

The steps are different in MLOps as compared to DevOps as ML is more complex than software development where things are not as much as standard as SDLC. In many cases, you will not be sure if things are working and the models will be in ever-evolving mode. Let us look at it more closely in the next section.

Let us Look at the Problem More Closely

On a very high level, a machine-learning problem takes multiple steps to solve a business problem. Let us take an example of a large ride-hailing app that senses data from different sensors from the vehicle including mileage and other engine inputs and uses it to predict any upcoming failures or maintenance inputs for the car.

On a high level, these steps make sense to us to predict a failure. If we start implementing it, much like software development, there will be multiple intermediate steps for these main steps and also the output will not be straightforward and accurate in the single run. Many of these intermediate steps would require to be tuned for better accuracy. E.g. Extract the best inputs so that prediction accuracy is improved which we call feature engineering. It tells us what are the actions influence the particular output. Having said this, there are more steps involved until we finally serve the trained model for real-world data to classify if there is going to be an engine failure or not. 

How to Get into Production 

The answer would be no! To reach production, we need automation to some extent so that we can minimize the time between one process to another in the pipeline above to quickly build, train, and serve the model to make predictions. In software development general terms, we need to continue integration and continuous deployment of some sort to make this happen. Data science is a fairly complex game and once you build a model does not work always! Think about the below situations.

  • What if the model that we built started giving the wrong prediction for the actual data in the production?
  • What if you need to retrain your model
  • Do we need to scale to achieve a certain SLA?

Data science is no magic and will always require iterative approaches to tune the pipeline to make it happen!

MLOps Steps

To do commercial AI/ML all sorts of big steps will be required as soon as you get your data. MLOps is all about doing AI/ML with the scale with predefined repeatable processes to reduce the time taken to perform the mentioned steps in the ML pipeline. We can say it is a set of practices so that effective collaboration and communication can take place in the data science team. MLOps principles become a tool for different role players in the data science team.

The life cycle of the ML model in development, serving, and monitoring, would look like this:

MLOps
Image Source: Neal Analytics

 

When we talk about DevOps in general software development, it is more kind of sorted and established. Once it is coded and tested (most of the time automatic testing) it can be shipped for operations. When we talk about ML Ops, the activities are more experimental and require activities like:

  • Need to carefully look at the data before training -> Requires data cleaning/ versioning of input data
  • Need feature building and hyperparameter tuning -> Requires model versioning and storage
  • Extensive research before you validate your model -> Testing and packaging the model once done
  • Release and ask Ops to serve to model -> Requires configuration/code config to manage scale between multiple environments
  • Serving Model -> Requires model monitoring while being used in production

The above activities require to be aligned to some process model which is taken care of by MLOps. There is no silver bullet yet! It is still in the making!! I hope I was able to provide a glimpse of what MLOps is about.

The MLOps practice 

Here are things that generally inspire you to have MLOps practice

  • If are an enterprise and you have almost figured out how things work and give

Where it can be too much!

  • If you are working on a model that is tested already and you think is of one-time use and once deployed, not much retraining or reiteration is needed, setting up all the process MLOps can be an overkill for your task.

Thanks for Reading!

 

Tag :

Write a comment

Your email address will not be published. Required fields are marked *