What Is MLOps?
Machine learning operations, or MLOps, is a set of practices focused on regulating the full lifecycle of machine learning models. As more organizations rely on machine learning for data- and technology-driven applications, the initial focus on model development and deployment has expanded to encompass continuous monitoring and updates.
MLOps streamlines the process of taking machine learning models to production by linking the design, build, and test activities of development with the deploy, maintain, and monitor activities of operations in a continuous feedback loop. MLOps is collaborative and cross-functional, often involving teams of data scientists, engineers, and IT professionals.
What is the difference between MLOps and DevOps? Both MLOps and DevOps streamline the process of taking software development into production and involve collaboration between development and operations teams. However, MLOps focuses on the full lifecycle of machine learning models.
Why MLOps Matters
MLOps facilitates the difficult process of automating the machine learning cycle. The automation requires additional steps: monitoring and evaluating model performance, incorporating the results of that evaluation into a better performing model, and redeploying the new model. MLOps offers significant benefits in productionizing machine learning, resulting in fewer errors, easier handoffs between teams, and continuous improvement of the AI system.
MLOps is particularly useful in applications such as:
MLOps with MATLAB
Using MATLAB® and Simulink® enables you to automate MLOps processes.
- Create Machine Learning Models – Use prebuilt functions and specialized apps to select or engineer features, and create machine learning models for classification, regression, and clustering.
- You can use AutoML to automate the model design for MLOps. For deep learning, you can get pretrained models from MATLAB or open source.
- Simulate AI Systems – Integrate machine learning models into AI systems using dedicated blocks, such as an SVM classification block or an object detection block, and simulate entire AI systems before deploying to production.
- Build and Test with CI – Use different continuous integration (CI) platforms, such as Azure® DevOps, Jenkins®, or your own CI server, to run MATLAB code and simulate Simulink systems. CI enables automatic building and testing of your code and systems, collaboration between teams, and detection of integration issues early in the MLOps cycle.
- Deploy to Production – Deploy MATLAB machine learning models to MATLAB Production Server™ without creating new code or a custom infrastructure. Then, multiple users can automatically access the latest version of the deployed MATLAB models.
- Monitor Operation – Once your machine learning models are in production, you can monitor their performance and provide feedback. For example, use drift detection to compare observed data with training data and determine when retraining is required.