中文引用格式: 項(xiàng)浩斌,楊瑞敏,吳文濤,等. 基于動(dòng)態(tài)自適應(yīng)計(jì)算引擎的MobileNetV3網(wǎng)絡(luò)加速器設(shè)計(jì)[J]. 電子技術(shù)應(yīng)用,2025,51(1):8-17.
英文引用格式: Xiang Haobin,Yang Ruimin,Wu Wentao,et al. Design of MobileNetV3 network accelerator based on dynamic adaptive computing engine[J]. Application of Electronic Technique,2025,51(1):8-17.
引言
近年來(lái),卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)在圖像分類[1]、目標(biāo)檢測(cè)[2]、立體視覺(jué)[3]等方面得到應(yīng)用。為了追求更高的分類精度,CNN結(jié)構(gòu)變得越來(lái)越復(fù)雜,導(dǎo)致密集的計(jì)算和頻繁的內(nèi)存訪問(wèn),因此將CNN部署在功耗和資源有限的邊緣設(shè)備上面臨著巨大挑戰(zhàn)[4-5]。
最近研究表明,大規(guī)模CNN具有高度的誤差彈性,模型參數(shù)和操作具有相當(dāng)大的冗余[6-7]。因此,為了部署在資源受限的邊緣設(shè)備上,相關(guān)學(xué)者提出模型輕量化的技術(shù),如輕量化網(wǎng)絡(luò)設(shè)計(jì)、剪枝[8]和量化[9]等,在保持精度的前提下降低計(jì)算復(fù)雜度。其中,MobileNetV3是一種特征提取能力較強(qiáng)的輕量化網(wǎng)絡(luò),它用深度可分離卷積(Depthwise Separable Convolution,DSC)取代傳統(tǒng)的計(jì)算密集型標(biāo)準(zhǔn)卷積(Standard Convolution,SC),通過(guò)解耦通道維度和空間維度之間的相關(guān)性,顯著減少模型的參數(shù)量,但是針對(duì)高速實(shí)時(shí)任務(wù),仍需進(jìn)一步優(yōu)化。
為了應(yīng)對(duì)這一挑戰(zhàn),基于圖形處理單元(Graphics Processing Unit,GPU)、現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array,F(xiàn)PGA)和專用集成電路(Application Specific Integrated Circuit,ASIC)的專用神經(jīng)網(wǎng)絡(luò)加速器已經(jīng)成為研究熱點(diǎn)[10]。盡管ASIC加速器在性能方面具有優(yōu)勢(shì),但設(shè)計(jì)和實(shí)現(xiàn)時(shí)間較長(zhǎng)。FPGA在執(zhí)行相同計(jì)算負(fù)載時(shí)能耗較低,比傳統(tǒng)的中央處理器(Central Processing Unit,CPU)和GPU更具節(jié)能優(yōu)勢(shì)。因此,近年來(lái)FPGA在實(shí)現(xiàn)CNN硬件加速器[11-15]方面得到廣泛應(yīng)用。然而,MobileNetV3基于DSC的架構(gòu)在內(nèi)存帶寬方面的瓶頸限制了加速器的性能,導(dǎo)致基于DSC的加速器處理單元(Processing Element,PE)效率較低。為了實(shí)現(xiàn)DSC進(jìn)一步加速,Liu等人[16]設(shè)計(jì)了深度卷積(Depthwise Convolution,DWC)和點(diǎn)卷積(Pointwise Convolution,PWC)兩種模式的動(dòng)態(tài)DSC加速器。但該研究中PE配置極其復(fù)雜,并需要對(duì)逐層數(shù)據(jù)流進(jìn)行大量的內(nèi)存訪問(wèn),導(dǎo)致加速效果有限。Light-OPU[17]開發(fā)了高效的軟硬件協(xié)同加速系統(tǒng),在輕量級(jí)和標(biāo)準(zhǔn)卷積運(yùn)算之間共享計(jì)算引擎,同時(shí)在DSC層計(jì)算時(shí),保持較低資源利用率。現(xiàn)有的大多數(shù)基于DSC的加速器都采用了平鋪策略來(lái)適應(yīng)芯片上存儲(chǔ)有限的許多特征映射。然而在推理過(guò)程中,這種策略產(chǎn)生大量的片外數(shù)據(jù)傳輸和數(shù)據(jù)處理,導(dǎo)致延遲和能耗的增加[18-19] 。
此外,為了有效實(shí)現(xiàn)基于DSC的CNN的算法,人們提出了許多特定的硬件加速器。Shao等人[20]和Xie等人[21]利用層間特征壓縮技術(shù)或模型網(wǎng)絡(luò)的稀疏性來(lái)減少片上存儲(chǔ)的消耗,而Hsieh 等人[22]和Mrazek等人[23]則通過(guò)減少片上存儲(chǔ)的消耗來(lái)減輕計(jì)算資源的壓力。然而這些加速器大多只關(guān)注可重構(gòu)性和靈活性有限的標(biāo)準(zhǔn)卷積層,這使得它們不能在不同的應(yīng)用程序和場(chǎng)景中使用新出現(xiàn)的卷積變體。目前基于DSC的加速器采用統(tǒng)一的引擎架構(gòu),實(shí)現(xiàn)層間和層內(nèi)并行的靈活控制[24-25],但是這些設(shè)計(jì)對(duì)硬件要求極高,不適用于大型網(wǎng)絡(luò)和資源受限的嵌入式平臺(tái)。
為了解決上述問(wèn)題,本文提出一種基于動(dòng)態(tài)自適應(yīng)計(jì)算引擎硬件加速器,旨在優(yōu)化和改進(jìn)基于DSC卷積神經(jīng)網(wǎng)絡(luò),從而實(shí)現(xiàn)對(duì)MobileNetV3網(wǎng)絡(luò)的加速。首先,設(shè)計(jì)了局部區(qū)域感知卷積的流水線硬件推理架構(gòu),通過(guò)對(duì)局部區(qū)域進(jìn)行感知,更加精確地定位和處理卷積操作,減少計(jì)算量和數(shù)據(jù)傳輸。其次,提出了高度可配置的動(dòng)態(tài)自適應(yīng)計(jì)算引擎,可以根據(jù)模型結(jié)構(gòu)和計(jì)算需求進(jìn)行靈活的優(yōu)化和配置,以提高計(jì)算引擎的利用率和效率,避免了固定配置下的資源浪費(fèi)和性能瓶頸。最后,采用全局自適應(yīng)的點(diǎn)卷積方法,減少內(nèi)存訪問(wèn)次數(shù),提高計(jì)算效率,減少數(shù)據(jù)傳輸和處理的開銷。
本文詳細(xì)內(nèi)容請(qǐng)下載:
http://ihrv.cn/resource/share/2000006275
作者信息:
項(xiàng)浩斌1,楊瑞敏1,吳文濤1,李春雷1,董燕1,2
(1.中原工學(xué)院 信息與通信工程學(xué)院,河南 鄭州 450007;
2.電子科技大學(xué) 自動(dòng)化工程學(xué)院,四川 成都 610000)