Adaptive Random Forest on FPGA

Author(s): Ridder, Frank (2023)

Abstract:
In recent years, machine learning has been increasingly applied to a wide range of real-time applications, with classification tasks playing a critical role in enabling intelligent decision-making. However, the phenomenon of concept drift, where the underlying data distribution changes over time, presents a challenge to maintaining the accuracy of machine learning models. The Adaptive Random Forest (ARF) algorithm addresses this issue by using a combination of multiple Hoeffding Trees and a drift detector to adapt to concept drift. However, as training a forest of trees can be slow, acceleration is needed for real-time use of the algorithm. This work presents the first FPGA implementation of the ARF algorithm, focusing on achieving high hardware efficiency, scalability, and adaptability for different datasets. Our customizable design incorporates various levels of parallelism, resource sharing, and pipelining. Evaluated using four different datasets, the design demonstrates accuracy scores within 0.3% to 10% of GPU ARF implementations. Moreover, our implementation showcases a 1.6x-7x speedup compared to state-of-the-art GPU solutions and a 4x-495x speedup compared to CPU implementations, making it a compelling choice for real-time classification tasks across various applications.

Document(s):

94973_Ridder Frank_MA_EEMCS.pdf