CNN更新換代!效能提升算力減半,還即插即用
點選上方“ 磐創AI ”,選擇“置頂公眾號”
精品文章,第一時間送達
轉載自:量子位,未經允許不得二次轉載
傳統的卷積運算,要成為過去時了。
Facebook和新加坡國立大學聯手提出了新一代替代品: OctConv (Octave Convolution),效果驚豔,用起來還非常方便。
OctConv就如同卷積神經網路(CNN)的“壓縮器”。用它替代傳統卷積,能 在提升效果的同時,節約計算資源的消耗。
比如說一個經典的影象識別演算法,換掉其中的傳統卷積,在ImageNet上的識別精度能獲得1.2%的提升,同時,只需要82%的算力和91%的儲存空間。
如果對精度沒有那麼高的要求,和原來持平滿足了的話,只需要 一半 的浮點運算能力就夠了。
想實現這樣的提升,怕不是要把神經網路改個天翻地覆吧?
根本不需要,OctConv 即插即用 ,無需修改原來的網路架構,也不用調整超引數,方便到家。
就是這個新一代的卷積,讓GAN的主要創造者、AI大牛Ian Goodfellow 迫不及待 ,不僅轉發力薦,還表示要持續關注進展,開源時再發推告訴大家。
OctConv也獲得了眾網友的認可。短短5個小時,Goodfellow的推文就收穫了700贊,網友直呼“Excellent work!”
所以,OctConv到底是什麼神仙網路?
算力↓↓,準確率↑↑
我們先來看看它效果究竟如何。
比如說經典的影象識別演算法:ResNet-50,換了新的卷積運算會帶來什麼變化?
上圖中粉紅色的折線就是不同引數配置的OctConv對ResNet-50的影響。左起第二個粉紅圓點顯示了一種比較均衡的配置:比原版(最右黑點)略高的精度,所需的浮點算力卻只有原版的一半。
其他折線代表的各種影象識別網路,小到ResNet-26、DenseNet,大到ResNet-200,在OctConv加持下,都體現出了成績的提升和算力需求的下降。
調節OctConv的引數α,可以在效能提升和算力節約之間尋找平衡。
降低算力需求的同時,OctConv還能夠縮短神經網路推斷所需的時間。比如ResNet-50的推斷時間,就會隨著引數α的增大而逐步縮短。保持精度不變,推斷時間能縮短到74毫秒,也就是原來的62%。
對大、中、小型的模型,研究人員們分別測試了OctConv會如何影響它們的影象分類能力。
大型神經網路ResNet-152用了OctConv後,僅用22.2GFLOP的算力,Top-1分類準確率就能達到82.9%。
OctConv的適用範圍也不僅限於影象識別。
無論是2D還是3D的CNN,都能實現這種提升。論文不僅測試了ResNet、ResNeXt、DenseNet、MobileNet、SE-Net等2D CNN在ImageNet上的影象分類能力,還測試了C2D、I3D等視訊行為識別演算法改用OctConv之後的效能變化。
像壓縮影象一樣壓縮卷積
OctConv節約的計算力,都是從哪兒省出來的?
對於普通卷積運算,所有輸入和輸出特徵對映具有相同的空間解析度。
實際上,一張圖片可以分成粗略結構(低頻部分)和邊緣細節(高頻)兩個部分,比如一張企鵝照片能分離出兩個成分:
企鵝身上毛色相近的部分、背景顏色變化比較緩慢,屬於低頻資訊,資訊量較少;而兩種毛色交接的部分、企鵝身體邊緣的顏色變化劇烈,屬於高頻資訊,資訊量較多。
既然這樣,我們完全可以將資訊量較少的低頻部分壓縮一下,減少冗餘空間。
類似地,卷積層的輸出特徵對映和拍攝的照片一樣,也可以被視為不同頻率資訊的混合,進行相似的處理。
研究人員從圖片的頻率分離和壓縮中受到啟發。 Octave Convolution 的思路就是對卷積網路也進行類似操作,壓縮低頻部分,分別處理高低頻兩個部分的資料,並在二者之間進行資訊交換,從而減少卷積運算對儲存和計算量的消耗。
為了適應新的特徵表示,文章推廣了傳統卷積,提出了 OctConv 。Octave是指 八音階 ,在音樂中降低八音階代表頻率減半。
OctConv中低頻部分張量的大小是0.5h×0.5w,長寬正好是的高頻部分h×w的一半,從而節省了張量的儲存空間和計算量。
雖然OctConv壓縮了低頻部分的資訊,但同時也有效地擴大了原始畫素空間中的感受野(receptive field),可以提高識別效能。
實現過程
對於普通的卷積方法,以W表示k×k的卷積核,X和Y分別表示輸入和輸出張量,X和Y的對映關係為:
(p, q)是X張量中的位置座標,(i, j)表示所取的近鄰範圍。
而OctConv的目標是分開處理張量中的低頻和高頻部分,同時實現的高頻和低頻分量特徵表示之間的有效通訊。
我們將卷積核分成兩個分量:
W=[W H , W L ]
同時實現高低頻之間的有效通訊。因此,輸出張量也將分成兩個分量:
Y=[Y H , Y L ]
Y H =Y H→H +Y L→H ,Y L =Y L→L +Y H→L
其中Y A→B 表示從A到B的特徵對映後更新的結果。Y H→H 和Y L→L 是頻率內的資訊更新,Y L→H 和Y H→L 是頻率間的資訊更新。
因此Y H 不僅包含自身的資訊處理過程,還包含從低頻到高頻的對映。
為了計算這些項,我們將卷積核每個分量進一步分為頻率內和頻率間兩個部分:
W H =W H→H +W L→H ,W L =W L→L +W H→L
張量引數可以用更形象的方式表示:
△ OctConv的卷積核
這種形式有些類似於 完全平方公式a^2+b^2+ab+ba ,兩個平方項W H→H 、W L→L 是頻率內張量,兩個交叉項是頻率間張量W L→H 、W H→L
△ OctConv的卷積核的“交叉”處理過程,紅色箭頭表示高低頻之間的資訊交換
輸出張量的計算方式和前面普通卷積的方式相同:
在OctConv中比例α是一個可以調節的引數,就是前文提到過的那個可調節引數。在整個網路內部層中令α in = α out = α,第一層中α in = 0,α out = α,最後一層中α in = α,α out = 0。
OctConv的另一個非常有用的特性是低頻特徵對映有較大的感受野。與普通卷積相比,有效地將感受野擴大了2倍。這會進一步幫助每個OctConv層從遠處捕獲更多的上下文資訊,並且有可能提高識別效能。
華人一作
這篇論文是Facebook聯合新加坡國立大學共同完成的。
其中,Yunpeng Chen、Haoqi Fang、Bing Xu,、Zhicheng Yan、Yannis Kalantidis、Marcus Rohrbach等6人均來自Facebook AI實驗室。
一作Yunpeng Chen,中文名為陳雲鵬,2015年本科畢業於華中科技大學,去年開始在Facebook實習。
陳雲鵬現就讀於新加坡國立大學博士,師從 顏水成 和 馮佳時 ,兩人也均為這篇論文的作者。今年畢業後,陳雲鵬將成為Facebook的一名研究員。
此前作為一作,陳雲鵬已有4篇論文被CVPR、NeurIPS、ECCV和IJCAI等頂會接收,主攻深度學習於視覺交叉領域的研究。
顏水成是新加坡國立大學的終身教授的顏水成,現在也是360副總裁、人工智慧研究院院長和首席科學家。
他主要研究計算機視覺、機器學習與多媒體分析領域,目前發表學術論文近500篇,被引次數超2.5萬次,曾三次入選全球高引用學者。目前,顏水成有諸多榮譽加持,並評為IEEE Fellow, IAPR Fellow和ACM傑出科學家等。
馮佳時現任新加坡國立大學電子與計算機工程系助理教授,為機器學習與視覺實驗室負責人。
本科在中國科學技術大學畢業後,馮佳時在新加坡國立大學讀博,此後又去UC伯克利人工智慧實驗室從事博士後研究,研究方向為影象識別、深度學習及面向大資料的魯棒機器學習。
傳送門
論文地址:
https://export.arxiv.org/abs/1904.05049
— 完 —
長按掃描下方小程式碼,互動提問
你也許還想 看 :
● Colab筆記本能用英偉達Tesla T4了,谷歌的羊毛薅到酸爽
● 比CNN表現更好,CV領域全新卷積操作OctConv厲害在哪裡?
歡迎掃碼關注:
覺得贊你就點 在看 ,多謝大佬