Book Image

Machine Learning with LightGBM and Python

By : Andrich van Wyk
3 (1)
Book Image

Machine Learning with LightGBM and Python

3 (1)
By: Andrich van Wyk

Overview of this book

Machine Learning with LightGBM and Python is a comprehensive guide to learning the basics of machine learning and progressing to building scalable machine learning systems that are ready for release. This book will get you acquainted with the high-performance gradient-boosting LightGBM framework and show you how it can be used to solve various machine-learning problems to produce highly accurate, robust, and predictive solutions. Starting with simple machine learning models in scikit-learn, you’ll explore the intricacies of gradient boosting machines and LightGBM. You’ll be guided through various case studies to better understand the data science processes and learn how to practically apply your skills to real-world problems. As you progress, you’ll elevate your software engineering skills by learning how to build and integrate scalable machine-learning pipelines to process data, train models, and deploy them to serve secure APIs using Python tools such as FastAPI. By the end of this book, you’ll be well equipped to use various -of-the-art tools that will help you build production-ready systems, including FLAML for AutoML, PostgresML for operating ML pipelines using Postgres, high-performance distributed training and serving via Dask, and creating and running models in the Cloud with AWS Sagemaker.
Table of Contents (17 chapters)
1
Part 1: Gradient Boosting and LightGBM Fundamentals
6
Part 2: Practical Machine Learning with LightGBM
10
Part 3: Production-ready Machine Learning with LightGBM

Deploying an ML pipeline for customer churn

For our practical example, we’ll use the telecommunication (telco) Customer Churn dataset we worked with in Chapter 5, LightGBM Parameter Optimization with Optuna. The dataset consists of descriptive information for each customer (such as gender, billing information, and charges) and whether the customer has left the telco provider (churn is yes or no). Our task is to build a classification model to predict churn.

Further, we’d like to deploy the model behind a REST API such that it can be integrated into a more extensive software system. The REST API should have an endpoint that makes predictions for data passed to the API.

We’ll use FastAPI, a modern, high-performance Python web framework, to build our API. Finally, we’ll deploy our model and API to Google Cloud Platform using Docker.

Building an ML pipeline using scikit-learn

We will start by building an ML pipeline using scikit-learn’s Pipeline...