Visual Instruction Tuning論文閱讀筆記

脂环發表於2024-06-07

Motivation & Abs

Motivation:之前基於LLM的通用助手僅能處理文字。

資料:使用純語言的GPT4生成多模態語言-影像指令資料。

模型:基於生成資料端到端訓練的模型LLaVA,用於通用視覺語言理解。

指標:兩個benchmark。

GPT-assisted Visual Instruction Data Generation

現有的多模態指令資料集往往很小,原因在於構建這樣的資料集相當耗時,同時缺少較好的定義。因此作者考慮使用C ha t GPT/GPT4來構建相應的資料(基於現有的影像文字對)。

對於一張影像\(X_v\)以及與之關聯的caption \(X_c\),我們可以很自然地構建一系列的問題\(X_q\),目的是指導助手描述影像內容。作者提示GPT-4以生成一系列的問題,因此一個簡單的擴充影像文字對為指令跟隨的方式是:

截圖2024-06-07 15.14.21

但這種簡單的方式會導致指令以及回答的多樣性 / 推理深度的缺失。為解決這個問題,作者使用ChatGPT / GPT4(僅利用其語言能力)作為一個強的教師模型生成包含視覺內容的指令跟隨資料。為了將影像編碼為視覺特徵送入text-only GPT,作者使用了兩種不同形式的表示:(1)Captions以及(2)Bounding boxes,這種表示可以使影像被編碼為LLM能夠識別的序列。作者使用了COCO的影像,同時生成了三種指令跟隨資料:Conversation,Detailed description以及Complex reasonging。

截圖2024-06-07 15.32.04

Visual Instruction Tuning

Architecture

截圖2024-06-07 15.58.07

LLM使用的是Vicuna,視覺encoder使用的是CLIP的ViT-L/14, 透過一個簡單的線性層將影像特徵投影到word embedding space。

Training

對於每一個影像\(X_v\),作者生成多輪對話資料\(X_q^1,X_a^1...X_q^T,X_a^T\)。指令構建:

截圖2024-06-07 16.13.06

對於預測token使用instruction-tuning,最佳化目原始的自迴歸目標:

截圖2024-06-07 16.15.28

兩階段指令微調過程:

Stage 1: Pre-training for Feature Alignment. 在這一階段只訓練線性層,使用的資料為影像以及對應的original caption(GT)。每個訓練樣本可以被視為單輪對話。

Stage 2: Fine-tuning End-to-End. 第二階段凍結視覺encoder,訓練投影層和LLM。

實驗

需要注意的是,定量實驗中,作者使用GPT4評估生成的質量(helpfulness, relevance, accuracy, and level of detail of the responses)。截圖2024-06-07 16.41.51

兩個benchmark:

截圖2024-06-07 16.42.39

相關文章