FPT: Feature Pyramid Transfomer


導言:

    本文介紹了一個在空間和尺度上全活躍特征交互(fully active feature interaction across both space and scales)的特征金字塔transformer模型,簡稱FPT。該模型將transformer和Feature Pyramid結合,可用於像素級的任務,在論文中作者進行了目標檢測和實力分割,都取得了比較好的效果。為了講解清楚,若有transformer不懂的讀者,關於transformer可以在公眾號中看另一篇文《Transformer解讀》。

 

背景內容

圖像中在空間和尺度上隱藏着豐富的視覺語義信息,對於一個CNN模型來說要獲取這些語義信息,需要通過卷積操作不斷提取,但每次的感受野都比較小,每次僅能提取3x3 或5x5等小范圍的信息,如果需要獲取全局信息,需要將堆積多層卷積層。對此,有研究人員提出了Non-Local Neural Network, 簡稱NLN,在將卷積層中非局部的信息匹配起來(注:NLN在后續將會給出論文解讀文章,后續看到本文的讀者在公眾號中模型總結部分將能看到)。但本文認為NLN沒有跨尺度,而只進行了跨空間提取信息。基於此,本文應運而生。FPT將特征金字塔的每層與其他同大小但有不同豐富語義信息的層進行交互融合,提出了三種交互方式,分別是self-level,top-down 和bottom-up。

圖片

    作者認為通過使用不同level的feature map可以識別目標的不同尺度。例如,小物體(電腦)應該在比較低的level下識別,大的物體(桌椅)應該在更高的level識別。因此我們需要去結合局部信息和來自於higher level的全局信息,這是因為電腦顯示屏的局部外觀是接近於電視機的,我們應該使用場景信息例如鼠標,鍵盤來輔助識別電視機和電腦。此外,作者認為電腦更可能是在桌子上,而不是大馬路上,因此局部信息和全局信息的結合是有助於互相識別的。而且,作者認為非局部交互應該是在物體相應的尺度上,而不是一個統一的尺度。如鼠標跟電腦大小相差太大,在同尺度下信息不一樣。

 

Overall structure of FPT

 

圖片

FPT網絡由四個部分組成:特征提取的backbone, 特征金字塔構造模塊,用於特征交互的FPT,以及具體任務的head網絡。該模型可用於語義分割,實例分割和目標檢測,因此,這個head 網絡都是對應到具體任務中的最后處理部分。



Non Local Block

這里略微介紹一下Non Local Neural Network,過幾天會給出這篇文章的論文解讀,將放在公眾號中的模型總結部分。

 圖片

在transformer中最重要的是attention機制的靈活運用,在NLN中將圖像經過特征提取網絡將圖像大小降低到14x14或7x7,再通過如下Non Local Block結構進行非局部信息的提取,使得模型會將注意力放在有利於識別任務的像素位置上,具體如上圖所示。

圖片

 

Feature Pyramid Transformer

在non-local 交互操作中,其使用feature map作為values (V), keys (K), queries (Q),用公式表示如下:

 圖片

先使用點積計算q 和 k的相似度,再進行歸一化(softmax),再與values進行相乘。

在FPT中提出了三種操作方式,分別以self-level, higher-level, lower-level作為其他level的queries,這樣使得每一level都是一個跨空間和尺度交互的richer feature map。下面將介紹這三種方式。先提一句,這三種方式最主要的區別就是Q不同,還有個別細節不同。

注意下面給出的三種方式下給出的圖中的紋理區別。

 

01 Self Transformer (ST)

圖片

圖片

如上左圖所示,輸出為#字形紋理的圖,所謂self-transformer即使用self-attention的交互操作,Q = K = V。

具體公式如上方所示,不同的是,作者使用Mixture of Softmaxes (Mos)代替softmax歸一化,MoS公式如下,原因是實踐證明在圖像上MoS比標准softmax更有效。

圖片

因此其公式如下:

圖片

 

 

02 Grounding Transformer (GT)

圖片

       以higher-level為k, v , 以lower-level為 Q, 輸出為\\形紋理。

    具體公式仍如上方所示,與ST中一樣歸一化函數使用MoS,不同的是相似度函數從點積改為了歐式距離(euclidean distance),原因是當兩張feature map的語義信息不同時,歐式距離比點積計算更有效。,歐式距離公式如下。

 圖片

    其公式如下:

圖片

    注:當具體任務為語義分割時,作者認為沒必要計算全局的相似性,只需要計算局部相似性即可,因此在前面的基礎上提出了Locality-constrained Grounding Transformer (LGT)。局部的大小為square_size, 對於k,v中超過索引位置,使用0代替。

 

 

03 Rending Transformer (RT)

圖片

圖片

如上圖所示,使用lower-level作為k,v 使用higher-level作為Q, 輸出紋理為//形的圖。

與前兩者基於像素級別不同的是RT是基於整個feature map,做法類似於SE注意模塊,k先使用全局平均池化(GAP)得到加權值w, w再與Q以通道注意方式進行加權得到Qatt, V使用含步長的3x3卷積 feature map進行降采樣處理, 這是為了縮小特征圖大小,最后改進版的Qatt與降采樣的V進行summed-up, 即使用3x 3卷積進行feature map summation。

具體公式如下所示:

 圖片

 

以上就是三種方式的具體細節。在看回到模型的整體結構圖

 圖片

再經過三種方式處理后得到了transformed feature, 再進行re-arranged ,就是將尺寸大小相同的放到一起concat,得到concatenated feature, 最后經過卷積層處理,再接上跟具體任務有關的Head Network部分。

 

如有錯誤,歡迎留言指出.

本文來源於微信公眾號“ CV技術指南 ”的模型總結部分 。更多內容與最新技術動態盡在公眾號發布。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM