GeoChat
任務
影像級對話任務
在此任務中,GeoChat 處理影像和使用者文字查詢,利用影像的全域性上下文執行對話的任務。
區域級對話任務
在影像輸入中向 GeoChat 提供空間框位置 ( b ),指導模型關注影像中的特定區域,執行區域級的對話任務。
具體化對話任務
透過使用特殊的標記,引導GeoChat完成任務。
模型架構
GeoChat整體遵循LlaVA-v1.5的架構,由視覺編碼器,跨模態適配層,大語言模型組成。
任務標記
使用{grounding,identify,refer}三種任務標記,分別用於語義對話、區域描述和指代表達理解。至於視覺問答(VQA)和場景分類的情況。
空間位置標記
以文字形式表示空間位置:$$b = { b_{x_{left}}, b_{y_{top}}, b_{x_{right}}, b_{y_{bottom}} \mid \theta }$$
(以文字形式直接輸入LLM?)
視覺主幹
透過對CLIP模型中的位置編碼進行了插值,以適應 504×504 的輸入影像大小,使模型接收更大的輸入尺寸。
MLP跨模態介面卡
使用一個具有一個隱藏層的MLP介面卡,從凍結的CLIP-ViT模型中將輸出tokens投影到語言模型空間。將視覺模型的輸出特徵投影到語言模型的空間,使兩者能夠有效地結合。
大語言模型
以開源大型語言模型Vicunav1.5(7B)作為GeoChat的基礎。使用低秩適應(LoRA)的策略對LLM進行微調,降低微調大模型所需的機器資源。
LoRA
在原始預訓練模型旁邊增加一個旁路,做一個降維再升維的操作,訓練的時候固定預訓練模型的引數,只訓練降維矩陣A與升維矩陣B。而模型的輸入輸出維度不變,輸出時將BA與PLM的引數疊加。用隨機高斯分佈初始化A用0矩陣初始化B.
訓練細節
使用預訓練的CLIP-ViT(L-14)編碼器、MLP介面卡和Vicuna-v1.5來初始化模型。接著,對LLM進行LoRA微調,同時保持MLP介面卡和CLIP編碼器凍結,以實現更好的訓練效果。
資料集的建立
組成資料集
整合了三種不同型別的資料集,涵蓋了針對物件檢測、場景分類和視覺問答(VQA)設計的資料集。DOTA [34]、DIOR [6] 和 FAIR1M [27],共同形成SAMRS [30] 資料一個場景分類資料集NWPURESISC-45 [5],一個VQA資料集LRBEN [20],以及一個洪水檢測VQA資料集 [25)。
新增缺失類
使用其他模型推理,新增圖片中未標註的類別(例如建築,道路,樹木)。
屬性提取
透過目標的在圖片中的方位,佔比,畫素值來提取相對位置,顏色,大小等屬性。
生成表示式
透過表示式生成物件的文字描述,或者物件之間的聯絡。
模型復現
在執行demo的過程中被killed,應該因為顯示卡的記憶體不足