Microsoft wants to bring AI to Raspberry Pi and other tiny devices

Squirrels beware: Microsoft shows off progress it's making moving machine learning to the Internet of Things.
Written by Liam Tung, Contributing Writer
Raspberry Pi 3 Model B

Microsoft has released the Embedded Learning Library, offering developers a pre-trained image recognition model for Raspberry Pi and other developer boards.

The early preview of Embedded Learning Library (ELL), now available on GitHub, is part of Microsoft's effort to miniaturize its machine-learning software for a range of extremely low-powered chips on devices that aren't connected to the cloud.

As the company explains in a blogpost, a team at the Microsoft Research lab is working on compressing its machine learning models to work on the Cortex-M0, an ARM processor no bigger than breadcrumb.

The aim is to to push machine learning to devices that aren't connected to the internet, such as brain implants. Microsoft's new art feature for its Pix iPhone photo app uses AI on the device, but the plan is to enable it on much less powerful chips, such as a brain implant, which might need to work without a network connection.

It's current compression efforts have resulted in machine learning models 10 to 100 times smaller, but to get it running on a Cortex M0, the models need to be 1,000 to 10,000 times smaller.

Today, however, ELL is available for the relatively powerful and large Raspberry Pi, Arduinos, BBC's micro:bit and other microcontrollers.

ELL for these devices relies on compressed machine learning models that were trained for the cloud, whereas its work on Cortex-M0 training algorithms that are tuned for specific scenarios.

The smallest device the researchers have tested is the single-board computer, Arduino Uno, which has 2 kilobytes of RAM.

Ofer Dekel, a principal research at the Microsoft Research Machine Learning and Optimization group, trained a computer vision model to deal with a squirrel problem in his yard. Dekel deployed the model on a Raspberry Pi 3 hooked up with a webcam, which switches on the sprinkler system when it detects a squirrel.

He's offered instructions on GitHub for makers to get started with a similar system, which recognizes objects and prints a label describing what it is.

Editorial standards