Duration
21 hours (usually 3 days including breaks)
Requirements
- Python programming experience
- Experience with machine learning frameworks and languages
Audience
- Data scientists
- Machine learning engineers
Overview
MLflow is an open source platform for streamlining and managing the machine learning lifecycle. It supports any ML (machine learning) library, algorithm, deployment tool or language. Simply add MLflow to your existing ML code to share the code across any ML library being used within your organization.
This instructor-led, live training (online or onsite) is aimed at data scientists who wish to go beyond building ML models and optimize the ML model creation, tracking, and deployment process.
By the end of this training, participants will be able to:
- Install and configure MLflow and related ML libraries and frameworks.
- Appreciate the importance of trackability, reproducability and deployability of an ML model
- Deploy ML models to different public clouds, platforms, or on-premise servers.
- Scale the ML deployment process to accommodate multiple users collaborating on a project.
- Set up a central registry to experiment with, reproduce, and deploy ML models.
Format of the Course
- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request a customized training for this course, please contact us to arrange.
Course Outline
Introduction
- Adapting software development best practices to machine learning.
- MLflow vs Kubeflow — where does MLflow shine?
Overview of the Machine Learning Cycle
- Data preparation, model training, model deploying, model serving, etc.
Overview of MLflow Features and Architecture
- MLflow Tracking, MLflow Projects, and MLflow Models
- Using the MLflow command-line interface (CLI)
- Navigating the MLflow UI
Setting up MLflow
- Installing in a public cloud
- Installing in an on-premise server
Preparing the Development Environment
- Working with Jupyter notebooks, Python IDEs and standalone scripts
Preparing a Project
- Connecting to the data
- Creating a prediction model
- Training a model
Using MLflow Tracking
- Logging code versions, data, and configurations
- Logging output files and metrics
- Querying and comparing results
Running MLflow Projects
- Overview of YAML syntax
- The role of the Git repository
- Packaging code for re-usability
- Sharing code and collaborating with team members
Saving and Serving Models with MLflow Models
- Choosing an environment for deployment (cloud, standalone application, etc.)
- Deploying the machine learning model
- Serving the model
Using the MLflow Model Registry
- Setting up a central repository
- Storing, annotating, and discovering models
- Managing models collaboratively.
Integrating MLflow with other Systems
- Working with MLflow Plugins
- Integrating with third-party storage systems, authentication providers, and REST APIs
- Working Apache Spark — optional
Troubleshooting
Summary and Conclusion