馮敬翔
(華北計(jì)算技術(shù)研究所,北京 100083)
自2012年AlexNet在ILSVRC挑戰(zhàn)賽中奪冠后,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network)在視覺(jué)領(lǐng)域的單目標(biāo)檢測(cè)、多分類識(shí)別、視頻目標(biāo)檢測(cè)、圖像分割[1]等領(lǐng)域受到廣泛應(yīng)用,此后其發(fā)展總體趨勢(shì)向著網(wǎng)絡(luò)層級(jí)更深、參數(shù)規(guī)模更大的方向行進(jìn)。隨著智能應(yīng)用在邊緣端部署需求的擴(kuò)張,邊緣設(shè)備存儲(chǔ)空間、內(nèi)存大小、運(yùn)行功耗、實(shí)時(shí)性對(duì)于計(jì)算性能的限制,已經(jīng)成為卷積神經(jīng)網(wǎng)絡(luò)在邊緣端的實(shí)際部署瓶頸。為了能顯著縮減模型占用的資源和計(jì)算開(kāi)銷,卷積神經(jīng)網(wǎng)絡(luò)壓縮相關(guān)算法的需求變得日益迫切。
本文提出基于遷移學(xué)習(xí)方法來(lái)改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)稀疏化過(guò)程,探究針對(duì)基于BN層縮放因子的通道剪枝能否據(jù)此獲得更高的剪枝閾值,對(duì)其剪枝效果與迭代收斂性進(jìn)行研究驗(yàn)證,并從結(jié)構(gòu)搜索的觀點(diǎn)對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行解釋。主要工作如下:
1)從多分類大數(shù)據(jù)集向小數(shù)據(jù)集實(shí)現(xiàn)遷移,對(duì)比加載預(yù)訓(xùn)練權(quán)重初始化重新訓(xùn)練、與凍結(jié)部分卷積層參數(shù)微調(diào)對(duì)稀疏化效果產(chǎn)生的影響。
2)對(duì)稀疏化后的通道按權(quán)重排序并剪枝,考察通道剪枝閾值選取容限,測(cè)試新形成網(wǎng)絡(luò)結(jié)構(gòu)的精度保持情況。
3)進(jìn)一步地,利用迭代剪枝方法,探究模型精度保持極限與結(jié)構(gòu)收斂性。從而證明,遷移學(xué)習(xí)更易實(shí)現(xiàn)充分的權(quán)值稀疏化,利于剪枝迭代快速趨近至該搜索空間的一個(gè)網(wǎng)絡(luò)結(jié)構(gòu)局部最優(yōu)解。
卷積神經(jīng)網(wǎng)絡(luò)強(qiáng)大的特征采樣性能來(lái)自于大量的參數(shù)和復(fù)雜的多層結(jié)構(gòu),現(xiàn)代卷積神經(jīng)網(wǎng)絡(luò)也都多在經(jīng)典結(jié)構(gòu)上加深加寬來(lái)提高精度。如VGG[2]在AlexNet[3]的基礎(chǔ)上,將層數(shù)從8層增加到19層;GoogLeNet[4]增加到22層,采用模塊化(Inception結(jié)構(gòu))設(shè)計(jì),并采用平均池化(average pooling)代替了全連接;ResNet[5]則通過(guò)使用多個(gè)有參層來(lái)學(xué)習(xí)輸入輸出之間的殘差表示來(lái)取代一般輸入,維持深度增加對(duì)于準(zhǔn)確率的正收益,深度也從標(biāo)準(zhǔn)的152層甚至發(fā)展到上千層。
如圖1所示,傳統(tǒng)剪枝方法分為baseline訓(xùn)練、剪枝、微調(diào)3個(gè)步驟。從剪枝粒度上,可分為非結(jié)構(gòu)化剪枝[6](unstructured pruning)和結(jié)構(gòu)化剪枝(structured pruning)這2大類。非結(jié)構(gòu)化剪枝即直接修剪單體權(quán)重(individual weights),形成的權(quán)重矩陣是稀疏的,不易實(shí)現(xiàn)通用易部署的壓縮和加速效果;結(jié)構(gòu)化剪枝是針對(duì)卷積核(filter)[7]、通道(channel)[8-9]或是層(layer)[10]進(jìn)行剪枝。卷積核剪枝工作方向上,文獻(xiàn)[11]改進(jìn)了基于卷積核權(quán)重排序進(jìn)行剪枝的策略,采用卷積核的正則項(xiàng)L1絕對(duì)值之和作為剪枝權(quán)重;層剪枝需要對(duì)完整的層級(jí)進(jìn)行裁剪,靈活性較差,精度風(fēng)險(xiǎn)較高,一般用于裁剪比較深的網(wǎng)絡(luò)結(jié)構(gòu)[12];通道剪枝是當(dāng)前結(jié)構(gòu)化剪枝方法中,研究最多、工程應(yīng)用最廣的。其運(yùn)行粒度較細(xì),適合傳統(tǒng)的機(jī)器學(xué)習(xí)框架,原模型結(jié)構(gòu)保留較好。
圖1 傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)剪枝過(guò)程示意圖
模型剪枝此前長(zhǎng)期被認(rèn)為是去掉神經(jīng)網(wǎng)絡(luò)中對(duì)推理預(yù)測(cè)結(jié)果貢獻(xiàn)較低的參數(shù),降低通道和神經(jīng)元的數(shù)量,以達(dá)到縮減模型體積、降低存儲(chǔ)計(jì)算成本的目的[13]。近年來(lái)隨著相關(guān)領(lǐng)域理解加深,剪枝被重新認(rèn)知為一種網(wǎng)絡(luò)結(jié)構(gòu)搜索[14](Neural Architecture Search, NAS)行為,即通過(guò)剪枝發(fā)現(xiàn)一個(gè)高效的網(wǎng)絡(luò)結(jié)構(gòu),其針對(duì)目標(biāo)數(shù)據(jù)集表現(xiàn)得更好[15]。相關(guān)推論來(lái)自于對(duì)一些剪枝后得到的模型結(jié)構(gòu)初始化重訓(xùn)(train-from-scratch),其效果未必比微調(diào)(finetune)后的結(jié)果差[11,14]。在引入了優(yōu)化算法理論與流形學(xué)習(xí)(Manifold Learning)觀點(diǎn)后,NAS工作方向得以擴(kuò)充,不僅認(rèn)為剪枝模型結(jié)構(gòu)與參數(shù)確實(shí)存在解耦可能,同時(shí)探討了剪枝同結(jié)構(gòu)重訓(xùn)收斂速度差異與精度差異的產(chǎn)生原因[15-16]。文獻(xiàn)[17]將差異主要因素歸因?yàn)槌跏蓟鸬乃阉鞣较蚴諗坎町?,并提出了迭代中?quán)重多次初始化以糾正空間搜索趨向的方法;而文獻(xiàn)[18]作為對(duì)前者的后續(xù)研究,提出權(quán)重采用掩模(mask)部分初始化可能取得更好的效果,以證明剪枝得到的mask結(jié)構(gòu)本身具有一定的信息量,側(cè)面支持了NAS觀點(diǎn)的相關(guān)結(jié)論。此后工作則認(rèn)為,剪枝結(jié)構(gòu)再還原的性能差異可能來(lái)源于稀疏性(sparsity)、結(jié)構(gòu)化與否、模型復(fù)雜度、學(xué)習(xí)率設(shè)定等多個(gè)維度的原因[19],而后大量實(shí)驗(yàn)工作證明有一定稀疏度的結(jié)構(gòu)化剪枝,其產(chǎn)生的結(jié)構(gòu)重訓(xùn)是普遍可以還原精度的[20]。
為了探究遷移學(xué)習(xí)是否對(duì)稀疏化工作存在正向影響,本文采用一種泛用性強(qiáng)、易復(fù)現(xiàn)的剪枝方案,即引入BN層(Batch Normalization)尺度因子作為通道裁剪依據(jù)。在每個(gè)通道中加入一個(gè)縮放因子,與通道輸出相乘。統(tǒng)一初始化后,對(duì)BN層的縮放因子添加L1正則項(xiàng),通過(guò)聯(lián)合訓(xùn)練以實(shí)現(xiàn)因子稀疏化,然后在保證shortcut層級(jí)前后維度一致的前提下,按設(shè)定的閾值剪去縮放因子較小的通道。根據(jù)剪掉的通道,再統(tǒng)一剪去失去作用的卷積核并重構(gòu)全連接層,以形成新的模型結(jié)構(gòu)。
引入縮放因子并初始化、重訓(xùn)、閾值剪枝的流程如圖2所示。
圖2 BN通道剪枝過(guò)程中基于縮放因子篩選通道模型圖
引入BN層通道因子后的損失函數(shù)如下:
(1)
其中,(x,y)代表訓(xùn)練數(shù)據(jù)和標(biāo)簽,W代表參數(shù)。前半部分是CNN原本的損失函數(shù),后半部分是引入的懲罰項(xiàng),λ是稀疏化因子用以平衡2項(xiàng)。
而B(niǎo)N層激活值的均值和方差計(jì)算如下:
(2)
(3)
則BN層輸出的計(jì)算過(guò)程可以表示為:
(4)
(5)
其中的γ和β都是可以訓(xùn)練的BN層線性變換參數(shù)。選擇因數(shù)項(xiàng)作為縮放因子則既可以保持縮放效果不會(huì)被卷積層簡(jiǎn)單學(xué)習(xí)直接恢復(fù),又不過(guò)度影響模型結(jié)構(gòu)。
前述引入g(γ)項(xiàng)的目的是在不影響L的可導(dǎo)性的前提下實(shí)現(xiàn)縮放因子稀疏化,g(γ)函數(shù)是縮放因子上的誘導(dǎo)懲罰項(xiàng),通過(guò)使用形如下式的L1正則化:
(6)
縮放因子分布的稀疏性(sparsity)將直接影響剪枝閾值的確定,即決定了通道剪枝可剪容限與精度保存能力。引入L1正則項(xiàng)形式的懲罰因子后,BN層引入的尺度因子將根據(jù)懲罰系數(shù)λ值不同程度向0趨近,其分布形式也會(huì)因λ值的選擇而不同。剪去縮放因子近似為0所對(duì)應(yīng)的輸出通道被認(rèn)為對(duì)模型精度傷害較小,因此希望剪枝時(shí)有更多的縮放因子集中在0附近。圖3為BN層縮放因子稀疏化前后、充分與否分布示意圖。
圖3 BN層縮放因子稀疏化前后、充分與否分布示意圖
剪枝過(guò)程中發(fā)現(xiàn),懲罰值λ依賴于人工選取,λ設(shè)置過(guò)小會(huì)使得稀疏化不充分而影響剪枝性能;λ過(guò)大會(huì)影響稀疏化后模型收斂與精度恢復(fù)。但是單純的更換λ值對(duì)于稀疏化效果的提升終究有限,相關(guān)工作也表明,數(shù)據(jù)集與模型復(fù)雜度確定,參數(shù)一旦訓(xùn)練形成可能就存在稀疏化能力的上限[19]。故而,在此嘗試?yán)眠w移學(xué)習(xí)方法形成其本身就更適合稀疏化的權(quán)重。
同時(shí)使用遷移可能伴隨著其他收益。在訓(xùn)練過(guò)程中,懲罰項(xiàng)不可避免地將對(duì)精度的收斂造成負(fù)面影響,直至后續(xù)訓(xùn)練過(guò)程將正則化效果迭代平衡。所以總體精度趨勢(shì)會(huì)表現(xiàn)為先向下,后震蕩,再回升至最終收斂。
本文在此嘗試引入遷移訓(xùn)練,對(duì)模型稀疏化過(guò)程產(chǎn)生一系列正面影響:
1)精度起點(diǎn)更高。源模型的初始性能相對(duì)直接初始化重訓(xùn)好。
2)精度回升更充分。模型稀疏化前后對(duì)于精度的影響更小。
3)最終稀疏化程度高。稀疏訓(xùn)練收斂后縮放因子分布更向0集中。
實(shí)驗(yàn)方法基于由多分類的大數(shù)據(jù)集向單目標(biāo)識(shí)別的小數(shù)據(jù)集遷移。對(duì)數(shù)據(jù)域D與任務(wù)T都不同的情況遷移存在一定風(fēng)險(xiǎn),遷移方法根據(jù)遷移目標(biāo)數(shù)據(jù)集與任務(wù)而異。
如圖4,通過(guò)凍結(jié)源數(shù)據(jù)域(source domain)預(yù)訓(xùn)練模型的部分卷積層,訓(xùn)練剩下的卷積層與全連接層形成在目標(biāo)數(shù)據(jù)域(target domain)新任務(wù)的識(shí)別能力。遷移所凍結(jié)的卷積層數(shù)量不僅取決于模型結(jié)構(gòu),還依賴于源數(shù)據(jù)域與目標(biāo)域具體內(nèi)容。如果凍結(jié)全部卷積層后模型效果不佳,嘗試解鎖更多的卷積層,或只使用預(yù)訓(xùn)練模型參數(shù)作為初始值直接進(jìn)行重訓(xùn)。
圖4 不同層級(jí)遷移方法網(wǎng)絡(luò)各層參數(shù)處理示意圖
為了保證遷移后微調(diào)(finetune)效果,在此同時(shí)使用warm-up策略對(duì)初期學(xué)習(xí)率進(jìn)行調(diào)整,即初始學(xué)習(xí)率非常低,在前幾個(gè)epoch內(nèi)快速升高,然后在較長(zhǎng)的迭代過(guò)程中逐漸下降。主要用于避免微調(diào)過(guò)程中初始學(xué)習(xí)率過(guò)大形成錯(cuò)誤先驗(yàn),造成提前過(guò)擬合現(xiàn)象,以保持分布平穩(wěn)[21]。當(dāng)使用梯度下降法以學(xué)習(xí)率η在源數(shù)據(jù)集訓(xùn)練k次時(shí)的權(quán)重變化情況為:
(7)
遷移后對(duì)于目標(biāo)數(shù)據(jù)集進(jìn)行微調(diào)權(quán)重更新為:
(8)
源數(shù)據(jù)域選自COCO數(shù)據(jù)集,COCO數(shù)據(jù)集全稱為Microsoft Common Objects in Context,最早由微軟進(jìn)行標(biāo)注整理,是當(dāng)前目標(biāo)識(shí)別、檢測(cè)等領(lǐng)域的一個(gè)較為權(quán)威可靠的多分類數(shù)據(jù)集,包含超過(guò)20萬(wàn)張圖像。其中YOLOv3選用的80個(gè)類別當(dāng)中有超過(guò)50萬(wàn)個(gè)目標(biāo)標(biāo)注,是最廣泛公開(kāi)的目標(biāo)檢測(cè)數(shù)據(jù)庫(kù),包括person、bicycle、bus、train、cat等。
目標(biāo)數(shù)據(jù)域是Oxford的綜合人手?jǐn)?shù)據(jù)集,包含了4807張手部訓(xùn)練數(shù)圖像和821張測(cè)試圖像,總共標(biāo)注了13000余個(gè)手部實(shí)例。每張圖像標(biāo)注了所有人類可感知到的所有手,單個(gè)手部實(shí)例超過(guò)1500平方像素以保證可檢測(cè)訓(xùn)練。標(biāo)注以矩形坐標(biāo)邊界形式記錄,對(duì)人的姿勢(shì)或可見(jiàn)度與環(huán)境因素沒(méi)有任何限制[23]。
基于前述網(wǎng)絡(luò)結(jié)構(gòu)搜索(NAS)工作方向的觀點(diǎn),本文對(duì)YOLOv3網(wǎng)絡(luò)進(jìn)行剪枝壓縮,其過(guò)程如圖5所示,本文將其描述為一類優(yōu)化算法(Optimizer)過(guò)程。
圖5 引入遷移策略的網(wǎng)絡(luò)空間結(jié)構(gòu)局部最優(yōu)解搜索過(guò)程
實(shí)驗(yàn)設(shè)計(jì)利用本文提出引入的遷移策略形成NAS過(guò)程的不同初始化,一次通道剪枝過(guò)程可視為尋優(yōu)過(guò)程中的單次迭代,其迭代步長(zhǎng)則直接由單次通道剪枝的閾值大小決定,即驗(yàn)證能否通過(guò)遷移并稀疏化形成不同的初始化狀態(tài),其在相同的迭代方向上是否可以收斂至一個(gè)相比直接訓(xùn)練剪枝潛能更好的局部最優(yōu)(local optimal)結(jié)構(gòu)。
實(shí)驗(yàn)第一部分是比較使用2種遷移方案并測(cè)試稀疏化效果:1)加載yolov3.weight作為預(yù)訓(xùn)練權(quán)重,重新訓(xùn)練模型再進(jìn)行稀疏化,模型記為Retrain。2)凍結(jié)來(lái)自COCO數(shù)據(jù)集的全部卷積層權(quán)重,根據(jù)其精度回升與收斂情況微調(diào)并稀疏化,模型記為Frozen。兩者擬采用同樣的稀疏化懲罰值λ,暫取λ=0.001。訓(xùn)練和稀疏化epoch=300,受設(shè)備限制batch size=8。
由表1可知,參數(shù)遷移程度比較高的Frozen方法對(duì)精度造成了輕微損害,但仍在可接受范圍內(nèi)。表2和表3給出了對(duì)Retrain方法不同閾值剪枝的測(cè)試結(jié)果。
表1 不同層級(jí)遷移方法稀疏化后精度保持情況
表2 λ=0.001下Retrain方法稀疏化后剪枝結(jié)果
實(shí)驗(yàn)中,Retrain方法在未經(jīng)過(guò)微調(diào)時(shí),要求剪去65%的參數(shù)時(shí)即已經(jīng)發(fā)生了較大精度損害,閾值增大到70%時(shí)已經(jīng)完全失去識(shí)別能力。據(jù)此認(rèn)為當(dāng)前λ=0.001的懲罰值已經(jīng)不能對(duì)當(dāng)前模型實(shí)現(xiàn)充分稀疏化;表3中,當(dāng)增大稀疏化因子到λ=0.005時(shí),剪枝閾值范圍得以提高到較好水平:
表3 λ=0.005下Retrain方法稀疏化后較好剪枝結(jié)果
實(shí)驗(yàn)發(fā)現(xiàn),后續(xù)即使再調(diào)整λ參數(shù)也很難在保持精度的同時(shí)再提高剪枝閾值,基本可以認(rèn)為近似達(dá)到了當(dāng)前方法對(duì)模型參數(shù)的剪枝能力上限。然后考察Frozen的剪枝性能。
從表4的結(jié)果觀察到,F(xiàn)rozen方法模型可剪去的參數(shù)量非常大,即Frozen方法在λ=0.001下已經(jīng)形成了非常強(qiáng)大的稀疏性,本文在保留網(wǎng)絡(luò)層級(jí)連接性的前提下,避免剪掉通道最高閾值,剪去約97.1%的參數(shù)時(shí)仍能保持精度。
表4 λ=0.001下Frozen方法稀疏化后剪枝結(jié)果
實(shí)驗(yàn)第二部分將按照前述流程進(jìn)行迭代剪枝性能驗(yàn)證。本文采用閾值0.8為步長(zhǎng)進(jìn)行剪枝迭代,并在第一次迭代后按λ=0.001的懲罰值稀疏化重訓(xùn)300 epoch,再做第二次閾值為0.8的剪枝迭代。
表5中第二次剪枝迭代之后出現(xiàn)了一定的精度損害。為了保證精度恢復(fù)到正常水平,在此進(jìn)行了一次微調(diào),放到原始數(shù)據(jù)中訓(xùn)練100 epoch使精度回升。此時(shí)相比單次閾值剪枝極限參數(shù)量(676萬(wàn))又壓縮了不到1%,此后再迭代有較大精度風(fēng)險(xiǎn),而且在保留通道最高的閾值基礎(chǔ)上已經(jīng)很難繼續(xù)壓縮(再以較大精度損失仍可壓縮不超過(guò)2%),可以認(rèn)為至此已經(jīng)接近了迭代極限,且和單次剪枝收斂于近似同一個(gè)結(jié)構(gòu)最優(yōu)解。
表5 Frozen方法迭代剪枝各步驟實(shí)驗(yàn)結(jié)果
基于NAS過(guò)程觀點(diǎn),形成以下2個(gè)推論以解釋其收斂過(guò)程:
1)在保持精度的前提下,迭代剪枝不能再輕易壓縮參數(shù)量時(shí),則可以證明當(dāng)前剪型趨近于模型結(jié)構(gòu)搜索空間中的一個(gè)局部結(jié)構(gòu)最優(yōu)解。
2)模型收斂于同樣的局部最優(yōu)解所需輪次越少,證明搜索起點(diǎn)與尋優(yōu)方向越高效,即模型有效參量更少,稀疏化越充分。
至此,可以認(rèn)定Frozen遷移方法確實(shí)能夠形成強(qiáng)稀疏性,剪枝所形成的結(jié)構(gòu)是對(duì)于這一數(shù)據(jù)集與任務(wù)域相對(duì)高效的結(jié)構(gòu)?;谶w移方法的稀疏化策略大大提高了通道剪枝的可行閾值,提供了良好的結(jié)構(gòu)搜索起點(diǎn),使其可以更快地收斂于網(wǎng)絡(luò)結(jié)構(gòu)搜索空間中的一個(gè)局部最優(yōu)解。
在此,將本文利用遷移方法改進(jìn)后的BN通道剪枝方法與2種針對(duì)YOLOv3的閾值通道剪枝策略進(jìn)行對(duì)比。本文方法仍然記為Frozen。
第一種對(duì)設(shè)計(jì)shortcut的卷積層也進(jìn)行了剪枝,剪枝采用每組shortcut中第一個(gè)卷積層的mask,使用5種mask實(shí)現(xiàn)5組shortcut相關(guān)卷積層剪枝,表6中記為Shortcut_mask;第二種用全局閾值篩選出各個(gè)卷積層的mask,再對(duì)mask取并集,歸并后再進(jìn)行剪枝,此方法相對(duì)激進(jìn),但在這個(gè)任務(wù)域上同樣表現(xiàn)良好,不同剪枝閾值記為Shortcut_merge_0.9和Shortcut_merge_0.95。
表6 本文方法與其他閾值通道剪枝改進(jìn)方法對(duì)比
可以看到本文使用遷移改進(jìn)基礎(chǔ)BN通道剪枝策略后,和一些針對(duì)性更強(qiáng)的剪枝方法相比依然有競(jìng)爭(zhēng)力,在大體相當(dāng)?shù)木确秶鷥?nèi)壓縮率較為可觀。
在充分驗(yàn)證遷移方法對(duì)于Oxford手部圖像數(shù)據(jù)集的權(quán)重稀疏化、剪枝閾值選取的改進(jìn)效果后,本文用同樣的方法對(duì)一些其他數(shù)據(jù)集進(jìn)行剪枝調(diào)試,并開(kāi)啟混合精度來(lái)加速訓(xùn)練。
驗(yàn)證的數(shù)據(jù)集包括,VOC 2012目標(biāo)檢測(cè)數(shù)據(jù)集,包含11530張圖片,來(lái)自20個(gè)分類;VisDrone無(wú)人機(jī)目標(biāo)檢測(cè)數(shù)據(jù)集,包含10209張靜態(tài)圖片,包含多個(gè)城市復(fù)雜環(huán)境在不同密度下的街景物體識(shí)別,檢測(cè)難度較高。表7為驗(yàn)證結(jié)果。
表7 本文方法在其他數(shù)據(jù)集上驗(yàn)證結(jié)果
本節(jié)針對(duì)實(shí)驗(yàn)結(jié)果成因進(jìn)行分析。通道剪枝存在一個(gè)基本假設(shè):BN層引入的縮放因子,能有效衡量通道輸出對(duì)于最終識(shí)別精度的貢獻(xiàn)度,剪去的參數(shù)是模型在目標(biāo)數(shù)據(jù)上低貢獻(xiàn)度的一種冗余(redundancy),即卷積神經(jīng)網(wǎng)絡(luò)的過(guò)參數(shù)化[24]。遷移方法本身是利用源域與目標(biāo)域之間的關(guān)聯(lián)性,把源域?qū)W到的知識(shí)遷移到目標(biāo)任務(wù)域或數(shù)據(jù)集[25]。實(shí)驗(yàn)從大而復(fù)雜的多分類數(shù)據(jù)集向小數(shù)據(jù)集遷移,所凍結(jié)的淺層權(quán)重是更加泛化(generalize)的輪廓、紋理特征采樣,微調(diào)并重新形成全連接層時(shí)對(duì)其中一部分顯然低相關(guān)的特征利用率較低,權(quán)重貢獻(xiàn)相比重新訓(xùn)練集中得多。此后的稀疏化過(guò)程利用了這一特性,正則項(xiàng)更容易使大部分的低貢獻(xiàn)特征受到懲罰并最終收斂到0附近,從而大大提升稀疏化效果,顯著提高通道剪枝閾值,實(shí)現(xiàn)更高的壓縮率。
在通道剪枝的研究方向上,本文嘗試用改變網(wǎng)絡(luò)結(jié)構(gòu)搜索初始化策略的方式,區(qū)別于對(duì)其尋優(yōu)迭代單步搜索優(yōu)化的方案,以引導(dǎo)其收斂于一個(gè)更易于剝離網(wǎng)絡(luò)中低效參數(shù)的局部最優(yōu)解。本文通過(guò)向基于BN層縮放因子的通道剪枝引入遷移學(xué)習(xí)方法,并對(duì)比了不同層級(jí)遷移策略對(duì)通道剪枝壓縮性能的影響。數(shù)據(jù)表明,本文方法在維持原模型精度在一定范圍內(nèi)的同時(shí),實(shí)現(xiàn)了更高壓縮率,并進(jìn)一步針對(duì)剪枝結(jié)構(gòu)搜索的收斂性與稀疏化性能進(jìn)行了實(shí)驗(yàn)推證。
通道剪枝并非對(duì)于卷積神經(jīng)網(wǎng)絡(luò)部署優(yōu)化的最終壓縮手段,其壓縮效果也并非完全符合實(shí)際嵌入式智能應(yīng)用需求。本文的后續(xù)工作還包括但不僅限于:利用層剪枝方法壓縮層級(jí)結(jié)構(gòu)并降低推理開(kāi)銷,利用量化手段進(jìn)一步壓縮邊緣端內(nèi)存占用與存儲(chǔ)體積等。