PaliGemma 2 發行說明
Google 已發布 PaliGemma 2,這是其視覺語言模型(VLM)的新版本,將 SigLIP 圖像編碼器與最新的 Gemma 2 文本解碼器整合。此更新將模型系列從單一的 3B 變體擴展至三種不同規模,並引入多種輸入解析度選項,以更好地平衡下游微調的品質與效率。
模型架構與變體
PaliGemma 2 將緊湊的 SigLIP 圖像編碼器連接到 Gemma 2 語言模型。可用的變體基於 Gemma 2 2B、9B 和 27B 模型,因此 PaliGemma 2 的參數規模為 3B、10B 和 28B(已考慮圖像編碼器的參數)。
為了提供不同使用情境的彈性,每種模型規模支援三種輸入解析度:
- 224x224
- 448x448
- 896x896
所有檢查點均以 bfloat16 精度提供,並根據 Gemma 授權進行分發,該授權允許商業使用、重新分發以及創建模型衍生品。
預訓練資料與功能
預訓練 (pt) 模型旨在輕鬆進行下游任務的微調。它們在多樣化的資料混合上進行訓練,以在較少樣本的情況下實現高性能適應。預訓練資料集包括:
- WebLI: 多語言、網頁規模的圖像-文本資料集,用於視覺語義理解、物體定位和多語言性。
- CC3M-35L: 英文圖像-alt_text 配對經由 Google Cloud Translation API 翻譯成 34 種其他語言。
- VQ2A: 改進的問答資料集,翻譯成 34 種其他語言。
- OpenImages: 來自 OpenImages 資料集的偵測與物體感知問答。
- WIT: 來自維基百科的圖像與文本。
特化微調變體:DOCCI
Google 已發布在 DOCCI 資料集(圖像-文本說明配對)上進行微調的特定變體,適用於 3B 和 10B 模型,解析度為 448x448。這些模型展現出強大的說明能力,包括文字渲染、空間關係捕捉以及世界知識的整合。
根據技術報告,PaliGemma 2 在事實準確性方面相較於先前版本和其他模型有所提升(以非蕴含句子數 NES 衡量,數值越低越好):
| 模型 | 參數 | 平均字元數 | 平均句子數 | NES (數值越低越好) |
|---|---|---|---|---|
| PaliGemma | 3B | 535 | 8.9 | 34.3 |
| PaliGemma 2 (3B) | 3B | 529 | 7.7 | 28.4 |
| PaliGemma 2 (10B) | 10B | 521 | 7.5 | 20.3 |
| VILA | 7B | 871 | 8.6 | 28.6 |
| LLaVA-1.5 | 7B | 395 | 4.2 | 40.6 |
部署與量化
PaliGemma 2 已透過 PaliGemmaForConditionalGeneration 和 AutoProcessor API 與 Hugging Face transformers 函式庫(版本 4.47 或更新)整合。
在 TextVQA 資料集(224x224 解析度)上使用 3B 微調檢查點進行測試顯示,量化對準確度的影響極小:
- bfloat16 (No quantization): 60.04% 準確度
- 8-bit: 59.78% 準確度
- 4-bit (nf4): 58.72% 準確度
微調與實作
PaliGemma 2 的微調 API 與原始 PaliGemma 相同,使得現有程式碼可以直接使用。Hugging Face 團隊透過將 PaliGemma 2 3B 模型在 VQAv2 驗證集的一部分進行 LoRA-fine-tuning,使用三塊 A100 (80GB) GPU,僅需 30 分鐘,展示了模型的效率。