雷鋒網(公眾號:雷鋒網) AI 科技評論按:百度關於網絡壓縮和加速的論文《 Filter Pruning via Geometric Median for Deep Convolutional Neural Networks Acceleration》被 CCF A 類學術會議 CVPR 2019 收錄為 Oral 論文,這篇論文提出了新的基於濾波器的幾何中心(geometric median)的剪枝算法,來對神經網絡進行壓縮和加速。本文是論文作者之一何洋為雷鋒網 AI 科技評論提供的論文解讀。
論文地址: https://arxiv.org/pdf/1811.00250.pdfGithub 地址: https://github.com/he-y/filter-pruning-geometric-median
1.背景
卷積神經網絡(CNN)通常通過更深和更寬的結構實現了更好的性能,但是當神經網絡需要部署到行動裝置時,神經網絡需要的資源遠遠超過了行動裝置的限制。例如,ResNet-152擁有6020萬個參數,需要231MB存儲空間;此外,它還需要超過380MB的內存和11.3億浮點運算(在CPU上耗時6秒鐘)來處理單張圖像。因此,我們需要找到高效率的模型來滿足行動裝置的需要。
網絡剪枝是網絡的壓縮和加速中一個重要的方向,自1989年LeCun提出以來,得到了迅速發展。現在主要分為2種方向:1)權重剪枝;2)濾波器剪枝。濾波器剪枝相對於權重剪枝有一系列優點,包括它可以得到規則的模型,由此減少內存消耗,並且加速網絡的推斷。
圖1: 濾波器剪枝
上圖是典型的濾波器剪枝的流程。現有的方法認為濾波器的範數(p-norm)越小,相對應的特徵圖越接近於0,於是對網絡對貢獻越小,那麼這些濾波器可以去掉而不會嚴重影響網絡的性能。於是我們用濾波器的p-norm進行重要性排序,並且刪除p-norm小的濾波器。
2.現有的濾波器範數評價指標的問題
圖2: 範數評價指標的條件
上述的範數評價指標,實際上包含了兩個隱含條件(圖2):1)範數標準差足夠大;2)最小的範數接近於0。
圖3: 濾波器範數分布可能出現的情況
但是實際的濾波器範數分布也會出現不滿足上述條件的情況(圖3),1)範數的標準差太小;2)最小範數的值仍然很大。如果出現情況1,很多濾波器有相似的重要性,我們不知道到底應該去掉哪個。如果出現情況2,我們很難找到特徵圖越接近於0的濾波器。
圖4:實際的濾波器範數分布
我們通過分析實際的預訓練網絡(圖4),發現這些網絡確實出現了上述的情況。 雷鋒網
3.基於幾何中心的濾波器評價指標(FPGM)
圖5 基於範數和幾何中心的評價指標
幾何中心(Geometric Median, GM)的定義:
https://baike.baidu.com/item/%E5%BD%A2%E5%BF%83
圖6: 幾何中心
幾何中心是對於歐幾裡得空間的點的中心的一個估計。我們認為濾波器也是歐氏空間中的點,於是我們可以根據計算GM來得到這些濾波器的「中心」,也就是他們的共同性質。如果某個濾波器接近於這個GM,可以認為這個濾波器的信息跟其他濾波器重合,甚至是冗餘的,於是我們可以去掉這個濾波器而不對網絡產生大的影響。去掉它後,它的功能可以被其他濾波器代替。
圖7: 基於幾何中心的濾波器評價指標
由此我們得到一種跟範數無關的濾波器評價方法FPGM,打破了範數評價指標的局限性。
4.實驗
在Cifar-10數據集上,FPGM在ResNet-110上的計算量降低了52%以上,相對精確度提高了2.69%。此外,在ILSVRC-2012數據集上,FPGM還在ResNet-101上減少了超過42%的計算量。
圖8: ResNet on CIIFAR-10實驗結果
圖9: ResNet on ImageNet實驗結果
圖10: 可視化結果
我們把 ResNet-50的第一個卷積層的特徵圖進行了可視化。紅色的(7,23,27,46,56,58)是被FPGM選中的需要被去掉的通道。可以看出這些被去掉的通道特徵主要有兩部分。1)竹子的骨架,2)熊貓的輪廓。其中竹子的骨架可以被剩下的 (5,12,16,18,22)通道代替,而熊貓的輪廓可以被剩下的 (0,4,33,34,47) 通道代替,由此驗證了我們基於幾何中心進行濾波器剪枝的理論。
5.總結
我們探討了現有的濾波器範數評價指標的問題,並且提出了基於濾波器的幾何中心的剪枝算法。我們的方法還可以結合矩陣分解,權重量化等方法進一步對神經網絡進行壓縮和加速。