Font Size: a A A

Accelerating Large-scale Convolutional Neural Network Based On Convolution In Blocks

Posted on:2018-12-06Degree:MasterType:Thesis
Country:ChinaCandidate:Q Q ZhangFull Text:PDF
GTID:2348330518996897Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Convolutional neural network need not to process the input image or only need a small amount of preprocessing and weight sharing,local connection, downsampling are its three characteristics. Therefore,convolutional neural network attracts more and more researchers'attention. At present, convolutional neural network has been successfully applied to a number of areas such as handwritten digital recognition. In this paper, the study is based on the problem that the convolution neural network has a complex network structure, a large number of network training parameters and a large number of network layers, which leads to slow training and learning process. The study is of great significance.Firstly, a handwritten digital recognition system based on convolutional neural network is designed and realized in this paper. The handwritten digital recognition system is based on C++. Compared with other handwritten digital recognition systems, the system has the advantage of a clear structure, flexible configuration and fast execution speed.Moreover, a new optimization algorithm that convolution in blocks for large-scale convolutional neural network is proposed to solve the problem that the current image pixels are getting higher and higher. The current open source framework 'caffe' for deep learning uses convolution unrolling to optimize the convolution process of the convolutional neural network. The process of convolution unrolling is to transform the input feature maps and the convolution kernels into different matrices, and then use matrix multiplication to realize convolution. However, when the image input is so large, the matrix size is too large that data used in the program cannot be transferred into cache at one-time and cache misses seriously consequentially. Based on the analysis of three-level cache mechanism, the algorithm that convolution in blocks is proposed, and the realization principle, the mechanism and the concrete realization of convolution in blocks are described in detail. The convolutional neural network whose input image size is 914*914 and the convolutional kernel size is 15*15,it's convolution speed in the first convolution layer improved about 50% (Under the experimental platform, Intel(R) Xeon(R)CPU(2.30GHZ), the operating system is CENTOS. The first-level cache capacity is 32KB, the second-level cache capacity is 256KB, and the third-level cache capacity is 15360KB).
Keywords/Search Tags:convolutional neural network, handwritten digital recognition, cache, convolution in blocks
PDF Full Text Request
Related items