尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️
安妮 邊策 發自 凹非寺
量子位 出品 | 公眾號 QbitAI
傳統的卷積運算,要成為過去時了。
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=[WH, WL]
同時做到高低頻之間的有效通信。因此,輸出張量也將分成兩個分量:
Y=[YH, YL]
YH=YH→H+YL→H,YL=YL→L+YH→L
其中YA→B表示從A到B的特徵映射後更新的結果。YH→H和YL→L是頻率內的信息更新,YL→H和YH→L是頻率間的信息更新。
因此YH不僅包含自身的信息處理過程,還包含從低頻到高頻的映射。
為了計算這些項,我們將卷積核每個分量進一步分為頻率內和頻率間兩個部分:
WH=WH→H+WL→H,WL=WL→L+WH→L
張量參數可以用更形象的方式表示:
△OctConv的卷積核
這種形式有些類似於完全平方公式a^2+b^2+ab+ba,兩個平方項WH→H、WL→L是頻率內張量,兩個交叉項是頻率間張量WL→H、WH→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
也有網友簡單復現了這個研究:
https://github.com/terrychenism/OctaveConv
— 完 —
誠摯招聘
量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回復「招聘」兩個字。
量子位 QbitAI · 頭條號簽約作者
վ’ᴗ’ ի 追蹤AI技術和產品新動態