?

面向存算一體芯片的非極大值抑制算法的量化部署*

2023-11-12 15:16集美大學計算機工程學院蘭寶星湯龍楊吳仕龍王世偉黃斌
數字技術與應用 2023年10期
關鍵詞:極大值一體芯片

集美大學計算機工程學院 蘭寶星 湯龍楊 吳仕龍 王世偉 黃斌

近年來,一種基于神經網絡的非極大值抑制算法取得了媲美傳統非極大值抑制算法的結果,并因其主要采用卷積算子和全連接算子而有望部署于存算一體芯片上。然而,目前以新型阻變存儲器(RRAM)為代表的存算一體芯片大多只能支持5 比特以下的位寬,基于神經網絡的非極大值抑制算法能否在低位寬的存算一體芯片上獲取同等性能仍待研究。本文運用量化感知訓練和后訓練量化等方法,旨在探究低位寬對基于神經網絡的非極大值抑制算法的影響。采用5 比特位寬的量化感知訓練方法,在MS COCO 數據集的行人檢測任務(Person Detection)數據集下,mAP 為62.71;在MS COCO 多類別(multi-class)檢測任務下,mAP 和multiclass_ap 分別為40.66 和44.86,精度損失較小,為在低位寬存算一體芯片上部署目標檢測算法奠定了基礎。

在2008 年,惠普實驗室發現了一種被稱為記憶電阻器(或“憶阻器”)的新型電路元件,它可以通過電壓調整摻雜物和無摻雜物的比例改變阻值。由憶阻器組成的交叉陣列可以根據歐姆定律和基爾霍夫定律實現大規模的矩陣乘法運算,因此適合于以密集矩陣運算為核心的神經網絡算法。由交叉陣列和其他部件組成存算一體芯片的特點是可以組成具有計算能力的存儲電路,進而真正實現“存儲與計算一體”,這從根本上解決了馮諾依曼架構下大量的來回搬運數據導致的能量浪費問題。

存算一體芯片具有優于傳統的存算分離芯片的能耗比優勢。Aayush Ankit 等人研究了新型的存內計算芯片與傳統的存算分離芯片兩種不同方案的性能和功耗差異的對比,發現存內計算芯片相比于GPU 的能量消耗降低了10 ~50倍左右,吞吐量和單位能量下的算力也優于Google 公司的TPU 芯片[1]。Yao P 等人將圖片分類網絡完全部署至存內計算芯片中,其能量效率達到11.014TOP/s/W[2]。因此,存算一體芯片對于諸如目標檢測的邊緣端AI 應用具有巨大的意義,能夠在理論上達到更高性能和更低功耗的目標。

傳統的目標檢測算法在部署到邊緣端AI 芯片時,普遍采用CNN 網絡的方法。CNN 網絡通常以卷積運算為核心來提取圖像中的信息,而卷積核在提取局部特征時會不可避免地出現冗余特征并可能產生多個候選目標框。因此,通常還需要使用非極大值抑制算法(Non-Maximum Suppression 或NMS)進一步消除冗余的候選目標框后才能得到最終的目標框。目前工業界常用的NMS 算法為貪心NMS 算法,但其算法實現是串行的,算法復雜度較高,無法部署至適用于密集矩陣運算的存內計算芯片,因此并不能滿足在存算一體芯片上端到端部署的需求。

目標檢測算法通常分為兩個階段:第一個階段是提取圖像特征并生成存在冗余的候選目標框(該階段所采用的主干網絡適合部署于存算一體芯片);第二個階段是用NMS 算法來去除冗余的目標框得到最終的目標框。如圖1 所示展示了傳統NMS 部署方式和基于存算一體芯片的NMS 部署方式的差異。目前工業界普遍使用的貪心NMS 不適合部署于存算一體芯片,因此需要通過a 方案中的傳統AI 芯片(一般由Memory、CPU 和GPU 構成)完成處理。該類型處理器先將冗余目標框存儲到Memory 中,CPU 從Memory 中讀取數據并與GPU 交互進行數據處理,最后將處理的目標框保存到Memory,待數據處理完畢后輸出目標框。在b 方案中,存算一體芯片先通過DAC 將數字信息轉化為電信號,再通過憶阻器交叉對電信號進行計算得到結果,最后通過ADC 將輸出的電信號轉化為數字信息,最后輸出目標框結果。

圖1 傳統NMS 和基于存算一體芯片的NMS 的差異Fig.1 Differences between traditional NMS and NMS based on compute-in-memory chip

J Hosang 等人提出了一種被稱為“Learnable NMS”策略的GossipNet 網絡[3],采用神經網絡學習每個候選目標框和其他候選目標框之間的特征關系,進而重新計算每個候選目標框的置信度。該網絡核心在于通過對候選目標框進行特殊的算法處理,制作包含相鄰候選目標框之間結構化特征關系的人工特征。GossipNet 網絡再通過對人工特征進行學習和計算,得到每個候選目標框和其他候選目標框之間的特征關系。GossipNet 網絡設計了一種能夠懲罰“Double Detection”的損失函數,能夠對多個檢測框進行聯合處理。實驗表明“Learnable NMS”策略效果和Greedy NMS 算法相當,而且在某些情況下優于Greedy NMS 算法。由于GossipNet 的網絡結構主要是基于密集矩陣運算,因而更加有利于部署在存算一體芯片架構上。但是,目前以新型阻變存儲器(RRAM)為代表的存內計算芯片的單個憶阻器最多能支持5 比特的位寬,而傳統的神經網絡數據位寬通常是8~32 比特,所以如何在降低GossipNet 網絡數據位寬的同時保持和原位寬較為接近的檢測精度方法至關重要。

本研究面向基于神經網絡的非極大值抑制算法在存內計算芯片上的量化部署展開,在Pytorch 框架上采用量化感知訓練和后訓練量化等方法,探究基于神經網絡的非極大值抑制算法在存內計算芯片下超低位寬的表現。實驗結果發現,對于MS COCO 數據集下的行人檢測任務(Person Detection)數據集,采用5 比特量化的神經網絡非極大值抑制模型取得mAP 為62.71;對于MS COCO多類別(multi-class)檢測任務,采用5 比特量化的神經網絡非極大值抑制模型取得的mAP 和multiclass_ap 分別為40.66 和44.86。這個性能比較接近全精度的版本,對于將Learnable NMS 部署到一個工業級的低位寬的存算一體芯片具有重要的指導意義。

1 相關工作

1.1 NMS

在目標檢測中通常使用的是基于CNN 網絡的目標檢測算法,其通過卷積運算為核心來提取圖像中的信息?;贑NN 網絡的目標檢測算法對同一個目標物體提取特征時,不可避免地出現冗余特征并可能產生多個目標候選框,此時就需要使用非極大值抑制算法的進一步處理,消除冗余的候選目標框后,才能得到最終的目標框。

常見的非極大值抑制算法分為兩類:一類是無需學習的非極大值抑制算法,另一類是基于學習的非極大值抑制算法。在無需學習的非極大值抑制算法中,傳統的Greedy NMS 算法基于一個固定的距離閾值進行貪婪聚類。具體而言,該算法會貪婪地選取得分高的檢測結果,并刪除那些與其重疊面積超過閾值的相鄰結果,從而在召回率和精準率之間取得權衡。然而對于IoU 大于或等于NMS 閾值的相鄰框,Greedy NMS 算法的做法是將其得分暴力置零,這使得該算法在處理存在遮擋的場景時表現不佳[4]。Bharat Singh 等提出了Soft NMS 方法,相較于傳統Greedy NMS 算法會刪除所有與最高分值的邊界框大于IoU 閾值的框,該方法則采用降低這些框的置信度的方式進行處理[5]。Soft NMS 方法在處理低重疊的邊界框時保留得更好。Chengcheng Ning 等人提出了一種名為Weighted NMS 的算法,該算法認為,傳統的Greedy NMS 每次迭代所選出的最大得分框并非一定具備精確定位的特點,同時一些冗余的邊界框也有可能具有良好的定位效果。因此,Weighted NMS 方法在處理過程中采用了與傳統的直接剔除機制不同的策略,即對邊界框的坐標進行加權平均,其中加權平均的對象包括得分最大的邊界框自身以及與其IoU 大于或等于NMS閾值的相鄰框[6]。Zheng Z 等人提出了DIoU-NMS 算法,該算法認為,若相鄰框的中心點距離當前的最大得分框的中心點越近,則其更有可能是冗余框。該算法采用了DIoU 替代IoU 作為NMS 的評判準則。從直觀的角度來說,加入了距離的信息,有利于在密集的場景中做更好的NMS[7]。Zheng Z 等人提出Cluster NMS,該方法主要旨在彌補Fast NMS 的性能下降,期望利用Pytorch 的GPU矩陣運算進行NMS,同時又使得性能保持與Greedy NMS相同,此外,筆者還在其中加入了很多其他操作,如得分懲罰機制(SPM)、加中心點距離(DIoU)、框的加權平均法(Weighted NMS)[8]。

關于基于學習的非極大值抑制算法,Hosang J 等人提出Conv NMS,其主要考慮到,如果將IoU 閾值設定得過高,則可能會導致抑制不夠充分,而如果將IoU 閾值設定得過低,則有可能將多個真陽合并到一起。為了解決這個問題,其設計了一個卷積網絡,將具有不同重疊閾值的Greedy NMS 結果進行組合,并通過學習的方法獲得最佳的輸出[9]。J Hosang 等人提出了Learnable NMS 方法,該方法主要考慮目標檢測中遇到的高遮擋密集場景,通過聯合相鄰的預測框,向網絡提供必要的信息,讓網絡能夠確認一個物體是否被多次檢測,并設計了一個損失函數來懲罰網絡,使其學習到一個物體只生成一個高分預測框的特性。借助這個分數來達到NMS去重的目的,并使每個目標對應一個預測框。在PETS和COCO 數據集的高遮擋場景下,Learnable NMS 的AP 明顯優于Greedy NMS,在高遮擋的場景下表現更好,并且GossipNet 非常適合處理各種類型的對象類[3]。Jiang B 等人提出了IoU-Net 方法,該方法提出了IoUguided NMS,即在NMS 階段引入定位得分作為排序指標,而不是采用傳統的分類得分。相較于Greedy NMS,該方法實際上就是用網絡預測的IoU 替代了原來計算的IoU,Jiang B 等人認為,通過上述網絡訓練出來的IoU是包含了定位信息的,可以緩解沖突IoU 的定位信息缺失問題[10]。Liu S 等人提出Adaptive-NMS,該方法通過一個附屬的網絡來學習密集程度,根據密度值和閾值的對比實時修改NMS 的實現。該方法針對行人檢測這一特殊的應用場景進行了優化,使得在人群密集的地方設置較大的NMS 閾值,而人群稀疏的地方設置較小的NMS 閾值[11]。

傳統的Greedy NMS 并不適合部署在存算一體的芯片上,所以本研究在以存算一體芯片作為目標檢測系統載體時,采用了一種被稱為“Learnable NMS”的基于神經網絡的非極大值抑制算法,該算法由J Hosang等人提出。與傳統的Greedy NMS 不同的是,傳統的NMS 依靠一個固定的閾值來刪除那些IoU 過大且分數較低的預測框。而GossipNet 網絡設計了一種能夠懲罰“Double Detection”的損失函數,對多個檢測框進行聯合處理,且設計中不再出現IoU 的計算,有利于存算一體架構。

1.2 量化方面的研究

量化的目的是通過壓縮神經網絡中的參數數值位數,例如權重、激活值等,來實現對神經網絡的壓縮。不論是多值量化、三值量化還是二值量化,它們的核心操作都是將高精度的浮點數數值位數合理地壓縮到低位的定點數數值位數,從而在減少網絡性能的損失情況下,實現對模型的大幅度壓縮。這種方式可以以很小的精度損失為代價,方便在邊緣端上部署模型。

Gong 等人[12]采用向量量化來壓縮深度卷積網絡,該方法將權重分組且對各組的向量量化,從而減少權重數量。Wu 等人采用K-means 聚類量化的策略實現參數共享,從而實現不存儲所有的權重值,而只是存儲作為權重索引值的K 個質心,減少了模型大小[13]。Gupta 等人在基于隨機舍入的CNN 訓練中采用了16 位定點數表示,發現在幾乎沒有分類精度損失的情況下,采用低精度定點運算進行深度神經網絡訓練可以顯著減少計算資源的使用和模型的內存占用[14]。Han 等人進一步提出了一種方法,基于權值共享對權值進行量化,然后使用剪枝和哈夫曼編碼的方法,從而縮減模型大小[15]。Choi 等人證明了利用Hessian 權重來衡量網絡權值重要性的可行性,并提出了一種聚類參數,用于最小化Hessian 加權量化誤差[16]。

Vanhoucke 等人提出將權重值量化至8 位能夠既保證最小的精度損失,又顯著提升推理速度[17]。Jacob 等人提出一種關于在訓練時保留32 位全精度存儲方式,而在前向推理時對權重值與激活值進行8 位量化的量化框架,實現了整數算術的高效推理[18]。

Zhu 等人提出了8 位模擬的量化方法,為解決模擬量化時帶來的不穩定因素影響和精度損失問題,該方法考慮到學習率對誤差的敏感性,并通過對學習率進行調節和利用方向自適應的梯度階段算法進行了解決[19]。

需要注意的是,二值神經網絡是一種極端的網絡量化方法。在一般情況下,網絡模型的所有參數都以32 位單精度浮點數的形式存儲,而二值網絡中,參數和特征圖激活值分別被量化為+1 和-1,每個值僅占用1 比特內存。

Liu 等人提出DSQ 方法,它是一種可微的軟性量化策略,將全精度參數映射到低比特空間,并且保留了參數值的近似,能夠通過在反向傳播過程中獲得更加精確的梯度來彌補二值網絡在前向傳播過程中出現的量化誤差[20]。

Lin 等人提出一種對權重進行隨機二值化處理的壓縮方法,該方法不僅能夠減少浮點運算次數,還具有一定的正則化效果,減小了精度損失[21]。

Zhang 等人提出一種可習得的量化器,將模型訓練與量化器相結合,采取逐層優化量化策略,在訓練過程中逐層優化量化模型,從而提升模型精度[22]。Cai 等人提出一種基于半波高斯量化的近似方法,在二值化權重的基礎上,近似處理ReLu 激活函數,從而更好地完成二值化網絡中的反向傳播,減小精度損失[23]。

量化在目標檢測領域內的應用也頗為深入。谷歌提出了一種8 位的量化方法[24],顯著提高了MobileNets[25]在ImageNet 分類[26]和COCO 目標檢測[27]上的延遲和精度的權衡。Wei 等人提出了知識蒸餾和量化來對非常小的CNN 進行目標檢測[28]。Zhuang 等人提出用全精度輔助模塊訓練低精度網絡,以解決訓練時梯度傳播的困難[29]。Jacob 等人提出了一種僅用整數算子的量化方案,并在具有8 位精度的COCO 數據集進行目標檢測[30]。Li 等人觀察到在進行量化訓練中進行微調的不穩定性,提出了三種方案[31]。然而,這些工作對網絡結構和量化算法的設計都施加了額外的約束,從而限制了它們的性能。相比之下,Chen 等人提出了一種具有全整數算子操作的精確量化目標檢測方案,完全擺脫了對浮點數的依賴。該方法用定點操作代替浮點操作,包括卷積層、歸一化層和殘差連接,從而實現了更好的性能[32]。目前還沒有適合于目標檢測算法的Learnable NMS 的量化方法研究。

2 技術方案

2.1 整體方案

為了達到在存算一體設備上超低功耗運行的目標,本研究需要在保持GoosipNet 網絡效果的情況下盡可能地壓縮網絡參數,進而減少憶阻器的需求量,從而降低芯片尺寸和運行能耗。

在接下來的研究中將采用量化感知訓練和后訓練量化中的非對稱量化對Learnable NMS 進行量化,以期在實際的模型部署到存算一體芯片前,GossipNet 網絡在量化后的不同位寬下的表現中,分析出更好的優化方法以提高量化后的效果,達到和原網絡相近甚至超過原網絡的性能。

如圖2 所示,可知Learnable NMS 和存算芯片的關系。圖2 中Software 部分為Learnable NMS 核心的Block 部分,該Block 在GossipNet 網絡中是一個序列,負責提取深層次的組合信息。

圖2 Learnable NMS 在存算一體芯片上的部署Fig.2 Deployment of Learnable NMS on compute-in-memory chip

圖2 中的Per-detection Computations 部分中,最左邊的紅色矩形框為Block 的輸入,輸入為0 矩陣或上一Block的輸出,通過制作Pairwise Context 后,將上一個Block的輸出先經過FC 整合,再提取出每一個預測框的相關信息,相鄰預測框再從中取出和自己有關的信息和人工特征重新組合得到Pairwise Context,最后通過全連接層的映射和最大池化等操作完成深層次的組合信息地提取。

Block 序列輸出的組合信息在GossipNet 網絡中的全連接層中得到新的預測框分數。同時,網絡期望每一個高分數的預測框都能匹配一個真實框。為了實現這個目的,網絡通過損失函數懲罰將多個對應同一個目標的預測框中的其中一個設置為高分,其他設置為低分。這樣,在高分匹配的同時,也實現了一個目標對應一個預測框這一目的,從而去除冗余的預測框。

圖2 中Hardware 部分為存算一體芯片,通過DAC將數字信息轉化為電信號,通過憶阻器交叉陣列對電信號進行計算得到結果,再通過ADC 將輸出的電信號轉化為數字信息,最后輸出目標框結果。

2.2 量化感知訓練

量化感知訓練讓網絡在量化過程中進行訓練,從而讓網絡參數能更好地適應量化帶來的信息損失。在對Learnable NMS 進行量化感知訓練時,本研究使用了Round 函數,但該函數無法進行訓練,因為其幾乎每一處的梯度都為0,導致反向傳播的梯度也變成 0。因此,本研究采用STE 方法[33],直接將卷積層的梯度回傳到之前的權重上,以完成網絡權重的更新,使得量化訓練可以正常進行。

如圖3 所示,STE 核心的思想就是權重參數初始化為Float,并將權重經過將原來的連續的參數映射成整數帶入到網絡進行前向傳播計算,從而計算網絡的輸出。在反向傳播時,直接對原來權重中的Float 參數進行更新,從而完成對整個網絡的更新。通過這樣的方式,就可以更新權重,使量化訓練可以正常進行。

圖3 Learnable NMS 的量化感知訓練示意圖Fig.3 Schematic diagram of quant aware training for Learnable NMS

簡單而言,因為量化之后的數據是一個離散的方程,我們無法計算它的導數,所以STE 方法的目的就是在反向傳播時繞過量化函數,使得梯度能夠順利地從輸出層傳遞到輸入層,簡單粗暴地直接把輸出的導數作為了對輸入的導數,其前向傳播和反向傳播的相關關系如式(1)、式(2)所示:

其中,式(1)中表示本研究中將浮點數量化映射成整數的范圍,式(2)表示使用在梯度更新時的因為量化函數無法求導,而使用近似估計來進行梯度更新的一種數學方法。

2.3 后訓練量化

后訓練量化即在不重新訓練網絡的情況下,獲取已訓練好的模型,將其訓練過的32bit 神經網絡直接轉換為定點計算的網絡。

以均勻量化中的非對稱量化為例,根據如式(3)、式(4)、式(5)所示放縮關系來對Learnable NMS 后訓練量化。

其中,式(3)計算了量化前的浮點數映射到量化后的定點數時的比例關系xscale,、分別表示量化前的浮點數的最大值和最小值,、表示量化后定點數的最大值和最小值,式(4)中表示0 經過量化對應的定點數,稱作零點,式(5)表示量化后定點數的值。

3 實驗設計

3.1 實驗運行環境

本實驗硬件采用GPU 型號為G200eR2,CPU 采用6核E5-2603 v3,頻率為2.60GHz,軟件配置采用Linux系統,在Pytorch1.9.1 框架、CUDA10.2 等基礎上完成實驗。Pytorch1.9.1 框架擁有強大的深度學習處理包,是進行模型量化時的一個很好的選擇。

3.2 實驗方法

首先,本次研究采用COCO 數據集進行實驗,用于訓練目標檢測模型的子集COCO_2014_train 訓練集進行訓練得到模型,再采用量化中的量化感知訓練和后訓練量化操作將模型進行量化。

然后,本研究分別采用量化感知訓練和后訓練量化中的非對稱量化方法。在實驗中,對單獨的COCO 數據集中的coco_person 類別和coco_muticlass 分別進行測試,在測試過程中,通過設定block=16,以mAP、multiclass_ap為評價指標,探究在block 等于16 下,GossipNet 網絡在不同位寬(bit=8、7、6、5、4、3、2)的表現。

最后,本研究再將訓練量化好的模型在COCO 數據集中包含80 個類別的物體子集coco_2014_minival 測試集上進行測試。隨著位寬的減少,統計mAP 和multiclass_ap 的性能損失。

3.3 基于COCO:Person Detection 模型的量化

本實驗對coco_person 這個類別進行量化感知訓練,對GossipNet 網絡分別進行量化位寬為8bit、7bit、6bit、5bit 量化感知訓練。對于4bit 及4bit 以下的位寬采取后訓練量化的策略,經過多次迭代量化,可以得到對應不同位寬的模型在測試集上測試得到的量化感知訓練和后訓練量化下最佳的性能效果的結果。

如圖4 所示為量化感知訓練與后訓練量化在位寬為8bit 至5bit 的量化性能對比,由圖4 可知,對GossipNet進行量化感知訓練后,位寬為6 ~8bit 的性能表現甚至超過原網絡的性能,而5bit 的性能相較原網絡的性能只出現了微小的性能損失。但是后訓練量化在5 ~8bit 的位寬下相較原網絡的性能損失較大,且量化后性能表現與量化感知訓練方法相比表現較差。因為4bit 及4bit 以下的位寬容易出現量化感知訓練失效的情況,所以對于4bit 及4bit 以下的位寬,本研究基于16bit 預訓練模型進行后訓練量化。

圖4 量化感知訓練與后訓練量化最佳性能表現的對比Fig.4 Comparison of performance between quantizationaware training and post-training quantization for optimal quantized performance

如圖5 所示,基于量化感知訓練的16bit 模型再進行后訓練量化得4bit 和3bit 的表現相較于原網絡性能損失較大,在2bit 的位寬下,相較原網絡性能損失了約40%。結合圖4 和圖5 可知量化感知訓練和后訓練量化相結合的量化策略,在3bit 及3bit 以上都有較為不錯的表現。

圖5 基于16bit 預訓練模型后訓練量化的性能表現Fig.5 Performance of post-training quantization based on 16-bit pretrained models

3.4 基于COCO:multi-class 模型的量化

本研究對COCO_muticlass 進行量化感知訓練,并在coco_2014_minival 的測試集上進行測試。本實驗對multi-class 進行量化感知訓練,對GossipNet 網絡分別進行量化位寬為8bit、7bit、6bit、5bit、4bit 量化感知訓練。對于3bit 及3bit 以下的位寬采取后訓練量化的策略,經過多次迭代量化,可以得到對應不同位寬的模型在測試集上測試得到的量化感知訓練和后訓練量化下最佳的性能效果的結果。

如圖6 所示,隨著位寬降低,量化感知訓練的mAP性能表現在5bit 及5bit 以上的位寬下優于后訓練量化。且相較于原網絡性能而言損失較小,性能較為接近,但是在4bit 時量化感知訓練,已經出現了大幅度的精度損失,而后訓練量化在4bit 時效果明顯優于量化感知訓練。因為3bit 及3bit 以下的位寬容易出現量化感知訓練失效的情況。所以對于3bit 及3bit 以下的位寬,本研究采取后訓練量化。

圖6 量化感知訓練與后訓練量化mAP 最佳性能表現的對比Fig.6 Comparison of performance between quantizationaware training and post-training quantization for mAP optimal performance

如圖7 所示,后訓練量化在3bit 時,相較于原位寬精度損失較大,在2bit 時性能損失相較于原網絡損失了約50%。

圖7 后訓練量化在3bit 至2bit 下mAP 的性能表現Fig.7 Performance of post-training quantization for mAP at 3-bit to 2-bit levels

如圖8、圖9 所示,隨著位寬的降低,從8bit 至4bit 量化后的網絡精度相較于原位寬,出現了較小的精度損失。量化感知訓練的multiclass_ap 性能表現在8bit 至5bit 時要優于后訓練量化,而在4bit 時前者效果則弱于后者。在3bit 和2bit 下的性能表現也明顯弱于原網絡效果。

圖8 量化感知訓練與后訓練量化multiclass_ap 最佳性能表現的對比Fig.8 Comparison of performance between quantizationaware training and post-training quantization for multiclass_ap optimal performance

圖9 后訓練量化在3bit 至2bit 下multiclass_ap 的性能表現Fig.9 Performance of post-training quantization for multiclass_ap at 3-bit to 2-bit levels

4 結論

本研究通過對GossipNet 網絡進行量化感知訓練和后訓練量化,發現在量化為5bit 及5bit 以上的位寬時,可以獲得較好的性能表現。在基于COCO 的Person Detection 模型的量化中,5bit 及5bit 以上的位寬的量化感知訓練結果性能損失都較小,甚至在6bit 及6bit 的量化感知訓練中得到的性能效果略優于原網絡。而在基于COCO multi-class 模型的量化中,5bit 及5bit 以上的效果性能損失較小,與原網絡性能相近,而從4bit 開始,性能損失則較大。本研究表明,通過運用模型量化的手段,分別對Learnable NMS 進行量化感知訓練和后訓練量化,探究了GossipNet 網絡在不同量化方式和不同位寬場景下的具體表現,從而為面向最多只能支持5bit 位寬的新型阻變存儲器(RRAM)為代表的存算一體芯片部署提供了關鍵依據。

引用

[1] ANKIT A,HAJJ I E,CHALAMALASETTI S R,et al.PUMA:A Programmable Ultra-efficient Memristor-based Accelerator for Machine Learning Inference[C]//Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems,2019:715-731.

[2] YAO P,WU H,GAO B,et al.Fully Hardware-implemented Memristor Convolutional Neural Network[J].Nature,2020,577(7792):641-646.

[3] HOSANG J,BENENSON R,SCHIELE B.Learning Nonmaximum suppression[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2017:4507-4515.

[4] GIRSHICK R.Fast r-cnn[C]//Proceedings of the IEEE International Conference on Computer Vision,2015:1440-1448.

[5] BODLA N,SINGH B,CHELLAPPA R,et al.Soft-NMS-improving Object Detection with one Line of Code[C]//Proceedings of the IEEE International Conference on Computer Vision,2017:5561-5569.

[6] NING C,ZHOU H,SONG Y,et al.Inception Single Shot Multibox Detector for Object detection[C]//2017 IEEE International Conference on Multimedia & Expo Workshops (ICMEW),IEEE,2017:549-554.

[7] ZHENG Z,WANG P,LIU W,et al.Distance-IoU Loss:Faster and Better Learning for Bounding Box Regression[C]//Proceedings of the AAAI Conference on Artificial Intelligence,2020,34(07):12993-13000.

[8] ZHENG Z,WANG P,REN D,et al.Enhancing Geometric Factors in Model Learning and Inference for Object Detection and Instance Segmentation[J].IEEE Transactions on Cybernetics,2021,52(8):8574-8586.

[9] HOSANG J,BENENSON R,SCHIELE B.A Convnet for Nonmaximum Suppression[C]//Pattern Recognition:38th German Conference,GCPR 2016,Hannover,Germany,September12-15,2016,Proceedings 38.Springer International Publishing,2016:192-204.

[10] JIANG B,LUO R,MAO J,et al.Acquisition of Localization Confidence for Accurate Object Detection[C]//Proceedings of the European Conference on Computer Vision(ECCV),2018:784-799.

[11] LIU S,HUANG D,WANG Y.Adaptive nms:Refining Pedestrian Detection in a Crowd[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition,2019:6459-6468.

[12] GONG Y,LIU L,YANG M,et al.Compressing Deep Convolutional Networks Using Vector Quantization[J].2014.

[13] WU J,LENG C,WANG Y,et al.Quantized Convolutional Neural Networks for Mobile Devices[C]//Proceedings of the IEEE conference on computer vision and pattern recognition,2016:4820-4828.

[14] GUPTA S,AGRAWAL A,GOPALAKRISHNAN K,et al.Deep Learning with Limited Numerical Precision[C]//International Conference on Machine Learning.PMLR,2015:1737-1746.

[15] HAN S,MAO H,DALLY W J.Deep Compression:Compressing Deep Neural Networks with Pruning,Trained Quantization and Huffman Coding[J].2015.

[16] CHOI Y,EL-KHAMY M,LEE J.Towards the Limit of Network Quantization[J].2016.

[17] VANHOUCKE V,SEN0R A,MAO M.Improving the Speed of Neural Networks on CPUs[J].Proc Deep Learning and Unsupervised Feature Learning Workshop,2011:1-8.

[18] JACOB B,KLIGYS S,CHEN B,et al.Quantization and Training of Neural Networks for Efficient Integer-arithmetic-only Inference[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2018:2704-2713.

[19] ZHU F,GONG R,YU F,et al.Towards Unified Int8 Training for Convolutional Neural Network[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition,2020:1969-1979.

[20] GONG R,LIU X,JIANG S,et al.Differentiable Soft Quantization:Bridging Full-precision and Low-bit Neural Networks[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision,2019:4852-4861.

[21] LIN Z,COURBARIAUX M,MEMISEVIC R,et al.Neural Networks with Few Multiplications[J].2015.

[22] ZHANG D,YANG J,YE D,et al.Lq-nets:Learned Quantization for Highly Accurate and Compact Deep Neural Networks[C]//Proceedings of the European Conference on Computer Vision(ECCV),2018:365-382.

[23] CAI Z,HE X,SUN J,et al.Deep Learning with Low Precision by Half-wave Gaussian Quantization[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2017:5918-5926.

[24] KRISHNAMOORTHI R.Quantizing Deep Convolutional Networks for Efficient Inference:A whitepaper[J].2018.

[25] HOWARD A G,ZHU M,CHEN B,et al.Mobilenets:Efficient Convolutional Neural Networks for Mobile Vision Applications[J].2017.

[26] DENG J,DONG W,SOCHER R,et al.Imagenet:A Largescale Hierarchical Image Database[C]//2009 IEEE Conference on Computer Vision and Pattern Recognition.Ieee,2009:248-255.

[27] LIN T Y,MAIRE M,BELONGIE S,et al.Microsoft coco:Common Objects in Context[C]//Computer Vision-ECCV 2014:13th European Conference,Zurich,Switzerland,September 6-12,2014,Proceedings,Part V 13.Springer International Publishing,2014:740-755.

[28] WEI Y,PAN X,QIN H,et al.Quantization Mimic:Towards Very Tiny Cnn for Object Detection[C]//Proceedings of the European Conference on Computer Vision (ECCV),2018:267-283.

[29] ZHUANG B,LIU L,TAN M,et al.Training Quantized Neural Networks with a Full-precision Auxiliary Module[C]//Proceedings of the IEEE/CVF conference on Computer Vision and Pattern Recognition,2020:1488-1497.

[30] JACOB B,KLIGYS S,CHEN B,et al.Quantization and Training of Neural Networks for Efficient Integer-arithmetic-only Inference[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2018:2704-2713.

[31] LI R,WANG Y,LIANG F,et al.Fully Quantized Network for Object Detection[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition,2019:2810-2819.

[32] CHEN P,LIU J,ZHUANG B,et al.Aqd:Towards Accurate Quantized Object Detection[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition,2021:104-113.

[33] BENGIO Y,LéONARD N,COURVILLE A.Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation[J].2013.

猜你喜歡
極大值一體芯片
法制教育融入初中政治課的“四維一體”法初探
農旅一體 激情米蘿
芯片測試
傳祺GS4200T手自一體豪華版
基于小波模極大值理論的勵磁涌流新判據研究
基于經驗模態分解的自適應模極大值去噪方法
多通道采樣芯片ADS8556在光伏并網中的應用
行人檢測中非極大值抑制算法的改進
偵鑒一體的弊端與改造
74HC164芯片的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合