本文轉自知乎作者:CVHub
導讀
眾所周知,視覺系統對于理解和推理視覺場景的組成特性至關重要。這個領域的挑戰在于對象之間的復雜關系、位置、歧義、以及現實環境中的變化等。作為人類,我們可以很輕松地借助各種模態,包括但不僅限于視覺、語言、聲音等來理解和感知這個世界。現如今,隨著 Transformer 等關鍵技術的提出,以往看似獨立的各個方向也逐漸緊密地聯結到一起,組成了“多模態”的概念。
今天,我們主要圍繞Foundational Models
,即基礎模型這個概念,向大家全面闡述一個嶄新的視覺系統。例如,通過 SAM,我們可以輕松地通過點或框的提示來分割特定對象,而無需重新訓練;通過指定圖像或視頻場景中感興趣的區域,我們可以與模型進行多輪針對式的交互式對話;再如李飛飛團隊最新展示的科研成果所示的那樣,我們可以輕松地通過語言指令來操作機器人的行為。

該術語首次由Bommasani
等人在《Stanford Institute for Human-Centered AI》中引入。基礎模型定義為“通過自監督或半監督方式在大規模數據上訓練的模型,可以適應其它多個下游任務”。
具體地,我們將一起討論一些典型的架構設計,這些設計結合了不同的模態信息,包括視覺、文本、音頻;此外,我們還將著重討論不同的訓練目標,如對比式學習和生成式學習。隨后,關于一些主流的預訓練數據集、微調機制以及常見的提示模式,我們也將逐一介紹。
最后,希望通過今天的學習讓大家對基礎模型在計算機視覺領域的發展情況,特別是在大規模訓練和不同任務之間的適應性方面的最新進展有一個大致的認知。共勉。
需要完整 PDF 版本請添加微信號: cv_huber,備注“視覺大模型”即可領取!
背景介紹
近年來,基礎模型取得了顯著的成功,特別是通過大型語言模型(LLMs
),主要歸因于數據和模型規模的大幅擴展。例如,像GPT-3
這樣的十億參數模型已成功用于零/少樣本學習,而無需大量的任務特定數據或模型參數更新。與此同時,有5400億參數的Pathways Language Model(PaLM)
在許多領域展現了先進的能力,包括語言理解、生成、推理和與代碼相關的任務。
反觀視覺領域,諸如CLIP
這樣的預訓練視覺語言模型在不同的下游視覺任務上展現了強大的零樣本泛化性能。這些模型通常使用從網絡收集的數百上千萬圖像-文本對進行訓練,并提供具有泛化和遷移能力的表示。因此,只需通過簡單的自然語言描述和提示,這些預訓練的基礎模型完全被應用到下游任務,例如使用精心設計的提示進行零樣本分類。

除了此類大型視覺語言基礎模型外,一些研究工作也致力于開發可以通過視覺輸入提示的大型基礎模型。例如,最近 META 推出的 SAM
能夠執行與類別無關的分割,給定圖像和視覺提示(如框、點或蒙版),指定要在圖像中分割的內容。這樣的模型可以輕松適應特定的下游任務,如醫學圖像分割、視頻對象分割、機器人技術和遙感等。

當然,我們同樣可以將多種模態一起串起來,組成更有意思的管道,如RAM
+Grounding-DINO
+SAM
:

這里我們用 RAM 提取了圖像的語義標簽,再通過將標簽輸入到 Grounding-DINO 中進行開放世界檢測,最后再通過將檢測作為 SAM 的提示分割一切。目前視覺基礎大模型可以粗略的歸為三類:
textually prompted models
, e.g., contrastive, generative, hybrid, and conversational;visually prompted models
, e.g., SAM, SegGPT;heterogeneous modalities-based models
, e.g., ImageBind, Valley.

基礎架構

雙編碼器架構:其中,獨立的編碼器用于處理視覺和文本模態,這些編碼器的輸出隨后通過目標函數進行優化。
融合架構:包括一個額外的融合編碼器,它獲取由視覺和文本編碼器生成的表示,并學習融合表示。
編碼器-解碼器架構:由基于編碼器-解碼器的語言模型和視覺編碼器共同組成。
自適應 LLM 架構:利用大型語言模型(LLM)作為其核心組件,并采用視覺編碼器將圖像轉換為與 LLM 兼容的格式(模態對齊)。
目標函數
對比式學習
為了從無標簽的圖像-文本數據中學習,CLIP
中使用了簡單的圖像-文本對比(ITC
)損失來通過學習正確的圖像-文本配對來學習表示。此外還有圖像-文本匹配(ITM
)損失,以及包括簡單對比式學習表示(SimCLR
)和 ITC 損失的變體(如 FILIP Loss、TPC Loss、RWA、MITC、UniCL、RWC 損失)等其他對比損失。

這里 表示溫度系數。因此我們可以將 簡單表示為 . 可以看出,本質上還是在計算圖像與文本之間的相似度得分,比如常見的余弦相似性。
生成式學習
生成目標包括以下幾種典型的損失:
掩碼語言建模(MLM)損失

語言建模(LM)損失

標準字幕(Cap)損失

以及 Flamingo Loss、Prefix Language Modeling, PrefixML
等。從上述公式我們也可以很容易看出,生成式 AI 本質還是條件概率模型,如 Cap 損失便是根據上一個已知 token 或 圖像來預測下一個 token。
預訓練
預訓練數據集
如上所述,現代視覺-語言基礎模型的核心是大規模數據,大致可分為幾類:
圖像-文本數據:例如
CLIP
使用的WebImageText
等,這些數據通常從網絡抓取,并經過過濾過程刪除噪聲、無用或有害的數據點。部分偽標簽數據:由于大規模訓練數據在網絡上不可用,收集這些數據也很昂貴,因此可以使用一個好的教師將圖像-文本數據集轉換為掩碼-描述數據集,如
GLIP
和SA-1B
等。數據集組合:有些工作直接將基準視覺數據集組合使用,這些作品組合了具有圖像-文本對的數據集,如字幕和視覺問題回答等。一些工作還使用了非圖像-文本數據集,并使用基于模板的提示工程將標簽轉換為描述。
微調
微調主要用于三個基本設置:
提高模型在特定任務上的性能(例如開放世界物體檢測,
Grounding-DINO
);提高模型在某一特定能力上的性能(例如視覺定位);
指導調整模型以解決不同的下游視覺任務(例如
InstructBLIP
)。
首先,許多工作展示,即使只采用線性探測,也可以提高模型在特定任務上的性能。因此,特定任務的數據集(例如ImageNet
)是可以用來改善預訓練模型的特定任務性能。其次,一些工作已經利用預訓練的視覺語言模型,通過在定位數據集上微調模型來進行定位任務。
例如,谷歌的一篇 OVD 工作 OWL-ViT
,將 CLIP 預訓練模型去掉 Token Pooling+projection 和 Image projection,加上一個新的 Linear Projection 作為分類頭與文本進行匹配,學習出每個 Patch 的語義信息。此外在將 Patch 的表征經過 MLP head 回歸出相應檢測狂。通過 Patch 的語義特征與 BBox 的位置最終獲得目標檢測框。最后,像 InstructBLIP
則將視覺數據集轉換為指導調整數據集,使視覺語言模型能夠用于下游任務。

提示工程
提示工程主要是搭配大型語言模型(LLMs)一起使用,使它們能夠完成某些特定的任務。在視覺語言模型或視覺提示模型的背景下,提示工程主要用于兩個目的:
將視覺數據集轉換為圖像文本訓練數據(例如,用于圖像分類的 CLIP),為基礎模型提供交互性
使用視覺語言模型進行視覺任務。
大多數視覺數據集由圖像和相應文本標簽組成。為了利用視覺語言模型處理視覺數據集,一些工作已經利用了基于模板的提示工程。在這種提示工程中,使用一組模板從標簽生成描述。例如:
text_descriptions = [fThis is a photo of a {label} for label in cifar100.classes] text_tokens = clip.tokenize(text_descriptions).cuda()
這種額外的上下文有助于模型學習,因此,這些文本提示可以在訓練或評估期間被 VLM 所使用。下面讓我們一起了解下這三類視覺基礎模型。

需要完整 PDF 版本請添加微信號: cv_huber,備注“視覺大模型”即可領取!
基于文本提示的基礎模型
在本章節中,我們專注于探討依賴文本作為主要監督來源的方法。這些文字提示模型大致分為三個主要類型,即基于不同的訓練目標:對比學習、生成學習和混合方法。
基于對比學習的方法
首先,讓我們一起回顧下 CLIP 架構及其衍生的變體:

CLIP 由 OpenAI 于 2021 年正式提出,其聯合訓練圖像和文本編碼器以預測圖像與標題在批量中的正確配對。CLIP 由圖像編碼器和文本編碼器組成。它們產生了N個圖像-文本對的多模態嵌入空間。通過對稱交叉熵損失來訓練,以最小化N個正確圖像-文本對的嵌入的余弦相似度,并最大化N2-N個不正確對的余弦相似度。作者還從互聯網上策劃了4億圖像-文本對的數據集。在這樣的大規模數據集上訓練時,表現非常出色,也激發了后續許多的工作。
此處我們集中探討兩類擴展方法,包括通用模型的對比方法和視覺定位基礎模型的方法。
基于通用模型的對比方法

ALIGN
利用了一個超過10億個圖像-文本對的噪聲數據集,無須進行昂貴的過濾或處理步驟即可在 Conceptual Captions 數據集中獲得。一個簡單的雙編碼器架構學習使用對比性損失來對齊圖像和文本對的視覺和語言表示。結果表明,即便是這樣一個簡單的學習方案,只要數據庫夠大,便可以彌補它的噪聲,并最終得到 SOTA 結果。

佛羅倫薩是微軟、OpenAI 等聯合提出的一個真正意義上的計算機視覺基礎模型,能夠處理不同的空間、時間和模態。它從CLIP樣的預訓練開始,然后擴展為具有三個不同適配器頭的每個空間。弱弱的說一句,雖然這個模型的預訓練參數只有 893M,但卻需要在 512 塊 A100 上訓練 10 天的時間。

FILIP 提出了一種交叉模態的后期交互方法,以捕捉細粒度語義對齊。FILIP 損失最大化了視覺和文本嵌入之間逐標記的相似性,有助于在不犧牲 CLIP 的推理效率的情況下,模擬兩種模態之間的細粒度交互。【作者在 VALSE 第59期分享過,有興趣的可以去看看,B站上有視頻】
此外還有基于掩碼對比學習的方法,這是一種通過遮擋輸入像素來提高對比學習效率的有效方法。下面我們也將介紹幾種典型方法。

FLIP 是一種簡單和更有效的訓練 CLIP 的方法,其思想很簡單,如圖所示,就是將 MAE 的 Mask 操作引入到 CLIP 上,隨機地 mask 掉具有高 mask 率的圖像碎片,只對可見的碎片進行編碼。不同之處在于,這里不會對被 masked 的圖像內容進行重建。此外,對于文本也做同樣處理,有點類似于 BERT 但又不一樣,BERT 是用學習過的 mask token 來代替它們,這種稀疏的計算可以顯著減少文本編碼的成本。

MaskCLIP 強調了圖像是一個連續且細粒度的信號,而語言描述可能無法完全表達這一點。因此,MaskCLIP 通過隨機遮擋圖像并利用基于 Mean Teacher 的自蒸餾來學習局部語義特征。

這是一個以視覺為中心的基礎模型,旨在僅使用可公開訪問的數據來探索大規模視覺表示的局限性。EVA 是由智源曹越團隊最新開源的視覺預訓練模型,通過將最強語義學習(CLIP)與最強幾何結構學習(MIM)結合,僅需使用標準的 ViT 模型,并將其規模擴大到十億參數(1-Billion)進行訓練,即可得到當前最強大的十億級視覺基礎模型。
通過重構 CLIP 特征來進行 MIM 操作。首先, CLIP 模型輸入為完整的圖像,而 EVA 模型的輸入為有遮擋的圖像,訓練過程是讓 EVA 模型遮擋部分的輸出去重構 CLIP 模型對應位置的輸出,從而以簡單高效的方式讓 EVA 模型同時擁有了最強語義學習 CLIP 的能力和最強幾何結構學習 MIM 的能力。
很多的方法,總體而言,這些方法通過各種技術,如調整架構,改進對比目標,引入噪聲魯棒性,和探索多模態交互等,不斷推動了 CLIP 及其變種的發展。這些努力已經展示了在許多任務上,包括零樣本分類和圖像-文本檢索任務等方面,如何改善模型的性能,從而使這些模型在計算機視覺和自然語言處理的交叉領域中變得越來越重要。
基于視覺定位基礎模型的方法

首先我們看下上圖展示的結果,可以觀察到,原始的 CLIP 模型其實是不擅長視覺定位任務的,特別是針對語義分割這種像素級定位任務來說。

RegionCLIP
顯著擴展了 CLIP 以學習區域級視覺表示,其支持圖像區域和文本概念之間的細粒度對齊,從而支持基于區域的推理任務,包括零樣本目標檢測和開放詞匯目標檢測。

CRIS
則通過引入視覺-語言解碼器和文本到像素對比損失,使 CLIP 框架學習像素級信息。

Grounding DINO
是由沈向洋領導的 IDEA 實驗室開源的,該方案利用了強大的預訓練模型,并通過對比學習進行修改,以增強與語言的對齊。當然,像 OWL-ViT
也是類似的工作。此外, IDEA 還基于 SAM 等基礎模型開源了一個集各大基礎模型的倉庫Grounded-Segment-Anything
,倉庫幾乎涵蓋了市面上主流的視覺基礎模型,感興趣的也可以關注下:


最后,我們一起看下 OpenSeg
和 GroupViT
,這些方法著重于分組機制和分割效果,以通過對比學習實現更好的語義分割和目標檢測。值得關注的是,MetaAI 近期也開放了一篇最新的工作 ZeroSeg
,無需借助文本信息便可以輕松實現高質量的分割效果,想要了解詳情的同學可關注公眾號 CVHub,搜索對應關鍵詞即可。
簡單來說,以上討論涵蓋了一系列現代基礎模型研究,這些方法試圖通過對比學習、掩碼學習、擴展和復現等技術來改進CLIP
和其它基礎模型。這些工作不僅推動了大規模圖像-文本建模的前沿,還為諸如目標檢測、語義分割等特定視覺任務的解決方案提供了新的方法和框架。
基于生成式的方法
基于生成式方法的視覺基礎模型的總結涵蓋了多個領域和方向,下面筆者簡單歸納總結下。
首先是結合大語言模型(Large Language Model, LLM
)的多模態學習范式:
結合上下文的多模態輸入學習:例如
Frozen
方法將圖像編碼器與LLM
結合,無需更新LLM
的權重,而是在帶有圖像標注的數據集上訓練視覺編碼器。類似地,Flamingo
模型采用了固定的預訓練視覺和語言模型,并通過Perceiver Resampler
進行連接。使用
LLM
作為其它模態的通用接口:如MetaLM
模型采用半因果結構,將雙向編碼器通過連接層連接到解碼器上,可實現多任務微調和指令調整零樣本學習。此外,KOSMOS
系列也在LLM
上整合了多模態學習的能力。開源版本的模型:如
OpenFlamingo
,是Flamingo
模型的開源版本,訓練于新的多模態數據集。
其次我們來看下視覺-語言對齊與定位相關的模型:
具備定位能力的模型:
KOSMOS-2
通過添加一條管線來抽取文本中的名詞短語并將其與圖像中的相應區域鏈接起來,進而實現視覺定位。
另外就是通用生成目標下的訓練:
簡化視覺語言建模:如
SimVLM
使用前綴語言建模(PrefixLM
)目標進行訓練,不需要任務特定的架構或訓練,可在多個視覺語言任務上實現優秀的性能。掩碼重構與對齊:如
MaskVLM
,采用聯合掩碼重構語言建模,其中一個輸入的掩碼部分由另一個未掩碼輸入重構,有效對齊兩個模態。模塊化視覺語言模型:如
mPLUG-OWL
,由圖像編碼器、圖像抽象器和凍結LLM
組成,通過兩階段的訓練實現多模態對話和理解。
此外還有與對比學習的比較與結合:

CapPa 是基于字幕的模型與 CLIP 風格模型的比較得到的一種新的生成預訓練方法,交替使用自回歸預測和并行預測。
總體而言,上述的方法和模型通過在視覺條件下訓練語言生成任務,為 LLM 增添了“看世界”的能力。這些工作在視覺語言任務,如圖像標注、多模態對話和理解等方面取得了顯著進展,有的甚至在少樣本情況下達到或超越了最先進的性能。通過將視覺和語言模態結合,這些模型為計算機視覺和自然語言處理的交叉領域提供了強大的新工具。
基于對比學習和生成式的混合方法
通用視覺-語言學習的基礎模型:
UNITER
:結合了生成(例如掩碼語言建模和掩碼區域建模)和對比(例如圖像文本匹配和單詞區域對齊)目標的方法,適用于異構的視覺-語言任務。Pixel2Seqv2
:將四個核心視覺任務統一為像素到序列的接口,使用編碼器-解碼器架構進行訓練。Vision-Language
:使用像 BART 或 T5 等預訓練的編碼器-解碼器語言模型來學習不同的計算機視覺任務。
通用架構:

Contrastive Captioner (CoCa)
:結合了對比損失和生成式的字幕損失,可以在多樣的視覺數據集上表現良好。FLAVA
:適用于單模態和多模態任務,通過一系列損失函數進行訓練,以便在視覺、語言和視覺-語言任務上表現良好。BridgeTower
:結合了不同層次的單模態解碼器的信息,不影響執行單模態任務的能力。PaLI
:一種共同擴展的多語言模塊化語言-視覺模型,適用于單模態和多模態任務。X-FM
:包括語言、視覺和融合編碼器的新基礎模型,通過組合目標和新技術進行訓練。
BLIP 框架范式:
BLIP
:利用生成和理解能力有效利用圖像文本數據集,采用Multimodal mixture of Encoder-Decoder (MED)
架構。BLIP-2
:通過查詢轉換器來實現計算效率高的模態間對齊。
指令感知特征提取和多模態任務解決方案:
InstructBLIP
:利用視覺編碼器、Q-Former
和LLM
,通過指令感知的視覺特征提取來進行訓練。 對預訓練模型的高效利用:VPGTrans
:提供了一種高效的方法來跨 LLM 傳輸視覺編碼器。TaCA
:提到了一種叫做TaCA
的適配器,但沒有進一步詳細描述。

基于 Visual Grounding
的方法:
ViLD
: 這一方法使用了一個兩階段的開放詞匯對象檢測系統,從預訓練的單詞匯分類模型中提取知識。它包括一個RPN
和一個類似于CLIP
的視覺語言模型,使用Mask-RCNN
創建對象提案,然后將知識提取到對象檢測器中。UniDetector
: 此方法旨在進行通用對象檢測,以在開放世界中檢測新的類別。它采用了三階段訓練方法,包括類似于上面我們提到的RegionCLIP
的預訓練、異構數據集訓練以及用于新類別檢測的概率校準。UniDetector 為大詞匯和封閉詞匯對象檢測設立了新的標準。X-Decoder
: 在三個粒度層次(圖像級別、對象級別和像素級別)上運作,以利用任務協同作用。它基于Mask2Former
,采用多尺度圖像特征和兩組查詢來解碼分割掩碼,從而促進各種任務。它在廣泛的分割和視覺語言任務中展現出強大的可轉移性。
這些方法共同探討了視覺定位任務的不同維度,包括開放詞匯對象檢測、通用對象檢測、兩階段訓練、多級粒度和新穎的損失功能。它們共同通過以創新的方式整合視覺和語言來推動視覺理解的界限,往往超越了該領域以前的基準。
簡單總結下,上面我們展示了如何通過對比和生成式學習,以及混合這些方法,來設計和訓練可以處理各種視覺和語言任務的模型。有些模型主要關注提高單模態和多模態任務的性能,而有些模型關注如何高效地訓練和利用預訓練模型。總的來說,這些研究提供了視覺-語言融合研究的豐富視角和多樣化方法,以滿足不同的實際需求和應用場景。
基于對話式的視覺語言模型
這一塊我們不做過多介紹,僅介紹比較有代表性的幾個工作:

GPT-4
:這是首個結合視覺和語言的模型,能夠進行多模態對話。該模型基于Transformer
架構,通過使用公開和私有數據集進行預訓練,并通過人類反饋進行強化學習微調。根據公開的數據,GPT-4 在多個 NLP、視覺和視覺-語言任務上表現出色,但很可惜目前并未開源。

miniGPT-4
: 作為GPT-4
的開源版本,miniGPT-4 由預訓練的大型語言模型Vicuna
和視覺組件ViT-G
和Q-Former
組成。模型先在多模態示例上進行訓練,然后在高質量的圖像和文本對上進行微調。miniGPT-4 能夠生成復雜的圖像描述并解釋視覺場景。
XrayGPT
: 這個模型可以分析和回答有關 X 射線放射圖的開放式問題。使用Vicuna LLM
作為文本編碼器和MedClip
作為圖像編碼器,通過更新單個線性投影層來進行多模態對齊。
LLaVA
: 這是一個開源的視覺指令調整框架和模型,由兩個主要貢獻組成:開發一種用于整理多模態指令跟蹤數據的經濟方法,以及開發一個大型多模態模型,該模型結合了預訓練的語言模型LLaMA
和CLIP
的視覺編碼器。

LLaMA-Adapter V2
: 通過引入視覺專家,早期融合視覺知識,增加可學習參數等方式,改善了LLaMA
的指令跟隨能力,提高了在傳統視覺-語言任務上的性能。
綜上所述,基于對話的視覺語言模型在理解、推理和進行人類對話方面取得了顯著進展。通過將視覺和語言結合在一起,這些模型不僅在傳統 NLP 任務上表現出色,而且能夠解釋復雜的視覺場景,甚至能夠與人類進行復雜的多模態對話。未來可能會有更多的工作致力于提高這些模型的可解釋性、可用性和可訪問性,以便在更廣泛的應用領域中實現其潛力。

需要完整 PDF 版本請添加微信號: cv_huber,備注“視覺大模型”即可領取!
基于視覺提示的基礎模型
這一塊內容我們先為大家闡述幾個代表性的基于視覺提示的基礎模型,如 SAM
和 SEEM
等;隨后再介紹基于 SAM 的一系列改進和應用,例如用在醫療、遙感、視頻追蹤等領域;最后再簡單介紹下幾個通用的擴展。
視覺基礎模型
CLIPSeg

概述:CLIPSeg 利用 CLIP 的泛化能力執行
zero-shot
和one-shot
分割任務。結構:由基于 CLIP 的圖像和文本編碼器以及具有 U-net 式跳躍連接的基于
Transformer
的解碼器組成。工作方式:視覺和文本查詢通過相應的 CLIP 編碼器獲取嵌入,然后饋送到 CLIPSeg 解碼器。因此,CLIPSeg 可以基于任意提示在測試時生成圖像分割。
SegGPT

SegGPT
旨在訓練一個通用模型,可以用于解決所有的分割任務,其訓練被制定為一個上下文著色問題,為每個數據樣本隨機分配顏色映射。目標是根據上下文完成不同的分割任務,而不是依賴于特定的顏色。
SAM

概述:SAM 是一種零樣本分割模型,從頭開始訓練,不依賴于 CLIP。 結構:使用圖像和提示編碼器對圖像和視覺提示進行編碼,然后在輕量級掩碼解碼器中組合以預測分割掩碼。 訓練方法:通過三階段的數據注釋過程(輔助手動、半自動和全自動)訓練。
SEEM

與 SAM 相比,SEEM 涵蓋了更廣泛的交互和語義層面。例如,SAM 只支持有限的交互類型,如點和框,而由于它本身不輸出語義標簽,因此錯過了高語義任務。
首先,SEEM
有一個統一的提示編碼器,將所有視覺和語言提示編碼到聯合表示空間中。因此,SEEM 可以支持更通用的用途。它有潛力擴展到自定義提示。其次,SEEM 在文本掩碼(基礎分割)方面非常有效,并輸出語義感知預測。
SAM 的改進與應用
SAM for Medical Segmentation

Adapting by Fine-Tuning
MedSAM
:通過在大規模醫學分割數據集上微調 SAM,創建了一個用于通用醫學圖像分割的擴展方法 MedSAM。這一方法在 21 個 3D 分割任務和 9 個 2D 分割任務上優于 SAM。

paper: https://arxiv.org/pdf/2304.12306.pdf
github: https://github.com/bowang-lab/MedSAM
Adapting through Auxiliary Prompt Encoder
AutoSAM
:為SAM
的提示生成了一個完全自動化的解決方案,基于輸入圖像由AutoSAM
輔助提示編碼器網絡生成替代提示。AutoSAM 與原始的 SAM 相比具有更少的可訓練參數。

Adapting Through Adapters

在眼科的多目標分割:通過學習新的可學習的提示層對SAM進行了一次微調,從而準確地分割不同的模態圖像中的血管或病變或視網膜層。

3DSAM-adapter
:為了適應3D空間信息,提出了一種修改圖像編碼器的方案,使原始的2D變換器能夠適應體積輸入。

Medical SAM Adapter
:專為SAM設計了一個通用的醫學圖像分割適配器,能夠適應醫學數據的高維度(3D)以及獨特的視覺提示,如 point
和 box
。
Adapting by Modifying SAM’s Decoder

DeSAM
:提出了將 SAM 的掩碼解碼器分成兩個子任務:提示相關的 IoU 回歸和提示不變的掩碼學習。DeSAM 最小化了錯誤提示在“分割一切”模式下對SAM性能的降低。
SAM as a Medical Annotator

MedLAM
:提出了一個使用 SAM 的醫學數據集注釋過程,并引入了一個少量定位框架。MedLAM 顯著減少了注釋負擔,自動識別整個待注釋數據集的目標解剖區域。

Segment Any Medical Model, SAMM
:這是一個結合了3D Slicer
和SAM
的醫學圖像分割工具,協助開發、評估和應用SAM。通過與3D Slicer的整合,研究人員可以使用先進的基礎模型來分割醫學圖像。
總體來說,通過各種微調、適配和修改方法,SAM 已被成功適應了用于醫學圖像分割的任務,涵蓋了從器官、病變到組織的不同醫學圖像。這些方法也突出了將自然圖像的深度學習技術遷移到醫學領域的潛力和挑戰。在未來,SAM 及其變體可能會繼續推動醫學圖像分析領域的進展。
SAM for Tracking
SAM 在跟蹤任務方面的應用集中在通過視頻中的幀跟蹤和分割任意對象,通常被稱為視頻對象分割(VOS)。這個任務涉及在一般場景中識別和追蹤感興趣的區域。以下總結下 SAM 在跟蹤方面的一些主要應用和方法:
Track Anything (TAM)

概述:TAM 使用 SAM 和現成的跟蹤器 XMem 來分割和跟蹤視頻中的任何對象。 操作方式:用戶可以簡單地點擊一個對象以初始化 SAM 并預測掩碼。然后,XMem 使用 SAM提供的初始掩碼預測在視頻中基于時空對應關系跟蹤對象。用戶可以暫停跟蹤過程并立即糾正任何錯誤。 挑戰:雖然表現良好,但 TAM 在零樣本場景下不能有效保留 SAM 的原始性能。
SAM-Track

概述:與 TAM 類似,SAM-Track 使用 DeAOT 與 SAM 結合。 挑戰:與 TAM 類似,SAM-Track 在零樣本場景下也存在性能挑戰。
SAM-PT

概述:SAM-PT 通過結合 SAM 的稀疏點跟蹤來解決視頻分割問題。只需要第一幀的稀疏點注釋來表示目標對象。 強項:在開放世界 UVO 基準測試中展示了對未見對象的泛化能力。 操作方式:使用像 PIPS 這樣的先進點跟蹤器,SAM-PT 為視頻分割提供稀疏點軌跡預測。進一步地,為了區分目標對象及其背景,SAM-PT 同時跟蹤正點和負點。
SAM-DA

概述:SAM-DA 是另一種使用 SAM 自動分割能力進行跟蹤的方法。 具體應用:通過使用 SAM 自動分割功能從每個夜間圖像自動確定大量高質量目標域訓練樣本,從而跟蹤夜間無人機(UAVs)。
SAM 在視頻對象跟蹤和分割方面的應用表明了其作為分割基礎模型的潛力。盡管有一些挑戰,特別是在未見數據和零樣本場景下,但通過與現成的跟蹤器的結合以及稀疏點跟蹤的使用,SAM 能夠實現在視頻中跟蹤和分割對象。這些方法為計算機視覺社區提供了一個實現通用場景中任意對象跟蹤的有力工具,有助于推動視頻分析和監控等領域的進展。
SAM for Remote Sensing
SAM 在遙感圖像分割方面的應用集中在通過點、框和粗粒度掩碼的引導來理解和分割遙感圖像。以下是 SAM 在遙感分割方面的應用以及相關挑戰。
SAM在遙感分割的基本應用
交互性質:由于 SAM 的交互特性,它主要依賴于點、框和粗粒度掩碼的手動引導。
限制:
全自動分割困難:SAM在完全自動地理解遙感圖像方面效果不佳。
結果依賴性:SAM的結果嚴重依賴于用于分割遙感圖像目標的提示的類型、位置和數量。
手動提示優化需求:要實現理想的結果,通常需要對手動提示進行精煉。

概述:RsPrompter 是一個將語義分類信息與 SAM 結合的方法,用于遙感圖像的自動實例分割。 操作方式:
學習生成提示:RsPrompter 提出了一種學習生成適當的SAM輸入提示的方法。 生成提示包含的信息:通過分析編碼器的中間層來生成包含關于語義類別的信息的提示,并生成提示嵌入,這可以視為點或框嵌入。 目標:通過自動化生成適當的輸入提示,RsPrompter 試圖克服 SAM 在遙感圖像分割方面的局限性。
盡管 SAM 在遙感圖像分割方面存在一些限制,主要與其交互性質和對手動引導的依賴有關,但通過引入如 RsPrompter 這樣的方法,可以利用 SAM 實現遙感圖像的自動實例分割。這些努力標志著朝著減少人工干預和提高遙感圖像分析自動化的方向邁出的重要一步,有勢必推動遙感科學、地理信息系統(GIS)和環境監測等領域的進展。
SAM for Captioning
SAM 與大型語言模型如 ChatGPT 的組合在可控圖像字幕(controlled image captioning)方面開辟了新的應用領域。下面概述下這種組合在圖像字幕上的具體應用。
先給大家介紹下概念,可控圖像字幕使用自然語言來根據人類目標解釋圖像,例如檢查圖像的某些區域或以特定方式描述圖像。然而,這種交互式圖像字幕系統的可擴展性和可用性受到缺乏良好注釋的多模態數據的限制。一個典型的案例便是 Caption AnyThing
,下面一起看看。

概述:Caption AnyThing 是一種零樣本圖像字幕模型,通過與 SAM 和大型語言模型(例如ChatGPT
)結合,使用預訓練的圖像字幕器實現。
工作流程:
定義視覺控制:用戶可以通過視覺提示定義視覺控制。
使用SAM轉換為掩碼:視覺提示隨后使用SAM轉換為掩碼,以選擇感興趣的區域。
預測原始字幕:基于原始圖像和提供的掩碼,圖像字幕器預測原始字幕。
文本優化:使用大型語言模型(例如ChatGPT)的文本精煉器,根據用戶的偏好定制語言風格,從而優化原始描述。
結果:用戶可以通過控制視覺和語言方面,更精確地描述圖像中的特定部分或屬性。
優勢和意義
用戶自定義:通過允許用戶定義視覺和語言控制,提供了高度定制的解釋。
靈活性和準確性:通過結合視覺分割和自然語言處理,增強了描述的靈活性和準確性。
零樣本學習:由于是零樣本模型,因此可以在未經特定訓練的新圖像和場景上工作。
通過結合 SAM 的圖像分割能力和大型語言模型如 ChatGPT 的自然語言處理能力,Caption AnyThing 為可控圖像字幕開辟了新的可能性。這不僅增強了字幕的靈活性和準確性,還允許用戶定制語言風格和焦點,從而促進了交互圖像分析和解釋的發展
SAM for Mobile Applications
這一節我們重點梳理下 SAM 的一些移動端應用,主要就是加速 SAM 的推理和提升 SAM 的分割質量。

FastSAM 基于 YOLOv8-seg 實現,它比 SAM 快50倍,且訓練數據只有SAM的1/50,同時運行速度不受 point 輸入數量的影響

MobileSAM
:將原始 SAM 中的圖像編碼器 ViT-H 的知識蒸餾到一個輕量化的圖像編碼器中,該編碼器可以自動與原始 SAM 中的 Mask 解碼器兼容。訓練可以在不到一天的時間內在單個 GPU 上完成,它比原始 SAM 小60多倍,但性能與原始 SAM 相當。

RefSAM
:這是一種高效的端到端基于 SAM 的框架,用于指代視頻對象分割(RVOS)。它使用了高效且輕量級的CrossModal MLP
,將指代表達的文本特征轉換為密集和稀疏的特征表示。

HQ-SAM
: HQ-SAM 為了實現高質量的掩膜預測,將 HQ-Output Token(高質量輸出標記)和全局-局部特征融合引入到SAM中。為了保持SAM的零樣本能力,輕量級的 HQ-Output Token 復用了 SAM 的掩膜解碼器,并生成了新的 MLP(多層感知器)層來執行與融合后的 HQ-Features(高質量特征)的逐點乘積。在訓練期間,將預訓練的 SAM 的模型參數固定,只有 HQ-SAM 中的少數可學習參數可以進行訓練。
通才模型
這一類主要描述如何使用上下文學習快速適應具有不同提示和示例的各種任務。這里特別突出了幾個被稱為通才模型(Generalist Models)的模型,它們可以執行多個任務,甚至可以通過提示和少量特定于任務的示例來適應新任務。
Painter

Painter
是一種通才模型,可以同時執行不同的任務,甚至可以根據提示和非常少的特定于任務的示例適應新任務。
工作方式:給定某個任務的輸入和輸出圖像,輸出圖像的像素被遮擋。Painter 模型的目標是對 masked 的輸出圖像進行填充。 訓練目標:這個簡單的訓練目標允許統一幾個視覺任務,包括深度估計、人體關鍵點檢測、語義分割、實例分割、圖像去噪、圖像去雨和圖像增強。 推理流程:在訓練后,Painter 可以使用與輸入條件相同任務的輸入/輸出配對圖像來確定在推理過程中執行哪個任務。
VisionLLM

VisionLLM
是另一個通才模型,可以對齊視覺和語言模態以解決開放式任務。
工作方式:給定圖像,VisionLLM 使用視覺模型學習圖像特征;這些圖像特征與例如“詳細描述圖像”的語言指令一起傳遞給語言引導的圖像分詞器。 任務解碼器:圖像分詞器的輸出連同語言指令被提供給一個開放式 LLM 為基礎的任務解碼器,旨在根據語言指令協調各種任務。
Prismer

Prismer
也是一種視覺語言模型,可以執行多個推理任務。
特點:Prismer 利用各種預訓練的領域專家,例如語義分割、對象、文本和邊緣檢測,表面法線和深度估計,來執行多個推理任務。 應用:例如圖像字幕和視覺問題回答。
通才模型表示了一種通用的趨勢,其中模型可以通過改變輸入或少量特定于任務的訓練來適應新的或多樣化的任務。這些模型在解決問題時可以靈活地適應,克服了單一任務模型的限制。尤其是在輸出表示在任務之間有很大差異的計算機視覺中,這一點變得尤為重要。通過簡化訓練目標和建立跨任務的框架,這些通才模型為未來計算機視覺任務的多功能性提供了新的機會。
需要完整 PDF 版本請添加微信號: cv_huber,備注“視覺大模型”即可領取!
綜合性基礎模型
基于異構架構的基礎視覺模型
在這一部分,我們集中討論不同的基礎視覺模型,這些模型通過對齊多個成對的模態,如圖像-文本、視頻-音頻或圖像-深度等,來學習更有意義的表示。
CLIP 與異構模態的對齊

CLIP2Video
:這一模型擴展了CLIP
模型,使其適用于視頻。通過引入時序一致性和提出的時序差異塊(TDB)和時序對齊塊(TAB),將圖像-文本的CLIP模型的空間語義轉移到視頻-文本檢索問題中。

AudioCLIP
:這一模型擴展了CLIP
,使其能夠處理音頻。AudioCLIP
結合了ESResNeXt
音頻模型,并在訓練后能夠同時處理三種模態,并在環境聲音分類任務中勝過先前方法。
學習共享表示的多模態模型

Image Bind
:這一模型通過學習配對數據模態(如(視頻,音頻)或(圖像,深度))的共同表示,包括多種模態。ImageBind 將大規模配對數據(圖像,文本)與其他配對數據模態相結合,從而跨音頻、深度、熱和慣性測量單元(IMU)等四種模態擴展零樣本能力。

MACAW-LLM
:這是一種指令調諧的多模態 LLM(大型語言模型),整合了圖像、視頻、音頻和文本等四種不同模態。通過模態模塊、對齊模塊和認知模塊,MACAW-LLM 實現了各種模態的統一。
視頻和長篇幅文本的處理

COSA
:通過將圖像-文本語料庫動態轉換為長篇幅視頻段落樣本來解決視頻所需的時序上下文缺失問題。通過隨機串聯圖像-文本訓練樣本,確保事件和句子的顯式對應,從而創造了豐富的場景轉換和減少視覺冗余。

Valley
: 是另一個能夠整合視頻、圖像和語言感知的多模態框架。通過使用簡單的投影模塊來橋接視頻、圖像和語言模態,并通過指令調諧流水線與多語言 LLM 進一步統一。
這一節主要強調了將不同的感知模態(如視覺、聽覺和文字)結合到統一框架中的重要性。通過跨模態學習和對齊,這些模型不僅提高了特定任務的性能,還擴展了多種模態的零樣本學習能力。此外,考慮到視覺和聽覺之間的時序一致性也是重要的創新方向。通過強調如何整合這些不同的輸入形式,本節揭示了深度學習在處理更復雜和多樣化數據方面的潛力。
基于代理的基礎視覺模型
基于代理的基礎視覺模型將語言學習模型(LLMs)與現實世界的視覺和物理傳感器模式相結合。這不僅涉及文字的理解,還涉及與現實世界的互動和操作,特別是在機器人操作和導航方面。
機器人操控

Palm-E
:該模型將連續的傳感器輸入嵌入到 LLM 中,從而允許機器人進行基于語言的序列決策。通過變換器,LLM將圖像和狀態估計等輸入嵌入到與語言標記相同的潛在空間,并以相同的方式處理它們。

ViMA
:使用文本和視覺提示來表達一系列機器人操控任務,通過多模態提示來學習機器人操控。它還開發了一個包含600K專家軌跡的模擬基準測試,用于模仿學習。
持續學習者

MineDojo
:為 Minecraft
中的開放任務提供了便利的API,并收集了豐富的 Minecraft 數據。它還使用這些數據為體現代理制定了新的學習算法。

VOYAGER
:這是一種由 LLM 驅動的終身學習代理,設計用于在 Minecraft 中探索、磨練技能并不斷發現新事物。它還通過組合較小的程序逐漸構建技能庫,以減輕與其他持續學習方法相關的災難性遺忘。
導航規劃

LM-Nav
:結合預訓練的視覺和語言模型與目標控制器,從而在目標環境中進行長距離指導。通過使用視覺導航模型構建環境的“心理地圖”,使用 GPT-3
解碼自由形式的文本指示,并使用 CLIP
將這些文本地標連接到拓撲圖中,從而實現了這一目標。然后,它使用一種新的搜索算法找到了機器人的計劃。
總體而言,基于代理的基礎視覺模型突出了語言模型在現實世界任務中的潛力,如機器人操作、持續學習和復雜導航。它們不僅推動了機器人技術的進展,還為自然語言理解、多模態交互和現實世界應用開辟了新的研究方向。通過將預訓練的大型語言模型與機器人技術和視覺導航相結合,基于代理的基礎視覺模型能夠解決現實世界中的復雜任務,展示了人工智能的跨學科整合和應用潛力。
需要完整 PDF 版本請添加微信號: cv_huber,備注“視覺大模型”即可領取!
總結
具有對多種模式(包括自然語言和視覺)基礎理解的模型對于開發能有效感知和推理現實世界的AI系統至關重要。今天主要為大家概括了視覺和語言基礎模型,重點關注了它們的架構類型、訓練目標、下游任務適應性和提示設計。
多模態理解:我們提供了對文本提示、視覺提示和異構模態模型的系統分類。這些模型不僅涵蓋了自然語言,還包括了視覺和其他感知模式的理解。
應用廣泛性:這些模型在各種視覺任務中的應用非常廣泛,包括零樣本識別和定位能力、關于圖像或視頻的視覺對話、跨模態和醫療數據理解。
通用模型:視覺中的基礎模型可以作為通用模型來解決多個任務。當與大型語言模型相結合時,它們促生了可以在復雜環境中持續學習和導航的基礎實體代理。
整體而言,基礎視覺和語言模型的研究不僅深入了解了各種架構和訓練目標,還展示了這些模型在多個領域和應用中的潛力。通過集成文本、視覺和其他模態的理解,這些模型促進了機器人技術和現實世界任務的進展。然而,還需要進一步的研究來充分挖掘這些模型的潛力,并解決一些存在的挑戰和局限性。