在本文來自于encord,從VLM 算法架構(gòu),原理,到應(yīng)用方向,挑戰(zhàn)難點方面探討VLM 的架構(gòu)、評估策略和主流數(shù)據(jù)集,以及該領(lǐng)域的主要挑戰(zhàn)和未來趨勢。
通過了解這些基礎(chǔ)方面,讀者將深入了解如何將 VLM 應(yīng)用于醫(yī)療保健、機器人和媒體等行業(yè),汽車行業(yè)屬于機器人板塊,熟悉VLM可以幫助理解當(dāng)前自動駕駛產(chǎn)品,算法挑戰(zhàn)以及發(fā)展趨勢。
是一篇帶有深度的科普文章,文章比較長而且需要一定的算法基礎(chǔ)和強烈興趣愛好來讀。
很長一段時間以來,人工智能(AI)能夠像人類一樣有效地理解視覺和文本線索的想法似乎遙不可及且難以想象。然而,隨著多模態(tài)人工智能的出現(xiàn),我們看到了一場革命,人工智能可以同時理解各種模態(tài),如文本、圖像、語音、面部表情、生理手勢等,以理解我們周圍的世界。
處理多種模態(tài)的能力為人工智能應(yīng)用開辟了各種途徑。多模態(tài) AI 的一個令人興奮的應(yīng)用是視覺語言模型 (VLM)。這些模型可以同時處理和理解語言(文本)和視覺(圖像)的模態(tài),以執(zhí)行高級視覺語言任務(wù),例如視覺問答 (VQA)、圖像字幕和文本到圖像搜索。
在本文中,您將了解:
- VLM 架構(gòu)。VLM 評估策略。用于開發(fā)視覺語言模型的主流數(shù)據(jù)集。VLM 面臨的主要挑戰(zhàn)、主要應(yīng)用和未來趨勢。
讓我們首先了解什么是視覺語言模型。
什么是視覺語言模型?
視覺語言模型是視覺和自然語言模型的融合。它將圖像及其各自的文本描述作為輸入,并學(xué)習(xí)將兩種模式的知識關(guān)聯(lián)起來。該模型的視覺部分從圖像中捕獲空間特征,而語言模型則對文本中的信息進(jìn)行編碼。兩種模態(tài)的數(shù)據(jù)(包括檢測到的物體、圖像的空間布局和文本嵌入)相互映射。例如,如果圖像包含一只鳥,模型將學(xué)習(xí)將其與文本描述中的類似關(guān)鍵字關(guān)聯(lián)起來。這樣,模型就會學(xué)會理解圖像并將知識轉(zhuǎn)化為自然語言(文本),反之亦然。
訓(xùn)練 VLM
構(gòu)建 VLM 涉及預(yù)訓(xùn)練基礎(chǔ)模型(foundation models)和零樣本學(xué)習(xí)(zero-shot learning),遷移學(xué)習(xí)技術(shù)(Transfer learning)(例如知識提煉)可用于微調(diào)模型以完成更具體的下游任務(wù)。?這些是更簡單的技術(shù),需要更小的數(shù)據(jù)集和更少的訓(xùn)練時間,同時保持良好的結(jié)果。另一方面,現(xiàn)代框架使用各種技術(shù)來獲得更好的結(jié)果,例如:
對比學(xué)習(xí)。
掩蔽語言圖像建模。
這些架構(gòu)可以學(xué)習(xí)各種模態(tài)之間的復(fù)雜關(guān)系并提供最先進(jìn)的結(jié)果。讓我們詳細(xì)討論一下。
視覺語言模型:架構(gòu)以及當(dāng)前流行的模型
目前 VLM 主流模型架構(gòu)有CLIP、Flamingo和VisualBert等,他們所使用的學(xué)習(xí)技術(shù)有:
對比學(xué)習(xí)
對比學(xué)習(xí)是一種通過了解數(shù)據(jù)點之間的差異來學(xué)習(xí)數(shù)據(jù)點的技術(shù)。該方法計算數(shù)據(jù)實例之間的相似度得分,旨在最大限度地減少對比損失。它在半監(jiān)督學(xué)習(xí)中最有用,在半監(jiān)督學(xué)習(xí)中,只有少數(shù)標(biāo)記樣本引導(dǎo)優(yōu)化過程來標(biāo)記看不見的數(shù)據(jù)點。
例如,了解貓長什么樣子的一種方法是將其與類似的貓圖像和狗圖像進(jìn)行比較。對比學(xué)習(xí)模型通過識別面部結(jié)構(gòu)、身體大小和毛發(fā)等特征來學(xué)習(xí)區(qū)分貓和狗。這些模型可以確定哪幅圖像更接近原始圖像(稱為“錨點”),并預(yù)測其類別。CLIP是一個使用對比學(xué)習(xí)的模型示例,它使用文本和視覺編碼器計算文本和圖像嵌入之間的相似性。它遵循三步流程來實現(xiàn)零樣本預(yù)測。
在預(yù)訓(xùn)練期間訓(xùn)練文本和圖像編碼器以學(xué)習(xí)圖像-文本對。
將訓(xùn)練數(shù)據(jù)集類別轉(zhuǎn)換為標(biāo)題。
估計給定輸入圖像的零樣本預(yù)測的最佳標(biāo)題。
CLIP 等 VLM 為Encord Active中的語義搜索功能提供支持。當(dāng)您登錄 Encord → Active →選擇項目→ 使用自然語言搜索查找數(shù)據(jù)集中帶有文本描述的項目時。以下是使用“白色運動鞋”作為查詢詞使用自然語言搜索的方法:
ALIGN是另一個示例,它使用圖像和文本編碼器通過對比損失函數(shù)來最小化相似嵌入之間的距離。
PrefixLM?
PrefixLM 是一種 NLP 學(xué)習(xí)技術(shù),主要用于模型預(yù)訓(xùn)練。它輸入文本的一部分(前綴),并學(xué)習(xí)預(yù)測序列中的下一個單詞。在視覺語言模型中,PrefixLM 使模型能夠根據(jù)圖像及其相應(yīng)的前綴文本預(yù)測下一個單詞序列。它利用視覺變換器(ViT) 將圖像劃分為一維塊序列,每個塊序列代表一個局部圖像區(qū)域。然后,該模型對處理后的補丁應(yīng)用卷積或線性投影,以生成上下文化的視覺嵌入。對于文本模態(tài),該模型將相對于補丁的文本前綴轉(zhuǎn)換為標(biāo)記嵌入。Transformer 的編碼器-解碼器塊接收視覺和標(biāo)記嵌入。在那里,模型學(xué)習(xí)嵌入之間的關(guān)系。SimVLM是一種采用 PrefixLM 學(xué)習(xí)方法的流行架構(gòu)。它的 Transformer 架構(gòu)比其前輩更簡單,在各種基準(zhǔn)測試中都超越了前輩的結(jié)果。它使用 Transformer 編碼器來學(xué)習(xí)圖像前綴對,并使用 Transformer 解碼器來生成輸出序列。該模型還展示了良好的泛化能力和零樣本學(xué)習(xí)能力。
SimVLM 架構(gòu)類似地,VirTex使用卷積神經(jīng)網(wǎng)絡(luò) 提取圖像特征,并使用帶有轉(zhuǎn)換器的文本頭來管理文本前綴。您可以通過將圖像-文本對輸入到文本頭來端到端地訓(xùn)練模型,以預(yù)測正確的圖像標(biāo)題。
Frozen PrefixLM
雖然 PrefixLM 技術(shù)需要從頭開始訓(xùn)練視覺和文本編碼器,但 Frozen PrefixLM 允許您使用預(yù)先訓(xùn)練的網(wǎng)絡(luò)并僅更新圖像編碼器的參數(shù)。例如,下圖展示了《Frozen》如何使用預(yù)訓(xùn)練語言模型和視覺編碼器工作。文本編碼器可以屬于任何大型語言模型 (LLM),而視覺編碼器也可以是預(yù)訓(xùn)練的視覺基礎(chǔ)模型。您可以微調(diào)圖像編碼器,使其圖像表示與文本嵌入一致,從而允許模型做出更好的預(yù)測。
Flamingo 的架構(gòu)采用了更先進(jìn)的 (SOTA) 方法。它使用類似 CLIP 的視覺編碼器和名為Chinchilla的 LLM 。保持 LLM 固定,您可以在文本之間交錯的圖像上訓(xùn)練視覺編碼器。視覺編碼器通過感知器采樣器處理圖像。該技術(shù)可加快推理速度,使 Flamingo 成為小樣本學(xué)習(xí)的理想選擇。
交叉注意的多模態(tài)融合
該方法通過添加交叉注意層,利用預(yù)訓(xùn)練的 LLM 編碼器進(jìn)行視覺表征學(xué)習(xí)。VisualGPT是一個主要示例,它允許快速調(diào)整 LLM 預(yù)訓(xùn)練編碼器權(quán)重以適應(yīng)視覺任務(wù)。
VisualGPT 架構(gòu)從業(yè)者從圖像輸入中提取相關(guān)對象并將其輸入到視覺編碼器。然后將得到的視覺表征輸入到解碼器,并根據(jù)預(yù)先訓(xùn)練的 LLM 使用權(quán)重進(jìn)行初始化。解碼器模塊通過自復(fù)活激活單元 (SRAU) 平衡視覺和文本信息。SRAU 方法避免了梯度消失的問題,這是深度學(xué)習(xí)中常見的問題,由于梯度較小,模型權(quán)重?zé)o法更新。因此,VisualGPT 的表現(xiàn)優(yōu)于幾個基線模型,例如普通 Transformer、Attention-on-Attention ( AoA ) Transformer 和 X-Transformer。
掩碼語言建模 (MLM) 和圖像文本匹配 (ITM)
MLM 在BERT等語言模型中發(fā)揮作用,通過屏蔽或隱藏文本序列的一部分并訓(xùn)練模型來預(yù)測缺失的文本。ITM 涉及預(yù)測句子 Y 是否跟在句子 X 之后。您可以調(diào)整 MLM 和 ITM 技術(shù)以完成視覺任務(wù)。下圖展示了在COCO數(shù)據(jù)集上訓(xùn)練的VisualBERT的架構(gòu)。
VisualBERT 架構(gòu)它通過引入圖像序列和掩碼文本描述來增強 MLM 程序?;谝曈X嵌入,目標(biāo)是預(yù)測缺失的文本。同樣,ITM 預(yù)測標(biāo)題是否與圖像匹配。無需培訓(xùn)您可以直接使用大規(guī)模、預(yù)先訓(xùn)練的視覺語言模型,而無需進(jìn)行任何微調(diào)。例如,MAGIC和ASIF是無需訓(xùn)練的框架,旨在預(yù)測與輸入圖像緊密相關(guān)的文本描述。MAGIC 使用基于 CLIP 生成的圖像嵌入的專門分?jǐn)?shù)來指導(dǎo)語言模型的輸出。使用此分?jǐn)?shù),LLM 可以生成與圖像語義緊密一致的文本嵌入,從而使模型能夠以零樣本方式執(zhí)行多模態(tài)任務(wù)。ASIF 采用相似圖像具有相似標(biāo)題的理念。該模型計算訓(xùn)練數(shù)據(jù)集的查詢和候選圖像之間的相似度。接下來,它將查詢圖像嵌入與相應(yīng)候選圖像的文本嵌入進(jìn)行比較。然后,它預(yù)測一個嵌入與查詢圖像最相似的描述,從而實現(xiàn)與CLIP和LiT等模型相當(dāng)?shù)牧銟颖拘阅堋?/p>
知識蒸餾/提煉
該技術(shù)涉及將知識從大型、訓(xùn)練有素的教師模型轉(zhuǎn)移到具有少量參數(shù)的較輕學(xué)生模型。這種方法允許研究人員從較大的預(yù)訓(xùn)練模型中訓(xùn)練 VLM。例如,ViLD是一種使用知識蒸餾方法開發(fā)的流行 VLM。該模型使用預(yù)先訓(xùn)練的開放詞匯圖像分類模型作為老師來訓(xùn)練兩階段檢測器(學(xué)生)。該模型將來自文本編碼器的文本嵌入與圖像嵌入進(jìn)行匹配。
ViLD 建筑知識蒸餾將知識從圖像編碼器轉(zhuǎn)移到主干模型,以自動生成區(qū)域嵌入。只有主干模型在推理過程中生成區(qū)域嵌入,并將它們與未見過的文本嵌入進(jìn)行匹配。目標(biāo)是根據(jù)文本描述在圖像中的對象周圍繪制正確的邊界框。
評估視覺語言模型
VLM 驗證涉及評估圖像和文本數(shù)據(jù)之間關(guān)系的質(zhì)量。對于圖像字幕模型,這意味著將生成的字幕與真實描述進(jìn)行比較。您可以使用各種基于 n-gram 的自動化評估策略來比較預(yù)測標(biāo)簽的準(zhǔn)確性、語義和信息精度。以下是一些關(guān)鍵的 VLM 評估指標(biāo)。BLEU:雙語評估替代 ( BLEU ) 指標(biāo)最初是為評估機器翻譯任務(wù)而提出的。它通過考慮候選句子中有多少個單詞出現(xiàn)在參考中來計算目標(biāo)文本與參考(基本事實)相比的精度。ROUGE:面向回憶的要點評估替補模型 ( ROUGE ) 通過考慮參考句子中有多少個單詞出現(xiàn)在候選中來計算回憶率。METEOR:具有明確排序的翻譯評估指標(biāo) ( METEOR ) 計算準(zhǔn)確率和召回率的調(diào)和平均值,賦予召回率更多權(quán)重并將其乘以懲罰項。該指標(biāo)比其他使用準(zhǔn)確率或召回率的指標(biāo)有所改進(jìn),因為它結(jié)合了兩者的信息以提供更好的評估。CIDEr:基于共識的圖像描述評估 ( CIDEr ) 通過使用TF-IDF分?jǐn)?shù)計算參考句子和目標(biāo)句子之間的平均相似度,將目標(biāo)句子與一組人類句子進(jìn)行比較。現(xiàn)在您已經(jīng)了解了與視覺語言模型 (VLM) 相關(guān)的評估指標(biāo),了解如何為這些模型整理數(shù)據(jù)集至關(guān)重要。合適的數(shù)據(jù)集為訓(xùn)練和驗證 VLM 提供了肥沃的土壤,并且對于確定模型在不同任務(wù)中的表現(xiàn)至關(guān)重要。
視覺語言模型的數(shù)據(jù)集
為 VLM 收集訓(xùn)練數(shù)據(jù)比傳統(tǒng) AI 模型更具挑戰(zhàn)性,因為它涉及多種數(shù)據(jù)模式的收集和質(zhì)量保證。以下是結(jié)合圖像和文本數(shù)據(jù)進(jìn)行多模式訓(xùn)練的幾個數(shù)據(jù)集的列表。
LAION-5B:從業(yè)者使用LAION-5B數(shù)據(jù)集構(gòu)建大型、預(yù)訓(xùn)練的 VLM。該數(shù)據(jù)集包含由 CLIP 生成的超過 50 億個圖像文本對,并配有英文和外語描述,可滿足多語言領(lǐng)域的需要。
PMD:公共模型數(shù)據(jù)集(PMD)最初出現(xiàn)在FLAVA 論文中,包含 700 億個圖像-文本對。它是來自其他大型數(shù)據(jù)集的數(shù)據(jù)集合,例如COCO、概念字幕(CC)、RedCaps等。該數(shù)據(jù)集是多模態(tài)數(shù)據(jù)的寶庫,可促進(jìn)穩(wěn)健的模型訓(xùn)練。
VQA:專家使用VQA數(shù)據(jù)集來微調(diào)預(yù)訓(xùn)練的 VLM,以用于下游 VQA 和視覺推理任務(wù)。該數(shù)據(jù)集包含超過 200,000 張圖像,每張圖像有 5 個問題、10 個真實答案,每個問題有 3 個錯誤答案。
ImageNet:ImageNet包含超過 1400 萬張圖像,這些圖像的注釋按照WordNet層次結(jié)構(gòu)進(jìn)行分類。它有助于為簡單的下游任務(wù)(例如圖像分類和對象識別)構(gòu)建模型。盡管有高質(zhì)量的多模態(tài)數(shù)據(jù)集,VLM 在模型開發(fā)過程中仍面臨重大挑戰(zhàn)。下面讓我們討論一下。
視覺語言模型的局限性
盡管 VLM 在理解視覺和文本模式以處理信息方面功能強大,但它們面臨著三個主要挑戰(zhàn):
模型復(fù)雜性。
數(shù)據(jù)集偏差。
評估困難。
模型復(fù)雜度語言和視覺模型本身就相當(dāng)復(fù)雜,將兩者結(jié)合起來只會使問題變得更糟。它們的復(fù)雜性帶來了額外的挑戰(zhàn),包括獲取強大的計算資源進(jìn)行訓(xùn)練、收集大型數(shù)據(jù)集以及在物聯(lián)網(wǎng)設(shè)備等弱硬件上部署。
數(shù)據(jù)集偏差
當(dāng) VLM 記住訓(xùn)練和測試集中的深層模式而不解決任何問題時,就會出現(xiàn)數(shù)據(jù)集偏差。例如,使用從互聯(lián)網(wǎng)上精選的圖像訓(xùn)練 VLM 可能會導(dǎo)致模型記住特定模式,而不會學(xué)習(xí)各種圖像之間的概念差異。
評估策略
上面討論的評估策略僅將候選句子與參考句子進(jìn)行比較。該方法假設(shè)參考句子是唯一的基本事實。然而,一個特定的圖像可以有多個基本事實描述。盡管 CIDEr 等基于共識的指標(biāo)可以解決這個問題,但當(dāng)特定圖像的共識較低時,使用它們會變得很困難。另一個挑戰(zhàn)是當(dāng)通用描述適用于多幅圖像時。
虛假相關(guān)如圖所示,VLM 可以注釋或檢索與通用標(biāo)題匹配的多個相關(guān)圖像。然而,實際上,該模型只不過是一個詞袋。它所做的只是考慮諸如“城市”、“公共汽車”、“燈光”等詞語來描述圖像,而不是真正理解標(biāo)題的順序和真正的上下文含義。
此外,用于 VQA 的 VLM 可以對無意義的問題生成高度可信的答案。例如,對于包含白馬的圖像,向 VLM 詢問“汽車是什么顏色的?”,VLM 會生成“白色”的答案,而不是指出圖片中沒有汽車。
最后,VLM 缺乏組合泛化能力。這意味著它們在處理新概念時性能會下降。例如,VLM 可能無法將黃色馬識別為一個類別,因為很少將黃色與馬聯(lián)系起來。盡管存在許多開發(fā)和部署挑戰(zhàn),研究人員和實踐者在采用 VLM 解決實際問題方面取得了重大進(jìn)展。下面讓我們簡單討論一下。
視覺語言模型的應(yīng)用
雖然前面討論的大多數(shù) VLM 都有助于為圖像添加字幕,但它們的實用性還擴展到利用橋接視覺和語言模式的能力的各個領(lǐng)域。以下是一些其他應(yīng)用程序:
圖像檢索:FLAVA等模型可幫助用戶瀏覽圖像存儲庫,幫助他們根據(jù)語言查詢找到相關(guān)照片。電子商務(wù)網(wǎng)站就是一個相關(guān)的例子。訪問者可以在搜索欄中描述他們正在尋找的內(nèi)容,VLM 將在屏幕上顯示合適的選項。此應(yīng)用程序在智能手機上也很流行,用戶可以輸入關(guān)鍵字(風(fēng)景、建筑物等)來從圖庫中檢索相關(guān)圖像。
生成式人工智能:通過文本提示生成圖像是一個不斷發(fā)展的領(lǐng)域,DALL-E等模型允許用戶根據(jù)自己的描述創(chuàng)作藝術(shù)品或照片。該應(yīng)用在設(shè)計師和發(fā)明家想要將不同的產(chǎn)品創(chuàng)意形象化的企業(yè)中非常實用。它還有助于為網(wǎng)站和博客創(chuàng)建內(nèi)容,并有助于講故事。
分割:像SegGPT這樣的 VLM有助于完成諸如實例、全景、語義等分割任務(wù)。SegGPT 通過理解用戶提示并利用獨特的配色方案在上下文中分割對象來分割圖像。例如,用戶可以要求 SegGPT 從多幅圖像中分割出彩虹,SegGPT 將有效地注釋所有彩虹。
未來研究方向
以下是 VLM 領(lǐng)域的一些重要未來研究方向:
更好的數(shù)據(jù)集
研究界正在努力構(gòu)建更好的訓(xùn)練和測試數(shù)據(jù)集,以幫助 VLM 理解成分。CLEVR就是其中一個例子。
CLEVR 數(shù)據(jù)集如圖所示,它包含新穎形狀、顏色和相應(yīng)問題的圖像,可供專家測試 VLM 的視覺推理能力。
更好的評估方法
評估挑戰(zhàn)需要深入研究更好的評估方法,以構(gòu)建更強大的 VLM。一種替代方法是通過ARO基準(zhǔn)測試 VLM 的各項技能。屬性識別、關(guān)系推理和詞序敏感性 (ARO) 是 VLM 必須掌握的三項技能。
ARO 數(shù)據(jù)集上圖解釋了 ARO 在不同情況下的含義。使用這樣的數(shù)據(jù)集,專家可以分析 VLM 學(xué)到了什么以及如何改善結(jié)果。
機器人應(yīng)用
研究人員還在使用 VLM 構(gòu)建專用機器人。此類機器人可以幫助導(dǎo)航環(huán)境,通過監(jiān)控物品改善制造業(yè)的倉庫運營,并通過讓機器人理解人類的手勢(如面部表情、肢體語言、語音語調(diào)等)來增強人機交互。最近理想和小米智能駕駛競相推出的VLM應(yīng)用就是這個范疇。
醫(yī)療 VQA應(yīng)用
VLM 注釋圖像和識別復(fù)雜物體的能力可以幫助醫(yī)療專業(yè)人員進(jìn)行醫(yī)療診斷。例如,他們可以向 VLM 詢問有關(guān) X 射線或 MRI 掃描的關(guān)鍵問題,以便盡早發(fā)現(xiàn)潛在問題。
視覺語言模型:關(guān)鍵要點
視覺語言建模是一個不斷發(fā)展的領(lǐng)域,對人工智能行業(yè)來說前景廣闊。以下是有關(guān) VLM 的幾個關(guān)鍵點:
視覺語言模型是一種同時理解圖像和文本數(shù)據(jù)模式的多模式架構(gòu)。
他們使用 CV 和 NLP 模型來關(guān)聯(lián)來自兩種模態(tài)的信息(嵌入)。
存在幾種 VLM 架構(gòu),旨在將視覺語義與文本表示關(guān)聯(lián)起來。
盡管用戶可以使用自動評分來評估 VLM,但更好的評估策略對于構(gòu)建更可靠的模型至關(guān)重要。
VLM 有許多工業(yè)用途,例如機器人、醫(yī)療診斷、聊天機器人等。
*未經(jīng)準(zhǔn)許嚴(yán)禁轉(zhuǎn)載和摘錄-參考資料:
加入我們的知識星球可以下載包含以上參考資料的公眾號海量參考資料。