文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.201207
中文引用格式: 張旭欣,張嘉,李新增,等. 二值VGG卷積神經(jīng)網(wǎng)絡(luò)加速器優(yōu)化設(shè)計(jì)[J].電子技術(shù)應(yīng)用,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.
0 引言
深度卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)已經(jīng)成為了當(dāng)前計(jì)算機(jī)視覺系統(tǒng)中最有前景的圖像分析方法之一。
近年來,隨著Binary-Net、Dorefa-Net、ABC-Net等[1-3]低精度量化神經(jīng)網(wǎng)絡(luò)的深入研究,越來越多的研究集中于在FPGA硬件中構(gòu)建定制的加速器結(jié)構(gòu),實(shí)現(xiàn)CNN的加速[4]?;贔PGA的低精度量化神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)主要可分為兩類:流架構(gòu)[5-6]和層架構(gòu)[7-8]。其中,由于流架構(gòu)實(shí)現(xiàn)了流水線化,每個(gè)階段都可以獨(dú)立處理輸入且可以針對(duì)CNN逐層設(shè)計(jì)并優(yōu)化相應(yīng)層的加速運(yùn)算單元,因此擁有更高的吞吐率和更低的延遲以及內(nèi)存帶寬,但其邏輯資源等消耗也相當(dāng)可觀。因此,現(xiàn)有的基于流架構(gòu)實(shí)現(xiàn)的二值神經(jīng)網(wǎng)絡(luò)加速器研究大多是針對(duì)32×32尺度MNIST數(shù)據(jù)集等小尺度的圖像輸入。而實(shí)際應(yīng)用中更多使用如448×448尺度的YOLO、224×224尺度的VGG等作為骨干網(wǎng)絡(luò),一方面,大尺度輸入的網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)量往往較大(以VGG為例,其參數(shù)量大約500 MB),高端FPGA的片上內(nèi)存容量也僅32.1 Mb左右,這對(duì)FPGA實(shí)現(xiàn)CNN加速將是資源瓶頸。即使采用低精度量化策略,F(xiàn)PGA有限的片上內(nèi)存資源仍捉襟見肘。另一方面,雖然各層運(yùn)算單元可以得到特定優(yōu)化,然而由于網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)限制,往往各層網(wǎng)絡(luò)很難實(shí)現(xiàn)計(jì)算周期的匹配,從而造成推斷性能難以進(jìn)一步提高。針對(duì)基于流架構(gòu)的二值卷積神經(jīng)網(wǎng)絡(luò)加速器設(shè)計(jì)存在的資源與性能的瓶頸,本文以224×224尺度的VGG-11網(wǎng)絡(luò)加速器設(shè)計(jì)為例,重點(diǎn)研究了大尺度的二值卷積神經(jīng)網(wǎng)絡(luò)硬件加速器設(shè)計(jì)、優(yōu)化及驗(yàn)證,主要工作如下:
(1)針對(duì)大尺度流架構(gòu)的二值VGG卷積神經(jīng)網(wǎng)絡(luò)加速器設(shè)計(jì)存在的資源與性能瓶頸,提出了網(wǎng)絡(luò)模型優(yōu)化和流水線優(yōu)化的方法。
(2)設(shè)計(jì)并優(yōu)化了224×224尺度的基于流架構(gòu)的二值VGG卷積神經(jīng)網(wǎng)絡(luò)加速器。實(shí)驗(yàn)表明基于FPGA平臺(tái)實(shí)現(xiàn)了81%的準(zhǔn)確率,219.9 FPS的識(shí)別速度,相較于同類型的加速器識(shí)別速度最高提升了33倍。
本文詳細(xì)內(nèi)容請(qǐng)下載:http://ihrv.cn/resource/share/2000003365
作者信息:
張旭欣,張 嘉,李新增,金 婕
(上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海201600)