雙線性特徵在學習細粒度影像表達上取得了很好的效果,但逐對計算卷積通道之間的資訊互動會帶來極大的計算代價,使得這樣有較強表達能力的操作無法在深層的神經網路中被多次使用,從而限制了其應用的有效性和廣泛性。
因此,我們設計了一種深度雙線性轉換模組,能夠深層地將雙線性表達應用在卷積神經網路中,來學習細粒度影像特徵。深度雙線性轉換模組主要透過引入基於部位表達的語義分組資訊,對組內的特徵進行雙線性操作和組間特徵進行整合來得到低維的雙線性表達,從而在深度神經網路中多次疊加使用雙線性操作。我們提出的深度雙線性模型在三個常用的細粒度影像分類任務上取得了明顯的提高,下文中我們將詳細介紹研究背景、實現細節以及實驗結果。
細粒度影像分類(fine-grained image recognition)旨在區分同一個大類(比如鳥類、汽車、飛機等)裡面不同小類的影像之間細微的差別。這類問題的資料通常有兩個特點:
1)較強的結構性,比如所有的鳥類樣本都由鳥頭、鳥翅、鳥尾等部位組成,所有的汽車樣本都由車頭、車輪、車門等部件組成;
2)複雜的細節特徵,比如呆頭伯勞鳥(Loggerhead Shrike,圖1左)與南灰伯勞鳥(Great Grey Shrike,圖1右)相比,區別僅僅在於眼周圍的黑色條紋比較粗,這就要求演算法的特徵表達可以捕捉到這樣的細節。
基於這兩個特性,目前最好的細粒度分類方法主要可以分為兩類:基於部位檢測的表達學習和基於雙線性的精細特徵學習。
針對以上問題,我們提出了“利用基於部位的語義資訊,得到一種低維而高效的雙線性表達”的構想,讓能夠表達豐富細節的雙線性特徵能夠很深地整合到卷積神經網路中,因此提出了深度雙線性網路(Deep Bilinear Transformation Network, DBT-Net)網路結構。
我們透過設計一種語義分組的約束將卷積特徵的各個通道進行分組。由於卷積特徵的每一個通道對特定語義的影像模式響應比較高,描述某一個語義的所有卷積通道的響應會集中在相應的空間區域。因此我們設計了一種語義分組約束,要求同一個語義組內的卷積通道兩兩之間有儘可能大的空間交疊,而不同元件的通道盡可能沒有交疊。這種逐對的分組約束可以使後續的分組雙線性操作更好地捕捉針對每個語義塊的細節特徵。圖3展示了透過這種約束最佳化後的卷積通道組內和組間逐對的資訊互動,黃色高亮代表互動的數值比較大,紫色代表互動比較小。
我們設計的深度雙線性轉換模組可以很容易地整合到深度卷積神經網路的結構中。比如可以將其插入到傳統殘差塊(ResNet Bottleneck Block)的第一個卷積層和第二個卷積層之間來得到能夠融合雙線性特徵的殘差塊。如圖4所示,我們在傳統殘差塊的第一個卷積上施加語義分組的約束,將其變成語義分組層(SG),同時在後面插入一個分組雙線性操作(GB),並利用殘差連結將透過分組雙線性操作之前和之後的特徵加起來。這樣的雙線性特徵再透過3X3的卷積操作來進一步學習豐富的細節特徵。
實驗結果
為了驗證我們提出的深度雙線性轉換的有效性,我們在三個常用的細粒度分類資料集上進行了實驗,分別是 CUB-200-2011 鳥類資料集,Stanford-Car 汽車資料集和 FGVC-Aircraft 飛機資料集。表1顯示了在 CUB-200-2011 資料集上(輸入影像解析度為224)深度雙線性殘差塊在不同階段融合的效果比較。我們可以看出,在最後一層使用分組雙線性表達會帶來一定的提升(1.1%),而將這種結構深層次的融入卷積神經網路之中可以帶來進一步的提升,比如再將 ResNet-50 後兩個階段的殘差塊都變成深度雙線性殘差塊會達到85.1%的分類精度。
表3顯示了不同方法在三個常用細粒度影像分類任務上的實驗結果比較(輸入影像解析度為448)。實驗表明我們提出的深度雙線性網路可以在同樣使用 ResNet-50 作為基礎網路,而且特徵維度很低的情況下達到好的效果。我們將提出的深度雙線性應用到 ResNet-101 上,可以觀察到進一步的提升。
本文我們透過引入語義資訊,提出了基於語義分組的雙線性轉換,大大降低了雙線性特徵的維度,使得雙線性操作可以被深層次地融入到卷積神經網路中。我們設計的深度雙線性網路在三個常用的細粒度影像分類任務上取得了明顯的提高。在後續的工作中,我們會研究深度雙線性轉換在底層特徵的應用。此外,我們還將把矩陣歸一化操作引入到深度雙線性轉換中,進一步增強其表達能力。
瞭解更多技術細節,請檢視論文:
Learning Deep Bilinear Transformation for Fine-grained Image Representation
論文連結:https://papers.nips.cc/paper/8680-learning-deep-bilinear-transformation-for-fine-grained-image-representation.pdf
程式碼連結:https://github.com/researchmm/DBTNet