社群計算機視覺課程文件
視覺語言模型簡介
並獲得增強的文件體驗
開始使用
視覺語言模型簡介
本章你將學到什麼
- 多模態的簡要介紹
- 視覺語言模型簡介
- 各種學習策略
- VLM常用的資料集
- 下游任務和評估
我們的世界是多模態的
人類透過多種感官探索世界:視覺、聽覺、觸覺和嗅覺。透過協調這些不同模態的洞察力,我們才能完整地理解周圍的環境。我們以一種詩意的方式看待模態(最初在數學中被引入為不同的峰值):“每一種模態都扮演著獨特的角色,它們共同構成了我們的理解陣列。感官的交響樂,和諧的融合,在感知的舞蹈中,我們的世界得以超越。” 為了使人工智慧能夠理解世界,機器學習領域致力於開發能夠處理和整合來自多個模態資料的模型。然而,必須解決一些挑戰,包括表示和對齊。表示探索有效總結多模態資料的技術,捕捉個體模態元素之間複雜的聯絡。對齊則側重於識別所有元素之間的聯絡和互動。此外,承認處理多模態固有的困難也至關重要:
- 一種模態可能主導其他模態。
- 額外的模態可能會引入噪聲。
- 無法保證所有模態都被完全覆蓋。
- 不同模態之間可能存在複雜的關係。
儘管存在這些挑戰,機器學習社群在開發這些系統方面取得了顯著進展。本章將深入探討視覺和語言的融合,由此產生了視覺語言模型 (VLM)。要更深入地瞭解多模態,請參閱本單元的前一部分。
引言
多年來,對影像進行處理以生成文字(例如影像字幕和視覺問答)的研究一直很活躍,其中包括自動駕駛、遙感等領域。我們也看到了從傳統的機器學習/深度學習從零開始訓練,轉向了預訓練、微調和預測的新學習正規化,這種正規化顯示出巨大的優勢,因為傳統方法可能需要收集大量的資料等。
這種正規化最初在ULMFIT論文中提出,它包括:
- 使用大量訓練資料對模型進行預訓練。
- 使用任務特定資料對預訓練模型進行微調。
- 利用訓練好的模型執行下游任務,例如分類。
在視覺語言模型 (VLM) 中,我們採用這種正規化並將其擴充套件以結合視覺影像,從而獲得所需的結果。例如,2021年,OpenAI發表了一篇開創性的論文,名為CLIP,這極大地影響了這種方法的採用。CLIP利用影像-文字對比目標,透過在嵌入空間中將配對的影像和文字拉近,同時將其他影像和文字推遠來學習。這種預訓練方法使VLM能夠捕獲豐富的視覺-語言對應知識,透過匹配任何給定影像和文字的嵌入來啟用零樣本預測。值得注意的是,CLIP在分佈外任務上優於Imagenet模型。本章的下一節將進一步探討CLIP和類似模型!
機制
為了使視覺語言模型 (VLM) 能夠正常工作,文字和影像的有意義組合對於聯合學習至關重要。我們如何做到這一點?一個簡單/常見的方法是給定影像-文字對:
- 使用文字和影像編碼器提取影像和文字特徵。對於影像,可以是CNN或Transformer架構。
- 透過特定的預訓練目標學習視覺-語言相關性。
- 預訓練目標可分為三組:
- 對比目標透過在嵌入空間中將配對樣本拉近並推開其他樣本來訓練VLM學習判別表示。
- 生成目標透過訓練網路生成影像/文字資料,使VLM學習語義特徵。
- 對齊目標透過全域性影像-文字匹配或嵌入空間中的區域性區域-單詞匹配來對齊影像-文字對。
- 預訓練目標可分為三組:
- 透過學習到的視覺-語言相關性,VLM可以透過匹配任何給定影像和文字的嵌入,以零樣本方式對未見資料進行評估。

現有研究主要從三個關鍵視角關注增強VLM:
- 收集大規模資訊豐富的影像-文字資料。
- 設計有效的模型用於從大資料中學習。
- 設計新的預訓練方法/目標以學習有效的視覺-語言相關性。
VLM預訓練旨在預訓練VLM以學習影像-文字相關性,目標是在視覺識別任務(可以是分割、分類等)上實現有效的零樣本預測。
策略
我們可以根據如何利用兩種學習模式對VLM進行分組。
將影像轉換為可以與token嵌入聯合訓練的嵌入特徵。
- 在這種方法中,我們透過將影像視為普通文字標記來將視覺資訊融合到語言模型中,並在文字和影像的聯合表示序列上訓練模型。具體來說,影像被分割成多個較小的補丁,每個補丁被視為輸入序列中的一個“標記”。例如:VisualBERT,SimVLM。
學習良好的影像嵌入,作為凍結的預訓練語言模型的字首。
使用專門設計的交叉注意力機制將視覺資訊融合到語言模型的層中。
- 為了增強視覺資訊在語言模型層中的融合,採用量身定製的交叉注意力融合機制,以平衡文字生成和視覺輸入。例如:VisualGPT等。
無需任何訓練即可結合視覺和語言模型。
- 最近的方法,例如MAGiC,無需微調即可進行引導解碼以取樣下一個token。
常用VLM資料集
這些是Hugging Face資料集中VLM常用的一些資料集:
MSCOCO 包含32.8萬張影像,每張影像配有5個獨立的字幕。
NoCaps 旨在衡量對未見類和概念的泛化能力,其中領域內包含僅描繪COCO類的影像,近領域包含COCO和新穎類,域外則僅包含新穎類。
Conceptual Captions 包含300萬對影像和字幕,從網路挖掘並經過後處理。
ALIGN 是一個包含超過10億對影像alt-text的噪聲資料集,在概念字幕資料集中無需昂貴的過濾或後處理步驟即可獲得。
LAION 資料集由影像-文字對組成。這些影像-文字對是從Common Crawl網路資料轉儲中提取的,來自2014年至2021年期間抓取的隨機網頁。該資料集用於訓練Stable-Diffusion模型。
下游任務和評估
VLM在許多下游任務中表現出色,包括影像分類、目標檢測、語義分割、影像-文字檢索和動作識別,並且超越了傳統訓練的模型。
通常用於評估VLM的設定是零樣本預測和線性探測。零樣本預測是評估VLM最常用的方法,我們直接將預訓練的VLM應用於下游任務,無需任何任務特定的微調。
線上性探測中,我們凍結預訓練的 VLM,並訓練一個線性分類器來對 VLM 編碼的嵌入進行分類,以衡量其表示能力。我們如何評估這些模型?我們可以檢查它們在資料集上的表現,例如,給定一張影像和一個問題,任務是正確回答問題!我們還可以檢查這些模型如何推理視覺資料並回答相關問題。為此,最常用的資料集是 CLEVR。
像MSCOCO這樣的標準資料集對模型來說可能很容易學習,因為它們的分佈特性,這可能無法充分展示模型在更具挑戰性或多樣化資料集上的泛化能力。為此,像Hateful Memes這樣的資料集被創建出來,透過在資料集中新增困難示例(“良性混淆項”)來解決這個問題,從而使其更具挑戰性,結果表明多模態預訓練不起作用,模型與人類表現之間存在巨大差距。

另一個名為Winoground的資料集旨在找出CLIP的實際能力。上圖所示,這個資料集挑戰我們思考,儘管模型取得了令人印象深刻的結果,但它們是否真正像人類一樣掌握了組合關係,還是僅僅泛化了資料。例如,早期版本的Stable Diffusion和其他文字到影像模型無法清晰地數清手指。因此,要讓VLM達到下一階段,還有大量令人驚歎的工作要做!
下一步是什麼?
社群發展迅速,我們已經看到了許多令人驚歎的工作,例如FLAVA,它試圖為所有目標模態提供一個單一的“基礎”模型。這可能是未來的一個場景——模態無關的基礎模型,可以讀取和生成多種模態!但也可能出現其他替代方案,我們可以肯定地說,未來充滿趣味。
要了解更多這些最新進展,請隨時關注HF的Transformers庫和Diffusers庫,我們正努力盡快新增最新進展和模型!如果您認為我們遺漏了重要內容,您也可以為這些庫提出問題並親自貢獻程式碼。
< > 在 GitHub 上更新