TY - JOUR
T1 - An Energy-Efficient Bayesian Neural Network Implementation Using Stochastic Computing Method
AU - Jia, Xiaotao
AU - Gu, Huiyi
AU - Liu, Yuhao
AU - Yang, Jianlei
AU - Wang, Xueyan
AU - Pan, Weitao
AU - Zhang, Youguang
AU - Cotofana, Sorin
AU - Zhao, Weisheng
PY - 2023
Y1 - 2023
N2 - The robustness of Bayesian neural networks (BNNs) to real-world uncertainties and incompleteness has led to their application in some safety-critical fields. However, evaluating uncertainty during BNN inference requires repeated sampling and feed-forward computing, making them challenging to deploy in low-power or embedded devices. This article proposes the use of stochastic computing (SC) to optimize the hardware performance of BNN inference in terms of energy consumption and hardware utilization. The proposed approach adopts bitstream to represent Gaussian random number and applies it in the inference phase. This allows for the omission of complex transformation computations in the central limit theorem-based Gaussian random number generating (CLT-based GRNG) method and the simplification of multipliers as and operations. Furthermore, an asynchronous parallel pipeline calculation technique is proposed in computing block to enhance operation speed. Compared with conventional binary radix-based BNN, SC-based BNN (StocBNN) realized by FPGA with 128-bit bitstream consumes much less energy consumption and hardware resources with less than 0.1% accuracy decrease when dealing with MNIST/Fashion-MNIST datasets.
AB - The robustness of Bayesian neural networks (BNNs) to real-world uncertainties and incompleteness has led to their application in some safety-critical fields. However, evaluating uncertainty during BNN inference requires repeated sampling and feed-forward computing, making them challenging to deploy in low-power or embedded devices. This article proposes the use of stochastic computing (SC) to optimize the hardware performance of BNN inference in terms of energy consumption and hardware utilization. The proposed approach adopts bitstream to represent Gaussian random number and applies it in the inference phase. This allows for the omission of complex transformation computations in the central limit theorem-based Gaussian random number generating (CLT-based GRNG) method and the simplification of multipliers as and operations. Furthermore, an asynchronous parallel pipeline calculation technique is proposed in computing block to enhance operation speed. Compared with conventional binary radix-based BNN, SC-based BNN (StocBNN) realized by FPGA with 128-bit bitstream consumes much less energy consumption and hardware resources with less than 0.1% accuracy decrease when dealing with MNIST/Fashion-MNIST datasets.
KW - Bayesian neural network (BNN)
KW - energy efficiency
KW - Gaussian random number generator
KW - stochastic computing (SC)
UR - http://www.scopus.com/inward/record.url?scp=85159792815&partnerID=8YFLogxK
U2 - 10.1109/TNNLS.2023.3265533
DO - 10.1109/TNNLS.2023.3265533
M3 - Article
AN - SCOPUS:85159792815
SN - 2162-237X
SP - 1
EP - 11
JO - IEEE Transactions on Neural Networks and Learning Systems
JF - IEEE Transactions on Neural Networks and Learning Systems
ER -