Training Convolutional Neural Networks Based on Ternary Optical Processor
A novel platform and algorithms of Ternary Optical Computer (TOC) are proposed to training Convolutional Neural Network (CNN). It can significantly improve the concurrency and throughput of the training process of CNN. Reviewing the irrelevance data and the inherent parallelism module of the CNN, this paper discusses the preprocessing way of arbitrary number of two-dimensional data which include feature maps, convolutional kernels and mini-batches. Then strategies of parallel training of CNN based on the reconfigurable flexible arithmetic operator are proposed. All these arithmetic units are implemented by the optical Modified Signed Digit (MSD) adder and optical MSD multiplier, which are carry-free differing from the electronic computers. The massive data-bits of TOC are reconfigurable and redistributable, so fully parallel pipeline of the CNN can be sufficiently achieved. The computational complexity of the algorithms in time are analyzed. The result shows that TOC has great benefits comparing to the GPU and FPGA in concurrency, needed cycle and hardware resources resumed. This paper provides a new perspective to efficiently address computation-intensive and data-intensive issues.