TinyML: Machine Learning with TensorFlow Lite on Arduino and Ultra-Low-Power Microcontrollers

Front Cover
"O'Reilly Media, Inc.", Dec 16, 2019 - Computers - 504 pages

Deep learning networks are getting smaller. Much smaller. The Google Assistant team can detect words with a model just 14 kilobytes in size—small enough to run on a microcontroller. With this practical book you’ll enter the field of TinyML, where deep learning and embedded systems combine to make astounding things possible with tiny devices.

Pete Warden and Daniel Situnayake explain how you can train models small enough to fit into any environment. Ideal for software and hardware developers who want to build embedded systems using machine learning, this guide walks you through creating a series of TinyML projects, step-by-step. No machine learning or microcontroller experience is necessary.

  • Build a speech recognizer, a camera that detects people, and a magic wand that responds to gestures
  • Work with Arduino and ultra-low-power microcontrollers
  • Learn the essentials of ML and how to train your own models
  • Train models to understand audio, image, and accelerometer data
  • Explore TensorFlow Lite for Microcontrollers, Google’s toolkit for TinyML
  • Debug applications and provide safeguards for privacy and security
  • Optimize latency, energy usage, and model and binary size
 

What people are saying - Write a review

We haven't found any reviews in the usual places.

Contents

Chapter 1 Introduction
1
Chapter 2 Getting Started
5
Chapter 3 Getting Up to Speed on Machine Learning
11
Building and Training a Model
29
Building an Application
67
Deploying to Microcontrollers
95
Building an Application
127
Training a Model
181
Chapter 14 Designing Your Own TinyML Applications
393
Chapter 15 Optimizing Latency
401
Chapter 16 Optimizing Energy Usage
415
Chapter 17 Optimizing Model and Binary Size
423
Chapter 18 Debugging
437
Chapter 19 Porting Models from TensorFlow to TensorFlow Lite
447
Chapter 20 Privacy Security and Deployment
453
Chapter 21 Learning More
461

Building an Application
221
Training a Model
259
Building an Application
279
Training a Model
329
Chapter 13 TensorFlow Lite for Microcontrollers
355
Appendix A Using and Generating an Arduino Library Zip
465
Appendix B Capturing Audio on Arduino
467
Index
475
About the Authors
485
Copyright

Other editions - View all

Common terms and phrases

About the author (2019)

Pete Warden is technical lead for mobile and embedded TensorFlow. He was CTO and founder of Jetpac, which was acquired by Google in 2014, and previously worked at Apple. He was a founding member of the TensorFlow team, and blogs about practical deep learning at https://petewarden.com.

Daniel Situnayake leads developer advocacy for TensorFlow Lite at Google. He co-founded Tiny Farms, the first US company using automation to produce insect protein at industrial scale. He began his career lecturing in automatic identification and data capture at Birmingham City University.