Deep Learning is one of the hottest topic today. There are so many articles, blogs, books, and video courses talk about deep learning. Most of them talk about the mathematical model and the model simulation using python, tensorflow, or high level API, such as Keras. There are only few articles, blogs, books, or video courses talk about the deployment or the practical deep learning implementation, especially on IoT edge devices. This devices often use microcontrollers. This tiny chip are the heart of IoT edge devices. With more than 20 billion microcontrollers shipped a year, these chips are everywhere.
Why Run Deep Learning on Microcontrollers?
Currently, there are many deep learning exist, but they are could-based. We need to send our data to the could server, the server processes it, and then the result is send back. This approach is not work if we don’t have an internet connection. There is also security issue. We also need components for communication, such as Ethernet or WiFi chip. So, it will be great if we can run the deep learning on microcontrollers.
We can use server with its high computation power for training the deep learning, and then what has been learned is applied on microcontrollers. The training process can also be done on microcontrollers for simple deep learning model that is not computation intensive. Compared to the server, microcontrollers have lower energy consumption.