Looking for the Devil in the Details
本文是2019年CVPR的一篇文章,作者團隊來自于中國科技大學
論文鏈接:https://arxiv.org/abs/1903.06150v1
代碼鏈接:https://github.com/researchmm/tasn
Devil是一個很有意思的名字,讓我想起了boss提到的他們家的小公主~
contributions
- 提出了一種新穎的三線性注意力采樣網(wǎng)絡【trilinear attention sampling network】(TASN),以從數(shù)百個用于細粒度圖像識別的parts提案中學習微妙的特征表示
- 以teacher-student的方式優(yōu)化TASN,在這種方式中,可以將細粒度的功能高效地提取到單個主網(wǎng)中。
- 在iNaturalist、CUB Birds and Stanford、Cars數(shù)據(jù)集上取得了最優(yōu)的效果。
Method
TASN的整個網(wǎng)路架構如上圖所示,給定(a)中的輸入圖像,我們首先將其通過幾個卷積層以提取特征圖,然后通過(b)中的trilinear attention module將其進一步轉換為attention map。要了解specific parts的細粒度特征,我們隨機選擇一個attention map,并使用選定的attention map對輸入圖像進行注意力采樣。 (e)中的采樣圖像被稱為細節(jié)保留圖像,因為它可以高分辨率保存特定的細節(jié)。此外,為了捕獲全局結構并包含所有重要細節(jié),對所有注意力圖進行平均,然后再次進行注意力采樣,(d)中的這種采樣圖像稱為結構保留圖像。我們進一步制定了一個part-Net來學習保留細節(jié)的圖像的細粒度表示,并制定了一個主網(wǎng)來了解保留結構的圖像的特征。最后,part-Net生成soft target,以通過soft target交叉熵將細粒度特征提取到主網(wǎng)中。
Details Localization by Trilinear Attention
整個的trilinear attenation的過程用上圖就可以很好的說明,首先將c×h×wc\times h \times wc×h×w的feature map轉換為c×hwc\times hwc×hw維的matrix,表示為X∈Rc×hwX\in \R^{c\times hw}X∈Rc×hw,trilinear function 表示為Mb:=(XXT)X\mathcal{M}_b:=(XX^T)XMb?:=(XXT)X,其中XXTXX^TXXT是一個雙線性的特征,表示的是通道之間的空間關系,即XXi,jTXX^T_{i,j}XXi,jT?表示的通道iii和通道jjj之間的空間關系。為了使feature map更加魯邦,將XXTXX^TXXT和XXX進行點乘,即將空間關系插入到特征圖中,然后再進行歸一化操作M(X):=N(N(X)XT)X\mathcal{M}(X):=\mathcal{N}(\mathcal{N}(X)X^T)XM(X):=N(N(X)XT)X,其中N(.)N(.)N(.)表示的是用softmax歸一化矩陣的第二維。兩個N\mathcal{N}N的意義是不一樣的,第一個N(X)\mathcal{N}(X)N(X)是空間歸一化,將特征圖的每個通道保持在同一比例內,第二個是對每個關系向量(N(X)XT)i(\mathcal{N}(X)X^T)_i(N(X)XT)i?進行關系歸一化。歸一化之后的輸出表示為MMM,即M=M(X)M=\mathcal{M}(X)M=M(X),然后將其reshape成c×h×wc\times h\times wc×h×w的,MMM的每一個通道都代表一個attention mapMi∈Rh×wM_i\in \R^{h\times w}Mi?∈Rh×w。
Details Extraction by Attention Sampling
基于注意力的采樣器,該采樣器將圖像以及三線性注意力圖作為輸入,并生成保留結構的圖像和保留細節(jié)的圖像,保留結構的圖像捕獲了全局結構,并包含所有重要細節(jié)。與原始圖像相比,保留的結構刪除了沒有細粒度細節(jié)的區(qū)域,因此可以更好地以高分辨率表示可區(qū)分的部分。保留細節(jié)的圖像集中于單個部分,可以保留更多細粒度的細節(jié)。
對于輸入圖像III,我們通過在不同attention map上的非均勻采樣得到保存結構的IsI_sIs?圖像和保留細節(jié)的IdI_dId?圖像。
其中MMM是一個attention map,S\mathcal{S}S(.)是nonuniform sampling function ,A(.)\mathcal{A}(.)A(.)是在channel上的平均池化,R(.)\mathcal{R}(.)R(.)表示從輸入中隨機選擇一個通道。
將注意力圖視為probability mass function,其中具有較大注意力值的區(qū)域更可能被采樣。以structure-preserved sampling 為例,首先計算x軸和y軸上structure-preserved attention map A(M)\mathcal{A}(M)A(M)的積分
maxmaxmax函數(shù)將attention map分解為二維的,然后再使用下式,進一步的獲取采樣函數(shù),
F?1\mathcal{F}^{-1}F?1是F\mathcal{F}F的反函數(shù),注意力圖用于計算原始圖像和采樣圖像的坐標之間的映射函數(shù)。
上圖就可以很好的展示整個的操作過程,對attention map去計算在x軸b1b1b1和y軸b2b2b2上的最大值,進而將其分解為2維,然后獲取b1b1b1和b2b2b2的積分,顯示在c1c1c1和c2c2c2中,然后我們進一步的獲取c1c1c1和c2c2c2的反函數(shù),即均勻的采樣x,yx,yx,y軸上的點,也就是如Fig.4 c1,c2c1,c2c1,c2中紅色箭頭所示,進而得到其對應的藍色箭頭,兩者相交的點為sampling points,即d中展示的點,e是最終采樣的圖片(保留結構的圖像)。可以在d中看到,對于注意力值大的區(qū)域,我們分配了更多的采樣點。
Details Optimization by Knowledge Distilling
對于每一次的迭代,我們都可以獲取通過Attention Sampling 得到的structure-preserved image(IsI_sIs?)和details-preserved image(IdI_dId?),將他們放到backbone CNN(eg. Resnet-50)來得到全連接的輸出zs,zdz_s,z_dzs?,zd?,然后用softmax classifier將其轉換為probability vectorqs,qdq_s,q_dqs?,qd?,來表示每個類別的預測概率。
qdq_dqd?同qsq_sqs?一樣,TTT是一個參數(shù),在分類任務中,通常設置為1。
master-net的soft target交叉熵如下所示:
其中NNN代表的是類別數(shù)量,最后,我們的master-net的目標函數(shù)可以表示為
其中LclsL_{cls}Lcls?是一個分類損失函數(shù),yyy是一個表示標簽的向量,λ\lambdaλ表示的是兩者的損失權重。
soft target交叉熵的目的是提取學習到的特征以獲取細粒度的細節(jié),并將此類信息傳輸?shù)街骶W(wǎng)絡。
Experiments
在Caltech-UCSD Birds(CUB-200-2011) [34], Stanford Cars and iNaturalist-2017上進行評測, iNaturalist-2017是有13個超類的最大的細粒度任務的數(shù)據(jù)集。
上圖是在CUB-200-2011上做的消融實驗來探討不同的歸一化的方法對實驗結果的影響。
上圖是在CUB-200-2011上探討不同的sampling module對實驗結果的影響。
上圖是在CUB-200-2011上探討不同的輸入分辨率對distilling module的影響。
上圖中的(a)是特征圖,(b)是trilinear attention map,隨機的選擇了9個通道進行對比,可以很明顯的看到(b)中更加的專注于特定的部分,很少涉及背景噪音。
文章在三個數(shù)據(jù)集上的實驗非常的豐富,只截取幾個了上述的幾個進行展示,有興趣的還需參考原文。
總結
以上是生活随笔為你收集整理的Looking for the Devil in the Details的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Creational patterns
- 下一篇: [书目20110904]谢孟媛英文文法