Efficient Recurrent Neural Networks using Structured Matrices in FPGAs
This work addresses efficiency issues for real-time RNN implementations in time-series applications, though it is incremental as it builds on prior pruning methods.
The paper tackled the performance and energy efficiency degradation in pruned RNNs by proposing block-circulant matrices for weight representation, achieving a 35.7x improvement in energy efficiency on FPGA deployments with negligible accuracy loss.
Recurrent Neural Networks (RNNs) are becoming increasingly important for time series-related applications which require efficient and real-time implementations. The recent pruning based work ESE suffers from degradation of performance/energy efficiency due to the irregular network structure after pruning. We propose block-circulant matrices for weight matrix representation in RNNs, thereby achieving simultaneous model compression and acceleration. We aim to implement RNNs in FPGA with highest performance and energy efficiency, with certain accuracy requirement (negligible accuracy degradation). Experimental results on actual FPGA deployments shows that the proposed framework achieves a maximum energy efficiency improvement of 35.7$\times$ compared with ESE.