TensorFlow Lite for Microcontrollers is a port of Google’s popular open-source TensorFlow machine learning framework tailored to the unique power, compute, and memory limitations of extreme IoT edge nodes. SensiML Analytics Toolkit has been designed to deliver the easiest and most transparent set of developer tools for the creation and deployment of machine learning at the edge for developers of all levels of AI expertise.
Now TensorFlow users can enjoy the benefits and productivity gains of SensiML’s end-to-end workflow making training datasets easier to create and manage and providing powerful AutoML preprocessing while retaining the model operations of TFL. Through this tightly coupled integration of SensiML and Google’s TensorFlow Lite for Microcontrollers, developers reap the benefit of best-in-class solutions for building efficient, intelligent sensor AI algorithms capable of running autonomously on IoT edge devices.
One of the most common factors impacting success or failure in machine learning model development is that of the training dataset itself. Adverse dataset factors that can impact model quality for the worse can be categorized into the following:
Most frameworks for machine learning, TensorFlow included, rely on the user to manage this critical step in the process themselves. The absence of tools geared to addressing quality data collection and labeling make this task a challenging one that often requires custom scripting, expertise, data conversion, and ad hoc data management.
SensiML’s Data Capture Lab, as a front-end tool for collecting, labeling, and managing production grade datasets addresses this pain-point and thus complements TFL for Microcontrollers delivering high quality labeled data for NN training.
While neural network algorithms are extremely powerful tools for data classification, one of the more common challenges is optimizing the learning process with the minimum amount of data required to train the network. The need for large training datasets adds both time and cost to any sensor algorithm development project as more data requires more effort to properly collect and label train and test data for model generation.
To overcome this challenge, data scientists often use preprocessing of the training data feeding the NN to speed up the learning process. Data normalization, regularization, whitening, and dimensionality reduction are just a few of the common techniques often employed.
SensiML, with over 80 preprocessing feature transforms, uses AutoML techniques to identify preprocessing features that can be prepended to TFL Micro NNs and provide a similar benefit regardless of the user’s expertise in such methods. Using cloud-based feature engineering search methods, SensiML Toolkit can advise on advantageous feature preprocessing and thereby improve:
Given embedded devices and MCUs have much more limited resources than cloud computing, such improvements can make the difference in implementing a given algorithm on the desired target IoT device.
“Open-source software development from Google through TensorFlow Lite for Microcontroller and proprietary solutions from the likes of SensiML offer developer-friendly software tools and libraries, allowing more AI developers to create AI models that can support very edge applications.”
Now developers can enjoy the benefits of both tools combined
A video annotated iPython Notebook shows how to create a TinyML application (using a boxing wearable example) with SensiML Toolkit combined with a NN classifier using TensorFlow Lite for Microcontroller AI framework.
Understand and prevent common training dataset errors by improving your workflow for building, labeling, and managing supervised machine learning data as enabled with SensiML Data Capture Lab.