Enabling Incremental Training with Forward Pass for Edge Devices
This enables edge devices to adapt to changing environments with minimal hardware impact, though it is incremental as it builds on existing evolutionary strategies for training.
The paper tackles the problem of adapting deep neural networks on resource-constrained edge devices by introducing an evolutionary strategy method for incremental training without backpropagation, demonstrating it can retrain a quantized MNIST network after noise injection with less than 1% resource overhead on an FPGA.
Deep Neural Networks (DNNs) are commonly deployed on end devices that exist in constantly changing environments. In order for the system to maintain it's accuracy, it is critical that it is able to adapt to changes and recover by retraining parts of the network. However, end devices have limited resources making it challenging to train on the same device. Moreover, training deep neural networks is both memory and compute intensive due to the backpropagation algorithm. In this paper we introduce a method using evolutionary strategy (ES) that can partially retrain the network enabling it to adapt to changes and recover after an error has occurred. This technique enables training on an inference-only hardware without the need to use backpropagation and with minimal resource overhead. We demonstrate the ability of our technique to retrain a quantized MNIST neural network after injecting noise to the input. Furthermore, we present the micro-architecture required to enable training on HLS4ML (an inference hardware architecture) and implement it in Verilog. We synthesize our implementation for a Xilinx Kintex Ultrascale Field Programmable Gate Array (FPGA) resulting in less than 1% resource utilization required to implement the incremental training.