Accelerator of convolution neural networks based on FPGA

Recent years, with the development of Convolution Neural Networks (CNN), machine learning has achieved great success in many areas such as speech recognition, vision classifications, face recognition and other kinds of pattern recognitions. In general, CNN is a kind of deep learning, which imitates...

Full description

Bibliographic Details
Main Author: Yu, Guohao
Other Authors: Goh Wang Ling
Format: Thesis
Language:English
Published: 2017
Subjects:
Online Access:http://hdl.handle.net/10356/72593
_version_ 1826126044887777280
author Yu, Guohao
author2 Goh Wang Ling
author_facet Goh Wang Ling
Yu, Guohao
author_sort Yu, Guohao
collection NTU
description Recent years, with the development of Convolution Neural Networks (CNN), machine learning has achieved great success in many areas such as speech recognition, vision classifications, face recognition and other kinds of pattern recognitions. In general, CNN is a kind of deep learning, which imitates the way human beings process the signal from nature. The algorithm of CNN mainly includes two parts: multiplication and summation, which is also called a convolution layer. Multiple convolution layers are involved to implement the whole CNN, on each layer, the raw data or the result from the former layer is used to do convolution with the filter of which the factors are gained from the software training. After several layers processing, the final output signal justifies the samples like the voice or images and give people a feedback or send an instruction to other systems. Traditional CNNs usually operate on Central Processing Unit (CPU) or Graphics Processing Unit (GPU); however, as the functions become more and more complex and requirements of performance including power consumption and speed are increasingly high, a new way to realise it on Field-Programmable Gate Array (FPGA) or Application Specific Integrated Circuit (ASIC) appeared. It also indicates that CNN is going to be more portable in the future. This dissertation is to provide a general used accelerator of CNN on FPGA; meanwhile a new structure is proposed to balance the performance and the usage of the resources. This work operates on an evaluation board ZYNQ-7 ZC702 of Xilinx. A CNN structure is mapped on the FPGA device, the Acorn RISC Machine (ARM) core is used to control the camera to capture the images and the data flow in this whole system.
first_indexed 2024-10-01T06:46:18Z
format Thesis
id ntu-10356/72593
institution Nanyang Technological University
language English
last_indexed 2024-10-01T06:46:18Z
publishDate 2017
record_format dspace
spelling ntu-10356/725932023-07-04T16:04:03Z Accelerator of convolution neural networks based on FPGA Yu, Guohao Goh Wang Ling School of Electrical and Electronic Engineering DRNTU::Engineering::Electrical and electronic engineering Recent years, with the development of Convolution Neural Networks (CNN), machine learning has achieved great success in many areas such as speech recognition, vision classifications, face recognition and other kinds of pattern recognitions. In general, CNN is a kind of deep learning, which imitates the way human beings process the signal from nature. The algorithm of CNN mainly includes two parts: multiplication and summation, which is also called a convolution layer. Multiple convolution layers are involved to implement the whole CNN, on each layer, the raw data or the result from the former layer is used to do convolution with the filter of which the factors are gained from the software training. After several layers processing, the final output signal justifies the samples like the voice or images and give people a feedback or send an instruction to other systems. Traditional CNNs usually operate on Central Processing Unit (CPU) or Graphics Processing Unit (GPU); however, as the functions become more and more complex and requirements of performance including power consumption and speed are increasingly high, a new way to realise it on Field-Programmable Gate Array (FPGA) or Application Specific Integrated Circuit (ASIC) appeared. It also indicates that CNN is going to be more portable in the future. This dissertation is to provide a general used accelerator of CNN on FPGA; meanwhile a new structure is proposed to balance the performance and the usage of the resources. This work operates on an evaluation board ZYNQ-7 ZC702 of Xilinx. A CNN structure is mapped on the FPGA device, the Acorn RISC Machine (ARM) core is used to control the camera to capture the images and the data flow in this whole system. Master of Science (Electronics) 2017-08-29T07:19:32Z 2017-08-29T07:19:32Z 2017 Thesis http://hdl.handle.net/10356/72593 en 81 p. application/pdf
spellingShingle DRNTU::Engineering::Electrical and electronic engineering
Yu, Guohao
Accelerator of convolution neural networks based on FPGA
title Accelerator of convolution neural networks based on FPGA
title_full Accelerator of convolution neural networks based on FPGA
title_fullStr Accelerator of convolution neural networks based on FPGA
title_full_unstemmed Accelerator of convolution neural networks based on FPGA
title_short Accelerator of convolution neural networks based on FPGA
title_sort accelerator of convolution neural networks based on fpga
topic DRNTU::Engineering::Electrical and electronic engineering
url http://hdl.handle.net/10356/72593
work_keys_str_mv AT yuguohao acceleratorofconvolutionneuralnetworksbasedonfpga