ICML2021 | ALIGN:大力出奇跡,谷歌用18億的圖像-文本對訓練了一個這樣的模型
學習良好的視覺和視覺語言表征對于解決計算機視覺問題(圖像檢索、圖像分類、視頻理解)是至關重要的,目前,預訓練的特征在許多NLP任務中已經展現(xiàn)了非常大的潛力。雖然NLP中的表示學習已經可以用沒有人工注釋的原始文本訓練,但視覺和視覺語言表示仍然嚴重依賴于昂貴或需要專家知識的訓練數(shù)據(jù)集。對于視覺任務,特征表示的學習主要依賴具有顯式的class標簽的數(shù)據(jù)集,如ImageNet或OpenImages。對于視覺語言任務,一些使用廣泛的數(shù)據(jù)集像Conceptual Captions、MS COCO以及CLIP都涉及到了數(shù)據(jù)收集和清洗的過程。這類數(shù)據(jù)預處理的工作嚴重阻礙了獲得更大規(guī)模的數(shù)據(jù)集。在本文中,作者利用了超過10億的圖像文本對的噪聲數(shù)據(jù)集,沒有進行數(shù)據(jù)過濾或后處理步驟 。基于對比學習損失,使用一個簡單的雙編碼器結構來學習對齊圖像和文本對的視覺和語言表示 。作者證明了,語料庫規(guī)模的巨大提升可以彌補數(shù)據(jù)內部存在的噪聲,因此即使使用簡單的學習方式,模型也能達到SOTA的特征表示。當本文模型的視覺表示轉移到ImageNet和VTAB等分類任務時,也能取得很強的性能。對齊的視覺和語言表示支持zero-shot的圖像分類,并在Flickr30K和MSCOCO圖像-文本檢索基準數(shù)據(jù)集上達到了SOTA的結果。
在現(xiàn)有工作中,視覺和視覺語言表示學習大多是分別使用不同的訓練數(shù)據(jù)源進行研究的。在視覺領域,對大規(guī)模監(jiān)督數(shù)據(jù)(如ImageNet、OpenImages和JFT-300M)進行預訓練對提高下游任務的性能是至關重要的。獲得這種預訓練的數(shù)據(jù)集需要在數(shù)據(jù)收集、采樣和人工標注方面進行大量的工作,數(shù)據(jù)獲取成本非常大,因此難以擴展。預訓練也是視覺語言建模的方法。然而,視覺語言的預訓練數(shù)據(jù)集,如Conceptual Captions、Visual Genome Dense Captions和 ImageBERT,需要在人類標注、語義解析、清理和平衡方面進行更重的工作。因此,這些數(shù)據(jù)集的規(guī)模僅在10M個樣本左右。這至少比視覺領域的數(shù)據(jù)集小一個數(shù)量級,而且比預訓練的NLP數(shù)據(jù)集也小得多。在這項工作中,作者利用了超過10億個有噪聲的圖像文本對的數(shù)據(jù)集來擴展視覺和視覺語言表示學習。作者采用了Conceptual Captions的方式來獲取一個大的噪聲數(shù)據(jù)集。與其不同的是,作者沒有用復雜的數(shù)據(jù)濾波和后處理步驟來清理數(shù)據(jù)集,而是只應用簡單的基于數(shù)據(jù)頻率的過濾。雖然得到的數(shù)據(jù)集有噪聲,但比Conceptual Captions數(shù)據(jù)集大兩個數(shù)量級。作者發(fā)現(xiàn),在這樣的大規(guī)模噪聲數(shù)據(jù)集上預訓練的視覺和視覺語言表示在廣泛的任務上取得了非常強的性能。作者基于在一個共享的embedding空間中對齊視覺和語言表示的訓練目標,使用一個簡單的雙編碼器體系結構來訓練模型。作者將這個模型命名為ALIGN(A L arge-scale I maG e and N oisy-text embedding),圖像和文本編碼器是通過對比損失函數(shù)學習的,將匹配的圖像文本對的embedding推在一起,同時將不匹配的圖像文本對的embedding分開。這也是自監(jiān)督和監(jiān)督表示學習的最有效的損失函數(shù)之一。考慮到ALIGN用文本作為圖像的細粒度標簽,因此圖像對文本的對比損失類似于傳統(tǒng)的基于標簽的分類目標;關鍵的區(qū)別在于這里的label是由文本編碼器生成“標簽”權重,而不是像ImageNet那樣離散的標簽。(ALIGN的模型結構如上圖所示)對齊的圖像和文本表示自然適用于跨模態(tài)匹配/檢索任務,并在相應的基準數(shù)據(jù)集測試中實現(xiàn)了SOTA結果。此外,這種跨模態(tài)匹配也適用于zero-shot圖像分類,在不使用任何訓練樣本的情況下,在ImageNet中獲得了76.4%的Top-1準確率 。此外,圖像表示在各種下游視覺任務中也取得了不錯的性能。例如,ALIGN在ImageNet中達到了88.64%的Top-1準確率 。(上圖展示了跨模態(tài)檢索的示例)
2.1. A Large-Scale Noisy Image-Text Dataset
本文的重點是擴大視覺和語言表示學習的規(guī)模。為此,作者創(chuàng)建了一個比現(xiàn)有數(shù)據(jù)集大得多的數(shù)據(jù)集。具體來說,作者遵循構建Conceptual Captions數(shù)據(jù)集的方法,以獲得更大規(guī)模的圖像-文本數(shù)據(jù)集。但是,Conceptual Captions數(shù)據(jù)集還進行了大量的數(shù)據(jù)過濾和后處理工作,為了獲取更大規(guī)模的數(shù)據(jù),作者通過減輕Conceptual Captions工作中的大部分數(shù)據(jù)清洗工作來減少數(shù)據(jù)處理的工作量(作者僅根據(jù)數(shù)據(jù)的頻率做了非常簡單的數(shù)據(jù)過濾)。因此,作者獲得了一個更大規(guī)模的數(shù)據(jù)集(18億的圖像文本對)。上圖展示了數(shù)據(jù)集中的一些隨機采樣的例子。2.2. 預訓練與任務遷移
2.2.1. 預訓練
作者使用雙編碼器結構用于訓練對齊特征,該模型由一對圖像編碼器和文本編碼器組成。作者使用具有全局池化的EfficientNet作為圖像編碼器,使用帶有[CLS] token embedding的BERT作為文本編碼器。在BERT編碼器的頂部,作者添加了一個帶激活函數(shù)的全連接層,以匹配圖像的維度。圖像和文本編碼器都是通過normalized softmax損失函數(shù)進行優(yōu)化。在訓練中,將匹配的圖像-文本對視為正樣本,并將當前訓練batch中的其他隨機圖像-文本對視為負樣本。在訓練過程中,優(yōu)化以下兩個損失函數(shù):其中,和的分別是第i個圖像和第j個文本的 normalized embedding。N是batch size,σ是temperature系數(shù)。在這里,temperature系數(shù)是非常重要的,因為圖像和文本的embedding都經過了L2-normalized。在本文中,公式中的temperature系數(shù)是通過訓練來獲得,而不是一個超參數(shù)。2.2.2. 任務遷移之Image-Text Matching & Retrieval
作者評估了ALIGN在圖像對文本和文本對圖像的檢索任務上的性能(有finetuning和無finetuning)。測試的數(shù)據(jù)集包括Flickr30K和MSCOCO。此外,作者也在Crisscrossed Captions (CxC)數(shù)據(jù)集上測試ALIGN的性能(Crisscrossed Captions是MSCOCO的一個擴展數(shù)據(jù)集,它對caption-caption、 image-image和image-caption對進行了額外的語義相似性判斷)。通過這些擴展的標注,CxC可以實現(xiàn)四個模態(tài)內和模式內的檢索任務,包括圖像到文本檢索、文本到圖像檢索、文本到文本檢索和圖像到圖像的檢索任務,以及三個語義文本相似性任務,包括語義文本相似性(STS)、語義圖像相似性(SIS)和語義圖像-文本相似度(SITS)。2.2.3. 任務遷移之 Visual Classification
作者首先將ALIGN基于zero-shot方式應用到視覺分類任務上,數(shù)據(jù)集包括ImageNet ILSVRC-2012 benchmark、ImageNet-R、ImageNet-A、ImageNet-V2。這些ImageNet數(shù)據(jù)集變種都是ImageNet的一個子集,ImageNet-R和 ImageNet-A是根據(jù)不同的分布對ImageNet采樣得到的。作者還將圖像編碼器遷移到了下游的視覺分類任務中,為此,作者使用了ImageNet以及一些較小的細粒度分類數(shù)據(jù)集Oxford Flowers-102、 Oxford-IIIT Pets、Stanford Cars、 Food101。對于ImageNet,作者展示了來自兩個設置的結果:只訓練頂級分類層(使用凍結的對齊圖像編碼器)和完全微調(不凍結的對齊圖像編碼器)。對于細粒度的分類基準數(shù)據(jù)集測試,作者只展示了后一種設置的結果。此外,作者還在Visual Task Adaptation Benchmark數(shù)據(jù)集(由19個不同的視覺分類任務組成,每個任務有1000個訓練樣本)上測試了模型的魯棒性。
3.1. Image-Text Matching & Retrieval
上表展示了ALIGN在Flickr30K和MSCOCO數(shù)據(jù)集上基于Zero-shot和fine-tued設置下和其他SOTA方法的對比??梢钥闯鲈赯ero-shot的設置下,ALIGN在圖像檢索任務上比CLIP獲得了7%以上的性能改進。通過微調,ALIGN的性能大大優(yōu)于所有現(xiàn)有方法。3.2. Zero-shot Visual Classification
如果直接將類名的文本輸入文本編碼器,ALIGN就可以通過圖像-文本檢索任務對圖像進行分類。上表展示了ALIGN和CLIP在不同分類數(shù)據(jù)集上Zero-Shot的結果,可以看出,相比于CLIP,ALIGN在大多數(shù)數(shù)據(jù)集具備性能上的明顯優(yōu)勢。3.3. Visual Classification w/ Image Encoder Only
上表展示了ALIGN和其他方法在ImageNet數(shù)據(jù)集上的比較結果。通過凍結參數(shù),ALIGN的性能略優(yōu)于CLIP,并達到85.5%的SOTA準確率。微調后,ALIGN比BiT和ViT模型獲得更高的精度。上表展示了在VTAB(19個任務)上,ALIGN和BiT-L之間的結果比較。結果表明,采用類似的超參數(shù)選擇方法,ALIGN的性能優(yōu)于BiT-L。上表展示了不同模型在細粒度分類任務上的遷移學習結果。3.4. Ablation Study
3.4.1. Model Architectures
上圖顯示了不同圖像和文本Backbone組合下的MSCOCO zero-shot檢索和ImageNet KNN結果。上表展示了一些ALIGN模型變體與baseline模型(第一行)的比較。第2-4行顯示,embedding維度越高,模型性能越高。第5行和第6行顯示,在softmax損失中使用更少的in-batch negatives(50%和25%)會降低性能。第7-9行研究了temperature參數(shù)對softmax損失的影響。3.4.2. Pre-training Datasets
上表的結果表明一個大規(guī)模的訓練集對于擴展ALIGN模型和實現(xiàn)更好的性能是至關重要的。3.5. Analysis of Learned Embeddings
作者建立了一個簡單的圖像檢索系統(tǒng),來研究通過ALIGN訓練的embedding行為。上圖顯示了用不存在于訓練集中 text queries進行text-to-image檢索的top-1結果。上圖顯示了用“圖像±文本查詢”進行圖像檢索的結果。3.6. Multilingual ALIGN Model
ALIGN的一個優(yōu)點是,該模型是在有噪聲的網絡圖像文本數(shù)據(jù)上進行非常簡單的過濾之后訓練得到的,并且沒有對特定語言進行過濾。因此該模型不受語言的約束。上表顯示了不同語言下zero-shot和fine-tuning的結果。
在本文中,作者提出了一種簡單的方法(ALIGN),利用大規(guī)模噪聲圖像-文本數(shù)據(jù)來擴大視覺和視覺語言的表示學習。作者避免了對數(shù)據(jù)預處理和標注的工作量,只需要基于數(shù)據(jù)頻率的簡單過濾。在這個數(shù)據(jù)集上,作者基于對比學習損失函數(shù)訓練一個非常簡單的雙編碼器模型ALIGN。ALIGN能夠進行跨模態(tài)檢索,并顯著優(yōu)于SOTA的VSE和基于cross-attention的視覺語言模型。在視覺的下游任務中,ALIGN也可以達到與用大規(guī)模標注數(shù)據(jù)訓練的SOTA模型相似的性能,甚至優(yōu)于SOTA模型。研究領域:FightingCV公眾號運營者,研究方向為多模態(tài)內容理解,專注于解決視覺模態(tài)和語言模態(tài)相結合的任務,促進Vision-Language模型的實地應用。
知乎/公眾號:FightingCV
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請
點擊舉報。