Transformer (language)
https://www.cnblogs.com/kongen/p/18088002
https://www.infoq.cn/article/qbloqm0rf*sv6v0jmulf
https://arxiv.org/pdf/2402.06196
https://arxiv.org/pdf/1706.03762
ViT(Vision Transformer)
https://zhuanlan.zhihu.com/p/703561123
ViT,全稱Vision Transformer,是計算機視覺領域的新晉明星!它巧妙地將自然語言處理中的Transformer模型引入到影像識別任務中,讓影像也能像文字一樣被“翻譯”和理解。簡單來說,ViT把影像切割成一系列小塊(patch),然後像處理單詞一樣處理這些影像塊,透過自注意力機制捕捉它們之間的關係,從而實現影像分類等任務。ViT的出現,為計算機視覺領域帶來了新的視角和思路,讓影像識別更加高效和準確!🎉
Vision Transformer(ViT)[1] 技術由谷歌團隊在 ICLR 2021 提出,類似於 BERT [2],ViT 是 Encoder-only 結構,並不是目前流行的 Decoder-only 結構。據此, ViT 主要用於提取影像特徵,其思想簡單有效且具有良好的擴充套件性,被視為 Transformer 在計算機視覺領域應用的重要里程碑之一。本篇博文對 ViT 的核心技術原理進行梳理和總結。
ViT 的架構如圖 1 所示。具體而言,ViT 首先將輸入影像劃分為固定大小的影像塊(Patch),這些影像塊被拉平並透過線性變換對映為固定長度的向量。然後,這些向量序列
拼接到一個可學習的分類標記([CLS] token)後面,接著加上對應位置的可學習位置編碼後,輸入到 Transformer Encoder 中。最後,提取出 [CLS] token 對應的特徵輸入到分類器中進行學習。
圖 1. ViT 網路的整體架構 [1]
MM-LLMs: Recent Advances in MultiModal Large Language Models
https://zhuanlan.zhihu.com/p/680487634
https://developer.volcengine.com/articles/7389112087835836466
1、The (R)Evolution of Multimodal Large Language Models: A Survey
https://arxiv.org/abs/2402.12451
2、MM-LLMs: Recent Advances in MultiModal Large Language Models
https://arxiv.org/pdf/2401.13601.pdf
3、Large Language Models: A Survey
https://arxiv.org/pdf/2402.06196.pdf
MLLMs的發展路線
Flamingo 是第一個在視覺-語言領域探索上下文學習的模型。
MLLMs的發展路線經歷了從單一模態到多模態融合的轉變,以及從靜態模型到動態、互動式系統的演進。
多模態大型語言模型(MLLMs)發展時間線( 2022.4-2024.2 )
多模態大模型(MLLMs)的分類
多模態大模型(MLLMs)的分類是基於它們的功能性和設計原則。以下是對這些分類的總結:
功能性分類:
理解(Understanding):這類MLLMs主要關注於理解和處理多模態輸入,例如影像、影片、音訊和文字。
生成(Generation):這類模型不僅理解輸入,還能生成特定模態的輸出,如影像、影片、音訊或文字。
設計分類:
工具使用(Tool-using):這類模型將LLM視為黑盒,並提供對特定多模態專家系統的訪問,透過推理來執行特定的多模態任務。
端到端(End-to-end):這類模型是整體聯合訓練的,意味著整個模型在訓練過程中是一起最佳化的。
模態轉換:
I+T→T:影像和文字輸入,文字輸出。
V+T→T:影片和文字輸入,文字輸出。
A+T→T:音訊和文字輸入,文字輸出。
3D+T→T:3D點雲和文字輸入,文字輸出。
I+V+A+T→T:影像、影片、音訊和文字輸入,文字輸出。
特定功能:
文件理解(ID):處理文件內容的理解任務。
輸出邊界框(IB):在影像中識別並輸出物件的邊界框。
輸出分割掩模(IM):生成影像中物件的分割掩模。
輸出檢索影像(IR):從資料庫中檢索與輸入相關的影像。
122個MLLMs的分類體系 ,I:影像,V:影片,A/S:音訊/語音,T:文字。ID:文件理解,IB:輸出邊界框,IM:輸出分割掩模,IR:輸出檢索影像。
https://arxiv.org/pdf/2401.13601
MM-LLMs的模型架構
https://zhuanlan.zhihu.com/p/680487634
如圖所示,MM-LLMs的模型架構包括以下5個組成部分:
模態編碼器
(Modality Encoder): 負責對不同的模態輸入IX進行編碼,得到對應的特徵FX。IX可以是影像、影片、音訊、3D等不同型別的輸入。常用的編碼器包括:
- 影像編碼器:NFNet-F6、ViT、CLIP ViT、Eva-CLIP ViT
- 影片編碼器
- :對影片均勻取樣成5幀,進行與影像類似的預處理
- 音訊編碼器
- :C-Former、HuBERT、BEATs、Whisper
- 3D點雲編碼器
- :ULIP-2、PointBERT
- 統一編碼器:ImageBind,支援影像、影片、文字、音訊、熱圖等多種模態
輸入投影器(Input Projector): 負責將編碼後的其他模態特徵FX投影到文字特徵空間T,得到對齊的特徵PX。常用的實現方法有:
- 直接線性投影或多層感知機
- 交叉注意力:利用可訓練的查詢向量與編碼特徵FX進行壓縮,得到固定長度的表示,並直接輸入LLM或進行交叉注意力融合
- Q-Former:從FX中提取相關特徵,作為提示PX
- P-Former:生成參考提示,對Q-Former生成的提示進行對齊約束
LLM骨幹網路
(LLM Backbone): 利用預訓練的大型語言模型作為核心,負責對齊後的特徵進行語義理解、推理和決策,並輸出文字輸出t和來自其他模態的訊號令牌SX。常用的LLM包括:
- Flan-T5
- ChatGLM
- UL2
- Qwen
- Chinchilla
- OPT
- PaLM
- LLaMA
- LLaMA-2
- Vicuna
輸出投影器(Output Projector): 將LLM骨幹網路中的訊號令牌SX對映到特徵HX,以使其可被後續的模態生成器MGX理解。通常採用Tiny Transformer或多層感知機來實現。
模態生成器(Modality Generator): 負責生成不同模態的輸出,通常採用預訓練的潛在擴散模型
(LDMs),將輸出投影器對映的特徵HX作為條件輸入,以生成多模態內容。常用的LDMs包括:
- 影像合成:Stable Diffusion
- 影片合成:Zeroscope
- 音訊合成:AudioLDM-2
這5個部分共同組成了MM-LLMs的模型架構,每個部分都有其特定的功能和實現選擇。
https://arxiv.org/pdf/2401.13601
https://arxiv.org/pdf/2401.13601
MM-LLM的訓練流程
https://zhuanlan.zhihu.com/p/680487634
MM-LLM的訓練流程主要包括多模態預訓練(MM PT)和多模態指令調優(MM IT)兩個階段。
多模態預訓練(MM PT): 在預訓練階段,通常利用X-Text資料集來訓練輸入投影器和輸出投影器,以實現不同模態之間的對齊。對於多模態理解模型,只需最佳化輸入投影器的目標函式。對於多模態生成模型,則需要最佳化輸入投影器、輸出投影器和模態生成器的目標函式。X-Text資料集包括:
- 影像-文字資料集:影像-文字對、交錯影像-文字語料
- 影片資料集:影片-文字對、交錯影片-文字語料
- 音訊資料集:音訊-文字對、交錯音訊-文字語料
多模態指令調優
(MM IT): 在指令調優階段,通常利用一組以指令格式組織的資料集對預訓練的MM-LLMs進行微調。這個階段包括監督式微調(SFT)和基於人類反饋的強化學習(RLHF),旨在更好地與人類意圖保持一致,並增強模型的互動能力。SFT將部分預訓練階段的資料轉換為指令感知格式,然後使用相同的最佳化目標對預訓練模型進行微調。SFT資料集可以組織成單輪問答或多輪對話。在SFT之後,RLHF會進一步微調模型,利用自然語言反饋(NLF)對模型的響應進行反饋,從而訓練模型根據NLF生成相應的響應。RLHF資料集通常包括人類標註或自動生成的NLF。
image + text 模組融合架構
https://arxiv.org/pdf/2402.12451
https://developer.volcengine.com/articles/7389112087835836466
多模態大型語言模型(MLLMs)處理視覺理解任務,包括視覺問答(VQA)、影像生成和編輯等任務:
- 視覺基礎(Visual Grounding):MLLMs的視覺基礎能力指的是在對話中定位內容的能力,也稱為指稱性對話。這包括理解輸入區域的內容(稱為指稱)和定位給定文字描述的區域(稱為基礎)。為了實現這些能力,MLLMs需要具備處理輸入區域的序列到序列方法和序列到區域的方法。
- 影像生成和編輯:現代MLLMs不僅能夠從視覺資料中提取資訊,還能夠生成視覺輸出。這通常是透過將MLLM框架與影像生成機制(如Stable Diffusion模型)整合來實現的。這些模型透過交叉注意力層將文字或視覺嵌入條件化,生成影像。
- 其他模態和應用:除了處理影像,一些研究還提出了專門設計用於處理影片序列的MLLMs。這些模型獨立處理影片幀,並使用基於CLIP的骨幹網路提取幀級特徵,然後透過池化機制或基於Q-Former的解決方案進行組合。此外,還有研究關注於設計能夠處理多種模態的模型,這些模型透過Transformer塊(如Q-Former和Perceiver)對齊多模態特徵
CLIP (影像-文字關聯緊密, 按照相似度進行學習),只能進行搜尋,無法生成。
BLIP 實現生成功能。
https://www.bilibili.com/video/BV1t44y1c7pK/?vd_source=57e261300f39bf692de396b55bf8c41b
MiniGPT4-Video: Advancing Multimodal LLMs for Video Understanding with Interleaved Visual-Textual Token
https://vision-cair.github.io/MiniGPT4-video/
https://arxiv.org/pdf/2404.03413
Video-LLaMA An Instruction-tuned Audio-Visual Language Model for Video Understanding
https://zhuanlan.zhihu.com/p/638603634
https://arxiv.org/pdf/2306.02858
在數字時代,影片已經成為一種主要的內容形式。但是理解和解釋影片內容是一項複雜的任務,不僅需要視覺和聽覺訊號的整合,還需要處理上下文的時間序列的能力。本文將重點介紹稱為video - llama的多模態框架。Video-LLaMA旨在使LLM能夠理解影片中的視覺和聽覺內容。論文設計了兩個分支,即視覺語言分支和音訊語言分支,分別將影片幀和音訊訊號轉換為與llm文字輸入相容的查詢表示。
video - llama結合了影片中的視覺和聽覺內容,可以提高語言模型對影片內容的理解。他們提出了一個影片Q-former來捕捉視覺場景的時間變化,一個音訊Q-former
來整合視聽訊號。該模型在大量影片影像標題對和視覺指令調優資料集上進行訓練,使視覺和音訊編碼器的輸出與LLM的嵌入空間對齊。作者發現video - llama展示了感知和理解影片內容的能力,並根據影片中呈現的視覺和聽覺資訊產生有意義的反應。
1、Video Q-former:一個動態的視覺直譯器
Video Q-former是video - llama
框架的關鍵元件。它旨在捕捉視覺場景中的時間變化,提供對影片內容的動態理解。影片Q-former跟蹤隨時間的變化,以一種反映影片演變性質的方式解釋視覺內容。這種動態解釋為理解過程增加了一層深度,使模型能夠以更細緻入微的方式理解影片內容。
2、Audio Q-former:視聽整合
Audio
Q-former是Video-LLaMa框架的另一個重要元件。它整合了視聽訊號,確保模型完整地理解影片內容。Audio
Q-former同時處理和解釋視覺和聽覺資訊,增強對影片內容的整體理解。這種視聽訊號的無縫整合是Video-LLaMa框架的一個關鍵特徵,它在其有效性中起著至關重要的作用。
模型是在影片影像標題對和視覺指令調優資料集的大量資料集上訓練的。這個訓練過程將視覺和音訊編碼器
的輸出與語言模型的嵌入空間對齊。這種對齊確保了高水平的準確性和理解力,使模型能夠根據影片中呈現的視覺和聽覺資訊生成有意義的響應。
影響和潛力
video - llama模型展示了一種令人印象深刻的感知和理解影片內容的能力。它基於影片中呈現的視覺和聽覺資訊。這種能力標誌著影片理解領域的重大進步,為各個領域的應用開闢了新的可能性。
例如,在娛樂行業,Video-LLaMa可用於為視障觀眾生成準確的語音描述。在教育領域,它可以用來建立互動式學習材料。在安全領域,它可以用來分析監控錄影,識別潛在的威脅或異常情況。