Until now, building machine learning (ML) algorithms for hardware meant complex mathematical modes based on sample data, known as training data, to make predictions or decisions without being explicitly programmed to do so. And this is as complex and expensive to build as it sounds. On top of that, ML-related tasks were traditionally translated to the cloud; creating latency, consuming scarce power, and putting machines at the mercy of connection speeds.
Combined, these constraints made computing slower, more expensive, and less predictable. Tiny Machine Learning (TinyML) is the latest embedded software technology that moves hardware into an almost magical realm, where machines can automatically learn and grow through use, like a primitive human brain.
In the face of the aforementioned challenges in ML technology, companies are turning to TinyML as the latest trend in building product intelligence. Arduino, the company best known for open-source hardware is making TinyML available for millions of developers, and now together with Edge Impulse, they are turning the ubiquitous Arduino board into a powerful embedded ML platform, like the Arduino Nano 33 BLE Sense and other 32-bit boards.
With this partnership, you can run powerful learning models based on artificial neural networks (ANN) reaching and sampling tiny sensors along with low-powered microcontrollers.
Over the past year, great strides were made in making deep learning models smaller, faster, and runnable on embedded hardware through projects like TensorFlow Lite for Microcontrollers, uTensor, and Arm’s CMSIS-NN; but building a quality dataset, extracting the right features, training, and deploying these models is still complicated.
TinyML was the missing link between Edge hardware and device intelligence, now coming to fruition.
Tiny devices with not-so-tiny brains
The implications of TinyML accessibility are very important in today’s world. For example, a typical drug development trial takes about five years as there are potentially millions of design decisions that need to be made on route to FDA approval. But using the power of TinyML and hardware instead of experimental animals for testing models can speed up the process and takes just 12 months.
Another example of this game-changing technology is that TinyML can listen to beehives and detect anomalies or distress caused by things as small as wasps. A tiny sensor can trigger an alert based on a sound model that identifies a hive under attack, allowing farmers to secure and assist the hive, in real-time.
Why real-time TinyML?
The huge need for inexpensive, easily deployable solutions for COVID-19 and other viruses is present for all of us, and early detection of symptoms could have an immediate impact on millions of lives around the world. Using TinyML and a simple Arduino board, you can detect and alert unusual coughing as a first defense mechanism for COVID-19 containment.
Recently, Edge Impulse and Arduino published a project that had the power and simplicity of running TinyML on an Arduino Nano BLE Sense that can detect specific coughing sounds in real-time audio, including a dataset of coughing and background noise samples. A highly optimized TinyML model was applied to build a cough detection system that runs in under 20 KB of RAM on the Nano BLE Sense. The project and the dataset were originally started by Kartik Thakore to help with the COVID-19 effort and were made available as an open-source repository on Hackster.io.
This same approach applies to many other embedded audio pattern matching applications in fields such as childcare, elderly care, safety, and machine monitoring.
The future with TinyML
With 250 billion microcontrollers in the world today, that grow by 30 billion annually, TinyML is one of the most popular technologies for performing on-device data analytics for vision, audio, motion, and more. TinyML gives small devices the ability to make smart decisions without needing to send data to the cloud. Unlike the general ML monsters used by data scientists, TinyML models are small enough to fit into any environment—one of the reasons that make TinyML an ideal option.
The accessibility of TinyML for software developers and engineers is another key factor for this technology’s potential and popularity. The software developers who want to build embedded systems using ML can build a model by tapping their iPhone as the edge device, using its sensors to capture the data.
All you need to build your first model is to sign in to the data acquisition tab on the Edge Impulse Studio, select your phone as the edge device, choose the accelerometer sensor for example, and then click Start sampling while moving your phone up and down to generate the data and see it in a graph. It is that easy.
TinyML code for everything: Machine, plant, human, and animal
Aluminum and iconography are no longer enough for a product to get noticed in the marketplace. Today, great products need to be useful and deliver an almost magical experience, something that becomes an extension of life.
In the future, billions of tiny devices will act as an extension of our brains, feelings, and emotions, as a natural extension of everyday life. This is why TinyML has the potential to impact every industry: retail, healthcare, transportation, wellness, agriculture, fitness, and manufacturing.