999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于均方誤差的8位深度神經網絡量化

2022-05-23 07:24:42馮鵬程田生偉龔國良
計算機工程與設計 2022年5期
關鍵詞:模型

馮鵬程,禹 龍,田生偉,耿 俊,龔國良

(1.新疆大學 信息科學與工程學院,新疆 烏魯木齊 830046;2.新疆大學 網絡中心, 新疆 烏魯木齊 830046; 3.新疆大學 軟件學院,新疆 烏魯木齊 830008; 4.新疆大學 軟件工程技術重點實驗室,新疆 烏魯木齊 830008; 5.中國科學院半導體研究所 高速電路與神經網絡實驗室,北京 100083)

0 引 言

網絡壓縮能夠有效減少深度神經網絡中的參數量并加快模型推理速度。目前常見的網絡壓縮方法有網絡剪枝、矩陣分解、網絡結構設計與搜索、量化。考慮到邊緣設備部署的簡易性,工業界常用量化作為實際網絡部署的網絡壓縮方法。在量化方法中,低比特定點量化和整數量化更加契合硬件設計,英偉達的TensorRT中詳細闡述了低比特量化的流程,提出了8位作為計算資源消耗與模型性能的平衡點,由該方法得到低比特量化模型精度損失在1%~2%左右,然而該方法對激活函數的量化消耗大量的計算資源。本文提出的量化方法致力于對深度神經網絡中的所有參數量化,使用QMSE+USP的方法尋找最合適的量化系數并且恢復網絡損失的性能。該過程僅需使用一定批次的無標記數據進行前向推理,不涉及網絡重訓練,最終得到的量化模型與原始的32位浮點網絡模型精度損失在0.5%以內。本文的主要貢獻如下:

(1)分析了imagenet網絡中權重的分布,并且針對該分布提出了一種基于量化均方誤差(QMSE)為指標,選取量化系數的量化方案,具體分析了量化操作中四舍五入與截斷操作對網絡性能的影響。

(2)針對小型網絡量化后的性能損失,提出了一種更新統計參數(USP)的方法,在不進行重訓練的情況下,實驗結果表明,QMSE+USP的方法能夠將模型精度損失控制在0.5%以內。

1 相關研究

現有的深度學習中,模型的訓練與測試均采用單精度浮點數完成,它們在圖像分類、模式識別、目標檢測等各領域取得極大成功的同時,伴隨著的是越來越深的卷積累積和大量的參數,由此,探索高效模型的研究從未停止。采用低精度表示[1-4]來壓縮神經網絡模型得到了廣泛的研究,一些研究采用三值甚至二值化[5-9]的方式將模型進行極端量化,將模型中的浮點乘加運算轉化為加法運算,極大壓縮了模型的大小,并且使得網絡推理速度大大的提高,因此帶來的性能損失也是不可避免的。Jacob等[10]提出了一種僅采用整數計算進行網絡推理的量化方法,在可接受的精度損失情況下,完成了對Resnet50、Inception v3、MobileNet v1的8bit量化。對網絡進行定點量化[11-15]比較切合實際硬件部署的需求,在取得高精度的同時,優化了模型的推理速度。Lu Q等[16]找到一個在給定的硬件規范下可以實現的最高精度的量化體系結構。Nagel M等[17]利用激活函數的尺度等方差特性來均衡網絡中的權重范圍。Krishnamoorthi R[18]對常見的深度神經網絡進行了8 bit量化,將指數移動平均應用于激活量化,動態計算激活的界限,這需要遍歷整個數據集,計算非常昂貴。Meller E等[19]通過因式分解的方法降低模型量化引起的網絡性能退化。為了保證模型性能,相關研究進行量化時沒有完全量化模型(如第一層與分類層保持浮點),使其難以應用于深度神經網絡的加速器芯片部署;另一方面,相關研究需要通過重訓練來降低量化后的精度損失,這給算法的芯片化部署與產品開發帶來不利影響。本文提出的量化策略,能夠有效解決以上問題。

2 量化推理與確定量化系數

2.1 通用量化策略

考慮到硬件適用性,本文采用的量化方案為均勻對稱量化。均勻量化指的把輸入信號的取值域等間隔分割的量化,對于實數r,其量化值可表示為

(1)

其中,r是要量化的實數值,s代表量化步長(即量化系數),可表示為s=(b-a)/M,M表示量化級數,M=2k,k為量化位寬,量化時應考慮到符號位,實際量化級數M為M-1。 |·| 表示四舍五入, clip(·) 函數表示將變量值裁剪到 [a,b] 區間之內。Z_adj表示量化后0點的表示。對于均勻量化,可分為均勻非對稱量化與均勻對稱量化,對均勻非對稱量化,a=0,b=max|r|,Z_adj=-127, 對均勻對稱量化,a=min(r),b=max(r),Z_adj=0。

2.2 前向推理

2.2.1 卷積層量化推理

為了簡化表示,本文將矩陣運算特殊化為單個數的乘加運算,對于卷積層可簡單表示為式(2)

y=w×x+b

(2)

對其中的權重、輸入、偏置均勻量化后,有

(3)

(4)

(5)

其中,w,x,b分別表示原始的浮點值權重、輸入和偏置,s表示量化系數,q表示浮點值量化后的整數,z表示量化后的0點, clip(·) 函數與式(1)一致,權重、輸入和偏置分別用下標進行區分。卷積神經網絡中權重通常采用均值為0的高斯分布或者均勻分布來進行初始化,網絡訓練結束后的網絡權重基本上在0點兩端呈對稱分布。MobileNet v1中兩層網絡權重可視化如圖1所示。

圖1 部分MobileNet v1權重分布

從圖1可以看出,訓練完成后網絡的參數呈現基本對稱的分布,因此,本文對網絡采用均勻對稱量化,對于均勻對稱量化,可將z值置零,對偏置的量化系數,可設置為sb=sw×si。 則卷積可表示為

y=swqw×siqi+swsiqb

(6)

qw,qi,qb均為整型,根據文獻[10],任意浮點數可表示為[0.5,1)區間的數M乘以2n, 數M如果也采用上述的均勻對稱量化,將系數sw×si利用此操作進行轉換,則卷積層的浮點數運算可近似轉換為整數間的乘法和移位操作。

2.2.2 批量歸一化

對于常用的CNN,卷積之后通常接批次歸一化層(BN)與激活。針對卷積層的批次歸一化操作,可以將BN融合進上一層的卷積中,具體計算公式如下:

批次歸一化

(7)

將(7)代入(2)

(8)

分離變量與常量

(9)

通過式(9),將BN層的參數融合進卷積層的參數(權重與偏置)中,即可在網絡推理時省略BN的計算。

2.2.3 激活與重量化

對于卷積的結果采用32位存儲中間結果,對中間結果y,使用式(1)中的均勻對稱量化,有

(10)

其中,y表示中間結果,sy表示重量化系數,該系數由網絡通過一定批次的訓練數據集,統計其參數分布計算求得,qy表示重量化后的整型值。式(6)中的量化系數 (sw×si) 與重量化的系數 (sy) 可一起處理為整數乘法和移位操作。之后網絡經過激活函數,常見的激活函數RELU與RELU6,激活為線性變換,對于線性對稱量化無影響。至此,網絡卷積層量化完畢。網絡的輸出傳入下一層時,網絡的輸入無需進行再次量化,可直接進行卷積操作。

2.3 QMSE確定量化系數

由2.1節可知,網絡的量化系數由式(1)可得。而根據圖1的MobileNet v1權重分布圖可以看出,訓練完成得到的網絡參數大部分按層統計呈現均值在0附近的情況。MobileNet v1中權重幅值差距懸殊,特別是第二層的3×3卷積。Depthwise卷積層與Pointwise卷積層的權重幅值差距較大。權重幅值的大小將會極大影響網絡量化參數的選取。特別地,MobileNet v1中Pointwise卷積層的權重比較符合正態分布。為了確定量化系數,常用的有max準則、百分比準則。max準則可表示為

(11)

其中,s表示max準則產生的量化系數, 2p-1表示量化步長,對于8位量化,取值128, max|·| 取該參數分布中的最大值。max準則中的量化系數由數據分布中的最大值決定,當網絡參數存在離群值時,由max準則確定的量化系數將存在較大的誤差,進而影響網絡的性能。百分比準則是按照規定百分比保留的數據,是一種優化的max準則。在一定程度上緩解了網絡參數中離群值對于量化參數選取的影響。對于穩定的網絡權重系數,可進行統計得到該值。以上方法對于參數分布比較穩定,參數較多情況,可得到較好的效果。

使用max準則將極易受到網絡參數離群值的影響,百分比準則如何確定量化參數選取范圍受不同的網絡的影響。這兩種方法確定量化系數時只用到了網絡參數的最大值,沒有考慮到網絡參數中其它的值在量化中產生的誤差,使用以上準則選取量化系數能夠較好量化分布均勻的參數,而常用的網絡參數大部分服從正態分布。為了充分利用量化產生的誤差,選取更加合適的量化系數。本文提出了一種使用量化均方誤差(QMSE)來衡量量化誤差的方法。均方誤差可表示為

mse=mean((r-Q)2)

(12)

其中,r表示浮點數,Q為通過式(1)量化得到的整數。 mean(·) 為求均值操作。通過對一定范圍內的scale(量化系數)進行搜索,得到一個使原數據分布與量化后數據分布均方誤差最小的量化系數。根據式(1)可知,量化操作包含了舍入誤差和截斷誤差,而這兩種誤差在給定量化位寬(8 bit)的情況下,其量化誤差有著完全不同的情況。由此,本文分別分析了量化操作中四舍五入、截斷以及兩者結合的均方誤差關系,如圖2~圖4所示。

圖2 舍入操作產生的均方誤差

圖3 截斷操作產生的均方誤

圖4 量化系數與量化均方誤差的關系

由圖2可知,量化系數實際代表了量化的最小精度,當量化系數變大,量化的位寬越大,舍入誤差隨之增大。從圖3可以看出,截斷操作帶來的誤差主要是量化系數過小,導致參數超出8 bit能表示的范圍,從而產生較大的截斷誤差,該操作在量化系數較小時,對均方誤差的影響是決定性的。從圖4可以看出,引入兩種操作后,最終的均方誤差圖與截斷操作產生的誤差圖相似。因此,根據網絡權重和特征圖的數據分布可以計算相應的量化值,通過最小化量化值與原數據的均方誤差,得到最佳的量化系數。

為了更加具體分析模型性能與量化操作中舍入操作與截斷操作的關系,本文引入了一個超參數,來衡量舍入操作與截斷操作產生的量化誤差對模型性能的影響,即QMSE,公式如下

QMSE=errround+α*errclip

(13)

通過超參數α來控制四舍五入和截斷操作產生的誤差對量化誤差的影響程度,從而更加精確選取量化系數。

圖2~圖4的實驗數據分布為隨機初始化的正態分布,且限定范圍為[-1,1],量化位寬固定為8 bit,數據幅值與分布情況的改變,也將會影響量化系數的選定,本文的策略主要針對網絡權重參數進行量化,由于網絡的特征圖分布一般比較均勻,使用max系列準則量化效果更佳,在實驗部分會驗證采用QMSE量化權重,max準則量化特征圖具有更好的效果。

2.4 USP恢復網絡性能

在網絡中添加BN層能有效加快網絡收斂,通常在每個卷積層之后,激活函數之前,計算該層特征圖的均值和方差,并且進行歸一化,同時設置了兩個可學習變量λ、β, 保證網絡的非線性。訓練結束后,批次歸一化層中的可學習變量與統計參數(均值和方差)固定,推理時使用確定的參數進行前向傳播。文獻[17]中提出權重的量化誤差可能在相關的輸出端引入偏置誤差,這會改變下一層的輸入分布,導致不可預測的影響。

對于量化后的網絡特征圖,仍然使用浮點網絡中訓練時得到的均值和方差進行批次歸一化是不合理的。針對這一問題,本文提出更新批次歸一化層中的統計參數(均值和方差),即USP方法,通過重新計算量化后網絡中批次歸一化層中的均值和方差,校正網絡各層特征圖的分布。與重訓練不同的是,該過程僅需要將一定批次(200左右)的無標記數據通過網絡的前向計算,不涉及反向傳播,無需進行損失函數計算。

針對MobileNet v1此類小網絡,由于網絡參數量小,使得網絡各層的參數分布不均勻,其逐通道卷積每個通道上僅有9個數字,數據分布已經丟失了對稱性,對該類網絡采用均勻對稱量化,量化過程中必將導致網絡參數分布改變,網絡的性能也將明顯下降,由此,本文使用更新統計參數的方法。具體操作如圖5所示,使用一組訓練集中的數據,將其送入網絡前向推理,并且使用指數滑動平均的方法對BN層的均值與方差進行更新。在進行參數更新的時候,需要保證送入的數據集具有多樣性,能夠盡可能包含大部分類型的種類,這對特征圖的量化后性能十分重要。

圖5 USP方法流程

3 實驗分析

在本節,本文將使用常用的ILSVRC圖像分類數據集對一些常用的網絡如VGG系列、Resnet系列和輕量級網絡MobileNet v1進行量化,并進行相應的評估。其中,ILSVRC圖像分類數據集包括120萬訓練圖片和5萬驗證圖片。若無特殊說明,本文對所有網絡進行8 bit量化,包括網絡的第一層和最后一層以及進行網絡推理所需要的所有參數。所有實驗結果表示ILSVRC圖像分類數據集top1準確率,單位為百分比。

3.1 量化準則實驗結果

為了驗證本文提出的均方誤差準則確定量化系數的有效性,使用max準則與其進行對比實驗,并且分別進行逐通道和逐層量化,Fp32表示原始浮點網絡的精度。得到的對比實驗結果見表1。

表1 max準則與QMSE準則確定量化系數結果對比

實驗結果表明,使用max準則與QMSE準則對于Resnet系列的網絡進行8 bit量化都能取得很好的效果,使用QMSE確定量化系數更加有效。

為了分析四舍五入與截斷操作對模型性能的影響,本文使用Resnet34、Rsenet50和Vgg11進行了實驗,該實驗限定了逐層量化,使用QMSE準則確定權重量化系數,max準則確定特征圖量化系數。實驗結果見表2。

表2 四舍五入與截斷對模型性能實驗結果對比

由表2可知,在α值大于1時,模型性能更好,由此可知,截斷操作對模型量化系數的選取重要性更明顯。

由表3可知,對網絡進行逐通道與逐層量化的結果表明,網絡進行逐通道量化會得到較好的結果,原因是網絡進行逐通道量化時能夠更加契合網絡參數的原始分布,相比逐層量化,逐通道量化將會帶來額外的參數計算與存儲,采用逐層量化性能相比逐層量化差距在0.5%以內,可從硬件資源和模型性能上考慮采用相應的量化方式。

表3 逐通道與逐層量化結果對比

為了驗證采用QMSE方法量化權重、max準則量化特征圖的有效性,本文對Resnet34網絡進行對比實驗,實驗結果見表4。

表4 混合量化策略有效性結果對比

從表4可以看出,max量化特征圖、QMSE量化權重的量化策略取得的效果最好。

3.2 更新統計參數實驗結果

對小型網絡如MobileNet v1進行量化時,網絡性能明顯下降,本文針對它驗證更新統計參數的有效性,具體方法是對權重和特征圖量化后,從訓練集中隨機挑選一定批次(200 batch左右)的圖片,并將其送入網絡進行前向推理,更新批次歸一化層的統計參數,從而達到校準網絡參數分布的目的。表5實驗結果表明,對量化后的網絡更新統計參數能夠有效對網絡訓練得到的特征進行修復,使網絡在進行8 bit整型量化后,能夠恢復至FP32條件下同樣標準的精度。對MobileNet v1此類小型網絡進行逐通道量化時,模型性能低于逐層量化,原因是MobileNet v1中單個通道的參數極少,網絡權重參數對稱性分布被打破,采用對稱量化勢必不能取得較好的效果。

3.3 與其它方法的比較

在本節中,將本文提出的QMSE+USP方法與其它研究中的方法進行比較,大部分參考文獻中使用的模型有MobileNet v1和Resnet50。使用文獻[18]中的方法對MobileNet v1進行逐層量化會導致模型失去分類能力。

表5 更新統計參數結果對比

由表6可知,使用QMSE+USP對MobileNet v1、Resnet50模型量化之后,模型性能優于其它的算法。

表6 與其它研究方法結果對比

4 結束語

本文提出了一種QMSE量化準則來確定量化系數的方法,分析了量化操作中四舍五入與截斷操作對網絡性能的影響,通過設置合適超參數對量化網絡性能進行微調,并且針對小型網絡量化性能下降嚴重的問題,進一步提出了USP,校準網絡參數分布,從而減小量化所帶來的性能損失。使用QMSE+USP能夠將常用的深度神經網絡進行8 bit整型量化且達到與Fp32條件下同樣標準的性能,且該方法不需要對網絡進行重訓練。筆者模擬了常用的深度神經網絡量化推理的性能,并將網絡在推理過程中的浮點數計算全部轉換成了整數之間的運算和移位操作,大幅度加快了網絡的推理速度,同時節省接近4倍的硬件資源,并且模型的性能下降在0.5%內。

猜你喜歡
模型
一半模型
一種去中心化的域名服務本地化模型
適用于BDS-3 PPP的隨機模型
提煉模型 突破難點
函數模型及應用
p150Glued在帕金森病模型中的表達及分布
函數模型及應用
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
主站蜘蛛池模板: a毛片在线| 在线毛片网站| 久久久黄色片| 亚洲成人www| 六月婷婷精品视频在线观看| 老汉色老汉首页a亚洲| 无码视频国产精品一区二区| 日本高清成本人视频一区| 欧美精品不卡| 日韩a级毛片| 亚洲精品你懂的| 重口调教一区二区视频| 在线观看亚洲精品福利片| 亚洲成A人V欧美综合天堂| 欧美日韩北条麻妃一区二区| 国产福利一区视频| 久久国产精品麻豆系列| 一级毛片免费高清视频| 成年人国产视频| 国产在线观看一区精品| 亚洲中字无码AV电影在线观看| 亚洲第一区欧美国产综合| 超清无码熟妇人妻AV在线绿巨人| 亚洲综合天堂网| 色综合日本| 国产精品视频导航| 中文字幕在线播放不卡| 98超碰在线观看| 国产精品久久久久久久久| 久久99精品久久久大学生| 亚洲第一黄片大全| 日韩精品无码免费专网站| 欧美亚洲一区二区三区在线| 日本三级欧美三级| 白丝美女办公室高潮喷水视频| 国产精品第5页| 午夜在线不卡| 中国国产A一级毛片| 91青青视频| 99热这里只有免费国产精品| 五月激情婷婷综合| 玖玖精品视频在线观看| 免费午夜无码18禁无码影院| 国产免费久久精品44| 亚洲人成网线在线播放va| 黄色国产在线| 国产精品亚洲天堂| 国产成人乱无码视频| 国产高清色视频免费看的网址| 在线观看精品国产入口| 国产无码网站在线观看| 国产精品视频a| 伊人天堂网| 亚洲欧洲日产国码无码av喷潮| 1024国产在线| 国产精品免费久久久久影院无码| 日本在线视频免费| 亚洲第一区欧美国产综合| 日韩在线1| 中文成人在线| 在线观看精品自拍视频| AⅤ色综合久久天堂AV色综合| 国产农村1级毛片| 国产18在线播放| 日韩色图在线观看| 欧美高清视频一区二区三区| 韩国v欧美v亚洲v日本v| 97色伦色在线综合视频| 日韩久草视频| 国产青榴视频| 午夜视频免费一区二区在线看| 国产精品欧美亚洲韩国日本不卡| 伊在人亚洲香蕉精品播放| 亚洲va视频| 一本大道在线一本久道| 欧美在线精品怡红院| 日韩欧美在线观看| 亚洲国产精品无码久久一线| 国产99久久亚洲综合精品西瓜tv| 中文字幕66页| 色网站在线视频| 亚洲成A人V欧美综合|