1. 程式人生 > >論文筆記:ThiNet——一種filter級的模型裁剪演算法

論文筆記:ThiNet——一種filter級的模型裁剪演算法

前言

近兩年來,有關模型壓縮的論文越來越多,人們不再一昧的只追求強大的效能,而是開始慢慢的將模型的大小、運算量以及效率考慮進來,人們做的越來越多的是,在效能可接受的範圍內,模型越小越好。這也說明了一點,深度學習模型已經開始被廣泛的運用在了平常的生活當中,可以理解為現在的手機和以前的大哥大之間的關係。今天分享的一篇文章是今年ICCV的一篇入選論文,是南京大學的作品:ThiNet: A Filter Level Pruning Method for Deep Neural Network Compression,所提出的一種與以往方式不同的模型裁剪方案。

動機

Pruning Filters for Efficient Convnets

APoZ,這兩篇文章可以作為之前公認效果很好的模型壓縮的代表,他們分別從每一層的weight以及輸出的feature map出發,通過評價weight或者feature map的重要性,將對應的filter給裁掉,來達到模型壓縮的效果。
這裡寫圖片描述
可以這麼說,這兩種所代表的方法,都是根據這一層的weight或者feature map,來決定當層所需要被裁掉的引數,但是本文的作者認為,這兩種方法,都沒有考慮到由於這樣的裁剪給下一層會帶來什麼樣的影響,因此作者提出了一個這樣的想法,如果能夠利用第i+1層的輸入的一個子集,就能夠產生和原始輸出近似的結果,那麼我們就可以將剩下沒有用到的輸入給剔除掉,那麼上一層對應的輸出以及相應的filter也被提出,這樣既可以兼顧到由於裁剪所帶來的影響,也可以達到模型壓縮的效果,見下圖。
這裡寫圖片描述

方案

由於涉及到feature map,因此本文也是資料驅動的方法。在卷積層中,一個卷積操作可以看成以下方式:
這裡寫圖片描述其中這裡寫圖片描述 每一個input channel的卷積結果,而輸出為這些結果在所有input channel的求和,如果我們能夠找到一個input channel的子集這裡寫圖片描述,可以滿足這裡寫圖片描述,也就是說,如果我只用原始輸入的一部分就能夠達到和原始輸入一樣的效果,那我也就沒有要其他剩下輸入的必要了。於是就變成了以下優化問題:
這裡寫圖片描述
為了方便求解,可以看成:
這裡寫圖片描述
其中T為S在C上的補集,也就是說這些輸入在經過卷積之後的得到的輸出最小。

關於實現,作者是通過一種greedy的方式,在輸入通道中不斷遍歷得到的:
這裡寫圖片描述

在得到了裁剪目標之後,就可以將這些對應的filter給裁剪掉,因為是filter級別的,因此可以適用在各種計算平臺上,實現起來也較簡單。在裁剪完畢之後,作者還另外做了一步,減少重構誤差:
這裡寫圖片描述
其中這裡寫圖片描述 為剩餘輸入所產生的卷積結果,在這裡w可以看成在剩餘通道上的一個權重,可以這麼理解,剩餘的輸入可以看成一個具有很強表達能力的字典,而w就是這個字典用來表達原始輸出的係數,這樣就能用來進一步減少輸出與原始輸出之間的誤差。

最後一步就是finetuning,作者提出,在每一步裁剪之後,僅通過一個較小的學習步長來略微提升模型效能,這樣可以避免模型進入到區域性最優中,而在最後一步裁剪之後,再通過一個較大的學習步長來恢復模型的效能。

實驗結果

作者在ImageNet資料集上,使用VGG16和ResNet-50上得到的實驗結果如下:
這裡寫圖片描述
這裡寫圖片描述
總的來說,這種壓縮方法的效能還是不錯的。

總結

雖然目前的深度神經網路都具有非常強大的效能,具有非常好的表達能力,但是它的引數一定是存在冗餘的,如何能夠找到一種好的評價手段,來找到模型中這些冗餘的部分,並將它們剔除掉,也就是模型壓縮所做的事情。

相關推薦

論文筆記ThiNet——filter模型裁剪演算法

前言 近兩年來,有關模型壓縮的論文越來越多,人們不再一昧的只追求強大的效能,而是開始慢慢的將模型的大小、運算量以及效率考慮進來,人們做的越來越多的是,在效能可接受的範圍內,模型越小越好。這也說明了一點,深度學習模型已經開始被廣泛的運用在了平常的生活當中

Qt 筆記建立執行緒的方式

class QThread :public Qt { // ....... // ....... protected: virtual void run() = 0; // ....... // ....... }; ps:面向物件程式設計實踐的早起,

論文筆記Densely Connected Convolutional Networks(DenseNet模型詳解)

摘要 最近的研究表明,當靠近輸入的層和靠近輸出的層之間的連線越短,卷積神經網路就可以做得更深,精度更高且可以更加有效的訓練。本文根據這一結論,提出了一種稠密卷積神經網路(Dense Convolutional Network,DenseNet)

基本設計模式學習筆記)常見的七面向物件設計原則

0.概述      面向物件設計原則為支援可維護性複用而誕生,這些原則蘊含在很多設計模式中,他們是從許多設計方案中總結出來的指導性原則1.單一原則     一個類只負責一個功能領域中的相應職責,或者說:就一個類而言,應該只有一個引起它變化的原因。個人總結:將不同職責的方法放在

論文筆記目標追蹤-CVPR2014-Adaptive Color Attributes for Real-time Visual Tracking

exploit orm dom ons tail red 最好 早期 形式化 基於自適應顏色屬性的目標追蹤 Adaptive Color Attributes for Real-Time Visual Tracking 基於自適應顏色屬性的實時視覺追蹤 3月講的第一

的DoS攻擊-Hash碰撞攻擊

讀取 turn variable 重寫 我們 targe count http 返回結果 原文鏈接 這是迄今為止第一個讓我覺得後怕的攻擊方式,涉及的範圍廣難以防禦,攻擊效果立竿見影。大量的網站和Web接口都未做Hash碰撞攻擊的防禦,一拿一個準。 隨著RESTful風格的接

張書樂原創叫山寨,網文江湖為什麽總是抄襲者成功?

網絡文學尤其是網絡小說開始IP化,並在影視、遊戲和其他周邊產業鏈上發力,動輒數千萬的簽約量下,其實網文平臺不僅對於那些抓取付費內容的盜版者睜一只眼閉一只眼,以期獲得IP影響力的最大化。文/張書樂(人民網、人民郵電報專欄作者)新著有《微博運營完全自學手冊》據媒體報道,近年來,多部由網絡小說改編的影視劇播出後,原

論文筆記Fast(er) RCNN

這也 物體檢測 因此 sele 疑惑 修正 width 輸入 重點 在 RCNN 初步試水取得成功後,研究人員又迅速跟進,針對 RCNN 中的幾點不足提出改進,接連推出了 fast-rcnn 和 faster-rcnn。關於這兩篇論文,網上相關的文章實在是多如牛毛,因此,本

.Net中集合排序的玩法

void nullable strong init .html ace 文章 tab center 背景: 學生有名稱、學號, 班級有班級名稱、班級序號 學校有學校名稱、學校編號(序號) 需求 現在需要對學生進行排序 第一排序邏輯 按學

論文筆記時間序列分析

論文筆記:Causal Inference on EventSequences 論文綜述 解決的問題:兩個不同的序列xn與yn,是否能斷定他們相互關聯,或者說存在因果關係。 依託的主要知識:概率論 名詞解釋: 格蘭傑因果關係 Granger c

effectiveJava學習筆記方法()

檢查引數的有效性 1、一般在方法執行之前先檢查引數的有效性,如果引數值無效,那麼很快它就會失敗,並且清楚的丟擲合適的異常。 如果這個方法沒有檢查引數的異常,那麼可能在方法處理中出現令人費解的異常。更糟糕的有可能是,方法可以正常返回,但是卻使得某個物件處於被破壞的狀態. 2、對於公有方法,

論文筆記Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling

感想 最近深度學習面試的時候,有個面試官問了我LSTM,我一下子傻眼了,確實不怎麼好懂,學LSTM已經有半年的時間了,但是對這個玩意兒卻還不怎麼明白,可能是沒用過它的緣故吧,我找了一篇它和GRU比較的論文,這篇論文沒有從理論上證明哪個模型的好壞,只是從實驗,應用場景的角度發現GRU在一些場景比LST

論文筆記Interpret Neural Networks by Identifying Critical Data Routing Paths

這是一篇做可解釋性AI的文章,文章的主要內容就是提出了一種新的資料表示分析方法,在此之上做了一些分析工作。 Abstract: 大概就是說定義了一個叫CDRPs(可分離路徑),這是文章的主要內容。 Introduction: 大多的視覺化分析方法多是定性的,沒法定量分

韓春雨事件再反思私慾叫“不求功利”

阿里巴巴官方釋出微博稱,連續幾日,一篇名為《阿里員工透露:馬總早移走 1200 億人民幣!網友:不愧是老師》的文章被有組織的進行惡意傳播。阿里巴巴官方釋出微博稱,連續幾日,一篇名為《阿里員工透露:馬總早移走 1200 億人民幣!網友:不愧是老師》的文章被有組織的進行惡意傳播。 對此,阿里表示,該文完全捏造事

深度學習論文筆記Deep Residual Networks with Dynamically Weighted Wavelet Coefficients for Fault Diagnosis of Planetary Gearboxes

這篇文章將深度學習演算法應用於機械故障診斷,採用了“小波包分解+深度殘差網路(ResNet)”的思路,將機械振動訊號按照故障型別進行分類。 文章的核心創新點:複雜旋轉機械系統的振動訊號包含著很多不同頻率的衝擊和振盪成分,而且不同頻帶內的振動成分在故障診斷中的重要程度經常是不同的,因此可以按照如下步驟設計深度

論文筆記Deep Attentive Tracking via Reciprocative Learning

  Deep Attentive Tracking via Reciprocative Learning NIPS18_tracking Type:Tracking-By-Detection 本篇論文地主要創新是在將注意機制引入到目標跟蹤 摘要:源自認知神經科學地視覺注意促進人類對相關的內

論文筆記Visual Object Tracking based on Adaptive Siamese and Motion Estimation Network

 Visual Object Tracking based on Adaptive Siamese and Motion Estimation     本文提出一種利用上一幀目標位置座標,在本幀中找出目標可能出現的位置的網路--motion es

論文筆記2018 PRCV 頂會頂刊牆展

Global Gated Mixture of Second-order Pooling for Imporving Deep Convolutional Neural Network(2018 NIPS,大工李培華組) 論文motivation: (1)現存的池化:一階GAP(全域性均值池化)是很多CNN

論文筆記Learning Region Features for Object Detection

中心思想 繼Relation Network實現可學習的nms之後,MSRA的大佬們覺得目標檢測器依然不夠fully learnable,這篇文章類似之前的Deformable ROI Pooling,主要在ROI特徵的組織上做文章,文章總結了現有的各種ROI Pooling變體,提出了一個統一的數學表示式

flash 遊戲設計筆記 人物行走做法

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!