天天看點

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

Transformer是一種自注意力模型架構,2017年之後在NLP領域取得了很大的成功。2020年,谷歌提出pure transformer結構ViT,在ImageNet分類任務上取得了和CNN可比的性能。之後大量ViT衍生的Pure Transformer架構(下文中簡稱為Transformer架構/模型)在ImageNet上都取得了成功。此外,在檢測、跟蹤、分割等下遊視覺任務上,pure transformer的架構也不斷取得和CNN可比的性能,但是在更加細粒度的圖像檢索任務上目前還沒有将成功的工作。 

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

在這篇論文中,阿裡達摩院的研究團隊首次成功将pure transformer架構應用于目标重識别(ReID)任務,提出了TransReID架構,在6個資料集上都取得了超過SOTA CNN方法的性能。

研究背景

縱觀整個CNN-based ReID方法的發展,我們發現很多工作都關注兩個重要的點:

1)挖掘圖檔中的全局性資訊。CNN網絡由于卷積核堆疊的原因,是以感受野存在一個高斯核的衰減。例如圖1所示,标準CNN的模型通常會關注于圖檔中某一兩個比較有判别性的局部區域,而會忽視一些全局資訊。為了解決這個問題,大量方法通過引入注意力機制來擴大模型的有效感受野,進而得到更好的全局性。但是注意力機制僅僅隻是緩解了CNN的這個問題,并不能徹底解決有效感受野高斯衰減的問題。但是Transformer中的自注意力子產品會使得每一個patch都和圖檔中的patch都計算一個attention score,是以相比CNN模型在挖掘全局資訊上有天然的優勢,并且multi-head也可以挖掘多個判别性區域。可以看到,圖1中Transformer-based的方法能夠挖掘多個具有判别性的局部區域。

2) 學習細節資訊豐富的細粒度特征。CNN網絡裡面存在下采樣操作來獲得平移不變性和擴大感受野,但是同時也降低特征圖的分辨率,這會丢失圖像的一些細節資訊。如圖2中的這對負樣本對(CNN識别錯誤,Transformer識别正确),兩張圖檔的外觀特征是非常相似的,但是從書包的細節可以看出,左邊書包側面有一個杯子,而右邊書包側面則沒有杯子,是以可以判斷是兩個ID。但是是以CNN的下采樣操作,在網絡最後輸出的特征圖上已經看不清杯子這個細節了。但是Transformer沒有下采樣操作,是以特征圖能夠比較好地保留細節資訊,進而識别目标。

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

綜上所述,Transformer結構是非常适合ReID任務的,但是僅僅用Transformer替換掉CNN backbone并沒有充分利用Transformer的特性。本文提出了首個pure transformer的ReID架構TransReID,包含JPM和SIE兩個新的子產品。之前的ReID工作顯示将圖檔進行切塊得到若幹個part,然後對每個part提取local特征能夠提升性能。我們借鑒了這個設計,将Transformer中的patch embedding分成若幹個group,但是這個操作沒有充分利用Transformer的全局依賴性。是以我們設計了Jigsaw Patch Module (JPM),将patch embedding随機打亂之後再切分group。Transformer非常擅長encode不同模态的資訊,而之前的ReID工作顯示相機和姿态資訊是有利于ID的識别的,是以我們設計了Side Information Module (SIE) 來利用這些有益的資訊。

TransReID

1、Transformer-based strong baseline 

我們首先參考CNN的baseline BoT 設計Transformer-based strong baseline。如圖圖3所示,我們參考ViT将圖檔分成N個patch,并引入一個額外的cls token共N+1個embedding。經過Transformer layers之後,我們将cls token作為圖像的全局特征,之後經過一個BNNeck結構計算triplet loss和分類ID loss。

由于ImageNet預訓練的ViT是使用224*224的圖像分辨率,而ReID通常使用的分辨率不會是224*224,這造成了position embedding的次元不一樣。是以,我們将position embedding按照空間位置進行插值來加載預訓練的position embedding參數。

此外,還有一個漲點的tricks是對圖像進行patch分塊的時候可以讓相鄰的patch之間有一定的overlap。當然這個操作會使得patch數目增加進而使得模型訓練的資源消耗增加,但是性能也會有比較穩定提升。

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

2、Jigsaw Patch Module 

ReID任務經常會遇到遮擋、不對齊這些問題,一般我們會采用細粒度的局部特征來處理這些問題,水準切塊就是非常常用的一種局部特征方法。JPM子產品借鑒水準切塊思想,将最後一層的patch embedding分成k個group (k=4),然後對于每個group進行transformer encode得到N個cls token,每個cls token就相當于PCB中的striped feature,計算一個loss。但是這麼做有一個缺點:每個group隻包含了圖檔中一個局部區域的資訊,而transformer的特性是能夠挖掘全局關聯性。為了擴大每個group的「視野」,我們将所有的patch embedding按照一定規則進行打亂,然後再進行分組。這樣每個group就可能包含來自圖檔不同區域的patch,近似等效于每個group都有比較全局的「視野」。此外,打亂操作也可以看做是給網絡增加了一些擾動,使得網絡能夠學習到更加魯棒的特征。

具體打亂操作分為兩步:(1)将最後一層輸出的patch embedding去除0号位置的cls token可以得到N個patch embedding,之後将它們進行循環平移m步;(2)第二步參照shuffle的group shuffle操作将N個patch的順序打亂得到新順序的N各patch embedding,之後将它們按照新順序分為k個group,每個group都學習一個cls token,最終concat所有cls token作為最終的feature。

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

2、Side Information Embeddings 

ReID任務中相機、視角的差異會給圖像帶來一些外觀上的差異,是以不少工作關注怎麼抑制這些bias。對于CNN架構,通常需要專門設計結構來處理這個問題,例如設計loss、對資料進行先驗處理、改變模型結構等等。這些設計通常比較定制化且比較複雜,推廣性并不強。而transformer則比較擅長融合不同模态的資訊,是以我們提出了SIE子產品來利用相機ID、視角等輔助資訊。

與可學習的position embedding類似,我們使用了可學習的embedding來編碼相機ID和方向ID這些Side information,這個子產品成為Side Information Embedding (SIE)。假設總共有Nc個相機ID和Nv個方向ID,某張圖檔的相機ID和方向ID分别是r和q,則他們最終的SIE編碼為:

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

最終,backbone的輸入為patch embeding、position embedding和SIE \mathcal{S}_{(C,V)}的權重之和。圖4展示了TransReID的完整架構,在ViT的基礎上增加了JPM和SIE子產品。

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

實驗結果

1、不同Backbone的對比

Table 2給出了不同Backbone的準确度和推理時間的對比,我們将ResNet50作為baseline,同時我們給出了ViT和DeiT的結果。可以看到,DeiT-S/16在速度上與ResNet50是接近的,在準确度上同樣也有可比的性能。當我們使用更深的DeiT-B/16和DeiT-V/16時,同樣和ResNest50取得了相似的速度和準确度。當我們在pre-patch環節縮小conv的stride時,patch的數目增加,速度下降,但是準确度也會收獲穩定的提升。 

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

2、Ablation Study

詳細的消融實驗可以看論文,這裡隻給出大子產品的消融實驗,我們以ViT-B/16作為baseline。從Table 5中的結果可以看出,JPM子產品和SIE子產品都是能穩定帶來提升的,TransReID将這兩個子產品一起用還能進一步提升結果。  

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

3、和SOTA對比

Table 6給出了和SOTA方法對比的結果。可以看到,和CNN的方法相比,TransReID在六個ReID資料集上取得了更好的準确度,這顯示了pure transformer架構在圖像檢索任務上同樣适用。

一個有意思的地方是,在ImageNet上取得更好分數的DeiT在下遊的ReID任務上并沒有超過ViT。這是因為ViT使用了更大的ImageNet22K做預訓練,更大的預訓練資料使得ViT有更好的遷移性。

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

4、一些可視化

下圖給出了CNN和TransReID的注意力可視化結果,可以看出TransReID可以比CNN挖掘到更多判别性區域,同時有更好的全局性特征。

達摩院首次将Pure Transformer模型引入目标重識别,論文入選ICCV 2021

本文的論文作者包括兩位:

1.何淑婷,浙江大學博士生,阿裡巴巴達摩院研究實習生,研究方向為目标重識别,多目标跟蹤等。曾在國内外十幾項競賽中取得前三的名次,其中包括六項冠軍。

2.羅浩,2020年博士畢業于浙江大學,畢業後加入阿裡巴巴達摩院,從事ReID方向的研究與技術落地工作。累計發表論文20餘篇,Google scholar引用累計1000+次,代表作BagTricks Baseline開源代碼Star超過1.6K。曾經獲得CVPR2021 AICITY Challenge、ECCV2020 VisDA Challenge, IJCAI2020 iQIYI iCartoonFace Challenge等國際比賽冠軍。博士期間創立浙大AI學生協會、在B站等平台免費開放《深度學習和目标重識别》課程。

繼續閱讀