<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          一文帶你了解NeurlPS2020的模型剪枝研究

          共 5392字,需瀏覽 11分鐘

           ·

          2020-12-28 11:42

          ?

          【GiantPandaCV導(dǎo)語(yǔ)】「本篇文章主要對(duì)NeurlPS 2020會(huì)議中模型剪枝工作進(jìn)行簡(jiǎn)單的介紹和總結(jié),希望能夠?qū)ο肓私饽P图糁ψ钚鹿ぷ鞯呐笥延兴鶐椭?/strong>。

          ?

          前置知識(shí)

          為了大家更好理解nips2020的最新剪枝工作,這里先介紹一下其中涉及的基礎(chǔ)知識(shí)。如果您對(duì)模型剪枝比較熟悉,可以直接跳過(guò)本部分。

          • 核心思想:剔除模型中“不重要”的權(quán)重,使模型減少參數(shù)量和計(jì)算量,同時(shí)盡量保證模型的性能不受影響。

          接下來(lái)我將從幾個(gè)角度切入,對(duì)不同的剪枝方法進(jìn)行分類和特點(diǎn)總結(jié),方便讀者盡快理解相關(guān)概念。

          • 結(jié)構(gòu)化剪枝 VS 非結(jié)構(gòu)化剪枝

            結(jié)構(gòu)化剪枝和非結(jié)構(gòu)化剪枝的主要區(qū)別在于剪枝權(quán)重的粒度。如下圖所示,結(jié)構(gòu)化剪枝的粒度較大,主要是在卷積核的channel和Filter維度進(jìn)行裁剪,而非結(jié)構(gòu)化剪枝主要是對(duì)單個(gè)權(quán)重進(jìn)行裁剪。兩類剪枝方法各有優(yōu)勢(shì)。其中,非結(jié)構(gòu)化剪枝能夠?qū)崿F(xiàn)更高的壓縮率,同時(shí)保持較高的模型性能。然而其稀疏結(jié)構(gòu)對(duì)于硬件并不友好,實(shí)際加速效果并不明顯,而結(jié)構(gòu)化剪枝恰恰相反。

            圖1 不同類型剪枝的差別
          • 靜態(tài)剪枝 VS 動(dòng)態(tài)剪枝

            靜態(tài)剪枝方法是根據(jù)整個(gè)訓(xùn)練集訓(xùn)練后的結(jié)果,評(píng)估權(quán)重的重要程度,「永久性」裁剪掉重要程度小的權(quán)重參數(shù)。然而,動(dòng)態(tài)剪枝方法則是「保留」所有的權(quán)重參數(shù),根據(jù)每次輸入的數(shù)據(jù)不同衡量權(quán)重參數(shù)的重要程度,將不重要權(quán)重參數(shù)忽略計(jì)算,從而實(shí)現(xiàn)動(dòng)態(tài)剪枝。動(dòng)態(tài)剪枝方法能使CNN網(wǎng)絡(luò)具備更多的表示形式,因此其通常能夠有更好性能表現(xiàn)。

          • Retraining/finetuning

            當(dāng)前模型剪枝的經(jīng)典工作流程“預(yù)訓(xùn)練-剪枝-精度恢復(fù)”是由韓松在2015年提出來(lái)的。雖然目前這個(gè)工作范式正在受到一些新的理論/現(xiàn)象挑戰(zhàn),例如:彩票理論等。但其目前仍是比較有效的剪枝工作流。其中,Retraining/finetuning都是精度恢復(fù)過(guò)程的一種方法,主要是將剪枝后的模型繼續(xù)在訓(xùn)練集上進(jìn)行訓(xùn)練,提升剪枝后模型的表現(xiàn)。

          • 彩票假說(shuō)

            彩票假說(shuō)是ICLR2019會(huì)議的best paper,其假說(shuō)主要是「隨機(jī)初始化的密集神經(jīng)網(wǎng)絡(luò)包含一個(gè)初始化的子網(wǎng),當(dāng)經(jīng)過(guò)隔離訓(xùn)練時(shí),它可以匹配訓(xùn)練后最多相同迭代次數(shù)的原始網(wǎng)絡(luò)的測(cè)試精度」。其實(shí)彩票假說(shuō)的提出,是對(duì)傳統(tǒng)“預(yù)訓(xùn)練-剪枝-精度恢復(fù)”工作流的挑戰(zhàn)。因?yàn)橹栽谀P皖A(yù)訓(xùn)練之后進(jìn)行裁剪,是認(rèn)為預(yù)訓(xùn)練模型的權(quán)重對(duì)于壓縮后模型的精度恢復(fù)是十分重要的,然而彩票理論卻認(rèn)為通過(guò)隨機(jī)初始化權(quán)重的子網(wǎng)絡(luò)仍可以達(dá)到原始網(wǎng)絡(luò)的精度。關(guān)于彩票理論的理解以及進(jìn)展,以后會(huì)進(jìn)行更深層次的探討。(挖個(gè)坑給自己hhh)

          正文

          • Pruning Filter in Filter / Code

            目前剪枝技術(shù)可以分成兩大類:結(jié)構(gòu)化剪枝(filter,channel維度等等)和非結(jié)構(gòu)化剪枝(單個(gè)權(quán)重)。這兩種方法的主要區(qū)別是裁剪權(quán)重的粒度。其中,結(jié)構(gòu)化剪枝方法裁剪權(quán)重的粒度較大,裁剪后的網(wǎng)絡(luò)更符合硬件設(shè)備的計(jì)算特點(diǎn),但是卻無(wú)法達(dá)到很高的壓縮率。非結(jié)構(gòu)化剪枝方法裁剪權(quán)重的粒度較小,裁剪后的能夠?qū)崿F(xiàn)更高的壓縮率,但是并不適合硬件設(shè)備計(jì)算。為了結(jié)合這兩種方法的優(yōu)勢(shì),這篇文章提出了一種 SWP (Stripe-Wise Pruning)的方法,將維度為C * K * K的卷積核分成K * K個(gè) 1 * 1 * C的卷積核,以1 * 1 * C為單位對(duì)卷積核進(jìn)行裁剪。其中,引入可學(xué)習(xí)的參數(shù)“Filter skeleton”表示裁剪后卷積核的shape。實(shí)驗(yàn)結(jié)果表明,SWP剪枝方法比之前Filter剪枝方法更加有效,并且在CIFAR-10和ImageNet數(shù)據(jù)集上達(dá)到SOTA效果。

          • Pruning neural networks without any data by conserving synaptic flow / Code

            即彩票假說(shuō)被提出后,人們進(jìn)行了大量的“訓(xùn)練-剪枝”循環(huán)試驗(yàn),證實(shí)了在網(wǎng)絡(luò)初始化時(shí)確實(shí)存在“winning ticket”能夠達(dá)到原網(wǎng)絡(luò)相似精度的現(xiàn)象。但是隨后人們又提出一些問(wèn)題:在不對(duì)子網(wǎng)絡(luò)進(jìn)行訓(xùn)練甚至不研究數(shù)據(jù)集的前提下,能夠在網(wǎng)絡(luò)權(quán)重初始化時(shí)直接識(shí)別出來(lái)“winning ticket”嗎?該篇文章對(duì)于這個(gè)問(wèn)題的回答是肯定的。之前的基于Gradient的初始化剪枝算法會(huì)存在網(wǎng)絡(luò)層崩塌,過(guò)早的剪枝會(huì)使網(wǎng)絡(luò)層變得不可訓(xùn)練等問(wèn)題。該篇文章提出了Iterative Synaptic Flow Pruning (SynFlow)方法,解決了這些問(wèn)題。另外,值得一提的是,這種方法并不需要訓(xùn)練數(shù)據(jù)集,就能夠和目前存在的SOTA剪枝效果持平甚至超過(guò)。

          • Greedy Optimization Provably Wins the Lottery: Logarithmic Number of Winning Tickets is Enough / Code

            神經(jīng)網(wǎng)絡(luò)模型往往都有大量的冗余參數(shù),可以被剪枝算法刪除和壓縮。但是存在一個(gè)問(wèn)題:允許模型性能減少某一程度下,我們到底能夠剪枝掉多少參數(shù)?該篇文章給出了一個(gè)回答。其提出一種基于剪枝算法的貪心優(yōu)化方法。不同于之前工作對(duì)網(wǎng)絡(luò)的結(jié)構(gòu)和參數(shù)量的要求,該工作不對(duì)原始網(wǎng)絡(luò)冗余參數(shù)量有較高要求,其算法更能揭示實(shí)際使用的網(wǎng)絡(luò)的情況。

          • HYDRA: Pruning Adversarially Robust Neural Networks / Code

            在安全要求苛刻和計(jì)算資源受限的場(chǎng)景下,深度學(xué)習(xí)面臨缺少對(duì)抗攻擊的魯棒性和模型龐大的參數(shù)等挑戰(zhàn)。絕大多數(shù)研究只關(guān)注其中一個(gè)方面。該篇文章讓模型剪枝考慮對(duì)抗訓(xùn)練的因素,以及讓對(duì)抗訓(xùn)練目標(biāo)指導(dǎo)哪些參數(shù)應(yīng)該進(jìn)行裁剪。他們將模型剪枝看成一個(gè)經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化問(wèn)題,并提出一種叫做HYDRA的方法,使得被壓縮網(wǎng)絡(luò)能夠同時(shí)達(dá)到benign和robust精度的SOTA效果。

          • Logarithmic Pruning is All You Need

            自從彩票假說(shuō)被提出后,一些更強(qiáng)的假說(shuō)也被提出來(lái),即每個(gè)擁有充分冗余參數(shù)的網(wǎng)絡(luò),都有一個(gè)權(quán)重隨機(jī)初始化的子網(wǎng)絡(luò)「不需要訓(xùn)練」也能達(dá)到和原網(wǎng)絡(luò)相似準(zhǔn)確率。但是這一假說(shuō)依賴于很多的假設(shè)條件。該篇文章移除了絕大多數(shù)這些假設(shè),提出唯一假設(shè)條件:子網(wǎng)絡(luò)logarithmic factor系數(shù)來(lái)約束參數(shù)冗余的原網(wǎng)絡(luò)。

          • Sanity-Checking Pruning Methods: Random Tickets can Win the Jackpot / Code

            文章對(duì)于之前剪枝工作進(jìn)行兩點(diǎn)總結(jié):(1)剪枝算法是通過(guò)從訓(xùn)練數(shù)據(jù)集中獲取信息,來(lái)尋找好的子網(wǎng)絡(luò)結(jié)構(gòu)。(2)好的網(wǎng)絡(luò)結(jié)構(gòu)對(duì)于模型性能是至關(guān)重要的。該文章通過(guò)設(shè)計(jì)sanity-checking實(shí)驗(yàn)對(duì)上面兩點(diǎn)結(jié)論進(jìn)行檢驗(yàn)。結(jié)果發(fā)現(xiàn):(1)剪枝算法在尋找好的網(wǎng)絡(luò)結(jié)構(gòu)時(shí),很難從訓(xùn)練集獲取有效信息。(2)對(duì)于被剪枝網(wǎng)絡(luò)結(jié)構(gòu),改變每層權(quán)重連接位置但是保持總體權(quán)重?cái)?shù)量和數(shù)值不變,模型精度不變。這一結(jié)果反駁了上述總結(jié)第二點(diǎn)。由此,得出結(jié)論只有網(wǎng)絡(luò)層的連接數(shù)或者壓縮率才是真正影響模型性能的因素。這些發(fā)現(xiàn)促使作者,利用與數(shù)據(jù)集無(wú)關(guān)的每一層剪枝比例,在每一層去隨機(jī)減去模型權(quán)重,獲得“intial ticket”與上述方法獲得“intial ticket”效果類似。

          • Scientific Control for Reliable Neural Network Pruning

            該文章致力于通過(guò)科學(xué)控制,提出一種可靠的神經(jīng)網(wǎng)絡(luò)剪枝算法。他們生成與原數(shù)據(jù)集相同分布的knockoff數(shù)據(jù),并且將其與原始數(shù)據(jù)集進(jìn)行混合。對(duì)網(wǎng)絡(luò)輸入knockoff數(shù)據(jù)和中間計(jì)算生成的knockoff特征圖幫助發(fā)現(xiàn)冗余的卷積核,進(jìn)行剪枝。

          • Neuron-level StructuredPruning using Polarization Regularizer / Code

            該篇文章是2017年network slimming的改進(jìn)工作。在network slimming的工作中,利用L1正則化技術(shù)讓BN層的scale系數(shù)趨近于0,然后裁剪“不重要”的channel。然而,這篇文章認(rèn)為這種做法存在一定問(wèn)題。L1正則化技術(shù)會(huì)讓所有的scale系數(shù)都趨近于0,更理想的做法應(yīng)該是只減小“不重要”channel的scale系數(shù),保持其他系數(shù)的仍處于較大狀態(tài)。為了實(shí)現(xiàn)這一想法,該篇文章提出了polarization正則化技術(shù),使scale系數(shù)兩極化。

            圖2 L1正則化和Polarization正則化下scale factor的對(duì)比
          • 如圖所示,可以看出L1正則化的scale系數(shù)分布和polarization正則化的scale系數(shù)分布。Polarization正則化技術(shù)能夠更準(zhǔn)確的確定裁剪閾值。該篇文章通過(guò)實(shí)驗(yàn)證明該剪枝方法在CIFAR和ImageNet數(shù)據(jù)集上達(dá)到SOTA水平。

          • Directional Pruning of Deep Neural Networks / Code

            利用SGD進(jìn)行網(wǎng)絡(luò)優(yōu)化時(shí),容易使網(wǎng)絡(luò)損失函數(shù)陷入“平坦的山谷”,導(dǎo)致網(wǎng)絡(luò)優(yōu)化困難。然而,這一特性可以被當(dāng)作方向剪枝的理論基礎(chǔ)。當(dāng)網(wǎng)絡(luò)參數(shù)處于“平坦的山谷”中,其梯度趨近于0和二階梯度存在不少0值。對(duì)于這類型參數(shù)進(jìn)行裁剪,其對(duì)于training loss的影響微乎其微。因此,本文提出一種新穎的方向剪枝方法 (gRDA),其不需要retraining和設(shè)置先驗(yàn)稀疏度。同時(shí)為了減少計(jì)算量,其使用tuned l1 proximal gradient算法實(shí)現(xiàn)方向剪枝。

          • Storage Efficient and Dynamic Flexible Runtime Channel Pruning via Deep Reinforcement Learning / Code

            該文章利用深度強(qiáng)化學(xué)習(xí)技術(shù),搜索最優(yōu)的剪枝方案(即剪多少權(quán)重和剪哪些權(quán)重),實(shí)現(xiàn)自動(dòng)化剪枝。不同于傳統(tǒng)的static pruning,該文章主要依據(jù)采用dynamic pruning,根據(jù)輸入數(shù)據(jù)的不同,對(duì)不同的權(quán)重進(jìn)行剪枝。另外,之前dynamic pruning方法為了實(shí)現(xiàn)高靈活性,需要存儲(chǔ)所有的權(quán)重參數(shù),需要較大的存儲(chǔ)空間。本文通過(guò)結(jié)合static pruning信息和dynamic pruning信息,減少了dynamic pruning的存儲(chǔ)空間需求。并且,通過(guò)實(shí)驗(yàn)證明,在dynamic pruning的方法中,其提出的框架能夠有效的平衡動(dòng)態(tài)靈活性和存儲(chǔ)空間之間矛盾。

          • Movement Pruning: Adaptive Sparsity by Fine-Tuning / Code

            模型剪枝技術(shù)在監(jiān)督學(xué)習(xí)中十分常見(jiàn),但是在遷移學(xué)習(xí)的領(lǐng)域比較少應(yīng)用。然而遷移學(xué)習(xí)已經(jīng)成為自然語(yǔ)言處理領(lǐng)域的“范式”。該篇文章提出了新的剪枝算法 movement pruning,針對(duì)BERT等預(yù)訓(xùn)練模型進(jìn)行剪枝。相比關(guān)注權(quán)重的L1范數(shù),movement pruning剪枝方法更關(guān)注訓(xùn)練過(guò)程中逐漸遠(yuǎn)離“0”值的權(quán)重。在文章中,作者給出這種方法的數(shù)學(xué)證明并與主流的剪枝算法進(jìn)行對(duì)比。實(shí)驗(yàn)結(jié)果顯示,movement pruning方法對(duì)于大型預(yù)訓(xùn)練語(yǔ)言模型的壓縮有較大提升。

          • The Generalization-Stability Tradeoff In Neural Network Pruning / Code

            在網(wǎng)絡(luò)剪枝的過(guò)程中,經(jīng)常出現(xiàn)去掉一些網(wǎng)絡(luò)參數(shù)后,經(jīng)過(guò)retraining的模型在測(cè)試集的表現(xiàn)會(huì)更好的情況。為了更好的理解這種現(xiàn)象,該篇文章設(shè)計(jì)相關(guān)實(shí)驗(yàn),認(rèn)為網(wǎng)絡(luò)泛化能力的提升來(lái)自于剪枝的不確定性。這里的不確定性指的是:相對(duì)于原模型精度,剪枝后不經(jīng)過(guò)retraining的模型精度損失。并且提出了“generalization-stability tradeoff”觀點(diǎn)。其認(rèn)為剪枝帶來(lái)的不確定性越大,剪枝后模型泛化能力增強(qiáng)的越多。該篇文章通過(guò)實(shí)驗(yàn)支撐了其觀點(diǎn)和假設(shè)。

          總結(jié)

          這些文章看下來(lái),感覺(jué)還是比較開(kāi)心的。因?yàn)榻^大多數(shù)文章都或多或少提到了彩票理論,開(kāi)始去推動(dòng)模型剪枝的新范式的發(fā)展,思索模型剪枝的邊界和真正意義。在我看來(lái),這些工作比單純的刷榜/沖分更有意義。后面如果有機(jī)會(huì),希望還能和大家繼續(xù)分享我對(duì)于模型剪枝的理解,一起交流和學(xué)習(xí)!


          為了感謝讀者朋友們的長(zhǎng)期支持,我們今天將送出3本由北京大學(xué)出版社提供的《深度學(xué)習(xí)筆記》書籍,對(duì)本書感興趣的可以通過(guò)下發(fā)抽獎(jiǎng)鏈接參與。沒(méi)抽到并對(duì)本書感興趣的也可以使用下方鏈接購(gòu)買。

          《深度學(xué)習(xí)筆記》抽獎(jiǎng)鏈接


          歡迎關(guān)注GiantPandaCV, 在這里你將看到獨(dú)家的深度學(xué)習(xí)分享,堅(jiān)持原創(chuàng),每天分享我們學(xué)習(xí)到的新鮮知識(shí)。( ? ?ω?? )?

          有對(duì)文章相關(guān)的問(wèn)題,或者想要加入交流群,歡迎添加BBuf微信:

          二維碼

          為了方便讀者獲取資料以及我們公眾號(hào)的作者發(fā)布一些Github工程的更新,我們成立了一個(gè)QQ群,二維碼如下,感興趣可以加入。

          公眾號(hào)QQ交流群


          瀏覽 112
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  唐嫣一区二区三区在线 | 欧美setu| 久操成人 | 日月俱乐部 小美 | 亚洲精品大香蕉 |