OFA:朝向構建一個全能模型

OFA(One-For-All)是一個統一的多模態預訓練模型,旨在將不同模態的理解與生成任務整合到單一框架中。透過指令式多任務預訓練,OFA 目標是打造一個通用模型,能在不需要針對不同任務改變架構的情況下處理多樣的輸入與輸出。

統一的模態、架構與任務框架

OFA 透過三大核心支柱實現通用能力:模態無關、任務無關與任務完整性。

模態統一

為了處理多樣的輸入,OFA 將非文字模態離散化為 token。影像使用 VQ(向量量化)token 表示,邊界框則以分箱方式離散化,遵循 pix2seq 方法。這使模型能將所有模態視為 token 序列。

架構統一

OFA 採用類似 T5 的通用 Transformer 編碼器‑解碼器架構。為了處理影像輸入,模型使用 ResNet 的前三個 block。為提升訓練穩定性與遷移效能,架構中加入了 Normformer。

任務統一

OFA 以指令式多任務學習方式進行預訓練。模型在八項不同任務上進行訓練:

  • 視覺‑語言任務(5): 視覺定位、具體說明生成、視覺問答(VQA)、影像‑文字匹配與影像說明。
  • 視覺任務(2): 目標檢測與影像填補。
  • 語言任務(1): 文字填補。

指令以文字說明的形式插入,協助模型區分這些任務,從而在給予新指令時具備對未見任務的零樣本生成能力。

模型變體與規模

OFA 釋出五種不同規模的模型,以滿足各種部署與研究需求:

  • OFA‑Tiny: 3300 萬參數
  • OFA‑Medium: 9300 萬參數
  • OFA‑Base: 1.8 億參數
  • OFA‑Large: 4.7 億參數
  • OFA‑Huge: 9.3 億參數

效能與實驗結果

OFA 在多模態與單模態基準測試中展現競爭力,常常與專門模型持平或超越。

多模態能力

  • 視覺‑語言理解: OFA‑Huge 在 VQA 與 SNLI‑VE 上的表現可與 Flamingo(800 億參數)與 CoCa(20 億參數)相媲美,且在視覺蕴含任務上達到最佳成績。
  • 視覺‑語言生成: OFA 在影像說明任務上於交叉熵與 CIDEr 優化下皆取得最先進(SoTA)表現。於視覺定位任務中,Base 規模模型超越先前的 SoTA,且效能隨模型大小穩定提升。
  • 文字轉影像生成: 由於在影像填補上的預訓練,OFA 能生成影像代碼並取得低 FID 分數,透過在更大資料集上微調可進一步提升。

單模態能力

  • 自然語言理解(NLU): 在 GLUE 基準上,OFA 與 RoBERTa、DeBERTa 競爭。
  • 自然語言生成(NLG): OFA 在 Gigaword 摘要任務上表現優異,超越先前的多模態預訓練模型。
  • 視覺理解: 在 ImageNet 分類上,OFA 的表現與 BeiT、MAE 等自監督視覺模型相當。

組合概括與遷移

OFA 展示了將已學能力遷移至未見任務與領域的組合概括能力。

  • 未見任務: 研究者提出「具體 VQA」這一結合 VQA 與具體說明的新任務。僅透過更換指令,OFA 即可利用既有能力完成此任務。
  • 未見領域: OFFA 能有效遷移至未見領域,例如在動畫圖像上執行視覺定位,這得益於其在動畫資料與通用領域視覺定位上的預訓練結合。

結論

OFA 模型證明單一基於 Transformer 的框架即可統一任務與模態,為多模態表徵學習中通用基礎模型的發展提供了有前景的路徑。

Sources