/TinyML-WTM-IOTMakers-Workshop

Repo destined for the audience of GDG IOTMakers' program, this workshop goes throught the basics of converting Tensorflow models into TFlite ones and experimenting with different compression and optimization techniques.

Primary LanguageJupyter Notebook

TinyML : TensorFlow Lite Workshop - Multi-Label Classification for Embedded Devices

Introduction :

This workshop is designed to teach you how to use TensorFlow Lite to perform multi-label classification on embedded devices. TensorFlow Lite is a lightweight version of the popular TensorFlow library, specifically designed for deployment on resource-constrained devices such as smartphones, Raspberry Pi, and other embedded systems.

In this workshop, you will learn how to train a multi-label classification model in TensorFlow, convert the model to TensorFlow Lite, and run the model on an embedded device to make predictions.

We'll also do a proof-of-concept study, where we'll compare different compression strategies in TFlite and how it influences the overall performance of a neural network.

Prerequisites

Before starting this workshop, you should have a basic understanding of machine learning concepts, basic knowledge of microcontrollers (Arduino, Raspberry Pi, ESPs, NodeMCU, ... etc) and basic experience with TensorFlow.

Workshop Outline

  • Introduction to multi-label classification and Tensorflow.
  • Introduction to basic edge computing concepts and microcontrollers.
  • Preparing the dataset for multi-label classification. (MNIST Fashion)
  • Training a multi-label classification model in TensorFlow.
  • Converting the TensorFlow model to TensorFlow Lite.
  • Comparing TF and TFlite models.
  • Model deployment optimization (case of weights size compression)

Conclusion

This Workshop is made for the service of WTM's IOTMakers series of workshops and talks.