在碎片化閱讀充斥眼球的時代,越來越少的人會去關註每篇論文背後的探索和思考。
在這個欄目裡,你會快速 get 每篇精選論文的亮點和痛點,時刻緊跟 AI 前沿成果。
點選本文底部的「閱讀原文」即刻加入社群,檢視更多最新論文推薦。
關於作者:陳泰紅,小米高階演演算法工程師,研究方向為人臉檢測識別,手勢識別與跟蹤。
■ 論文 | Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation
■ 連結 | https://www.paperweekly.site/papers/1676
前言
臨近春節,Google 團隊也不休假,趁著中國人每年一度大遷徙,他們在 arXiv 放出了 DeepLabv3+,在語意分割領域取得新的 state-of-the-art 水平。本文將帶大家回顧 DeepLabv1-v4 系列的發展歷程,看看 Google 團隊這些年都在做什麼。
DeepLabv1
DeepLab 是結合了深度摺積神經網路(DCNNs)和機率圖模型(DenseCRFs)的方法。
在實驗中發現 DCNNs 做語意分割時精準度不夠的問題,根本原因是 DCNNs 的高階特徵的平移不變性,即高層次特徵對映,根源於重覆的池化和下取樣。
針對訊號下取樣或池化降低解析度,DeepLab 是採用的 atrous(帶孔)演演算法擴充套件感受野,獲取更多的背景關係資訊。
分類器獲取以物件中心的決策是需要空間變換的不變性,這天然地限制了 DCNN 的定位精度,DeepLab 採用完全連線的條件隨機場(CRF)提高模型捕獲細節的能力。
除空洞摺積和 CRFs 之外,論文使用的 tricks 還有 Multi-Scale features。其實就是 U-Net 和 FPN 的思想,在輸入影象和前四個最大池化層的輸出上附加了兩層的 MLP,第一層是 128 個 3×3 摺積,第二層是 128 個 1×1 摺積。最終輸出的特徵與主幹網的最後一層特徵圖融合,特徵圖增加 5×128=640 個通道。
實驗表示多尺度有助於提升預測結果,但是效果不如 CRF 明顯。
論文模型基於 VGG16,在 Titan GPU 上執行速度達到了 8FPS,全連線 CRF 平均推斷需要 0.5s ,在 PASCAL VOC-2012 達到 71.6% IOU accuracy。
DeepLabv2
DeepLabv2 是相對於 DeepLabv1 基礎上的最佳化。DeepLabv1 在三個方向努力解決,但是問題依然存在:特徵解析度的降低、物體存在多尺度,DCNN 的平移不變性。
因 DCNN 連續池化和下取樣造成解析度降低,DeepLabv2 在最後幾個最大池化層中去除下取樣,取而代之的是使用空洞摺積,以更高的取樣密度計算特徵對映。
物體存在多尺度的問題,DeepLabv1 中是用多個 MLP 結合多尺度特徵解決,雖然可以提供系統的效能,但是增加特徵計算量和儲存空間。
論文受到 Spatial Pyramid Pooling (SPP) 的啟發,提出了一個類似的結構,在給定的輸入上以不同取樣率的空洞摺積並行取樣,相當於以多個比例捕捉影象的背景關係,稱為 ASPP (atrous spatial pyramid pooling) 模組。
DCNN 的分類不變形影響空間精度。DeepLabv2 是取樣全連線的 CRF 在增強模型捕捉細節的能力。
論文模型基於 ResNet,在 NVidia Titan X GPU 上執行速度達到了 8FPS,全連線 CRF 平均推斷需要 0.5s ,在耗時方面和 DeepLabv1 無差異,但在 PASCAL VOC-2012 達到 79.7 mIOU。
DeepLabv3
好的論文不止說明怎麼做,還告訴為什麼。DeepLab 延續到 DeepLabv3 系列,依然是在空洞摺積做文章,但是探討不同結構的方向。
DeepLabv3 論文比較了多種捕獲多尺度資訊的方式:
1. Image Pyramid:將輸入圖片放縮成不同比例,分別應用在 DCNN 上,將預測結果融合得到最終輸出。
2. Encoder-Decoder:利用 Encoder 階段的多尺度特徵,運用到 Decoder 階段上恢復空間解析度,代表工作有 FCN、SegNet、PSPNet 等工。
3. Deeper w. Atrous Convolution:在原始模型的頂端增加額外的模組,例如 DenseCRF,捕捉畫素間長距離資訊。
4. Spatial Pyramid Pooling:空間金字塔池化具有不同取樣率和多種視野的摺積核,能夠以多尺度捕捉物件。
DeepLabv1-v2 都是使用帶孔摺積提取密集特徵來進行語意分割。但是為瞭解決分割物件的多尺度問題,DeepLabv3 設計採用多比例的帶孔摺積級聯或並行來捕獲多尺度背景。
此外,DeepLabv3 將修改之前提出的帶孔空間金字塔池化模組,該模組用於探索多尺度摺積特徵,將全域性背景基於影象層次進行編碼獲得特徵,取得 state-of-art 效能,在 PASCAL VOC-2012 達到 86.9 mIOU。
DeepLabv3+
DeepLabv3+ 架構
DeepLabv3+ 繼續在模型的架構上作文章,為了融合多尺度資訊,引入語意分割常用的 encoder-decoder。在 encoder-decoder 架構中,引入可任意控制編碼器提取特徵的解析度,透過空洞摺積平衡精度和耗時。
在語意分割任務中採用 Xception 模型,在 ASPP 和解碼模組使用 depthwise separable convolution,提高編碼器-解碼器網路的執行速率和健壯性,在 PASCAL VOC 2012 資料集上取得新的 state-of-art 表現,89.0 mIOU。
Xception 改進
Entry flow 保持不變,但是添加了更多的 Middle flow。所有的 max pooling 被 depthwise separable convolutions 替代。在每個 3×3 depthwise convolution 之外,增加了 batch normalization 和 ReLU。
實驗
論文提出的模型在主幹網路 ResNet-101 和 Xception均進行驗證。兩種方式均在 ImageNet 預訓練。其中 Xception 預訓練過程中,使用 50 個 GPU,每個 GPU batch size=32,解析度 299×299。Xception 相比 ResNet-101,在 Top-1 和 Top-5 分別提高 0.75% 和 0.29%。
在實驗過程中,分別考慮 train OS: The output stride used during training、eval OS: The output stride used during evaluation、Decoder: Employing the proposed decoder structure、MS: Multi-scale inputs during evaluation、 Flip: Adding left-right flipped inputs 等各種情況。
另外使用 depthwise separable convolution,使用 Pretraining on COCO 和 Pretraining on JFT,在這些 tricks 輔助下,PASCAL VOC 2012 test set 達到驚人的 89.0%,取得新的 state-of-the-art 水平。
結論
從 DeepLabv1-v4 系列看,空洞摺積必不可少。從 DeepLabv3 開始去掉 CRFs。
Github 目前還未有公佈的 DeepLabv3,但是有網友的復現版本。DeepLabv3+ 更是沒有原始碼,復現起來估計有些難度。
DeepLabv3 復現:
https://github.com/NanqingD/DeepLabV3-Tensorflow
DeepLabv1-v4 沒有用很多 tricks,都是從網路架構中調整,主要是如何結合多尺度資訊和空洞摺積。從FCN,ASPP,Encoder-Decoder with Atrous Conv,每一個想法看上去在別的都實現過,但是論文綜合起來就是有效。
Deeplabv1,v2 耗時為 8fps,從 Deeplabv3 開始,論文已經不說執行時間的問題,是否模型越來越慢了。
MobileNetV2 已經實現 Deeplabv3,並努力在 MobileNetV2 中復現 DeepLabv3+ 版本。
參考文獻
[1] Semantic image segmentation with deep convolutional nets and fully connected CRFs
[2] DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs
[3] Rethinking Atrous Convolution for Semantic Image Segmentation
[4] Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation
本文由 AI 學術社群 PaperWeekly 精選推薦,社群目前已改寫自然語言處理、計算機視覺、人工智慧、機器學習、資料挖掘和資訊檢索等研究方向,點選「閱讀原文」即刻加入社群!
我是彩蛋
解鎖新功能:熱門職位推薦!
PaperWeekly小程式升級啦
今日arXiv√猜你喜歡√熱門職位√
找全職找實習都不是問題
解鎖方式
1. 識別下方二維碼開啟小程式
2. 用PaperWeekly社群賬號進行登陸
3. 登陸後即可解鎖所有功能
職位釋出
請新增小助手微信(pwbot01)進行諮詢
長按識別二維碼,使用小程式
*點選閱讀原文即可註冊
關於PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智慧前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號後臺點選「交流群」,小助手將把你帶入 PaperWeekly 的交流群裡。
▽ 點選 | 閱讀原文 | 檢視原論文