Can you imagine small tiny intelligent devices around you? Your washing machine saying I have a fault please diagnose me. Lights are turned on by your voice without any internet, unlike Alexa or Siri. YES, they all contain tinyML in them. TinyML is a type of machine learning that shortens deep learning networks to fit on tiny hardware. You see now the do-it-yourself weekend project on your Arduino board has a miniature machine learning model embedded in it. Embedded devices are entering our world, and new embedded machine learning frameworks will further enable the increase of AI-powered IoT devices.
What is TinyML?
Lately, Machine learning has been around for a while, with many useful applications for disorganized data that needs to be made sense of. But it is less commonly connected with hardware. Normally, ML and hardware are linked with the cloud, which usually is associated with latency, consuming power, and putting machines at the aid of connection speeds.
Applying Machine Learning to devices is not something we are not aware of. Most of our phones have had some neural network in them. Device music identification and many camera modes are just a few examples that depend on embedded deep learning.
The algorithms can recognize apps that we are more prone to use again and choose to shut off the non-required ones extending the phone battery. However, there are many objections to embedded AI, some of which are power and space. And that’s where TinyML comes in.
On-device sensor data requires vital computation skills and it results in obstacles like limited storage capacity, limited central processing unit (CPU), and reduced database performance. TinyML brings Machine Learning and Artificial Intelligence to small pieces of hardware. With this, it is possible to leverage deep learning algorithms to train the networks on the devices and shrink their size without the difficulty of sending data to the cloud and, hence, added latency to interpret it.
The book, “TinyML: Machine Learning with TensorFlow Lite on Arduino and Ultra-Low-Power Microcontrollers”, a book by Pete Warden, the TinyML guru and TensorFlow Lite Engineering Lead at Google has become a friend in the field. Let’s look at a few points:
- Arduino is an open-source hardware manufacturer that enables anyone to buy a microcontroller board and build their own digital device.
- A microcontroller is a tiny computer on a semiconductor chip circuit. This set of hardware can substitute the traditional pre-built single-board computer Raspberry Pi to run, requiring much less power and space.
- Google created TensorFlow Lite, which is an embedded machine learning. TensorFlow Lite and other frameworks started focusing on making deep learning models smaller, faster, and adapted to embedded hardware including sensors, and Arm’s CMSIS-NN.
- Arduino Nano 33 BLE Sense: It is the only 32-bit board that supports TensorFlow Lite, making machine learning embedded on hardware accessible to anyone.
Machine Learning is more about optimizing. At times, some cloud application programming interfaces (APIs) simply prevent interactivity and are too constraining from a power usage perspective, these constraints make computing at the edge slower, more expensive, and less predictable.
TinyML enabled energy-harvesting devices and batteries to run without recharging manually or by changing batteries because of power constraints. It is an always-on digital signal processor. This will make a device that could run at less than one milliwatt. Also, pointing to the fact that the devices simply cannot be connected by radio, because even low-power short-range radio uses from tens to hundreds of milliwatts, and it would only allow for short bursts of power. These limits also result in the need for code that can run with extremely small memory constraints limited to tens of kilobytes, therefore differentiating TinyML from what goes on with raspberry or phones. The idea behind TinyML is to make it as accessible as possible to allow mass increase and scale it to trillions of inexpensive and independent sensors
Pete learned that the Google OK team was able to run voice interfaces and wake words with only 13 kilobytes. They could do that when the lock screen was on, enabling it to use very low power, even if the device was plugged into the wall for energy-saving purposes. He wants to apply the wake word to a speech recognition app that is cheap, which can run on a pixel for up to a year, and on a coin battery that could fit within 18 megabytes. There might be a day in the future where all switches, buttons, and components have already been replaced with a wake word.
Another theme is mixing voice interfaces and visual signals through TinyML, allowing devices to know when you are looking at the device and eliminating background noises such as people speaking at the same time or equipment in industrial settings.
In the automotive industry, power is less of a restriction when compared to cost and reliability, therefore industrial environments are likely to benefit from TinyML. For example, Shoreline IoT concentrates on a peel-and-stick ultra-low power sensor on a motor that can last for up to 5 years on the same pair of batteries at 1 milliwatt or below power usage. This is a great advantage in industrial settings where it is usually harder to plug-in devices to power compared to our homes. The challenge here is that the replacement cycle for industrial machines is quite long making it more difficult to be innovative.
Pattern recognition, Audio analytics, and voice human-machine interfaces are the fields where TinyML is commonly applied today. Industries can benefit a lot from audio analytics, such as child and elderly care, safety, and equipment monitoring. It can be used for vision, motion, and gesture recognition as well.
According to Pete Warden, TinyML will impact almost every single industry: retail, healthcare, transportation, wellness, agriculture, fitness, and manufacturing. Our phones can become the edge device that captures data by adding the data recovery tab on the Edge Impulse Studio, then choosing the sensors, for example, the accelerometer sensor to sample the movements of the phone. This will allow it to run on models based on artificial neural networks.
The future ahead!
Today there are more than 250 billion embedded devices active in the world, the devices are gathering large amounts of data, and processing this in the cloud has been a challenge. TinyML could shorten the gap between edge hardware and device intelligence. Making TinyML more available to developers will be important to allow the mass generation of embedded machine learning to redirect wasted data into actionable insights and to create new applications in many industries.
With the growth of human-machine interfaces (HMI) and the number of intelligent devices. TinyML has the power to embed AI and computing at the edge ubiquitous, cheaper, scalable, and more predictable, changing the standard in ML.
Dive in with us in the world of TinyML, grab your board from here.9