項劍文,陳泯融,楊百冰
華南師范大學 計算機學院,廣州 510631
近年來,細粒度圖像分類逐漸成為計算機視覺、模式識別等領域一個熱門的研究課題,其是對同屬于一個基礎類別下的圖像進行更加細致的子類劃分。細粒度圖像分類重點在于區分具體對象的類別,例如鳥的種類、貓的品種、汽車的品牌等。以鳥類圖像為例,同一種鳥類可以有數十種,甚至數百種不同的子類別。比如以海鷗來說,就有燕尾鷗、漁鷗、黑嘴鷗、紅嘴鷗等數十種不同子類別的海鷗,這些海鷗之間的差異十分細微,因此具有很大的分類難度。與普通圖像分類相比,細粒度圖像的類間差異小而類內差異大,并且受到姿態、視角等諸多因素的影響,使得細粒度圖像分類成為一項極具挑戰性的任務。
為了避免繁瑣的人工部位標注,目前大部分的研究主要集中在不需要額外標注信息且僅使用類別標簽的弱監督細粒度圖像分類任務上。細粒度圖像分類的算法大致上可以分為三類,即基于特征編碼的方法、基于區域定位的方法以及基于注意力的方法。基于特征編碼的方法[1]主要通過豐富特征表示以獲得更好的分類性能。與基于特征編碼的方法相比,基于區域定位的方法可以精確地捕獲不同子類之間的細微差異,并且具有更好的可解釋性,通常可以取得更好的結果。早期基于區域定位的方法依靠部位標注來定位判別性區域,而近期的研究[2-3]主要采用區域提議網絡(region proposal network,RPN)的方法在圖像上提取具有判別性區域的邊界框,進而篩選出目標對象可能存在的關鍵區域。如Ge等人[2]以弱監督的方式構建互補部位模型,以檢索由卷積神經網絡(convolution neural network,CNN)檢測到的目標部位所抑制的信息。然而,基于區域定位的方法忽略了所選區域之間的關系,并且為了能夠獲得正確的分類結果,其往往會促使RPN 提議更大的邊界框以包含大部分前景對象。當這些所選的邊界框不準確且覆蓋了大量的背景信息時,目標對象的關鍵特征就很容易被混淆。此外,具有不同優化目標的RPN 模塊會使得骨干網絡的訓練難度加大,并且重用骨干網絡也會使得整體算法流程復雜化。
基于注意力的方法通過自注意力機制自動檢測圖像中具有判別性的區域,這些方法擺脫了對人工標注判別性區域的依賴,并取得了令人鼓舞的效果。如Zheng等人[4]提出了一種漸進式注意力方法,以在多個尺度上逐步檢測具有判別性的部位。最近,Dosovitskiy 等人[5]成功將純Transformer 模型引入到計算機視覺領域中,提出vision Transformer(ViT)模型,其是一種完全基于自注意力機制來動態建模元素間關系的新興視覺特征提取器。在大規模數據集上,無需依賴于CNN,ViT 模型即可在各種各樣的視覺任務中展現優異的性能。隨后,Liu等人[6]構建一種多尺度層級Transformer架構,即Swin Transformer,并通過設計移動窗口將自注意力計算限制在不重疊的局部窗口上,以有效地建模局部信息和全局信息,從而提高模型的性能和效率。ViT模型在視覺任務上的巨大成功表明,純Transformer 架構固有的自注意力機制可以自動檢測圖像中有助于視覺識別的關鍵部位。然而,目前很少有研究探索基于視覺Transformer 的細粒度圖像分類。TransFG[7]網絡作為首次在細粒度圖像分類任務上研究視覺Transformer的工作,提出將ViT模型中所有原始注意力權值集成到一個注意力圖中,以引導網絡有效地選擇具有判別性的圖像塊。然后將這些篩選出來的圖像塊輸入到最后一層的Transformer模塊中進行融合,最后實現了良好的分類性能。然而,ViT 模型更多關注的是全局信息,而對局部信息和低級特征關注較少,由于局部信息在細粒度圖像分類中起著極為重要作用,這可能會限制模型對局部關鍵信息的提取。此外,ViT模型遵循原始Transformer的單級柱狀架構設計,并且在不同層之間,特征圖始終維持固定的尺度,這不利于模型捕獲更多細節信息以及多尺度細粒度的識別特征,進而限制了模型對特征信息的表達。
鑒于上述分析,本文提出了一種基于Swin及多尺度特征融合的細粒度圖像分類模型(fine-grained image classification model based on Swin Transformer and multi-scale feature fusion,SwinFC),如圖1所示,基準骨干網絡采用具有多階段層級架構設計的Swin Transformer模型作為全新視覺特征提取器,以完成圖像特征的級聯提取,在此基礎上,進一步構建融合外部依賴及跨空間注意力模塊、特征融合模塊以及特征選擇模塊,以促進模型學習更加全面、細微以及多樣化的特征信息,進而增強模型的判別能力和表征能力。在僅使用類型標簽的前提下,本文模型能夠有效捕獲目標關鍵部位并實現較為理想的分類性能。主要貢獻如下:

圖1 SwinFC網絡整體結構圖Fig.1 Overview structure of SwinFC network
(1)利用Swin Transformer 網絡作為全新視覺特征提取器,從中獲取局部和全局信息,建模多尺度特征;提出融合外部依賴及跨空間注意力模塊(externaldependency attention and cross-space attention module,EACA),以捕獲數據樣本間的潛在相關性以及不同空間方向上具有判別力的特征信息,從而強化網絡每個階段的信息表征。
(2)引入特征融合模塊[8(]feature fusion module,FFM),以完成多尺度特征的成對融合;構建特征選擇模塊(feature selection module,FSM),篩選具有辨別力的圖像塊,以此增大類間差異,減小類內差異,增強模型判別力。
(3)在三個公開的細粒度圖像數據集上進行一系列的對比實驗,結果表明,本文模型的分類性能均高于大部分主流模型。
Swin Transformer[6]是一種基于多尺度層級設計的特征金字塔網絡架構,采用移動窗口的設計模式將自注意力的計算限制在不重疊的局部窗口上,并允許跨窗口連接。Swin Transformer的網絡架構如圖1的上半部分所示。與ViT 模型類似,為了將輸入的RGB 圖像(大小為H×W×3)轉化為Transformer 結構能夠處理的序列數據,Swin Transformer 首先通過塊分割模塊(patch partition)將原始二維圖像轉化為互不重疊的4×4 圖像塊(patch tokens)序列,其特征被設置為原始像素RGB值的拼接,特征維度為48(4×4×3),再利用線性嵌入層(linear embedding)將特征維度投影到任意大小(記為C)。隨后,將圖像塊序列輸入到堆疊的Swin Transformer模塊中以建模特征間的相互關系。特別地,塊合并層(patch merging)用于對視覺特征進行降采樣和增維操作,以構建多階段的層級架構,進而可以學習不同空間尺度和維度的特征表示。如圖1上半部分所示,第一個塊合并層以4(2×2)的倍數減少圖像塊的數量(即分辨率為),輸出維度設置為2C,緊接著輸入到Swin Transformer 模塊中進行特征交換,此過程為模型的第二階段。類似地,重復該操作兩次,分別得到分辨率為的第三階段和第四階段。最后,將輸出的圖像塊序列進行平均池化,并將平均池化結果輸入到分類層中以完成模型最終的分類預測。
具有多階段層級架構設計的網絡往往能夠建模不同尺度的特征,這些不同尺度的特征圖所提取到的信息重點是不同的,低層特征能夠捕獲更多細節信息,關注更多關鍵區域,如邊緣紋理、形狀顏色等,高層特征具有更加豐富的語義信息,從整體上關注目標區域。因此,有效地將不同尺度的特征進行融合,能夠增強模型的特征表示能力,提高模型的識別性能。例如,FPN[9]和SSD[10]嘗試利用卷積固有的特征金字塔網絡架構,將不同尺度的特征進行融合,從而在目標檢測任務中展現出很好的性能。SG-Net[11]利用非局部操作融合不同層的特征圖,以高效地提取不同的潛在特征,提高模型的特征表示能力。受此啟發,本文在基準骨干網絡Swin Transformer的基礎上,首先通過注意力模塊來強化每個階段的信息表征,然后利用模型的多階段層級構架將不同尺度的特征進行融合,從而促使模型學習更加豐富的特征表示,增強模型的判別力。
基于視覺Transformer 的細粒度圖像分類的初步探索表明,作為視覺領域的新興特征提取器,視覺Transformer 能夠有效地建模有利于細粒度分類的視覺特征。然而,原生的ViT模型完全采用全局注意力機制建模特征間關系,并且遵循單級柱狀架構設計,這不利于模型捕獲更加細微以及多尺度細粒度的識別特征,從而限制了模型對特征信息的表達。為此,本文提出了一種基于Swin及多尺度特征融合的細粒度圖像分類模型(SwinFC)。基準骨干網絡采用Swin Transformer模型[6]作為輸入圖像的特征提取器。在骨干網絡的基礎上,進一步構建融合外部依賴及跨空間注意力模塊、特征融合模塊以及特征選擇模塊,以促進模型學習更加全面、細微以及多樣化的特征信息,進而增強模型的判別能力和表征能力。
本文提出的SwinFC整體結構如圖1所示。具體而言,采用具有層級結構的Swin Transformer骨干網絡作為細粒度圖像分類的全新特征提取器,以完成對視覺特征由淺入深的級聯提取。然后在骨干網絡每個階段的末端增加多尺度特征融合分支(第一個階段除外),并在每個分支的通道上嵌入融合外部依賴及跨空間注意力模塊(EACA)以及特征融合模塊(FFM)。將每個階段的輸出特征圖并行輸入到骨干網絡及其分支通道上。在每個階段的分支通道上,特征圖首先被輸入到EACA模塊中,以挖掘特征樣本間的潛在關系,同時捕捉不同空間方向上具有判別力的特征信息,進而強化網絡每個階段的信息表征。隨后采用FFM模塊對不同階段的特征圖進行多尺度的特征融合操作,使得高分辨率的底層特征與低分辨的高層特征能夠被同時利用,從而促進網絡學習更加全面、互補且多樣化的特征信息。此外,重用骨干網絡最后一個階段的多頭自注意力機制來構建特征選擇模塊(FSM),以篩選重要且具有辨別力的圖像塊,并對所選圖像塊進行平均池化操作,接著對池化結果計算對比損失,以此增大類間特征差異的同時減小類內特征差異。最后,用于分類預測的總損失函數由骨干網絡的交叉熵損失、不同階段的交叉熵損失以及對比損失融合而成,從而使得模型學習到更加全面的視覺表征知識,提高模型的性能收益。
細粒度圖像往往因其數據樣本類間差異小、類內差異大而導致模型預測類別信息易混淆。如果網絡能夠挖掘樣本間潛在的相關性,并能夠有效定位到對圖像分類影響較大的部位,則可以提升網絡的分類性能[12]。基于此,本文提出了融合外部依賴及跨空間注意力模塊(EACA),并將其作用于每個階段的輸出特征圖,以強化網絡每個階段的信息表征。
具體而言,EACA模塊由兩個注意力子模塊并行組成:外部依賴注意力子模塊(external-dependent attention,EA)以及跨空間注意力子模塊(cross-spatial attention,CA)。將骨干網絡每個階段輸出的特征圖序列分別輸入到EACA 模塊的兩個子模塊中,特別地,對于跨空間注意力子模塊,由于其是對空間結構的建模,因此需將輸出的特征圖序列重塑回二維圖像形式。在外部依賴注意力子模塊中,利用外部依賴注意力來挖掘數據樣本之間的潛在關系,使相同類別下的特征更具關聯性,從而得到更具魯棒性的特征;在跨空間注意力子模塊中,聚合兩個不同空間方向上的注意力,以感知空間位置信息,增強特征關注的豐富性,促進模型更加準確地定位判別性的局部區域。最后,將兩個子模塊的輸出特征圖進行相加,以得到EACA模塊的輸出特征圖。如圖2所示。

圖2 融合外部依賴及跨空間注意力模塊Fig.2 EACA module
圖中,X∈?N×C和X′∈?N×C分別表示每個階段輸出的特征圖以及EACA 模塊輸出的特征圖,N表示特征圖序列的長度,C表示特征圖的通道數,H和W分別表示特征圖的高度和寬度(其中N=H×W)。
2.2.1 外部依賴注意力子模塊
屬于同一類別但分布在不同樣本中的特征應該被一致地對待,從而捕獲同類樣本間的內在關聯性,減少其他不同類別樣本的干擾[12]。受此啟發,構建外部依賴注意力子模塊,通過引入額外的外部可學習參數來捕獲樣本內和樣本間的相關性,促使網絡學習同類樣本的潛在關聯性,強化模型的學習能力。外部依賴注意力子模塊如圖3所示。

圖3 外部依賴注意力子模塊Fig.3 External-dependent attention submodule
首先,將輸入特征圖X∈?C×N(N為序列長度,C為通道數)輸入到一維卷積中以生成中間注意力圖A′∈?M×N,其中,一維卷積的卷積核大小設置為3(即K=3),緊接著A′經過正則化處理得到注意力圖A∈?M×N,然后將注意力圖A輸入到卷積核大小為1的一維卷積中,以計算得到更為精細的特征圖∈?C×N。事實上,兩個一維卷積的卷積權重W1∈?C×M×3和W2∈?M×C×1都是可學習的外部記憶矩陣,共享于整個數據樣本。因此,由輸入特征圖X與外部記憶矩陣W1乘積并正則化而來的注意力圖A可視為獨立于單個輸入樣本的外部依賴注意力,注意力圖A與外部記憶組件W2聯合計算得到的特征圖則蘊含著數據樣本間的潛在相關性。最后,將特征圖X與進行殘差操作,以得到最終的輸出結果Xea。公式化計算過程如式(1)~(3)所示。
式中,Norm為正則化操作。W1和W2為可學習的外部記憶矩陣。
2.2.2 跨空間注意力子模塊
跨空間注意力子模塊利用兩個不同空間方向上的全局平均池化操作分別將輸入特征圖聚合為兩個并行的方向感知特征圖,然后將兩個嵌入特定方向的特征圖分別編碼為兩個并行的注意力圖,每個注意力圖能夠捕獲輸入特征圖沿著一個空間方向上更加細粒度的依賴關系,進而學習到更具區分性的局部細節特征。跨空間注意力子模塊如圖4所示。

圖4 跨空間注意力子模塊Fig.4 Cross-spatial attention submodule
式中,σ表示Softmax函數,FH和FW分別表示卷積操作,?表示元素相乘。
在骨干網絡的不同階段中,特征圖具有不同的尺度,所包含的視覺信息重點不同。為了能夠提取更加全面且互補的特征信息,本文采用了Song等人[8]提出的特征融合方法來構建特征融合模塊(feature fusion module,FFM),以將每個階段提取的特征進行成對融合,從而增強每個階段的視覺表征。特征融合模塊的詳細結構如圖5所示。

圖5 特征融合模塊Fig.5 Feature fusion module
其中,相似度越低,表明具有更多的互補信息,對相似矩陣取反以得到互補相關矩陣(即-M)。隨后對互補相關矩陣進行Softmax 歸一化操作,接著將其分別與兩個階段的特征圖進行矩陣相乘,以得到具有互補的輸出特征圖。公式化該計算過程如式(8)~(11)所示:
式中,P表示模型的階段數量。
為了定位細粒度圖像分類中子類之間具有區別性的區域和細微差異,本文充分利用最后一個階段(即Stage4)中的多頭注意力來篩選更具區別性的圖像塊,并以此構建特征選擇模塊(FSM)。特征選擇模塊詳細結構如圖1左下部分所示。
具體而言,給定當前層的單頭注意力矩陣A∈?N×N,N表示圖像塊序列長度,通過對矩陣中的每列取平均以得到平均注意力向量Aavg(長度為N),平均注意力向量中的每個元素表示對應圖像塊對模型的響應,權值越大,表明對模型分類發揮更重要的作用。公式化該過程如式(13)、(14)所示:
式中,A(i,j)表示注意力矩陣A中第i行第j列的注意力權重,aj表示第j個圖像塊對模型的重要性得分。接下來根據平均注意力向量Aavg來篩選出權值最大所對應的圖像塊,并以此作為候選圖像塊。由于每一層具有多頭注意力矩陣,分別對多頭注意力矩陣執行上述操作,可得到K個候選圖像塊,其中K為每一層的注意力頭數。特別地,對于模型最后一個階段,其僅有兩層Swin Transformer模塊,并且兩層具有相同注意力頭數,因此,可得到2K個候選圖像塊。將2K個候選圖像塊組成的特征集合記為Z,并對其進行全局平均池化以得到該集合的全局表示,隨后,將輸入到對比損失函數(contrastive loss)[7]中,以增大類間特征差異,減小類內特征差異,捕獲更具判別性圖像塊。對比損失計算如式(15)所示:
式中,NB表示批處理的大小,yi表示第i個圖像的真實標簽,表示第i個圖像經過特征選擇模塊后得到的特征表示,cos(,)表示兩個特征圖的余弦相似度,其大于超參數α時才會在對比損失函數中發揮作用。Lcon表示對比損失,其經過反向傳播可以擴大不同子類別間的特征表示,縮小相同子類別的特征表示,促使模型篩選更具判別性的圖像塊。
綜合上述分析,本文提出的模型最終損失函數如式(16)所示:
為了評估本文方法的分類性能,在CUB-200-2011[13]、NABirds[14]以及WebFG-496[15]三個公共的細粒度圖像數據集上進行實驗分析。特別地,WebFG-496是網絡監督細粒度圖像數據集(webly supervised fine-grained datasets),其由三個子數據集組成,總共有53 339 幅網絡訓練圖片,包含200種鳥類(web-bird)、100種飛機(web-aircraft)以及196 種汽車模型(web-car)。網絡監督數據集除了有細粒度圖像常見的特性以外,還存在較大的數據偏差以及較多的噪聲數據,因此具有更大的挑戰性[15-16]。本文實驗中數據集的詳細信息如表1所示。
貧困地區基層組織弱化,部分地方執行人員由于自身素質不高,以一副領導視察的態勢對待扶貧指導工作,執行力不夠。部分審查與管理專項扶貧資金部門存在管理不嚴,自身內部督管不力,制度不健全的不良行政現象。在利益、權勢驅動下少數地區政府為了追求短期政績,不惜大量浪費和透支扶貧資源,有的還攤指標、造數字,使得扶貧開發的收效甚微。

表1 細粒度圖像數據集詳細信息Table 1 Details of fine-grained image datasets
3.2.1 實驗設置
實驗環境為Ubuntu 18.04.3 LTS 系統,使用四個RTX 2080 TIGPU并行訓練。模型訓練平臺采用基于Python 編程語言的PyTorch 深度學習框架。實驗中,所有圖像的尺寸首先統一調整為512×512,然后再裁剪為384×384,同時采用常見的數據增強策略來擴充數據,如隨機水平翻轉、隨機旋轉等。本文采用官方[6]公布的Swin-B 模型作為骨干網絡和特征提取網絡,并使用官方[6]發布的預訓練權重對骨干網絡初始化,對新增模塊采用隨機初始化。所有模型使用隨機梯度下降[17](stochastic gradient descent,SGD)優化器進行訓練,并設置動量為0.9。批處理大小設置為32,余弦退火(cosine annealing)調整學習率。對比損失中的超參數α設置為0.4,損失函數中最后三個階段的超參數{β2,β3,β4}設置為{0.4,0.6,0.8}。針對不同的數據集,本文對SwinFC模型采用不同的學習率進行訓練:對于CUB-200-2011數據集,骨干網絡學習率為2E-3,新增模塊學習率為5E-3;NABirds 數據集和WebFG-496 數據集,骨干網絡和新增模塊學習率為3E-2。
3.2.2 評價指標
本文使用測試集的分類準確度(Accuracy)作為模型的評價指標,最終結果取多次實驗的平均值,以更加客觀地反映模型的分類性能,計算公式如式(17)所示:
為了驗證SwinFC模型以及提出的各個模塊的有效性,本文首先設計了不同方法的消融實驗。除非有必要的說明,本文所有消融實驗都是在CUB-200-2011 數據集下展開。
3.3.1 融合外部依賴及跨空間注意力模塊的實驗分析
為了驗證融合外部依賴及跨空間注意力模塊(EACA)及其子模塊(EA 子模塊、CA 子模塊)的有效性,本小節的消融實驗分別在骨干網絡的最后三個階段依次引入EACA模塊的每個子組件,并單獨進行實驗訓練。實驗結果如表2 所示,在未引入任何模塊的情況下,基準骨干網絡Swin可以實現91.13%的分類準確率,在此基礎上,進一步引入EACA模塊并將兩個子模塊進行并行訓練,模型的分類準確率可以達到91.80%,實現了0.67 個百分點的性能提升。特別地,在僅使用EA 子模塊時,模型可以實現0.39 個百分點的性能提升;在僅使用CA子模塊時,模塊可以實現0.5個百分點的性能提升;通過實驗結果顯示,將EA子模塊與CA子模塊并行組合可以進一步帶來性能上的收益,其能夠聯合捕獲樣本間的相關性以及更具判別性的區域,進而提高模型的分類性能。

表2 EACA模塊中不同組件模塊消融實驗分析Table 2 Ablation experiment analysis of different components in EACA module
3.3.2 特征融合模塊與特征選擇模塊的實驗分析
在上一小節實驗的基礎上,進一步引入特征融合模塊(FFM)以整合不同階段的特征。實驗結果如表3 所示,當使用FFM模塊來融合不同階段特征時,模型的性能進一步得到了提升,實現了92.12%的分類準確率,并且與原始Swin 模型相比,模型分類準確率提升了0.99個百分點。此外,如表3 最后一行所示,當引入特征選擇模塊時,模型的性能進一步提高了0.41 個百分點,并且與原模型Swin 相比,模型整體的分類準確率到達了92.53%,實現了1.4 個百分點的性能提升。實驗結果表明,本文提出的各組件模塊能夠有效捕獲有利于細粒度圖像分類的視覺特征,進而提高模型整體的分類性能。

表3 FFM模塊與FSM模塊的消融實驗分析Table 3 Ablation experiment analysis of FFM module and FSM module
3.3.3 不同階段中超參數β 設置的實驗分析
本小節以網格搜索的方式對損失函數中最后三個階段的超參數{β2,β3,β4}的設置進行消融實驗分析,其中搜索范圍為(0,1]。實驗結果如表4所示,表中第一列SwinFC 后所注明的序號為實驗組號,第二列為每組實驗所對應的超參數{β2,β3,β4}的設置。從表中可知,當對不同階段的超參數設置不同的權值時,模型的分類準確度都高于對不同階段設置相同的權值,其原因是:模型級聯式提取不同層次的特征,所包含的視覺信息重點不同,底層更多關注位置、邊緣和低層次的細節信息,經過多層特征提取操作后,高層特征往往具有更強的語義信息,更有利于模型的分類,因此,通過對不同階段的超參數設置不同權值來控制模型不同階段的作用程度,進而有效促使模型學習更加全面且多樣的特征信息。特別地,當最后三個階段的超參數{β2,β3,β4}設置為{0.4,0.6,0.8}時,模型取得了最優的分類準確率,為此,本文將其作為默認的參數設置。

表4 不同階段中超參數β 設置的消融實驗分析Table 4 Ablation experiment analysis of hyperparameter β settings in different stages
3.3.4 不同優化器的實驗分析
圖6 展示了本文模型在SGD 和Adam 兩種優化器下的損失函數收斂曲線以及準確率收斂曲線。特別地,模型訓練步長(train steps)設置為15 000,每隔100 Steps獲取對應的損失值和準確率。從圖中可知,相比于Adam優化器,SGD 優化器能夠更好地優化本文模型,使得模型收斂于更小的損失值,從而實現更高的分類準確率。為此,本文采用SGD作為模型默認的優化器。

圖6 不同優化器的實驗分析Fig.6 Experimental analysis of different optimizers
表5 展示了本文模型SwinFC 在CUB-200-2011 數據集上與其他模型的實驗對比結果。從表5可看出:本文方法明顯高出了所有基于CNN 的方法和基于視覺Transformer方法,展現了最先進的性能,例如,與性能最優的CNN 模型API-Net 相比,分類準確率提高了2.5 個百分點,與性能最優的Transformer 模型TransFG 相比,提高了0.8個百分點的準確率;與基準骨干網絡Swin相比,提升了1.4個百分點的分類性能。其次,表6展示了在NABirds 數據集上的實驗對比結果,特別地,相對于CUB-200-2011數據集,NABirds是一個更大的鳥類數據集,有555種類別,因此具有更大的挑戰性。從表6可看出,本文方法高于大部分的主流方法,具有明顯的性能優勢,實現了91.8%的分類準確率,相比較于最優模型CAP,高出了0.8個百分點,并且與基準模型Swin相比,提高了2.6 個百分點。實驗結果表明,本文模型能夠有效學習到有利于細粒度圖像分類的關鍵特征,捕獲更具多樣且豐富的特征信息,從而提高了模型的分類性能和泛化能力。

表5 不同分類算法在CUB-200-2011上的準確率對比Table 5 Comparison of accuracy of different classification methods on CUB-200-2011

表6 不同分類算法在NABirds上的準確率對比Table 6 Comparison of accuracy of different classification methods on NABirds
表7 展示了在WebFG-496 數據集上的實驗對比結果,從表中可知,本文模型SwinFC在Web-496數據集的三個子數據集上均獲得了高于所有主流方法的分類準確率。例如,相比于CMW-Net-SL 模型,本文方法在Web-Bird、Web-Aircraft 以及Web-Car 上分別高出了9.51、7.95以及6.48個百分點;與基準模型Swin相比,在三個子數據集上分別提高了3.89、6.45以及4.26個百分點。此外,本文也是首次探索視覺Transformer 在網絡監督細粒度圖像數據集上的應用,并且從實驗結果可以看出,視覺Transformer作為基礎視覺特征提取器,能夠在網絡監督細粒度圖像分類中表現出較好的分類性能。

表7 不同分類算法在WebFG-496上的準確率對比Table 7 Comparison of accuracy of different classification methods on WebFG-496 單位:%
表8 展示了本文模型分別在三個數據集上的平均準確率(Avg)、標準差(Std)以及方差(Var),從表中可以看出,本文模型在三個數據集上的實驗結果具有較小的方差,這表明本文模型具有較好的穩定性以及魯棒性。

表8 SwinFC模型的平均準確率、標準差以及方差Table 8 Average accuracy,standard deviation and variance of SwinFC model
模型浮點計算量(floating-point operations,FLOPs)、推理時間(Inference time)以及吞吐量(Throughput)等是評價深度學習模型復雜度的重要指標。為此,本文在相同實驗環境配置下,使用CUB-200-2011 的測試集作為實驗測試數據,分別對本文模型、基準模型Swin以及同樣采用視覺Transformer為基準的模型進行模型復雜度實驗對比分析。實驗結果如表9 所示,從表中可知,相比于基準模型,本文模型雖然在浮點計算量和推理時間上略有增加,吞吐量有下降,但更重要的是從表5 可知,本文模型的分類準確率在很大程度上高于基準模型。此外,更值得一提的是,從表9 可看出,與ViT 和TransFG 模型相比,本文模型不僅在分類準確率上有很大的提高,而且在模型浮點計算量、推理時間以及吞吐量上都具有明顯的優勢。

表9 模型復雜度分析Table 9 Complexity analysis of model
為了進一步驗證本文模型的有效性,采用類激活可視化(Grad-CAM)[38]的方法對模型的分類識別性能進行量化分析。本小節隨機選取各個數據集中測試集的圖像作為實驗測試數據,并以可視化熱度圖的方式展示模型預測出的判別性區域位置。圖7展示了本文模型SwinFC與原始模型Swin 的可視化熱度圖結果,第一行為原始圖像,第二行為基準模型Swin生成的熱圖,第三行為本文模型SwinFC 生成熱圖,其中,熱度圖中的高亮區域(即紅色)表示與模型預測類別相關的區域。從圖7 中可以看到:基準模型熱度圖中判別性區域顯得更加分散、微小,并且關注了大量的背景信息,相反本文模型不僅能夠聚焦于目標物體,而且能夠有效定位到具有判別性的區域,如鳥的頭部、羽毛等。這表明了本文方法能夠有效學習到更加全面、細微且豐富的特征信息,增強了網絡模型的判別力和表征能力,進而提高模型的分類性能。

圖7 基準模型與本文模型生成的熱度圖對比Fig.7 Comparison of heat maps generated by baseline model and proposed model
本文提出了一種基于Swin及多尺度特征融合的細粒度圖像分類模型(SwinFC)。采用具有多階段層級架構設計的Swin Transformer 模型作為全新視覺特征提取器。然后在骨干網絡每個階段的分支通道上嵌入融合外部依賴及跨空間注意力模塊,以捕獲數據樣本之間的潛在相關性,同時捕捉不同空間方向上多樣且具判別力的特征信息,強化網絡每個階段的信息表征。進一步地,引入特征融合模塊以將每個階段提取的特征進行多尺度融合,促使網絡學習更加全面、互補且多樣化的特征信息。最后構建特征選擇模塊來篩選重要且具有辨別力的圖像塊,以此增大類間差異,減小類內差異,增強模型的判別力。實驗結果表明,本文提出的模型在多個細粒度數據集上均取得優異的性能,高于大部分的主流方法。下一步將深入研究視覺Transformer架構在細粒度圖像分類中的內在特性以及模型自身過大問題,以探索出更加適用于細粒度圖像分類的網絡。