亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于均方誤差的8位深度神經(jīng)網(wǎng)絡量化

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

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

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

        0 引 言

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

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

        (2)針對小型網(wǎng)絡量化后的性能損失,提出了一種更新統(tǒng)計參數(shù)(USP)的方法,在不進行重訓練的情況下,實驗結(jié)果表明,QMSE+USP的方法能夠?qū)⒛P途葥p失控制在0.5%以內(nèi)。

        1 相關(guān)研究

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

        2 量化推理與確定量化系數(shù)

        2.1 通用量化策略

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

        (1)

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

        2.2 前向推理

        2.2.1 卷積層量化推理

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

        y=w×x+b

        (2)

        對其中的權(quán)重、輸入、偏置均勻量化后,有

        (3)

        (4)

        (5)

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

        圖1 部分MobileNet v1權(quán)重分布

        從圖1可以看出,訓練完成后網(wǎng)絡的參數(shù)呈現(xiàn)基本對稱的分布,因此,本文對網(wǎng)絡采用均勻?qū)ΨQ量化,對于均勻?qū)ΨQ量化,可將z值置零,對偏置的量化系數(shù),可設置為sb=sw×si。 則卷積可表示為

        y=swqw×siqi+swsiqb

        (6)

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

        2.2.2 批量歸一化

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

        批次歸一化

        (7)

        將(7)代入(2)

        (8)

        分離變量與常量

        (9)

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

        2.2.3 激活與重量化

        對于卷積的結(jié)果采用32位存儲中間結(jié)果,對中間結(jié)果y,使用式(1)中的均勻?qū)ΨQ量化,有

        (10)

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

        2.3 QMSE確定量化系數(shù)

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

        (11)

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

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

        mse=mean((r-Q)2)

        (12)

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

        圖2 舍入操作產(chǎn)生的均方誤差

        圖3 截斷操作產(chǎn)生的均方誤

        圖4 量化系數(shù)與量化均方誤差的關(guān)系

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

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

        QMSE=errround+α*errclip

        (13)

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

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

        2.4 USP恢復網(wǎng)絡性能

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

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

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

        圖5 USP方法流程

        3 實驗分析

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

        3.1 量化準則實驗結(jié)果

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

        表1 max準則與QMSE準則確定量化系數(shù)結(jié)果對比

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

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

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

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

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

        表3 逐通道與逐層量化結(jié)果對比

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

        表4 混合量化策略有效性結(jié)果對比

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

        3.2 更新統(tǒng)計參數(shù)實驗結(jié)果

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

        3.3 與其它方法的比較

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

        表5 更新統(tǒng)計參數(shù)結(jié)果對比

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

        表6 與其它研究方法結(jié)果對比

        4 結(jié)束語

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

        猜你喜歡
        模型
        一半模型
        一種去中心化的域名服務本地化模型
        適用于BDS-3 PPP的隨機模型
        提煉模型 突破難點
        函數(shù)模型及應用
        p150Glued在帕金森病模型中的表達及分布
        函數(shù)模型及應用
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
        3D打印中的模型分割與打包
        国产精品亚洲三级一区二区三区| 视频一区精品自拍| 激情五月婷婷久久综合| 一本大道久久a久久综合精品| 日韩亚洲欧美久久久www综合| 无码综合天天久久综合网| 高清国产一级毛片国语| 国产精品天堂在线观看| 亚洲中文无码av永久| 日本熟妇色xxxxx欧美老妇| 精品国产福利久久久| 日韩精品一区二区三区av| 999zyz玖玖资源站永久| 国产在线视频一区二区三区| 久久免费精品国产72精品剧情| 亚洲精品一区二区三区麻豆| 亚洲图片自拍偷图区| 成在人线av无码免观看麻豆| 久久久久久无中无码| 日韩有码中文字幕在线视频| 日日躁夜夜躁狠狠躁| 欧美国产成人精品一区二区三区| 国产福利小视频91| 亚洲国产成人久久精品一区| 日本女优久久精品观看| 人妻中文字幕乱人伦在线| 无套内谢的新婚少妇国语播放| 91在线区啪国自产网页| 亚洲精品一区二区在线免费观看| 手机福利视频| 在线视频制服丝袜中文字幕| 日韩乱码精品中文字幕不卡| 久草青青91在线播放| 欧美jizzhd精品欧美| 无码中文字幕av免费放| 亚洲国产免费不卡视频| 亚洲裸男gv网站| 欧美久久久久中文字幕 | 国产在线一区二区三区香蕉| 东京热久久综合久久88| 久久中文字幕av一区二区不卡|