《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 二值VGG卷積神經網絡加速器優(yōu)化設計
二值VGG卷積神經網絡加速器優(yōu)化設計
2021年電子技術應用第2期
張旭欣,張 嘉,李新增,金 婕
上海工程技術大學 電子電氣工程學院,上海201600
摘要: 基于FPGA的二值卷積神經網絡加速器研究大多是針對小尺度的圖像輸入,而實際應用主要以YOLO、VGG等大尺度的卷積神經網絡作為骨干網絡。通過從網絡拓撲、流水線等層面對卷積神經網絡硬件進行優(yōu)化設計,從而解決邏輯資源以及性能瓶頸,實現輸入尺度更大、網絡層次更深的二值VGG神經網絡加速器。采用CIFAR-10數據集對基于FPGA的VGG卷積神經網絡加速器優(yōu)化設計進行驗證,實驗結果表明系統(tǒng)實現了81%的識別準確率以及219.9 FPS的識別速度,驗證了優(yōu)化方法的有效性。
中圖分類號: TN402;TP183
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.201207
中文引用格式: 張旭欣,張嘉,李新增,等. 二值VGG卷積神經網絡加速器優(yōu)化設計[J].電子技術應用,2021,47(2):20-23.
英文引用格式: Zhang Xuxin,Zhang Jia,Li Xinzeng,et al. Optimization design of binary VGG convolutional neural network accelerator[J]. Application of Electronic Technique,2021,47(2):20-23.
Optimization design of binary VGG convolutional neural network accelerator
Zhang Xuxin,Zhang Jia,Li Xinzeng,Jin Jie
College of Electronic and Electrical Engineering,Shanghai University of Engineering Science,Shanghai 201600,China
Abstract: Most of the existing researches on accelerators of binary convolutional neural networks based on FPGA are aimed at small-scale image input, while the applications mainly take large-scale convolutional neural networks such as YOLO and VGG as backbone networks. The hardware of convolutional neural network is optimized and designed from the two aspects including the network topology and pipeline stage, so as to solve the bottleneck of logic resources and improve the performance of the binary VGG network accelerator. CIFAR-10 dataset resized to 224×224 was used to verify the optimized design of VGG convolutional neural network accelerator based on FPGA. Experimental results showed that the system achieved 81% recognition accuracy and 219.9 FPS recognition speed,which verified the effectiveness of the optimization method.
Key words : optimization design;binary convolutional neural network;FPGA accelerator

0 引言

    深度卷積神經網絡(Convolutional Neural Network,CNN)已經成為了當前計算機視覺系統(tǒng)中最有前景的圖像分析方法之一。

    近年來,隨著Binary-Net、Dorefa-Net、ABC-Net等[1-3]低精度量化神經網絡的深入研究,越來越多的研究集中于在FPGA硬件中構建定制的加速器結構,實現CNN的加速[4]。基于FPGA的低精度量化神經網絡實現主要可分為兩類:流架構[5-6]和層架構[7-8]。其中,由于流架構實現了流水線化,每個階段都可以獨立處理輸入且可以針對CNN逐層設計并優(yōu)化相應層的加速運算單元,因此擁有更高的吞吐率和更低的延遲以及內存帶寬,但其邏輯資源等消耗也相當可觀。因此,現有的基于流架構實現的二值神經網絡加速器研究大多是針對32×32尺度MNIST數據集等小尺度的圖像輸入。而實際應用中更多使用如448×448尺度的YOLO、224×224尺度的VGG等作為骨干網絡,一方面,大尺度輸入的網絡結構參數量往往較大(以VGG為例,其參數量大約500 MB),高端FPGA的片上內存容量也僅32.1 Mb左右,這對FPGA實現CNN加速將是資源瓶頸。即使采用低精度量化策略,FPGA有限的片上內存資源仍捉襟見肘。另一方面,雖然各層運算單元可以得到特定優(yōu)化,然而由于網絡拓撲結構限制,往往各層網絡很難實現計算周期的匹配,從而造成推斷性能難以進一步提高。針對基于流架構的二值卷積神經網絡加速器設計存在的資源與性能的瓶頸,本文以224×224尺度的VGG-11網絡加速器設計為例,重點研究了大尺度的二值卷積神經網絡硬件加速器設計、優(yōu)化及驗證,主要工作如下:

    (1)針對大尺度流架構的二值VGG卷積神經網絡加速器設計存在的資源與性能瓶頸,提出了網絡模型優(yōu)化和流水線優(yōu)化的方法。

    (2)設計并優(yōu)化了224×224尺度的基于流架構的二值VGG卷積神經網絡加速器。實驗表明基于FPGA平臺實現了81%的準確率,219.9 FPS的識別速度,相較于同類型的加速器識別速度最高提升了33倍。




本文詳細內容請下載:http://ihrv.cn/resource/share/2000003365




作者信息:

張旭欣,張  嘉,李新增,金  婕

(上海工程技術大學 電子電氣工程學院,上海201600)

此內容為AET網站原創(chuàng),未經授權禁止轉載。