Offered By: IBM

Identify Stop Signs with Transfer Learning

In this Guided Project, you will detect whether an image contains a stop sign with transfer learning and fine-tuning.

Continue reading


Deep Learning

124 Enrolled

At a Glance

In this Guided Project, you will detect whether an image contains a stop sign with transfer learning and fine-tuning.


As part of the machine learning team for a corporation developing self-driving cars, you are working on a new stop sign detection technology. In order to determine if there is a stop sign when the car is on the road, your team proposes to capture snapshots every second, signaling the car to stop when there's a stop sign detected in the image.

Then, you encounter a problem: there's too many images to train on! It's computationally expensive to train on so many images every time. Enter transfer learning, which uses the idea that if we keep the early layers of a pre-trained network, and re-train the later layers on a specific dataset, we might be able to leverage some state of that network on a related task.

A typical transfer learning workflow in Keras looks something like this:
  1. Initialize base model, and load pre-trained weights (e.g. ImageNet)
  2. "Freeze" layers in the base model by setting training = False
  3. Define a new model that goes on top of the output of the base model's layers.
  4. Train resulting model on your data set.

In this guided project, you will implement transfer learning for stop sign detection.

A Look at the Project Ahead
After completing this guided project you will be able to:
  • Perform pre-processing and image augmentation on ImageGeneratorClass objects in Keras. 
  • Implement transfer learning in five general steps: 
    • obtain pre-trained model, 
    • create base model, 
    • freeze layers, 
    • train new layers on dataset, 
    • improve model through fine tuning.
  • Build an end-to-end transfer learning model (Incepton-v3, MobileNet, ResNet-50) for differentiating images of stop signs.

What You'll Need
This course mainly uses Python and JupyterLabs. Although these skills are recommended prerequisites, no prior experience is required as this Guided Project is designed for complete beginners.

 Frequently Asked Questions
> Do I need to install any software to participate in this project?
Everything you need to complete this project will be provided to you via the Skills Network Labs and it will all be available via a standard web browser.
> What web browser should I use?
The Skills Network Labs platform works best with current versions of Chrome, Edge, Firefox, Internet Explorer, or Safari.