2019
DOI: 10.1360/n112018-00291
|View full text |Cite
|
Sign up to set email alerts
|

Accelerating convolutional neural networks on FPGAs

Abstract: 深度学习这一概念在 2006 年被人提出, 通过增加人工神经网络的深度增加算法提取数据特征 的能力. 卷积神经网络 (convolutional neural network, CNN) 作为深度学习中被广泛采用的算法, 被 人们实现在大量的应用中, 例如人脸识别、车道检测、立体视觉匹配、语音识别 [1∼4] , 如图 1 所示. 但是卷积神经网络的计算量庞大, 这就要求设计与其计算量相对应的加速器. 图形处理器 (graphic processing units, GPU)、现场可编程逻辑门阵列 (field-programmable gate array, FPGA)、专用集成电 路 (application specific integrated circuit, ASIC) 是常用的神经网络加速器. 在这些加速器中, FPGA 因为它的高度并行计算、低功耗、可重复编程的特性而被人们广泛采用. 此外, 高层次综合 (high level synthesis, HLS) 为软件开发人员提供了良好的编程环境, 降低了 FPGA 的开发周期, 使得 FPGA 编程 更加有效率.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
4
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
2
1
1

Relationship

0
4

Authors

Journals

citations
Cited by 4 publications
(4 citation statements)
references
References 13 publications
0
4
0
Order By: Relevance
“…The CNN model imitates the structure of a biological vision system and is a feedforward artificial neural network. The core idea of CNN has three points: local perception, weight sharing, and pooling [ 13 ].…”
Section: Convolutional Neural Networkmentioning
confidence: 99%
See 1 more Smart Citation
“…The CNN model imitates the structure of a biological vision system and is a feedforward artificial neural network. The core idea of CNN has three points: local perception, weight sharing, and pooling [ 13 ].…”
Section: Convolutional Neural Networkmentioning
confidence: 99%
“…In the forward propagation calculation of single-layer network in CNN, we can estimate its time complexity by multiplication operations times [13]. In a convolutional layer, each convolutional kernel is a k × k filter, which is applied to feature maps with the size of w × h. e number of convolutional kernels is N in × N out ; therefore, the time complexity of a convolution layer can be expressed as…”
Section: Cnn Computational Complexity Analysismentioning
confidence: 99%
“…A CNN is mainly composed of the convolutional layer, the excitation layer, the pooling layer, and the full-connection layer. Most computations are operated in the convolutional layer [20] . In the computation of the convolutional layer, the convolution kernel moves continuously on the input feature image and performs a dot product in the overlap region to generate the input data of the next layer.…”
Section: Matrix Computation Instructionsmentioning
confidence: 99%
“…Since the training of convolutional neural network involves a large number of calculations, which is a great burden for the processor, we consider to carry out a large number of repeated numerical calculations on the coprocessor (such as GPU), while the CPU is only responsible for complex logic calculations and processing of coprocessor results, so as to improve the training speed of the network [5] . At the same time, the training and acceleration of convolutional neural networks on some domestic GPU platforms is still in the state of starting from scratch and has not reached a mature stage, and the calculation of back propagation is not as effective as other platforms.…”
Section: Introductionmentioning
confidence: 99%