Chapter 7. Train Your First Model

In the previous chapter, we used SageMaker Processing Jobs to transform a raw dataset into machine-usable features through the “feature engineering” process. In this chapter, we use these features to train a custom review classifier using TensorFlow, PyTorch, BERT, and SageMaker to classify reviews “in the wild” from social channels, partner websites, etc. We even show how to train a BERT model with Java!

Along the way, we explain key concepts like the Transformers architecture, BERT, and fine-tuning pre-trained models. We also describe the various training options provided by SageMaker, including built-in algorithms and “bring-your-own” options. Next, we discuss the SageMaker infrastructure, including containers, networking, and security. We then train, evaluate, and profile our models with SageMaker. Profiling helps us debug our models, reduce training time, and reduce cost. Lastly, we provide tips to further reduce cost and increase performance when developing models with SageMaker.

Understand the SageMaker Infrastructure

Largely container based, SageMaker manages the infrastructure and helps us focus on our specific machine learning task. Out of the box, we can directly leverage one of many built-in algorithms that cover use cases such as natural language processing (NLP), classification, regression, computer vision, and reinforcement learning. In addition to these built-in algorithms, SageMaker also offers pre-built containers for many popular ...

Get Data Science on AWS now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.