Training Bit Fully Convolutional Network for Fast Semantic Segmentation
This addresses efficiency issues for real-time semantic segmentation applications, though it is incremental as it builds on existing quantization methods.
The paper tackles the problem of high computational and memory requirements in fully convolutional networks for semantic segmentation by proposing a Bit Fully Convolutional Network with low bit-width weights and activations, achieving a 7.8x speedup on CPU with comparable performance to 32-bit networks.
Fully convolutional neural networks give accurate, per-pixel prediction for input images and have applications like semantic segmentation. However, a typical FCN usually requires lots of floating point computation and large run-time memory, which effectively limits its usability. We propose a method to train Bit Fully Convolution Network (BFCN), a fully convolutional neural network that has low bit-width weights and activations. Because most of its computation-intensive convolutions are accomplished between low bit-width numbers, a BFCN can be accelerated by an efficient bit-convolution implementation. On CPU, the dot product operation between two bit vectors can be reduced to bitwise operations and popcounts, which can offer much higher throughput than 32-bit multiplications and additions. To validate the effectiveness of BFCN, we conduct experiments on the PASCAL VOC 2012 semantic segmentation task and Cityscapes. Our BFCN with 1-bit weights and 2-bit activations, which runs 7.8x faster on CPU or requires less than 1\% resources on FPGA, can achieve comparable performance as the 32-bit counterpart.