• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于信息融合策略的卷積神經(jīng)網(wǎng)絡(luò)剪枝方法

      2022-12-22 11:46:20曲海成張雪聰王宇萍
      計算機工程與應(yīng)用 2022年24期
      關(guān)鍵詞:剪枝信息熵卷積

      曲海成,張雪聰,王宇萍

      遼寧工程技術(shù)大學(xué) 軟件學(xué)院,遼寧 葫蘆島 125105

      目前卷積神經(jīng)網(wǎng)絡(luò)已經(jīng)在圖像分類[1]、目標檢測[2-3]和圖像分割[4]等多個研究領(lǐng)域取得了卓越的成績。在深度學(xué)習(xí)領(lǐng)域,從最初簡單的只有10個類別、7萬張圖像的MINIST手寫數(shù)字數(shù)據(jù)集到后來的1 000個類別、128萬張圖像的ILSVRC-2012數(shù)據(jù)集,數(shù)據(jù)集的種類和圖片數(shù)量逐漸增多,與之對應(yīng)的是網(wǎng)絡(luò)模型的參數(shù)量和計算量也急劇增長。巨大的參數(shù)量和模型計算量也成為深度學(xué)習(xí)模型應(yīng)用到更多場景的阻礙。因此壓縮網(wǎng)絡(luò)參數(shù)以實現(xiàn)模型加速成為計算機視覺領(lǐng)域中的一個研究熱點。

      本文研究的結(jié)構(gòu)化剪枝是卷積神經(jīng)網(wǎng)絡(luò)模型壓縮中的一種方法,依賴一定的準則移除冗余參數(shù),能夠在保證網(wǎng)絡(luò)模型結(jié)構(gòu)完整的前提下,有效減少模型復(fù)雜度,進而實現(xiàn)模型加速。

      為了獲得更輕量級的模型,大多數(shù)結(jié)構(gòu)化剪枝方法基于預(yù)訓(xùn)練權(quán)重獲得的信息進行剪枝[5-8]。然而,這類方法有兩個明顯的缺點:(1)當(dāng)很難獲取預(yù)訓(xùn)練權(quán)重文件的時候,只能從頭開始訓(xùn)練模型,比較耗時;(2)當(dāng)已有適用的預(yù)訓(xùn)練權(quán)重文件時,最終的剪枝效果是對預(yù)訓(xùn)練權(quán)重的訓(xùn)練環(huán)境敏感的,對于預(yù)訓(xùn)練權(quán)重過分依賴,極易造成精度損失下降明顯的問題,通常需要較長時間的微調(diào)以滿足應(yīng)用需求。

      此外,還有一類在訓(xùn)練中引入掩膜操作剪枝的方法[9],即將剪枝準則認定不重要的參數(shù)及其梯度置為0。這類方法引入的掩膜操作增大了模型訓(xùn)練階段的參數(shù)量,而且被置為0的參數(shù)在訓(xùn)練過程中仍存在模型當(dāng)中,使得此類方法在訓(xùn)練階段耗時相較于原始網(wǎng)絡(luò)并沒有明顯減少。

      同時以上方法直接丟棄或無視了非重要卷積核之中的信息,而事實上很難依賴一個準則完全準確地區(qū)分卷積核的重要性,后續(xù)的實驗表明保留一定比例的非重要卷積核中的信息對模型剪枝的最終效果產(chǎn)生了正面影響。

      針對以上問題,本文提出了一種基于信息融合策略的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)化剪枝方法,稱之為APBM方法。APBM方法使用概率化后的信息熵差值平方作為卷積核的相似性分布,并使用分布之間的相對熵作為卷積核重要性度量依據(jù)。為了使得剪枝過程有較好的容錯性以及減少信息損失,APBM以一定比例融合重要卷積核信息和不重要卷積核信息,該過程稱為信息融合。信息融合后得到的新網(wǎng)絡(luò)稱為融合網(wǎng)絡(luò)。APBM在訓(xùn)練過程中,使用原始網(wǎng)絡(luò)的信息得到融合網(wǎng)絡(luò),并以融合網(wǎng)絡(luò)得到的損失值指導(dǎo)原始網(wǎng)絡(luò)的參數(shù)更新,在下一次迭代中再次重復(fù)上述步驟。這使得APBM在不依賴預(yù)訓(xùn)練模型的情況下,僅需一次訓(xùn)練就能獲得較高精度的輕量化模型。訓(xùn)練成本幾乎與直接訓(xùn)練一個剪枝后的網(wǎng)絡(luò)相當(dāng),并且實驗證明信息融合策略為模型精度的保持帶來了積極的影響。

      1 相關(guān)工作

      深度卷積神經(jīng)網(wǎng)絡(luò)的壓縮和加速方法主要分為網(wǎng)絡(luò)壓縮和輕量化網(wǎng)絡(luò)設(shè)計兩大類。輕量化網(wǎng)絡(luò)設(shè)計的目的是設(shè)計出參數(shù)量小、運行速度快的網(wǎng)絡(luò),如權(quán)宇等[10]的工作設(shè)計了一種新的輕量化網(wǎng)絡(luò),極大地提高了兩階段目標檢測框架的檢測速度。而本文方法側(cè)重于對網(wǎng)絡(luò)壓縮方法的研究,網(wǎng)絡(luò)壓縮方法種類繁多,據(jù)郎磊等[11]的工作表明,主要可分為量化、知識蒸餾、網(wǎng)絡(luò)剪枝等。

      量化技術(shù)為了降低網(wǎng)絡(luò)模型所占的存儲空間,使用較低位寬表示現(xiàn)有神經(jīng)網(wǎng)絡(luò)中參數(shù)常用的32位浮點數(shù)。Hu等[12]提出了基于哈希的二值化權(quán)重算法,使用哈希映射將二值化權(quán)重學(xué)習(xí)問題轉(zhuǎn)換為哈希問題求解。Kim等[13]使用整數(shù)形式的二階多項式和平方根算法近似GELU、Softmax激活函數(shù)以及LayerNorm中的運算,最終實現(xiàn)了基于Transformer的網(wǎng)絡(luò)模型的整數(shù)量化。

      知識蒸餾技術(shù)在學(xué)生網(wǎng)絡(luò)中引入教師網(wǎng)絡(luò)的軟目標,通過教師網(wǎng)絡(luò)的知識指導(dǎo)學(xué)生網(wǎng)絡(luò)的學(xué)習(xí)。Shen等[14]基于對抗的學(xué)習(xí)策略消除教師網(wǎng)絡(luò)與學(xué)生網(wǎng)絡(luò)的差異。Turc等[15]通過實驗證明對學(xué)生網(wǎng)絡(luò)先進行預(yù)訓(xùn)練,再使用知識蒸餾技術(shù)訓(xùn)練而后微調(diào)可以使得學(xué)生網(wǎng)絡(luò)的性能表現(xiàn)獲得更進一步的提升。

      低秩分解技術(shù)采用若干個小尺寸的權(quán)重矩陣代替較大尺寸的權(quán)重矩陣,減少權(quán)重參數(shù),消除網(wǎng)絡(luò)中的冗余。Lebedev等[16]提出了CP分解,將一層網(wǎng)絡(luò)分解為五層復(fù)雜度較低的網(wǎng)絡(luò)層。Idelbayev等[17]以分類損失函數(shù)和權(quán)重代價函數(shù)兩個角度構(gòu)建優(yōu)化函數(shù),同時使用秩對優(yōu)化函數(shù)進行約束,解決了網(wǎng)絡(luò)中每層的最佳秩難以確定的問題。

      主流的剪枝方法主要分為兩大類:非結(jié)構(gòu)化剪枝和結(jié)構(gòu)化剪枝。非結(jié)構(gòu)化剪枝將網(wǎng)絡(luò)中的被認為不重要的權(quán)重置0以獲得稀疏矩陣,進而實現(xiàn)較高的模型壓縮比。Aghasi等[18]通過設(shè)計一個求解凸優(yōu)化的程序,對經(jīng)過訓(xùn)練后的模型逐層剪枝不重要的連接,同時保持每層的輸入輸出不發(fā)生變化。Liu等[19]根據(jù)卷積層中的空間的相關(guān)性提出了一種頻域動態(tài)剪枝的方案,在每次迭代中動態(tài)剪枝卷積核的DCT系數(shù),并在不同頻帶中實行不同的剪枝方案。Zhang等[20]利用交替方向乘法器(ADMM)將權(quán)重剪枝問題分解為兩個子問題,可以分別用SGD和解析法求解。Zhang等[21]通過實驗證明可以在原始網(wǎng)絡(luò)中的預(yù)訓(xùn)練模型中不修改任何權(quán)重值就能找到“中獎彩票”,并使用了基于權(quán)值大小的剪枝方案作為預(yù)熱,以減少搜索“中獎彩票”的成本。

      而現(xiàn)有的深度學(xué)習(xí)庫不能很好地支持非結(jié)構(gòu)化剪枝的實際加速,為此需要設(shè)計專門的硬件或者運行庫,嚴重限制了剪枝后模型的通用性。而結(jié)構(gòu)化剪枝則移除整個卷積核,剪枝后的模型仍然可以運用深度學(xué)習(xí)庫進行加速。Lin等[22]基于保持矩陣的二階協(xié)方差信息就可以最大化多變量數(shù)據(jù)的相關(guān)性的理論,將保持卷積核的二階協(xié)方差信息問題轉(zhuǎn)換為矩陣草圖問題,使用頻繁方向算法求解該問題。并使用得到的草圖作為剪枝后微調(diào)的預(yù)熱。Liu等[5]為BN(batch normalization)層添加L1正則化約束,并根據(jù)訓(xùn)練后的權(quán)重值設(shè)置全局閾值刪除較小的BN層系數(shù)值對應(yīng)的通道。Zhuang等[8]針對L1正則化的閾值界限難確定的問題,提出了一個新的正則化手段Polarization,使得一部分BN層的縮放因子γ趨向于0,另一部分明顯大于0。Lin等[6]觀察到輸出特征圖具有秩不變性,且認為低秩的特征映射包含更少的信息,并依此性質(zhì)刪除了輸出低秩特征圖的卷積核。Lin等[7]使用預(yù)訓(xùn)練權(quán)重和人工蜂群算法尋找到最佳蜜源,并根據(jù)最佳蜜源重新構(gòu)建模型后訓(xùn)練以恢復(fù)其性能。陸林等[23]將卷積核的剪枝問題轉(zhuǎn)換為稀疏二值約束問題,從訓(xùn)練中學(xué)習(xí)到卷積核的重要性。

      與以上方法[5-7]不同,在訓(xùn)練中剪枝的方法不需要預(yù)訓(xùn)練權(quán)重,并且能夠很好地保持模型精度。Meng等[9]提出了針對濾波器形狀的剪枝方案,通過在訓(xùn)練中引入可學(xué)習(xí)的濾波器骨架矩陣,以添加掩膜操作的方式得到每個濾波器的最佳形狀。

      本文采用在訓(xùn)練中動態(tài)剪枝的策略,不同于上述方法[5-9,23],APBM算法既不依賴預(yù)訓(xùn)練模型,也不在原始網(wǎng)絡(luò)中添加掩膜操作,而是采用在訓(xùn)練中引入卷積核信息熵概念動態(tài)剪枝以及采用信息融合的方法,通過原始網(wǎng)絡(luò)的信息引導(dǎo)輕量模型的訓(xùn)練。

      2 基于信息融合的結(jié)構(gòu)化剪枝

      2.1 剪枝流程

      APBM方法的剪枝流程如圖1所示,有以下步驟:(1)計算原始模型中的卷積核的信息熵。

      圖1 APBM剪枝框架Fig.1 APBM pruning framework

      (2)卷積核重要性度量。先計算卷積核的信息熵之間的差值的平方,再通過帶有溫度系數(shù)的softmax函數(shù)[24]得到卷積核之間的相似性分布。以相似性分布之間的相對熵數(shù)值作為卷積核的重要性分數(shù)。

      (3)信息融合。依據(jù)手工設(shè)定的剪枝率結(jié)合卷積核的重要性分數(shù),如圖2所示,將卷積核區(qū)分成重要(藍色)和非重要(紫色)兩組,融合兩者的信息得到新的卷積核(黃色和綠色)。

      圖2 APBM前向傳播過程Fig.2 APBM forward propagation

      (4)更新網(wǎng)絡(luò)參數(shù)。以融合網(wǎng)絡(luò)得到的損失值反向傳播計算梯度,并更新原始網(wǎng)絡(luò)的參數(shù)。

      (5)再次重復(fù)(1)~(4)直至訓(xùn)練結(jié)束,最終保存最佳輕量化模型。

      2.2 卷積核的信息熵計算

      在信息論中,信息熵被認為是對信息不確定性的度量,即信息熵越大,系統(tǒng)越混亂。Lee等[25]的研究表明:信息熵越大,系統(tǒng)能夠從輸入數(shù)據(jù)中提取出的信息也就越多。所以使用信息熵來表示一個卷積核中的能夠存儲的信息量的多少,信息熵越大,就認為卷積核包含的信息量越多。

      在模型剪枝領(lǐng)域,表征卷積核的方法常用卷積核權(quán)重的L1范數(shù)值,較小L1范數(shù)值的卷積核的重要程度被認為弱于較大L1范數(shù)值的卷積核[26-27]。當(dāng)某一卷積核的所有參數(shù)都相同的時候,稱之為等值卷積核。等值卷積核只是將輸入信息放縮后傳遞給下一層,從信息論的角度來看,等值卷積核無法為模型帶來任何額外有用的信息。由于L1范數(shù)值只關(guān)注權(quán)重的絕對值之和,當(dāng)?shù)戎稻矸e核的值是一個較大的數(shù)時,其很可能被當(dāng)作重要卷積核保留下來,這顯然是不合理的。而以信息熵表征卷積核,其更關(guān)注于權(quán)重的分布變化,所以等值卷積核的信息熵為0。從卷積核的特征提取能力角度來看,等值卷積核沒有特征提取能力,0信息熵更符合這樣的結(jié)論。同時Meng等[28]的實驗對比了使用L1范數(shù)值和信息熵選擇最具代表性的卷積核做嫁接源的效果,發(fā)現(xiàn)使用信息熵得到的嫁接模型的效果最佳。綜上所述,本文采用卷積核的信息熵去表征卷積核。

      Wji表示第i層卷積層第j個卷積核,pk代表n個組中第k組權(quán)重數(shù)占全部的比例,H表示的信息熵。

      2.3 卷積核的重要性度量

      在訓(xùn)練初期,原始網(wǎng)絡(luò)中的卷積核的信息熵數(shù)值排序是不穩(wěn)定的,如果直接使用信息熵數(shù)值排序進行重要性度量,信息融合后會導(dǎo)致模型在很多次迭代后仍然難達到收斂,同時這種方案也忽略了卷積核之間的相似性。

      為此,本文提出一種基于相對熵的動態(tài)卷積核重要評估方案。該方案首先使用卷積核信息熵差值的平方表示卷積核之間的相似性,即:公式(2)用來表示卷積核Wij和卷積核Wik之間的相似性,為簡便起見,將其記作Hij,k。Hij,k越小,兩個卷積核之間的相似性越高。使用公式(2)可以求出第i層卷積層每個卷積核與其他卷積核之間的相似性,記為矩陣。使用Hji∈表示第i層卷積層第j個卷積核與本層的其他卷積核之間的相似性。

      為了加大卷積核之間的差異以及實現(xiàn)動態(tài)評估卷積核重要性的目的,進行如下操作:

      (1)將矩陣Hi經(jīng)過一個帶有溫度系數(shù)t的softmax函數(shù)[24]轉(zhuǎn)換成符合概率分布的數(shù)值,以表示某個卷積核與其他卷積核的相似性分布,如公式(3)所示:

      其中,ex p(·)是指以自然常數(shù)e為底的指數(shù)函數(shù)。轉(zhuǎn)換后的數(shù)值具有概率的性質(zhì),即

      t是溫度參數(shù),當(dāng)01時,會增大分布之間的差異,當(dāng)t足夠大時,分布就會趨向于one-hot分布,即只有一個數(shù)值為1,其余均為0的分布。

      (2)使用卷積核與其他卷積核的相似性分布的相對熵均值作為當(dāng)前卷積核的重要性分數(shù)。上一步中得到的相似性分布可以用來表征卷積核,相比于直接使用信息熵而言,其建立起了卷積核與卷積核之間的聯(lián)系。同時與信息熵差值平方相比,相似性分布因為有溫度參數(shù)t可以進一步擴大卷積核之間的差異性,有助于卷積核重要程度的判別。同時卷積核的相似性分布本質(zhì)上是一種概率分布,因此區(qū)分卷積核的重要性的問題就轉(zhuǎn)換為衡量概率分布之間的差異的問題。而相對熵均值就是一種表示兩個概率分布之間偏離程度的方法,如公式(4)所示:

      由公式(4)可知,當(dāng)兩個概率分布越相似的時候,相對熵越接近0。當(dāng)兩個概率分布差異越大時,相對熵越大,此時給定第i層剪枝率Zi,將Ri∈?ciout按照從大到小的順序排序,選取分值最大的前ciout( 1-Zi)個作為重要卷積核。而剪枝率Zi則由以往的實驗經(jīng)驗所得。

      訓(xùn)練初期卷積核參數(shù)都是隨機初始化的,此時基于相對熵均值并不能很好的區(qū)分卷積核的重要程度,所以t的取值不應(yīng)過大。t的初始值設(shè)置為1,并隨著訓(xùn)練的深入逐步增大,表達式如下:

      其中,A=10 000,tanh()·表示雙曲正切函數(shù),e表示當(dāng)前的訓(xùn)練輪數(shù)(epoch)。A控制函數(shù)的最大值,隨e的變化關(guān)系如圖3所示。由圖3可以看出,溫度參數(shù)t從訓(xùn)練開始的1隨著e的增大迅速增大至10 001,并在之后的迭代中保持穩(wěn)定。

      圖3 訓(xùn)練過程中的溫度系數(shù)Fig.3 Temperature coefficient in training process

      2.4 信息融合

      在2.3節(jié)的基礎(chǔ)上,將第i層卷積核分為兩種,一種由重要的卷積核組成,記為其中表示Ii中的第m個元素。另一種由不重要的卷積核組成,記為表示Ui中的第g個元素,而m+g=ciout。

      如圖2所示,為了提高APBM剪枝的容錯性和減少信息的損失,新卷積核信息由重要卷積核和不重要卷積核融合而成。數(shù)學(xué)表達式為:

      在公式(6)中,W表示信息融合得到的新的卷積核。β是一個超參數(shù),用來控制兩組參數(shù)所占的比例,重要卷積核的信息應(yīng)該占據(jù)主要地位,本文設(shè)取值范圍為0.7≤β<1。當(dāng)β=1時,公式(6)就退化為:

      公式(7)表示的是直接丟棄非重要卷積核信息的方案,本文的3.3節(jié)中將驗證其效果。

      當(dāng)β≠1時,對于不重要卷積核所占比例引入系數(shù)pi。這使得在訓(xùn)練初期pi不為one-hot分布時,信息融合過程有重要卷積核和其他所有非重要卷積核的信息,也就是在訓(xùn)練初期時參與信息融合過程的卷積核種類有兩種,每個新卷積核的融合過程中參與計算的卷積核有( 1+g)個。到了訓(xùn)練后期,pi變?yōu)閛ne-hot分布,此時各卷積核的重要性趨于穩(wěn)定而且更加容易區(qū)分,就可以逐漸減少非重要卷積核的參與,非重要卷積核中的大部分將不再參與信息融合過程。假設(shè)當(dāng)前卷積核的onehot分布中1所對應(yīng)的卷積核記為χ,則此時的信息融合過程如公式(8)所示:

      公式(8)表示當(dāng)χ?Ui時,即one-hot分布中1值所對應(yīng)的卷積核是非當(dāng)前卷積核外的其他重要卷積核時,由公式(6)可知,一個新卷積核的融合過程只有一個重要卷積核參與,所以新卷積核參數(shù)值僅與成線性關(guān)系,也就是此時參與信息融合過程的卷積核種類只有一種,每個新卷積核的融合過程中參與計算的卷積核共1個;而當(dāng)χ∈Ui時,即one-hot分布中1值所對應(yīng)的卷積核是非重要卷積核時,新卷積核參數(shù)值由當(dāng)前卷積核和1值所對應(yīng)的非重要卷積核線性組合而成,也就是此時參與信息融合過程的卷積核種類有兩種,每個新卷積核的融合過程中參與計算的卷積核共2個。

      在訓(xùn)練初期新卷積核由非重要卷積核和當(dāng)前重要卷積核線性組合而成,這樣的特性使得原始網(wǎng)絡(luò)中非重要卷積核的參數(shù)可以依靠融合網(wǎng)絡(luò)反向傳播的過程求得梯度,進而更新其參數(shù),即使剪枝錯誤,也可以通過梯度更新進行彌補。而直接丟棄非重要卷積核,就相當(dāng)于阻斷了非重要卷積核的梯度的計算,其參數(shù)在以后的訓(xùn)練過程中都不會得到更新。因此信息融合方案比直接丟棄非重要卷積核的方案更具有容錯性。

      如圖2所示,APBM的前向傳播過程中,使用融合成的新卷積核進行卷積運算,如公式(9)所示:

      其中,x表示卷積的輸出特征圖,xi+1k表示第i層卷積層的輸出特征圖第k個通道的值。?表示卷積運算?;谛畔㈧氐木矸e核神經(jīng)網(wǎng)絡(luò)剪枝過程的主要流程如算法1所示。

      算法1 APBM剪枝算法

      輸入 數(shù)據(jù)集D,原始網(wǎng)絡(luò)M,保留系數(shù)β,訓(xùn)練輪數(shù)E,剪枝比例Z

      輸出 融合網(wǎng)絡(luò)M

      1.通過剪枝比例Z生成融合網(wǎng)絡(luò)M的結(jié)構(gòu)

      2.輸入數(shù)據(jù)集D到網(wǎng)絡(luò)M中

      3.for e=0→E do

      4.t←通過式(5)計算溫度系數(shù)數(shù)值

      5.for i=0→N do

      6. ΔHi←使用式(1)(2)計算信息熵差值

      7. pi←使用式(3)計算相似性分布矩陣

      8. Ri←使用式(4)計算重要性分數(shù)

      9. M中的卷積核W←使用式(6)進行信息融合

      10. 使用式(9)前向傳播

      11.end for

      12.進行反向傳播,更新原始網(wǎng)絡(luò)M

      13.end for

      2.5 剪枝成本分析

      剪枝過程的成本從剪枝需要的計算量角度考慮。在APBM方法中,對于第i層的剪枝過程需要的計算量主要等于第i層保留的卷積核的卷積操作FLOPs加上信息融合操作的FLOPs,即:

      其中,f=xwxhcinh2,以上式子為了簡便起見都省略了上標i,xw和xh分別表示卷積層的輸出特征圖的寬度和高度。由公式(10)可知TFLOPs在Z∈[)0,1時是關(guān)于Z的遞減函數(shù),其值域為

      而對于在訓(xùn)練過程中引入掩膜操作實現(xiàn)梯度不更新的算法[9],其剪枝過程第i層所需計算量為第i層卷積FLOPs加上掩膜操作的FLOPs,即:

      由此可知,APBM方法所需的計算量TFLOPs≤MFLOPs,當(dāng)且僅當(dāng)剪枝率Z為0的時候取等號。模型的訓(xùn)練時間通常與計算量成正比,即APBM方法訓(xùn)練中需要的時間小于等于引入掩膜操作阻斷梯度更新的剪枝算法。

      對于只使用預(yù)訓(xùn)練權(quán)重不使用掩膜操作的剪枝算法[6-7,23],其剪枝過程第i層所需計算量為第i層保留的卷積核的卷積操作FLOPs,即:在同等剪枝率下,APBM方法的TFLOPs與這類方法的計算量PFLOPs的計算量差異為:

      由公式(13)可以分析出,在同等剪枝率下,APBM方法相較于只使用預(yù)訓(xùn)練權(quán)重而不使用掩膜操作的方案,增加的計算量是很少的。而計算量的多少通常會影響訓(xùn)練時間的長短。

      3 實驗結(jié)果分析

      為了驗證信息融合策略的有效性,本文在3.2節(jié)設(shè)置四組實驗對信息融合和直接丟棄不重要卷積核信息兩種策略進行實驗驗證。3.3節(jié)設(shè)置四組實驗對APBM剪枝方法與其他結(jié)構(gòu)化剪枝方法進行了對比實驗,以驗證APBM方法的模型壓縮效果。

      3.1 實驗設(shè)置

      本文評價模型壓縮的指標采用模型識別精度(top-1)、模型參數(shù)量及FLOPs,同時為對比不同剪枝方法在訓(xùn)練成本上的差異,引入每輪花費時間這一指標。

      本文的驗證實驗在VGG16[29]和ResNet56[30]模型上進行,采用的數(shù)據(jù)集為CIFAR-10和CIFAR-100。CIFAR-10數(shù)據(jù)集中共有70 000幅尺寸為32×32像素的彩色圖像,分為10類,其中訓(xùn)練集有50 000幅,驗證集有10 000幅。CIFAR-100數(shù)據(jù)集與CIFAR-10類似,只是類別從10類增加到100類。在實驗過程中遵循Meng等[9]的設(shè)置,對CIFAR-10和CIFAR-100使用簡單的數(shù)據(jù)增強,訓(xùn)練集采用隨機翻轉(zhuǎn)、隨機裁剪和歸一化三種數(shù)據(jù)增強方法,驗證集則只使用歸一化操作。

      實驗代碼均在Pytorch編程框架下完成,顯卡為NVIDIA GTX 1080Ti。為了排除剪枝算法外的超參數(shù)的影響,在對比實驗中參數(shù)設(shè)置都保持一致。參數(shù)設(shè)置參考Meng等[9]的設(shè)置,具體設(shè)置見表1。如非特殊說明,對VGG16和ResNet56的剪枝任務(wù)中APBM方法不進行任何微調(diào)。

      表1 實驗參數(shù)設(shè)置Table 1 Experimental parameter setting

      3.2 剪枝策略設(shè)置

      對VGG16模型的剪枝任務(wù),由于其結(jié)構(gòu)簡單,所以設(shè)置每一層的卷積的剪枝率Z∈而對ResNet56模型的剪枝任務(wù),由于其結(jié)構(gòu)中添加了如圖4所示的兩種殘差結(jié)構(gòu)。在剪枝的過程中需要保證其殘差塊的輸入通道和輸出通道是相同的,對殘差結(jié)構(gòu)的剪枝有很多策略,為了簡單起見,APBM采取如下策略:

      圖4 ResNet56的兩種殘差形式Fig.4 Two residual forms of ResNet56

      (1)ResNet56的第一個卷積剪枝率設(shè)置為0;

      (2)每個殘差塊中的第二個卷積層剪枝率設(shè)置為0,只根據(jù)其中的第一個卷積層的剪枝率剪枝其輸入通道;

      (3)殘差塊中的短路連接中的卷積層剪枝率設(shè)置為0。

      3.3 信息保留策略

      本節(jié)實驗在CIFAR-10數(shù)據(jù)集和CIFAR-100數(shù)據(jù)集上對VGG16和ResNet56兩種網(wǎng)絡(luò)進行剪枝,并對信息融合和直接丟棄不重要卷積核信息兩種方案進行對比,以驗證信息融合的有效性。表2中的方案C、方案D分別代表公式(6)所對應(yīng)的方案和公式(7)所對應(yīng)的方案。由表2可知,使用CIFAR-10數(shù)據(jù)集、CIFAR-100數(shù)據(jù)集對VGG16和ResNet56的剪枝過程中,在相同的剪枝率下往往存在一個β∈[0.7,1),使得方案C得到的最佳精度大于方案D得到的最佳精度。結(jié)果表明選擇一個合適的比例進行信息融合比直接丟棄非重要卷積核信息的效果更好,即信息融合方案為模型的精度保持帶來了正面效益。后續(xù)的實驗將基于方案C進行。

      表2 不同信息保留策略的精度對比Table 2 Accuracy comparison of different information retention strategies

      3.4 在CIFAR-10/CIFAR-100數(shù)據(jù)集中對比

      表3~表5中的指標除常見的精度損失、參數(shù)量下降率和FLOPs減少率外,還增加了訓(xùn)練時每個epoch需要耗費的平均時長,單位為s,以及整個剪枝算法總共消耗epoch數(shù),包括預(yù)訓(xùn)練、剪枝、微調(diào)三個部分。

      表5 VGG16/ResNet56基于CIFAR-100數(shù)據(jù)集的剪枝結(jié)果Table 5 Pruning results of VGG16/ResNet56 on CIFAR-100

      表3展示了APBM剪枝算法與其他剪枝算法在CIFAR-10數(shù)據(jù)集中對VGG16模型的剪枝效果。SWP-δ表示其文獻[9]中的閾值δ。由表3可知,APBM方法比Polarization[8]、SWP[9]、HRank[6]擁有更高的參數(shù)量壓縮比率和FLOPs壓縮比率,分別為92.74%和76.83%,在FLOPs上相較于ABCPruner[7]達到次優(yōu),但APBM在不進行任何微調(diào)的情況下精度僅下降0.01%。對于VGG16這個經(jīng)常在目標檢測、語義分割任務(wù)中做back‐bone的網(wǎng)絡(luò)而言,APBM方法的表現(xiàn)極大地促進了其在移動終端上的部署。

      表3 基于CIFAR-10的VGG16剪枝結(jié)果Table 3 Pruning results of VGG16 on CIFAR-10

      表4中展示了APBM剪枝算法與其他剪枝算法在CIFAR-10數(shù)據(jù)集中對ResNet56模型的剪枝效果。APBM-L和APBM-H分別表示APBM剪枝方法在低剪枝率和高剪枝率的表現(xiàn)。在精度提升0.11%的情況下,APBM方法將ResNet56的模型參數(shù)量和FLOPs分別降低了48.84%和50.05%,比FilterSketch[22]、HRank[6]、Slim‐ming[5]和ABCPruner[7]方法更好;同時APBM在較低剪枝率下精度提升了0.20%。

      表4 基于CIFAR-10的ResNet56剪枝結(jié)果Table 4 Pruning results of ResNet56 on CIFAR-10

      表5中展示了在CIFAR-100數(shù)據(jù)集下各剪枝算法的表現(xiàn),其中對VGG16剪枝后微調(diào)40輪以恢復(fù)模型性能。GReg-1是Wang等[31]提出的第一種算法。APBM算法僅以0.21%的精度損失,將VGG16模型的參數(shù)量以及FLOPs分別減少了72.91%和45.24%。在整體表現(xiàn)上比Polarization[8]和GReg-1[31]更優(yōu)。在基于CIFAR100數(shù)據(jù)集對ResNet56剪枝的任務(wù)中,Slimming[5]方法在FLOPs減少率指標中比APBM方法表現(xiàn)更佳,但APBM方法的參數(shù)量減少率是Slimming[5]的近3倍。GReg-1[31]雖然模型壓縮率更高,但是精度下降較為明顯,而APBM算法并未造成任何精度損失。

      綜合分析表3~表5,使用預(yù)訓(xùn)練權(quán)重的算法,如HRank[6]、ABCPruner[7]、FilterSketch[22]、GReg-1[31]、ChipNet[32],在使用實驗提供的相同的預(yù)訓(xùn)練權(quán)重文件進行剪枝后,精度相較于包括APBM在內(nèi)的其他剪枝算法有著很明顯的下降。從時間角度上分析,APBM方法在對VGG16的剪枝任務(wù)中,每epoch訓(xùn)練耗時相較于原模型訓(xùn)練縮短了一倍,而引入掩膜操作的剪枝算法SWP[9]基本與原模型訓(xùn)練相當(dāng);對于先稀疏后剪枝的算法如Polar‐ization[8]、Slimming[5]、GReg-1[31],其在稀疏訓(xùn)練的耗時也與原模型訓(xùn)練相當(dāng);對于直接采用原模型的預(yù)訓(xùn)練模型進行剪枝的算法而言,如ABCPruner[7]、FilterSketch[22]、HRank[6],其耗時在同等模型壓縮率下與APBM耗時幾乎相同。這也間接驗證了2.5節(jié)從FLOPs角度分析剪枝算法耗時得到的關(guān)系;對ResNet56的訓(xùn)練時間減少不太明顯,因為根據(jù)ShuffleNetV2[33]的理論,模型的速度不僅與FLOPs和參數(shù)量有關(guān),還與輸入輸出通道是否相等有關(guān)、網(wǎng)絡(luò)的分支數(shù)等有關(guān)。從epoch總消耗上來看,APBM方法通常僅需一次訓(xùn)練就可以得最佳的輕量化模型,相較于其他剪枝算法有著最少的總epoch數(shù)。

      同時綜合分析表2~表4,可以發(fā)現(xiàn)即使是不使用融合策略的D方案,在同等的壓縮比率下,模型的精度仍舊比最近的ABCPruner[7]方法的準確率更高,這體現(xiàn)了使用分布之間相對熵動態(tài)衡量卷積核重要程度的準確性。

      3.5 超參數(shù)的影響

      公式(5)中的超參數(shù)A控制著溫度系數(shù)t的最大值,而超參數(shù)β控制信息融合重要信息與非重要信息的比例。圖5和圖6展示了超參數(shù)A和β對基于CIFAR10的VGG16剪枝結(jié)果的影響,當(dāng)A取一個較小的值如100時,模型無法達到收斂,β對結(jié)果的影響也無法直觀地觀察出來;當(dāng)A取更大數(shù)量級的數(shù)值時(A≥1000)時,模型的精度相對穩(wěn)定在一個較高的數(shù)值范圍中。

      圖5 超參數(shù)A對結(jié)果的影響Fig.5 Influence of hyperparameter A on results

      圖6 超參數(shù)A和β對結(jié)果的影響Fig.6 Influence of hyperparameter A and β on results

      由圖5和圖6可以更具體地看出:隨著A的增大,曲線的波動也逐漸減小。這說明較小的A值無法很好地加大相似度分布之間的差異,不利于卷積核重要性的判斷,更大的A值加快了相似度分布之間趨向于one-hot分布的速度,有利于訓(xùn)練過程中的穩(wěn)定。

      當(dāng)A=10 000和A=100 000時,可以觀察到最佳準確率會隨著β的增大先波動上升達到最大值時再波動減小。β設(shè)置得過大,非重要卷積核的比例就會過小,導(dǎo)致非重要卷積核在訓(xùn)練初期更新緩慢,損害了信息融合策略的容錯性;β設(shè)置得過小,非重要卷積核的作用就過于明顯,抑制了重要卷積核的表現(xiàn),不利于模型性能的提升。因此β的設(shè)置需要在剪枝容錯性和重要卷積核的表現(xiàn)之間找到一個平衡點,使得模型性能有所提升,即選取合理的比例進行信息融合可以有利于模型精度的保持。

      4 結(jié)束語

      本文提出了一種基于信息融合策略的CNN結(jié)構(gòu)化剪枝方法。本方法使用帶有溫度系數(shù)的softmax函數(shù)將信息熵差值平方概率化,并作為卷積核之間的相似性分布。使用分布之間的相對熵評估卷積核的重要性,同時為了提高APBM的容錯性,提出信息融合策略生成新的卷積核并組成融合網(wǎng)絡(luò)。實驗證明選擇合適的比例進行信息融合相比直接丟棄不重要卷積核信息有著更少的精度損失。同時實驗表明本文方法在不需要預(yù)訓(xùn)練模型的前提下,又能在VGG16、ResNet56模型的剪枝任務(wù)中相比其他方法以較小的剪枝成本得到更好的模型壓縮效果。進一步的工作將探索如何自動搜索β以提高APBM剪枝的效率,以及在更大的數(shù)據(jù)集上進行評估和測試,更全面地驗證APBM的有效性。

      猜你喜歡
      剪枝信息熵卷積
      人到晚年宜“剪枝”
      基于信息熵可信度的測試點選擇方法研究
      基于3D-Winograd的快速卷積算法設(shè)計及FPGA實現(xiàn)
      基于YOLOv4-Tiny模型剪枝算法
      從濾波器理解卷積
      電子制作(2019年11期)2019-07-04 00:34:38
      基于傅里葉域卷積表示的目標跟蹤算法
      基于信息熵的實驗教學(xué)量化研究
      電子測試(2017年12期)2017-12-18 06:35:48
      一種基于信息熵的雷達動態(tài)自適應(yīng)選擇跟蹤方法
      剪枝
      天津詩人(2017年2期)2017-03-16 03:09:39
      基于信息熵的IITFN多屬性決策方法
      镇巴县| 贵州省| 台东县| 黎城县| 广丰县| 游戏| 高州市| 玉溪市| 陆河县| 西乌| 宽城| 万山特区| 栾城县| 陵川县| 二连浩特市| 沂源县| 汉阴县| 平顶山市| 和田县| 龙游县| 呼图壁县| 搜索| 鲜城| 收藏| 英山县| 万安县| 化州市| 唐海县| 大渡口区| 综艺| 定南县| 涞源县| 平邑县| 福州市| 大宁县| 中西区| 双牌县| 隆尧县| 盈江县| 余干县| 湘潭市|