O'Reilly logo
live online training icon Live Online training

Debugging and optimizing convolutional neural networks with Keras

enter image description here

Improving CNN performance with data augmentation, transfer learning, and other techniques

Lukas Biewald

Many people have trained a neural network. . .and stopped there. Maybe you’ve played around with Keras or completed an online tutorial, but now you want to get more practical and hands-on. This in-depth three-hour course will give you the practical skills you need to go beyond the basics and work on models in the real world.

Join expert Lukas Biewald to learn how to build and augment a convolutional neural network (CNN) using Keras. Along the way, you’ll explore common issues and bugs that are often glossed over in other courses, as well as some useful approaches to troubleshooting. You can’t become a deep learning expert in a day, but you'll leave able to build and deploy useful real-world CNNs.

What you'll learn-and how you can apply it

By the end of this live online course, you’ll understand:

  • How to build, modify, and debug convolutional neural networks to classify images in different domains
  • How to use Keras effectively to train and troubleshoot models
  • Inception, ResNet, and how popular CNN architectures differ from each other

And you’ll be able to:

  • Take a new dataset specific to your application and train a model for it
  • Understand existing Keras training code

This training course is for you because...

  • You’re an engineer who wants to improve your deep learning skills.


  • A working knowledge of Python

Recommended preparation:

Recommended follow-up:

About your instructor

  • Lukas Biewald is currently CEO & founder of Weights & Biases, his second major contribution to advances in the machine learning field. In 2009, Lukas founded Figure Eight, formally CrowdFlower. Figure Eight was acquired by Appen in 2019. Lukas has dedicated his career to optimize ML workflows and teach ML practitioners, making machine learning more accessible to all.


The timeframes are only estimates and may vary according to how the class is progressing

Building a CNN in Keras (55 minutes)

  • Lecture: Building a CNN from scratch, one network layer at a time; building a classifier on the CIFAR dataset
  • Hands-on exercise: Modify the network to make it more performant
  • Q&A
  • Break (5 minutes)

Data augmentation (55 minutes)

  • Lecture: Modifying your CNN to use a data generator; applying data augmentation techniques to improve it
  • Hands-on exercise: Improve your classifier further
  • Q&A
  • Break (5 minutes)

Transfer learning (55 minutes)

  • Lecture: Taking standard models trained on ImageNet, inspecting them, and then repurposing them
  • Hands-on exercise: Apply your classifier to a new dataset

Wrap-up and Q&A (5 minutes)