基于4 × 4卷积核的异步卷积加速算法研究
Asynchronous Convolution Acceleration Algorithm Based on 4 × 4 Convolution Kernels
DOI: 10.12677/SEA.2018.73019, PDF,    国家自然科学基金支持
作者: 程海波, 余旅莹, 李鹏飞, 张海涛, 何安平, 杨裔:兰州大学,信息科学与工程学院,甘肃 兰州
关键词: 卷积神经网络并行4 × 4卷积核Convolution Neural Network Parallel 4 × 4 Convolution Kernels
摘要: 由于基于软件端卷积神经网络的卷积运算难以满足现在的卷积神经网络对运算性能与功耗的要求,为了克服困难,本文设计了一种基于4 × 4卷积核的异步卷积加速算法来对卷积神经网络进行加速。采用Add Tree的形式来实现kernel矩阵和pic矩阵的乘加运算,1个Add Tree计算单元是1个4 × 4的卷积核与相同大小的图片矩阵的数据做乘加运算得到一个特征值,采用多个Add Tree的并行计算方式可以大幅度提升卷积计算速率。实验结果表明,该加速算法还有不受时钟频率限制的优点,可以工作在任何时钟频率下,且单个计算单元的计算速度也十分的快,计算一个特征值的时间大约在500 ns左右,相对于软件端的计算速率提升了10倍左右。
Abstract: Due to convolutional operations based on software-side convolutional neural networks, it is difficult to meet the computational performance and power consumption requirements of current convolutional neural networks. In order to overcome the difficulties, this paper designs an asyn-chronous convolution accelerating algorithm based on 4 × 4 convolutional kernel to accelerate the convolutional neural network. Using Add Tree to implement multiplication and addition of kernel matrix and pic matrix, a single Add Tree calculation unit is a 4 × 4 convolution kernel and the same size image matrix data is multiplied and added to obtain an eigenvalue. Parallel computing using multiple Add Tree can greatly increase the convolution calculation rate. The experimental results show that the acceleration algorithm has the advantage of not being limited by the clock frequency and can work at any clock frequency, and the calculation speed of a single computing unit is also very fast. The time to calculate an eigenvalue is about 500 ns. Compared with the calculation speed on the software side, it has increased by about 10 times.
文章引用:程海波, 余旅莹, 李鹏飞, 张海涛, 何安平, 杨裔. 基于4 × 4卷积核的异步卷积加速算法研究[J]. 软件工程与应用, 2018, 7(3): 160-167. https://doi.org/10.12677/SEA.2018.73019

参考文献

[1] 杨薇. 卷积神经网络的FPGA并行结构研究[J]. 数字技术与应用, 2015(12): 51.
[2] 王羽. 基于FPGA的卷积神经网络应用研究[D]: [硕士学位论文]. 广州: 华南理工大学, 2016.
[3] 蒋帅. 基于卷积神经网络的图像识别[D]: [硕士学位论文]. 长春: 吉林大学, 2017.
[4] 卢宏涛, 张秦川. 深度卷积神经网络在计算机视觉中的应用研究综述[J]. 数据采集与处理, 2016, 31(1): 1-17.
[5] 刘进锋. 一种简洁高效的加速卷积神经网络的方法[J]. 科学技术与工程, 2014, 14(33): 240-244.
[6] 余奇. 基于FPGA的深度学习加速器设计与实现[D]: [硕士学位论文]. 合肥: 中国科学技术大学, 2016.
[7] 方睿, 刘加贺, 薛志辉, 等. 卷积神经网络的FPGA并行加速方案设计[J]. 计算机工程与应用, 2015, 51(8): 32-36.
[8] 陆志坚. 基于FPGA的卷积神经网络并行结构研究[D]: [博士学位论文]. 哈尔滨: 哈尔滨工程大学, 2013.
[9] 魏少军, 刘雷波, 尹首一. 可重构计算处理器技术[J]. 中国科学: 信息科学, 2012(12): 1559-1576.
[10] 廖红艳. 寒武纪: 打造人工智能芯片[J]. 环球科学, 2016(9): 20.
[11] Yu, Z.J., Ma, D., Yan, X.L., et al. (2017) FPGA-Based Accelerator for Convolutional Network. Computer Engineering, 43, 109-114, 119.
[12] 叶浪. 基于卷积神经网络的人脸识别研究[D]: [硕士学位论文]. 南京: 东南大学, 2015.
[13] 钟楠, 刘明, 李圣辰. 基于FPGA的卷积神经网络加速方案设计[J]. 2017.
[14] 凡保磊. 卷积神经网络的并行化研究[D]: [硕士学位论文]. 郑州: 郑州大学, 2013.