訂閱
糾錯
加入自媒體

CVPR 2020:IR-Net,信息保留的二值神經(jīng)網(wǎng)絡(luò)

在CVPR 2020上,商湯研究院鏈接與編譯組和北京航空航天大學(xué)劉祥龍老師團隊提出了一種旨在優(yōu)化前后向傳播中信息流的實用、高效的網(wǎng)絡(luò)二值化新算法IR-Net。不同于以往二值神經(jīng)網(wǎng)絡(luò)大多關(guān)注量化誤差方面,本文首次從統(tǒng)一信息的角度研究了二值網(wǎng)絡(luò)的前向和后向傳播過程,為網(wǎng)絡(luò)二值化機制的研究提供了全新的視角。同時,該工作首次在ARM設(shè)備上進行了先進二值化算法效率驗證,顯示了IR-Net部署時的優(yōu)異性能和極高的實用性,有助于解決工業(yè)界關(guān)注的神經(jīng)網(wǎng)絡(luò)二值化落地的核心問題。

動 機

二值神經(jīng)網(wǎng)絡(luò)因其存儲量小、推理效率高而受到社會的廣泛關(guān)注 [1]。然而與全精度的對應(yīng)方法相比,現(xiàn)有的量化方法的精度仍然存在顯著的下降。

對神經(jīng)網(wǎng)絡(luò)的研究表明,網(wǎng)絡(luò)的多樣性是模型達到高性能的關(guān)鍵[2],保持這種多樣性的關(guān)鍵是:(1) 網(wǎng)絡(luò)在前向傳播過程中能夠攜帶足夠的信息;(2) 反向傳播過程中,精確的梯度為網(wǎng)絡(luò)優(yōu)化提供了正確的信息。二值神經(jīng)網(wǎng)絡(luò)的性能下降主要是由二值化的有限表示能力和離散性造成的,這導(dǎo)致了前向和反向傳播的嚴重信息損失,模型的多樣性急劇下降。同時,在二值神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程中,離散二值化往往導(dǎo)致梯度不準確和優(yōu)化方向錯誤。如何解決以上問題,得到更高精度的二值神經(jīng)網(wǎng)絡(luò)?這一問題被研究者們廣泛關(guān)注,本文的動機在于:通過信息保留的思路,設(shè)計更高性能的二值神經(jīng)網(wǎng)絡(luò)。

基于以上動機,本文首次從信息流的角度研究了網(wǎng)絡(luò)二值化,提出了一種新的信息保持網(wǎng)絡(luò)(IR-Net):(1)在前向傳播中引入了一種稱為Libra參數(shù)二值化(Libra-PB)的平衡標準化量化方法,最大化量化參數(shù)的信息熵和最小化量化誤差;(2) 在反向傳播中采用誤差衰減估計器(EDE)來計算梯度,保證訓(xùn)練開始時的充分更新和訓(xùn)練結(jié)束時的精確梯度。

IR-Net提供了一個全新的角度來理解二值神經(jīng)網(wǎng)絡(luò)是如何運行的,并且具有很好的通用性,可以在標準的網(wǎng)絡(luò)訓(xùn)練流程中進行優(yōu)化。作者使用CIFAR-10和ImageNet數(shù)據(jù)集上的圖像分類任務(wù)來評估提出的IR-Net,同時借助開源二值化推理庫daBNN進行了部署效率驗證。

方法設(shè)計

高精度二值神經(jīng)網(wǎng)絡(luò)訓(xùn)練的瓶頸主要在于訓(xùn)練過程中嚴重的信息損失。前向sign函數(shù)和后向梯度逼近所造成的信息損失嚴重影響了二值神經(jīng)網(wǎng)絡(luò)的精度。為了解決以上問題,本文提出了一種新的信息保持網(wǎng)絡(luò)(IR-Net)模型,它保留了訓(xùn)練過程中的信息,實現(xiàn)了二值化模型的高精度。

前向傳播中的Libra Parameter Binarization(Libra-PB)

在此之前,絕大多數(shù)網(wǎng)絡(luò)二值化方法試圖減小二值化操作的量化誤差。然而,僅通過最小化量化誤差來獲得一個良好的二值網(wǎng)絡(luò)是不夠的。因此,Libra-PB設(shè)計的關(guān)鍵在于:使用信息熵指標,最大化二值網(wǎng)絡(luò)前向傳播過程中的信息流。

根據(jù)信息熵的定義,在二值網(wǎng)絡(luò)中,二值參數(shù)Qx(x)的熵可以通過以下公式計算:

如果單純地追求量化誤差最小化,在極端情況下,量化參數(shù)的信息熵甚至可以接近于零。因此,Libra-PB將量化值的量化誤差和二值參數(shù)的信息熵同時作為優(yōu)化目標,定義為:

在伯努利分布假設(shè)下,當p=0.5時,量化值的信息熵取最大值。

因此,在Libra-PB通過標準化和平衡操作獲得標準化平衡權(quán)重,如圖2所示,在Bernoulli分布下,由Libra-PB量化的參數(shù)具有最大的信息熵。有趣的是,對權(quán)重的簡單變換也可以極大改善前向過程中激活的信息流。因為此時,各層的二值激活值信息熵同樣可以最大化,這意味著特征圖中信息可以被保留。

在以往的二值化方法中,為了使量化誤差減小,幾乎所有方法都會引入浮點尺度因子來從數(shù)值上逼近原始參數(shù),這無疑將高昂的浮點運算引入其中。在Libra-PB中,為了進一步減小量化誤差,同時避免以往二值化方法中代價高昂的浮點運算,Libra-PB引入了整數(shù)移位標量s,擴展了二值權(quán)重的表示能力。

因此最終,針對正向傳播的Libra參數(shù)二值化可以表示如下:

IR-Net的主要運算操作可以表示為:


       反向傳播中的Error Decay Estimator(EDE)

由于二值化的不連續(xù)性,梯度的近似對于反向傳播是不可避免的,這種對sign函數(shù)的近似帶來了兩種梯度的信息損失,包括截斷范圍外參數(shù)更新能力下降造成的信息損失,和截斷范圍內(nèi)近似誤差造成的信息損失。為了更好的保留反向傳播中由損失函數(shù)導(dǎo)出的信息,平衡各訓(xùn)練階段對于梯度的要求,EDE引入了一種漸進的兩階段近似梯度方法。

第一階段:保留反向傳播算法的更新能力。將梯度估計函數(shù)的導(dǎo)數(shù)值保持在接近1的水平,然后逐步將截斷值從一個大的數(shù)字降到1。利用這一規(guī)則,近似函數(shù)從接近Identity函數(shù)演化到Clip函數(shù),從而保證了訓(xùn)練早期的更新能力。

第二階段:使0附近的參數(shù)被更準確地更新。將截斷保持為1,并逐漸將導(dǎo)數(shù)曲線演變到階梯函數(shù)的形狀。利用這一規(guī)則,近似函數(shù)從Clip函數(shù)演變到sign函數(shù),從而保證了前向和反向傳播的一致性。

各階段EDE的形狀變化如圖3(c)所示。通過該設(shè)計,EDE減小了前向二值化函數(shù)和后向近似函數(shù)之間的差異,同時所有參數(shù)都能得到合理的更新。

實驗結(jié)果

作者使用了兩個基準數(shù)據(jù)集:CIFAR-10和ImageNet(ILSVRC12)進行了實驗。在兩個數(shù)據(jù)集上的實驗結(jié)果表明,IR-Net比現(xiàn)有的最先進方法更具競爭力。

Deployment Efficiency

為了進一步驗證IR-Net在實際移動設(shè)備中的部署效率,作者在1.2GHz 64位四核ARM Cortex-A53的Raspberry Pi 3B上進一步實現(xiàn)了IR-Net,并在實際應(yīng)用中測試了其真實速度。表5顯示,IR-Net的推理速度要快得多,模型尺寸也大大減小,而且IR-Net中的位移操作幾乎不會帶來額外的推理時間和存儲消耗。

Reference[1] Rastegari M, Ordonez V,Redmon J, et al. Xnor-net: Imagenet classification using binary convolutionalneural networks[C]//ECCV. Springer, Cham, 2016: 525-542.[2] Xie B, Liang Y, Song L.Diverse neural network learns true target functions[J]. arXiv preprintarXiv:1611.03131, 2016.

聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯
x
*文字標題:
*糾錯內(nèi)容:
聯(lián)系郵箱:
*驗 證 碼:

粵公網(wǎng)安備 44030502002758號