TinyML: Machine Learning with TensorFlow Lite on Arduino by Pete Warden


  • Learn to train different models
  • Build embedded systems using machine learning
  • Various TinyML projects
  • Learn concepts of Machine Learning
  • Working of Ardruino
  • Concepts of ultra-low power microcontrollers
  • Concepts on TensorFlow Lite
  • Optimize latency and memory usage


TinyML: Machine Learning with TensorFlow Lite on Arduino by Pete Warden

TinyML: Machine Learning with TensorFlow Lite on Arduino and Ultra-Low-Power Microcontrollers by Pete Warden, Daniel Situnayake

The new book from Pete Warden and Daniel Situnayake titled TinyML: Machine Learning with TensorFlow Lite on Arduino and Ultra-Low-Power Microcontrollers has just been released by O’Reilly Publishing.

This book explores Machine Learning (ML) techniques with TensorFlow Lite on the Arduino platform and other ultra-low-power microcontrollers using OpenCV and computer vision techniques, such as object recognition and image processing, to build smart IoT devices in real life scenarios, while keeping them affordable.

TinyML is a machine learning library designed to make it easy to build and train ML models on microcontrollers, including Arduino, ESP8266 and ESP32 boards.

This library is tightly integrated with Google’s TensorFlow Lite, which has been developed specifically for use in embedded environments like microcontrollers and IoT devices. We built TinyML to meet the unique needs of AI practitioners who want to deploy their models on embedded platforms.

Arduino has long been the leader in embedded computing, but the arrival of TensorFlow Lite now allows more sophisticated machine learning algorithms to be run on these low-power microcontrollers.

In this guide, you’ll learn how to work with an Arduino and TinyML to implement various machine learning algorithms such as image classification and object detection, as well as see how they can be extended to build your own tools and applications.

Beginner Basics

Introductions; Small amount of theory about neural networks; Learn to use Arduino libraries for working with audio files. Chapter 2 – Interactivity and Outputs: Adding interactivity to your code; Optimizing real-time signal processing performance. Chapter 3 – Using Artificial Neural Networks for Sound Effects: Introduce ARTIFICIAL NEURAL NETWORKS; Configure your system to use TensorFlow Lite.

Chapter 4 – Training Your Own Algorithm using Supervised Learning: Train a new sound effect using supervised learning in TinyML! Chapter 5 – Recognizing Objects in Images using Deep Convolutional Neural Networks : Use deep convolutional neural networks to recognize objects in images!

Firing Up The Arduino

Before you get started with any new project, it’s important to know that the internal components of an Arduino board are extremely sensitive to static discharge. This means that it’s possible to damage them in just a few seconds by touching wires together or connecting them to power too soon before they are all correctly installed.

If you don’t properly prepare your board when you start a new project then it can be easy to overlook some of these steps—but if you do then there’s an excellent chance that everything will work just as expected. And as long as it does, then you won’t need to worry about reworking anything later down the line.

Getting To Know Keras

Keras is an open source Python library for Theano and TensorFlow that simplifies both deep learning research as well as production systems. In order to effectively use Keras in a project, however, it’s important to understand exactly how Keras works.

This post will detail some of these inner workings. We’ll start by taking a look at how you would implement basic image recognition using an activation function such as ReLU before looking at how layer normalization helps prevent overfitting problems. Finally, we’ll take a look at new RNN cells added in version 2 of Keras to help process sequence data such as text or sound clips.

Working With Data

Spark MLLib is a Spark API used for machine learning. It comes bundled with a number of classification algorithms that you can use out of the box to recognize handwriting, images and speech in real time. In addition to custom neural networks, you can use existing ML libraries like scikit-learn or Caffe.

Having an easily accessible common framework makes it easier to integrate your AI models into existing applications and build more advanced architectures. Because it’s written in Scala, Spark works well if you have familiarity with Java or another higher level language; Python is also supported if needed.

There are plenty of resources on Arduino’s website for learners. You can visit their website.

Related Product: Check

Arduino Programming 3 in 1- Beginner’s Guide by Stuart Nicholas

Additional information


O'Reilly Media






Published = English, Original Language = English, Unknown = English


9.19 Inches


7 Inches


1.75047036028 Pounds


1.01 Inches


There are no reviews yet.

Be the first to review “TinyML: Machine Learning with TensorFlow Lite on Arduino by Pete Warden”