The Raspberry Pi 3 is one of the most popular devices you can buy. For $35, this inexpensive all-in-one computer board can be used to power numerous projects ranging from miniature Linux-based PCs to gaming consoles and more. Now Microsoft reports that it built a device based on the Raspberry Pi 3 that uses artificial intelligence to hunt down pesky rodents.
The device was created by the head of Microsoft’s Machine Learning and Optimization group, Ofer Dekel. He discovered that squirrels were stealing flower bulbs along with seeds in the bird feeder in his backyard garden. Naturally, he couldn’t literally keep watch in the shadows and chase down the furry-tail rodents with his bare hands, so he came up with a plan.
Using his team located at the Redmond, Washington, research lab (he has one in India, too), they trained a computer-vision model to detect squirrels. The artificial intelligence was then deployed onto a Raspberry Pi 3 board inside a special device he mounted in his backyard. Thus, when a squirrel rears its head, the device will turn on the sprinkler system, thwarting the rodent’s thieving habits.
This backyard “project” is just part of Microsoft’s overall picture of an artificial intelligence-first world. “We’re moving from what is today’s mobile-first, cloud-first world to a new world that is going to be made up of an intelligent cloud and intelligent edge,” Microsoft CEO Satya Nadella said during the recent Build developer conference.
The big accomplishment in the squirrel-hunting project, according to Microsoft, was cramming a deep neural network onto an extremely small chip. Dekel and his team used “a variety of techniques” to compress the neural network, which is essentially “a class of predictors” inspired by our brains.
One technique is called weight quantization, capable of cramming more parameters into a smaller physical space. This compression enables the artificial intelligence to work faster, too. Additionally, Dekel’s group is examining a technique called pruning, which removes redundancies in neural networks. This has a double benefit: the ability to run a neural network on extremely small processors, and faster evaluation times.
However, the team wants to get artificial intelligence running on the smallest ARM-based processor to date: the Cortex M0. According to ARM, this processor has a “floorplan area” of 0.007mm squared. That’s very, very tiny, and will require the team to make its machine learning models up to 10,000 times smaller than what they’re compressing for the Raspberry Pi 3.
“There is just no way to take a deep neural network, have it stay as accurate as it is today, and consume 10,000 less resources. You can’t do it,” said Dekel. “So, for that, we have a longer-term approach, which is to start from scratch. To start from math on the white board and invent a new set of machine-learning technologies and tools that are tailored for these resource-constrained platforms.”
To see what the team is currently working on, early previews can be downloaded from Microsoft’s GitHub depot here. It also provides previews of the compression techniques and training algorithms.