Energy-Efficient Neural Networks using Approximate Computation Reuse

Xun Jiao1,a, Vahideh Akhlaghi1,b, Yu Jiang2 and Rajesh K. Gupta1,c
1UC San Diego, CA, USA
axujiao@cs.ucsd.edu
bvakhlagh@cs.ucsd.edu
cgupta@cs.ucsd.edu
2School of Software, Tsinghua University, Beijing, China
jy1989@mail.tsinghua.edu.cn

ABSTRACT


As a problem-solving method, neural networks have shown broad success for medical applications, speech recognition, and natural language processing. Current hardware implementations of neural networks exhibit high energy consumption due to the intensive computing workloads. This paper proposes a methodology to design an energy-efficient neural network that effectively exploits computation reuse opportunities. To do so, we use Bloom filters (BFs) by tightly integrating them with computation units. BFs store and recall frequently occurring input patterns to reuse computations. We expand the opportunities for computation reuse by storing frequent input patterns specific to a given layer and using approximate pattern matching with hashing for limited data precision. This reconfigurable matching is key to achieving a "controllable approximation" for neural networks. To lower the energy consumption of BFs, we also use low-pow memristor arrays to implement BFs. Our experimental results show that for convolutional neural networks, the BFs enable 47.5% energy saving of multiplication operations, while incurring only 1% accuracy drop. While the actual savings will vary depending upon the extent of approximation and reuse, this paper presents a method for reducing computing workloads and improving energy efficiency.



Full Text (PDF)