Adaptive Random Forests for Energy-Efficient Inference on Microcontrollers
Random Forests (RFs) are widely used Machine Learning models in low-power
embedded devices, due to their hardware friendly operation and high accuracy on
practically relevant tasks. The accuracy of a RF often increases with the
number of internal weak learners (decision trees), but at the cost of a
proportional increase in inference latency and energy consumption. Such costs
can be mitigated considering that, in most applications, inputs are not all
equally difficult to classify. Therefore, a large RF is often necessary only
for (few) hard inputs, and wasteful for easier ones. In this work, we propose
an early-stopping mechanism for RFs, which terminates the inference as soon as
a high-enough classification confidence is reached, reducing the number of weak
learners executed for easy inputs. The early-stopping confidence threshold can
be controlled at runtime, in order to favor either energy saving or accuracy.
We apply our method to three different embedded classification tasks, on a
single-core RISC-V microcontroller, achieving an energy reduction from 38% to
more than 90% with a drop of less than 0.5% in accuracy. We also show that our
approach outperforms previous adaptive ML methods for RFs.