Book Image

Machine Learning Engineering with MLflow

By : Natu Lauchande
2 (1)
Book Image

Machine Learning Engineering with MLflow

2 (1)
By: Natu Lauchande

Overview of this book

MLflow is a platform for the machine learning life cycle that enables structured development and iteration of machine learning models and a seamless transition into scalable production environments. This book will take you through the different features of MLflow and how you can implement them in your ML project. You will begin by framing an ML problem and then transform your solution with MLflow, adding a workbench environment, training infrastructure, data management, model management, experimentation, and state-of-the-art ML deployment techniques on the cloud and premises. The book also explores techniques to scale up your workflow as well as performance monitoring techniques. As you progress, you’ll discover how to create an operational dashboard to manage machine learning systems. Later, you will learn how you can use MLflow in the AutoML, anomaly detection, and deep learning context with the help of use cases. In addition to this, you will understand how to use machine learning platforms for local development as well as for cloud and managed environments. This book will also show you how to use MLflow in non-Python-based languages such as R and Java, along with covering approaches to extend MLflow with Plugins. By the end of this machine learning book, you will be able to produce and deploy reliable machine learning algorithms using MLflow in multiple environments.
Table of Contents (18 chapters)
1
Section 1: Problem Framing and Introductions
4
Section 2: Model Development and Experimentation
8
Section 3: Machine Learning in Production
13
Section 4: Advanced Topics

Exploring MLflow use cases with AutoML

Executing an ML project requires a breadth of knowledge in multiple areas and, in a lot of cases, deep technical steps of expertise. One emergent technique to ease the adoption and accelerate time to market (TTM) in projects is the use of automated machine learning (AutoML), where some of the activities of the model developer are automated. It basically consists of automating steps in ML in a twofold approach, outlined as follows:

  • Feature selection: Using optimization techniques (for example, Bayesian techniques) to select the best features as input to a model
  • Modeling: Automatically identifying a set of models to use by testing multiple algorithms using hyperparameter optimization techniques

We will explore the integration of MLflow with an ML library called PyCaret (https://pycaret.org/) that allows us to leverage its AutoML techniques and log the process in MLflow so that you can automatically obtain the best performance...