See Finer, See More!腾讯上交提出IVT,越看越精细,进行精细全面的跨模态对比!
See Finer, See More!騰訊&上交提出IVT,越看越精細,進行精細全面的跨模態對比!
【寫在前面】
基于文本的人員檢索是基于文本描述來查找查詢對象。關鍵是要學會在視覺-文本模態之間建立一種共同的潛在空間映射。為了實現這一目標,現有的工作利用分割來獲得明確的跨模態對齊或利用注意力來探索顯著的對齊。這些方法有兩個缺點:1)標記跨模態對齊是耗時的。2)**注意力方法可以探索顯著的跨模態對齊,但可能會忽略一些微妙和有價值的對。**為了解決這些問題,作者提出了一個隱式視覺-文本(IVT)框架,用于基于文本的人員檢索。與以往的模型不同,IVT利用單一網絡來學習兩種模態的表示,這有助于視覺-文本的交互。為了探索細粒度的對齊,作者進一步提出了兩種隱式語義對齊范式:多層次對齊(MLA)和雙向掩碼建模(BMM)。MLA模塊在句子、短語和單詞層面探索更精細的匹配,而BMM模塊旨在挖掘視覺和文本模態之間更多的語義對齊。作者在公共數據集(包括CUHK- pedes、RSTPReID和ICFG-PEDES)上進行了大量實驗,以評估提出的IVT。即使沒有明確的身體部分對齊,本文的方法仍然達到最先進的性能。
1. 論文和代碼地址
See Finer, See More: Implicit Modality Alignment for Text-based Person Retrieval
論文地址:https://arxiv.org/abs/2208.08608
代碼地址:https://github.com/TencentYoutuResearch/PersonRetrieval-IVT
2. 動機
人的重新識別(re-ID)有很多應用,例如在監控中尋找嫌疑人或丟失的孩子,在超市中跟蹤顧客。基于文本的人物檢索(text-based person retrieval, TPR)作為人物re-ID的子任務,近年來備受關注。這是因為文本描述很容易訪問,并且可以以自然的方式描述更多的細節。比如,警察通常會查看監控錄像,并從目擊者那里獲取證詞。文本描述可以提供補充信息,在缺少圖像的場景中甚至是至關重要的。
基于文本的人物檢索需要對視覺形態和文本形態進行處理,其核心是學習二者之間的共同潛在空間映射。為了實現這一目標,目前的工作首先利用不同的模型來提取特征,即ResNet50用于視覺形態,LSTM或BERT用于文本形態。然后,他們致力于探索視覺-文本部分對的語義對齊。然而,這些方法至少有兩個缺點,可能導致次優的跨模態匹配。首先,單獨的模型缺乏形式交互。每個模型通常包含很多層,參數很多,僅利用末端的匹配損失很難實現全交互。為了緩解這一問題,一些關于一般圖像-文本預訓練的研究使用交叉注意進行交互。但是,它們需要對所有可能的圖像-文本對進行編碼來計算相似度得分,導致推理階段的時間復雜度為二次元。如何設計一個更適合TPR任務的網絡,還需要深入思考。其次,標記視覺文本的部分對,如頭部、上身和下身,是耗時的,而且由于文本描述的可變性,一些對可能會缺失。例如,一些文本包含發型和褲子的描述,但其他文本不包含此信息。一些研究者開始探索隱式局部對齊來挖掘部分匹配。為了保證可靠性,通常選擇高置信度的局部匹配。但這些部分通常屬于容易通過全局對齊挖掘的顯著區域,即不帶來額外的信息增益。根據作者的觀察,**局部語義匹配不僅要看得更細,而且要看得更多。**一些微妙的視覺文本線索,例如發型和衣服上的標志,可能很容易被忽視,但可以作為全球匹配的補充。
為了解決上述問題,作者首先引入了一個隱式視覺文本(IVT)框架,該框架只使用一個網絡就可以學習兩種模態的表示(見上圖(b))。這得益于Transformer可以對任何可以標記化的模態進行操作。為避免分離模型和交叉注意力模型的缺點,即分離模型缺乏模態交互,交叉注意模型在推理階段速度較慢。IVT支持單獨的特征提取,以確保檢索速度,并共享有助于學習公共潛在空間映射的一些參數。為了探索細粒度的模式匹配,作者進一步提出了兩種隱式語義對齊范式:多層次對齊(MLA)和雙向掩碼建模(BMM)。這兩種范式不需要額外的手工標記,并且易于實現。具體地說,如上圖?所示,MLA旨在通過使用句子、短語和單詞級匹配來探索細粒度對齊。BMM與MAE和BEIT有相似的想法,它們都通過隨機掩蔽學習更好的表示。不同的是,后兩者針對的是單模態的自動編碼式重建,而BMM不重建圖像,而是側重于學習跨模態匹配。通過屏蔽一定比例的視覺和文本token,BMM迫使模型挖掘更多有用的匹配線索。提出的兩種范式不僅可以看到更好的語義對齊,而且可以看到更多的語義對齊。大量實驗證明了TPR任務的有效性。
本文的貢獻可以概括為三個方面:
(1)提出了從骨干網的角度解決模態對齊問題,并引入了隱式視覺文本(IVT)框架。這是第一個統一的基于文本的人員檢索框架。
(2)提出了兩種隱式語義對齊范式,即MLA和BMM,使模型能夠挖掘更精細和更精確的語義對齊。
(3)對三個公共數據集進行了廣泛的實驗和分析。實驗結果表明,本文的方法達到了最先進的性能。
3. 方法
3.1 Overview
為了解決基于文本的人物檢索中的形態對齊問題,作者提出了一個隱式視覺-文本(IVT)框架,如上圖所示。它由統一的視覺-文本網絡和兩種隱式語義對齊范式組成,即多層對齊(MLA)和雙向掩碼建模(BMM)。IVT的一個關鍵思想在于使用統一的網絡來處理模態對齊。通過共享一些模塊,如層歸一化和多頭注意,統一的網絡有助于學習視覺和文本模式之間的共同空間映射。它還可以使用不同的模塊學習特定于模態的線索。提出了兩種隱式語義對齊范式,即MLA和BMM,以探討細粒度的語義對齊。不同于以往的手工加工部件或從注意力中選擇突出部件的方法,這兩種范式不僅可以挖掘出更精細的語義對齊,而且可以挖掘出更多的語義對齊,這是作者提出的IVT的另一個關鍵思想。
3.2 Unified Visual-Textual Network
Embedding
如上圖所示,輸入是圖像-文本對,從視覺和文本兩種方式提供一個人的外觀特征。設圖像-文本對記為{xi,ti,yi}∣i=1N\left.\left\{x_{i}, t_{i}, y_{i}\right\}\right|_{i=1} ^{N}{xi?,ti?,yi?}∣i=1N?,其中xi,ti,yix_{i}, t_{i}, y_{i}xi?,ti?,yi?分別表示圖像,文本和身份標簽。N為樣本總數。對于輸入圖像xi∈RH×W×Cx_{i} \in \mathbb{R}^{H \times W \times C}xi?∈RH×W×C,首先將其分解為K=H?W/P2K=H \cdot W / P^{2}K=H?W/P2個patch,其中P表示patch的大小,然后將其線性投影為patch嵌入{fkv}∣k=1K\left.\left\{f_{k}^{v}\right\}\right|_{k=1} ^{K}{fkv?}∣k=1K?。該操作可以使用一個卷積層來實現。然后在patch嵌入之前添加一個可學習的類token fclsvf_{c l s}^{v}fclsv?,并添加一個可學習的位置嵌入fposvf_{p o s}^{v}fposv?和一個類型嵌入ftype?vf_{\text {type }}^{v}ftype?v?。
fv=[fcls?v,f1v,…,fKv]+fposv+ftype?v.\mathbf{f}^{v}=\left[f_{\text {cls }}^{v}, f_{1}^{v}, \ldots, f_{K}^{v}\right]+f_{p o s}^{v}+f_{\text {type }}^{v} . fv=[fcls?v?,f1v?,…,fKv?]+fposv?+ftype?v?.
對于輸入文本tit_{i}ti?,它通常由一個或幾個句子組成,每個句子有一個單詞序列。利用預訓練好的單詞嵌入,將單詞投射到符號向量中:
ft=[fclst,f1t,…,fMt,fsept]+fpost+ftype?t\mathbf{f}^{t}=\left[f_{c l s}^{t}, f_{1}^{t}, \ldots, f_{M}^{t}, f_{s e p}^{t}\right]+f_{p o s}^{t}+f_{\text {type }}^{t} ft=[fclst?,f1t?,…,fMt?,fsept?]+fpost?+ftype?t?
其中fclstf_{c l s}^{t}fclst?和fseptf_{s e p}^{t}fsept?表示開始和結束標記。M表示標記化子字單元的長度。fpostf_{p o s}^{t}fpost?是位置嵌入,ftype?tf_{\text {type }}^{t}ftype?t?是類型嵌入。
Visual-Textual Encoder
目前在TPR任務上的工作使用了獨立的模型,這些模型缺乏完整的模態交互。最近一些關于一般圖像-文本預訓練的研究試圖利用交叉注意來實現形態交互。但是交叉注意需要在推理階段對所有可能的圖像-文本對進行編碼,導致檢索速度非常慢。在此基礎上,作者提出將統一的視覺-文本網絡用于TPR任務。統一網絡檢索速度快,支持模式交互。
如上圖所示,網絡遵循ViT的標準架構,共堆疊L塊。在每個塊中,兩種模態共享層歸一化(LN)和多頭自注意(MSA),有助于學習視覺和文本模態之間的公共空間映射。這是因為共享參數有助于了解公共數據統計。例如,LN將計算輸入token嵌入的平均值和標準差,而共享LN將學習兩種模態在統計上的共同值。從數據級的角度來看,這可以被視為一種“形態交互”。由于視覺和文本的模態不同,每個block都有模態相關的前饋層,即上圖中的“Img”和“Txt”模塊。它們通過切換到可視或文本輸入來捕獲特定于模態的信息。每個塊的完整處理可以表示為:
fiv/t=MSA?(LN?(fi?1v/t))+fi?1v/tfiv/t=MLPimg/txt(LN(fiv/t))+fiv/t\begin{aligned} \mathbf{f}_{i}^{v / t} &=\operatorname{MSA}\left(\operatorname{LN}\left(\mathbf{f}_{i-1}^{v / t}\right)\right)+\mathbf{f}_{i-1}^{v / t} \\ \mathbf{f}_{i}^{v / t} &=\mathrm{MLP}_{\mathrm{img} / \mathrm{txt}}\left(\mathrm{LN}\left(\mathbf{f}_{i}^{v / t}\right)\right)+\mathbf{f}_{i}^{v / t} \end{aligned} fiv/t?fiv/t??=MSA(LN(fi?1v/t?))+fi?1v/t?=MLPimg/txt?(LN(fiv/t?))+fiv/t??
其中LN表示層歸一化,MSA表示多頭注意。i是塊的索引。fi?1v/t\mathbf{f}_{i-1}^{v / t}fi?1v/t?是第i個塊的視覺或文本輸出,也是第i個塊的輸入。MLPimg/txt\mathrm{MLP}_{\mathrm{img} / \mathrm{txt}}MLPimg/txt?表示特定于模態的前饋層。fiv/t\mathbf{f}_{i}^{v / t}fiv/t?是第I個塊的輸出。
Output
最后一個塊的類token作為全局表示,即上圖中的fimgf_{i m g}fimg?和ftxtf_{txt}ftxt?。兩個特征向量的維數都為768,輸出用LN層進行歸一化。
3.3 Implicit Semantic Alignment
Multi-Level Alignment
細粒度對齊已被證明是實現性能改進(如分段屬性,stripe-based部分)的關鍵。這些方法可以看作是顯式的部分對齊,即告訴模型哪些視覺文本部分應該對齊。在這項工作中,作者提出了一種隱式對齊方法,即多層次對齊,這是一種直觀而有效的方法。
如上圖所示,作者對輸入圖像進行增強,得到水平翻轉和隨機裁剪三種類型的增強圖像。輸入文本通常由一個或幾個句子組成。作者根據句號和逗號把它們分成更短的句子。這些短句被視為“短語級”表征,描述了人體的部分外觀特征。為了挖掘更精細的部分,進一步利用自然語言工具包(NLTK)提取描述特定地方特征的名詞和形容詞,例如包、衣服或褲子。三個層次的文本描述,即句子層次、短語層次和詞匯層次,對應三種增強圖像。在每次迭代中隨機生成三層圖像-文本對。通過這種方式,作者構建了一個從全局到局部逐漸細化的匹配過程,迫使模型挖掘更精細的語義對齊。
本文的方法與以前的工作的主要區別是,作者沒有顯式地定義視覺語義部分,而是自動地探索由三級文本描述指導的對齊的視覺部分。這是由于以下觀察結果啟發了本文的TPR框架:
1)以往的顯式對齊方法在訓練階段和推理階段之間缺乏不一致性。在訓練過程中,以前的方法利用一種無監督的方式來探索局部對齊,例如,根據相似性選擇top-k顯著對齊。在推斷階段,每個模態只使用全局嵌入,導致不一致的問題。
2)顯式局部對齊使訓練變得容易,但在推理階段使訓練變得困難。過于簡化的任務設計會導致模型泛化性能下降。雖然不提供視覺部分,而是提供完整的圖像,但模型在訓練階段努力挖掘局部對齊,因此在推理階段由于一致性獲得了更好的性能。
Bidirectional Mask Modeling
為了自動挖掘局部對齊,最近的方法]將圖像分成條狀,并利用注意力選擇top-k部分對齊。然而,他們忽略了一個事實,即top-k部分對齊通常是顯著的線索,這可能已經被全局對齊挖掘。因此,這些部分帶來的信息收益有限。作者認為,**局部對齊不僅應該更精細,而且應該更多樣化。**一些微妙的視覺-文本線索可能是全局對齊的補充。
如上圖所示,作者提出了一種雙向掩碼建模(BMM)方法來挖掘更多的語義對齊。對于圖像和文本標記,作者隨機屏蔽它們中的某些百分比,然后強制視覺輸出和文本輸出保持一致。通常,掩碼token對應于圖像或文字的特定patch。如果特定的補丁或單詞被屏蔽,該模型將試圖從其他補丁或單詞中挖掘有用的對齊線索。以上圖中的女士為例,如果將“橙色外套”和“黑色褲子”這兩個突出的詞語蒙住,模特會更加關注其他詞語,如馬尾發型、紅色背包。通過這種方式,可以探索更微妙的視覺-文本對齊。在訓練階段,該方法增加了模型對圖像和文本對齊的難度,但有助于模型在推理階段挖掘更多的語義對齊。
上述方法與隨機擦除、MAE和BEIT有相似的想法。然而,隨機擦除只mask一個區域。MAE和BEIT的目標是使用一種自編碼方式進行圖像重建。該算法不重構圖像,只關注交叉模態匹配。
3.4 Loss Function
作者利用常用的跨模態投影匹配(CMPM)損失來學習視覺-文本對齊,其定義如下:
Lcmpm=1B∑i=1B∑j=1B(pi,j?log?pi,jqi,j+?),pi,j=exp?(fiT?fj)∑k=1Bexp?(fiT?fk),qi,j=yi,j∑k=1Byi,k,\mathcal{L}_{c m p m}=\frac{1}{B} \sum_{i=1}^{B} \sum_{j=1}^{B}\left(p_{i, j} \cdot \log \frac{p_{i, j}}{q_{i, j}+\epsilon}\right),\\p_{i, j}=\frac{\exp \left(f_{i}^{T} \cdot f_{j}\right)}{\sum_{k=1}^{B} \exp \left(f_{i}^{T} \cdot f_{k}\right)}, \quad q_{i, j}=\frac{y_{i, j}}{\sum_{k=1}^{B} y_{i, k}}, Lcmpm?=B1?i=1∑B?j=1∑B?(pi,j??logqi,j?+?pi,j??),pi,j?=∑k=1B?exp(fiT??fk?)exp(fiT??fj?)?,qi,j?=∑k=1B?yi,k?yi,j??,
其中pi,jp_{i, j}pi,j?為匹配概率。fif_{i}fi?和fjf_{j}fj?表示不同模態的整體特征。B為mini-batch大小。qi,jq_{i, j}qi,j?表示歸一化真匹配概率。?\epsilon?是一個避免數值問題的小數字。
CMPM損失表示從分布q到p的KL散度。按照以前的工作,從圖像到文本和文本到圖像兩個方向計算匹配損失。損失可以表示為:
L=Lcmpmt2v+Lcmpmv2t\mathcal{L}=\mathcal{L}_{c m p m}^{t 2 v}+\mathcal{L}_{c m p m}^{v 2 t} L=Lcmpmt2v?+Lcmpmv2t?
4.實驗
本文方法在三個常見Text-based ReID數據集上的實驗結果。
如上表所示,基線在R1和mAP上分別達到55.75%和53.36%。引入MLA模塊后,整體性能提升至61.00%和56.88%。
BMM策略在本文的框架中也扮演著重要的角色,如上表所示。通過對比No.1和No.3,可以發現R1和mAP從55.75%、53.36%提高到60.43%、56.65%。
即使沒有預先訓練,IVT在R1上的準確率也達到了64%(見No.7),超過了目前的SOTA方法,如NAFS (61.50%), TBPS(61.65%)。為了獲得更好的泛化特征,作者使用大規模的圖像-文本語料庫對模型進行預訓練。如上表所示,可以發現整體性能也可以顯著提高。其中R1和mAP在訓練前分別從55.75%、53.36%提高到60.06%、56.64%(見No.1和No.2)。
當比值設置為0.3時,R1和mAP達到峰值。然后隨著掩蔽比的繼續增大,性能逐漸下降。這是因為掩蔽比太大時,模型無法挖掘足夠的語義對齊,從而降低了最終性能。
與基線方法相比,提出的IVT獲得了更多的陽性樣本。這是因為它可以捕獲更細粒度的對齊。
為了更好地理解視覺和文本對齊,作者給出了一些句子級熱圖的可視化。熱圖是通過可視化文本[CLS]標記和所有可視化標記之間的相似性來獲得的。一般來說,文本描述可以與人體相對應,這表明模型已經學會了視覺和文本模式的語義相關性。
為了驗證細粒度對齊的能力,作者進一步進行word級對齊實驗。
【項目推薦】
面向小白的頂會論文核心代碼庫:https://github.com/xmu-xiaoma666/External-Attention-pytorch
面向小白的YOLO目標檢測庫:https://github.com/iscyy/yoloair
面向小白的頂刊頂會的論文解析:https://github.com/xmu-xiaoma666/FightingCV-Paper-Reading
“點個在看,月薪十萬!”
 “學會點贊,身價千萬!”
總結
以上是生活随笔為你收集整理的See Finer, See More!腾讯上交提出IVT,越看越精细,进行精细全面的跨模态对比!的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 行人属性识别二:添加新网络训练和自定义数
- 下一篇: 用GAN的方法来进行图片匹配!休斯顿大学
