TensorFlow Lite for Embedded Linux Training Course

Duration

21 hours (usually 3 days including breaks)

Requirements

  • An understanding of deep learning concepts
  • Python programming experience
  • A device running embedded Linux (Raspberry Pi, Coral device, etc.)

Audience

  • Developers
  • Data scientists with an interest in embedded systems

Overview

TensorFlow Lite is an open source deep learning framework for executing models on mobile and embedded devices with limited compute and memory resources.

This instructor-led, live training (online or onsite) is aimed at developers who wish to use TensorFlow Lite to deploy deep learning models on embedded devices.

By the end of this training, participants will be able to:

  • Install and configure Tensorflow Lite on an embedded device.
  • Understand the concepts and components underlying TensorFlow Lite.
  • Convert existing machine learning models to TensorFlow Lite format for execution on embedded devices.
  • Work within the limitations of small devices and TensorFlow Lite, while learning how to expand their default capabilities.
  • Deploy deep learning models on embedded devices running Linux to solve physical world problems such as recognizing images and voice, predicting patterns, and initiating movements and responses from robots and other embedded systems in the field.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Introduction

  • TensforFlow Lite’s game changing role in embedded systems and IoT

Overview of TensorFlow Lite Features and Operations

  • Addressing limited device resources
  • Default and expanded operations

Setting up TensorFlow Lite

  • Installing the TensorFlow Lite interpreter
  • Installing other TensorFlow packages
  • Working from the command line vs Python API

Choosing a Model to Run on a Device

  • Overview of pre-trained models: image classification, object detection, smart reply, pose estimation, segmentation
  • Choosing a model from TensorFlow Hub or other source

Customizing a Pre-trained Model

  • How transfer learning works
  • Retraining an image classification model

Converting a Model

  • Understanding the TensorFlow Lite format (size, speed, optimizations, etc.)
  • Converting a model to the TensorFlow Lite format

Running a Prediction Model

  • Understanding how the model, interpreter, input data work together
  • Calling the interpreter from a device
  • Running data through the model to obtain predictions

Accelerating Model Operations

  • Understanding on-board acceleration, GPUs, etc.
  • Configuring Delegates to accelerate operations

Adding Model Operations

  • Using TensorFlow Select to add operations to a model.
  • Building a custom version of the interpreter
  • Using Custom operators to write or port new operations

Optimizing the Model

  • Understanding the balance of performance, model size, and accuracy
  • Using the Model Optimization Toolkit to optimize the size and performance of a model
  • Post-training quantization

Troubleshooting

Summary and Conclusion