英特爾用ViT做密集預測效果超越卷積,性能提高28%,mIoU直達SOTA

量子位 發佈 2021-10-04T08:11:02+00:00

英特爾最近用它搞了一個密集預測模型,結果是相比全卷積,該模型在單目深度估計應用任務上,性能提高了28%。

用全卷積網絡做密集預測 (dense prediction),優點很多。

但現在,你可以試試Vision Transformer了——

英特爾最近用它搞了一個密集預測模型,結果是相比全卷積,該模型在單目深度估計應用任務上,性能提高了28%

其中,它的結果更具細粒度和全局一致性

在語義分割任務上,該模型更是在ADE20K數據集上以49.02%的mIoU創造了新的SOTA

這次,Transformer又在CV界秀了一波操作。

沿用編碼-解碼結構

此模型名叫DPT,也就是dense prediction transformer的簡稱。

總的來說,DPT沿用了在卷積網絡中常用的編碼器-解碼器結構,主要是在編碼器的基礎計算構建塊用了transformer。

它通過利用ViT為主幹,將ViT提供的詞包(bag-of-words)重新組合成不同解析度的圖像特徵表示,然後使用卷積解碼器將該表示逐步組合到最終的密集預測結果。

模型架構圖如下:

具體來說就是先將輸入圖片轉換為tokens(上圖橙色塊部分),有兩種方法:

(1)通過展開圖像表徵的線性投影提取非重疊的圖像塊(由此產生的模型為DPT-Base與DPT-Large)

(2)或者直接通過ResNet-50的特徵提取器來搞定(由此產生的模型為DPT-Hybrid)

然後在得到的token中添加位置embedding,以及與圖像塊獨立的讀出token(上圖紅色塊部分)

接著將這些token通過transformer進行處理。

再接著將每個階段通過transformer得到的token重新組合成多種解析度的圖像表示(綠色部分)。注意,此時還只是類圖像(image-like)

下圖為重組過程,token被組裝成具有輸入圖像空間解析度1/s的特徵圖。

最後,通過融合模塊(紫色)將這些圖像表示逐步「拼接」並經過上採樣,生成我們最終想要的密集預測結果。

ps.該模塊使用殘差卷積單元組合特徵,對特徵圖進行上採樣。

以上就是DPT的大致生成過程,與全卷積網絡不同,ViT主幹在初始圖像embedding計算完成後放棄了下採樣,並在全部處理階段保持恆定維數的圖像表示。

此外,它在每階段都有一個全局感受野。

正是這兩點不同對密集預測任務尤其有利,讓DPT模型的結果更具細粒度和全局一致性。

用兩種任務來檢驗效果

具體效果如何?

研究人員將DPT應用於兩種密集預測任務。

由於transformer只有在大訓練集上才能展現其全部潛能,因此單目深度估計評估是測試DPT能力的理想任務。

他們將DPT與該任務上的SOTA模型進行對比,採用的數據集包含約140萬張圖像,是迄今為止最大的單目深度估計訓練集。

結果是,兩種DPT變體的性能均顯著優於最新模型(以上指標越低越好)

其中,與SOTA架構MiDaS相比,DPT-Hybrid的平均相對改善率超過23%,DPT-Large的平均相對改善率則超過28%

為了確保該成績不僅是由於擴大了訓練集,研究人員也在更大的數據集上重新訓練了MiDaS,結果仍然是DPT勝出。

通過視覺比較圖還可以看出,DPT可以更好地重建細節,可以在對卷積結構具有挑戰的區域(比如較大的均勻區域)中提高全局一致性。

另外,通過微調,研究人員發現DPT也可以有效地應用於較小的數據集。

在具有競爭力的語義分割任務上:研究人員在ADE20K數據集上對DPT進行了240個epoch的訓練。

結果發現,DPT-Hybrid優於現有的所有全卷積結構,以49.02的mIoU達到了SOTA(其更清晰、更細粒度的邊界效果如開頭所展示)

而DPT-Large的性能稍差,研究人員分析可能是因為與之前的實驗相比,採用的數據集要小得多。

同時,他們在小數據集(Pascal)上對表現優異的DPT-Hybrid微調了50個epoch後發現,DPT的性能仍然強大。

最後,「百聞不如一見」,如果你想體驗DPT的真實效果,可以到Huggingface官網。

論文地址:
https://arxiv.org/abs/2103.13413

模型地址:
https://github.com/intel-isl/dpt

Hugging Face體驗地址:

https://huggingface.co/spaces/akhaliq/DPT-Large

— 完 —

量子位 QbitAI · 頭條號簽約

關注我們,第一時間獲知前沿科技動態

關鍵字: