4 Designing Reliable ML Systems

 

This chapter covers

  • Tooling for ML Platform
  • Track ML experiments using MLflow experiment tracker
  • Store the models created in MLflow model registry
  • Register model features in Feast feature store

In the last chapter, we learned about DevOps tooling that helped us to automate and deploy applications reliably and at scale. In the next three chapters, we will use this knowledge as a base to design and build our ML platform.

In particular, we explore individual components of the ML platform discussed in Chapter 1( Section 1.3). We will learn about different tooling/applications that help us in tracking our data science experiments, storing the model features, and aiding in pipeline orchestration and model deployment. Our goal would be to show a fully functional mini ML platform with these tools while highlighting interactions between them.

We will start our ML journey the way most data scientists do - By understanding the data. We will perform some EDA, split our dataset into training and testing sets, and run multiple models to get the one that performs best. The initial stages of a data science project are mostly exploratory, and we experiment with different features, model hyperparameters, and frameworks.

4.1 MLflow For Experiment Tracking

4.1.1 Data Exploration

4.1.2 MLflow Tracking

4.1.3 MLflow Model Registry

4.2 Feast As A Feature Store

4.2.1 Registering Features

4.2.2 Retrieving Features

4.2.3 Feature Server

4.2.4 Feast UI

4.3 Summary