Preface

With the growing interest in artificial intelligence (AI), there are millions of resources introducing various deep learning (DL) techniques for a wide range of problems. They might be sufficient to get you a data scientist position that many of your friends dream of. However, you will soon find out that the real difficulty with DL projects is not only selecting the right algorithm for the given problem but also efficiently preprocessing the necessary data in the right format and providing a stable service.

This book walks you through every step of a DL project. We start from a proof-of-concept model written in a notebook and transform the model into a service or application with the goal of maximizing user satisfaction upon deployment. Then, we use Amazon Web Services (AWS) to efficiently provide a stable service. Additionally, we look at how to monitor a system running a DL model after deployment, closing the loop completely.

Throughout the book, we focus on introducing various techniques that engineers at the frontier of the technology use daily to meet strict service specifications.

By the end of this book, you will have a broader understanding of the real difficulties in deploying DL applications at scale and will be able to overcome these challenges in the most efficient and effective way.

Who this book is for

Machine learning engineers, deep learning specialists, and data scientists will find this book helpful in closing the gap between the theory and application with detailed examples. Beginner-level knowledge in machine learning or software engineering will help you grasp the concepts covered in this book easily.

What this book covers

Chapter 1, Effective Planning of Deep Learning-Driven Projects, is all about how to prepare a DL project. We introduce various terminologies and techniques used in project planning and describe how to construct a project playbook that summarizes the plan.

Chapter 2, Data Preparation for Deep Learning Projects, describes the first steps of a DL project, data collection and data preparation. In this chapter, we cover how to prepare a notebook setting for the project, collect the necessary data, and process it effectively for training a DL model.

Chapter 3, Developing a Powerful Deep Learning Model, explains the theory behind DL and how to develop a model using the most popular frameworks: PyTorch and TensorFlow.

Chapter 4, Experiment Tracking, Model Management, and Dataset Versioning, introduces a set of useful tools for experiment tracking, model management, and dataset versioning, which enables effective management of a DL project.

Chapter 5, Data Preparation in the Cloud, focuses on using AWS for scaling up a data processing pipeline. Specifically, we look at how to set up and schedule extract, transform, and load (ETL) jobs in a cost-efficient manner.

Chapter 6, Efficient Model Training, starts by describing how to configure TensorFlow and PyTorch training logic to utilize multiple CPU and GPU devices on different machines. Then, we look at tools developed for distributed training: SageMaker, Horovod, Ray, and Kubeflow.

Chapter 7, Revealing the Secret of Deep Learning Models, introduces hyperparameter tuning, the most standard process of finding the right training configuration. We also cover Explainable AI, a set of processes and methods for understanding what DL models do behind the scenes.

Chapter 8, Simplifying Deep Learning Model Deployment, describes how you can utilize open neural network exchange (ONNX), a standard file format for machine learning models, to convert models for various frameworks, which helps in separating the model development from model deployment.

Chapter 9, Scaling a Deep Learning Pipeline, covers the two most popular AWS features designed for deploying a DL model as an inference endpoint: Elastic Kubernetes Service (EKS) and SageMaker.

Chapter 10, Improving Inference Efficiency, introduces techniques for improving the inference latency upon deployment while maintaining the original performance as much as possible: network quantization, weight sharing, network pruning, knowledge distillation, and network architecture search.

Chapter 11, Deep Learning on Mobile Devices, describes how to deploy TensorFlow and PyTorch models on mobile devices using TensorFlow Lite and PyTorch Mobile, respectively.

Chapter 12, Monitoring Deep Learning Endpoints in Production, explains existing solutions for monitoring a system running a DL model in production. Specifically, we discuss how to integrate CloudWatch into endpoints running on SageMaker and EKS clusters.

Chapter 13, Reviewing the Completed Deep Learning Project, covers the last phase of a DL project, the reviewing process. We describe how to effectively evaluate a project and prepare for the next project.

To get the most out of this book

Even though we will interact with many tools throughout our journey, all the installation instructions are included in the book and the GitHub repository. The only thing you will need to prepare prior to reading this book would be an AWS account. AWS provides a Free Tier (https://aws.amazon.com/free), which should be sufficient to get you started.

Software/hardware covered in the book

Operating system requirements

TensorFlow

Windows, macOS, or Linux

PyTorch

Docker

Weights & Biases, MLflow, and DVC

ELI5 and SHAP

Ray and Horovod

AWS SageMaker

AWS EKS

If you want to try running the samples in the book, we advise you to use the complete versions from either our repository or the official documentation pages as the versions in the book may have some components missing to enhance the delivery of the contents.

Download the example code files

You can download the example code files for this book from GitHub at https://github.com/PacktPublishing/Production-Ready-Applied-Deep-Learning. If there’s an update to the code, it will be updated in the GitHub repository.

We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!

Download the color images

We also provide a PDF file that has color images of the screenshots and diagrams used in this book. You can download it here: https://packt.link/fUhAv.

Conventions used

There are a number of text conventions used throughout this book.

Code in text: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: “Mount the downloaded WebStorm-10*.dmg disk image file as another disk in your system.”

A block of code is set as follows:

html, body, #map {
 height: 100%; 
 margin: 0;
 padding: 0
}

When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:

[default]
exten => s,1,Dial(Zap/1|30)
exten => s,2,Voicemail(u100)
exten => s,102,Voicemail(b100)
exten => i,1,Voicemail(s0)

Any command-line input or output is written as follows:

$ mkdir css

$ cd css

Bold: Indicates a new term, an important word, or words that you see onscreen. For instance, words in menus or dialog boxes appear in bold. Here is an example: “Select System info from the Administration panel.”

Tips or important notes

Appear like this.

Get in touch

Feedback from our readers is always welcome.

General feedback: If you have questions about any aspect of this book, email us at [email protected] and mention the book title in the subject of your message.

Errata: Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you have found a mistake in this book, we would be grateful if you would report this to us. Please visit www.packtpub.com/support/errata and fill in the form.

Piracy: If you come across any illegal copies of our works in any form on the internet, we would be grateful if you would provide us with the location address or website name. Please contact us at [email protected] with a link to the material.

If you are interested in becoming an author: If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, please visit authors.packtpub.com.

Share Your Thoughts

Once you’ve read Production-Ready Applied Deep Learning, we’d love to hear your thoughts! Please click here to go straight to the Amazon review page for this book and share your feedback.

Your review is important to us and the tech community and will help us make sure we’re delivering excellent quality content.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.137.185.180