Back to Search Start Over

FloatSD: A New Weight Representation and Associated Update Method for Efficient Convolutional Neural Network Training

Authors :
Mu-Kai Sun
Po-Chen Lin
Tzi-Dar Chiueh
Chuking Kung
Source :
IEEE Journal on Emerging and Selected Topics in Circuits and Systems. 9:267-279
Publication Year :
2019
Publisher :
Institute of Electrical and Electronics Engineers (IEEE), 2019.

Abstract

In this paper, we propose a floating-point signed digit (FloatSD) format for convolutional neural network (CNN) weight representation and its update method during CNN training. The number of non-zero digits in a weight can be as few as two during the forward and backward passes of the CNN training, reducing the convolution multiplication to addition of two shifted multiplicands (partial products). Furthermore, the mantissa field and the exponent field of neuron activations and gradients during training are also quantized, leading to floating-point numbers represented by eight bits. We tested the FloatSD method using three popular CNN applications, namely, MNIST, CIFAR-10, and ImageNet. These three CNNs were trained from scratch using the conventional 32-bit floating-point arithmetic and the FloatSD weight representation, 8-bit floating-point numbers for activations and gradients, and half-precision 16-bit floating-point accumulation. We obtained FloatSD accuracy results very close to or even better than those trained in 32-bit floating-point arithmetic. Finally, the proposed method not only significantly reduces the computational complexity for CNN training but also achieves memory capacity and bandwidth saving of about three quarters, demonstrating its effectiveness in the low-complexity implementation of CNN training.

Details

ISSN :
21563365 and 21563357
Volume :
9
Database :
OpenAIRE
Journal :
IEEE Journal on Emerging and Selected Topics in Circuits and Systems
Accession number :
edsair.doi...........a62c552d302da0c065819f97727505e5