A Stochastic Computational Multi-Layer Perceptron with Backward Propagation

被引:69
作者
Liu, Yidong [1 ]
Liu, Siting [1 ]
Wang, Yanzhi [2 ]
Lombardi, Fabrizio [3 ]
Han, Jie [1 ]
机构
[1] Univ Alberta, Dept Elect & Comp Engn, Edmonton, AB T6G 1H9, Canada
[2] Syracuse Univ, Elect Engn & Comp Sci Dept, Syracuse, NY 13244 USA
[3] Northeastern Univ, Dept Elect & Comp Engn, Boston, MA 02115 USA
基金
加拿大自然科学与工程研究理事会;
关键词
Stochastic computation; binary search; neural network; probability estimator; multi-layer perceptron; HARDWARE IMPLEMENTATION; NEURAL-NETWORK;
D O I
10.1109/TC.2018.2817237
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Stochastic computation has recently been proposed for implementing artificial neural networks with reduced hardware and power consumption, but at a decreased accuracy and processing speed. Most existing implementations are based on pre-training such that the weights are predetermined for neurons at different layers, thus these implementations lack the ability to update the values of the network parameters. In this paper, a stochastic computational multi-layer perceptron (SC-MLP) is proposed by implementing the backward propagation algorithm for updating the layer weights. Using extended stochastic logic (ESL), a reconfigurable stochastic computational activation unit (SCAU) is designed to implement different types of activation functions such as the tanh and the rectifier function. A triple modular redundancy (TMR) technique is employed for reducing the random fluctuations in stochastic computation. A probability estimator (PE) and a divider based on the TMR and a binary search algorithm are further proposed with progressive precision for reducing the required stochastic sequence length. Therefore, the latency and energy consumption of the SC-MLP are significantly reduced. The simulation results show that the proposed design is capable of implementing both the training and inference processes. For the classification of nonlinearly separable patterns, at a slight loss of accuracy by 1.32-1.34 percent, the proposed design requires only 28.5-30.1 percent of the area and 18.9-23.9 percent of the energy consumption incurred by a design using floating point arithmetic. Compared to a fixed-point implementation, the SC-MLP consumes a smaller area (40.7-45.5 percent) and a lower energy consumption (38.0-51.0 percent) with a similar processing speed and a slight drop of accuracy by 0.15-0.33 percent. The area and the energy consumption of the proposed design is from 80.7-87.1 percent and from 71.9-93.1 percent, respectively, of a binarized neural network (BNN), with a similar accuracy.
引用
收藏
页码:1273 / 1286
页数:14
相关论文
共 28 条
[1]  
Alaghi A., 2015, Proc. Great Lakes Symp. VLSI, P311, DOI DOI 10.1145/2742060.2743758
[2]  
[Anonymous], 2015, ARXIV PREPRINT ARXIV
[3]  
[Anonymous], 2015, DAC
[4]  
[Anonymous], P 53 ANN DES AUT C D
[5]  
[Anonymous], P 22 INT C ARCH SUPP
[6]  
[Anonymous], P NIPS WORKSH DEEP L
[7]   VLSI Implementation of Deep Neural Network Using Integral Stochastic Computing [J].
Ardakani, Arash ;
Leduc-Primeau, Francois ;
Onizawa, Naoya ;
Hanyu, Takahiro ;
Gross, Warren J. .
IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, 2017, 25 (10) :2688-2699
[8]   Stochastic neural computation I: Computational elements [J].
Brown, BD ;
Card, HC .
IEEE TRANSACTIONS ON COMPUTERS, 2001, 50 (09) :891-905
[9]   Stochastic neural computation II: Soft competitive learning [J].
Brown, BD ;
Card, HC .
IEEE TRANSACTIONS ON COMPUTERS, 2001, 50 (09) :906-920
[10]   A New Stochastic Computing Methodology for Efficient Neural Network Implementation [J].
Canals, Vincent ;
Morro, Antoni ;
Oliver, Antoni ;
Alomar, Miquel L. ;
Rossello, Josep L. .
IEEE TRANSACTIONS ON NEURAL NETWORKS AND LEARNING SYSTEMS, 2016, 27 (03) :551-564