深入瞭解視覺語言模型

語言: CN / TW / HK

人類學習本質上是多模態 (multi-modal) 的,因為聯合利用多種感官有助於我們更好地理解和分析新信息。理所當然地,多模態學習的最新進展即是從這一人類學習過程的有效性中汲取靈感,創建可以利用圖像、視頻、文本、音頻、肢體語言、面部表情和生理信號等各種模態信息來處理和鏈接信息的模型。

自 2021 年以來,我們看到大家對結合視覺和語言模態的模型 (也稱為聯合視覺語言模型) 的興趣越來越濃,一個例子就是 OpenAI 的 CLIP。聯合視覺語言模型在非常具有挑戰性的任務中表現出了讓人眼前一亮的能力,諸如圖像標題生成、文本引導圖像生成、文本引導圖像操作以及視覺問答等。這個領域在不斷髮展,其零樣本泛化能力也在不斷改進,從而產生了各種實際應用。

本文,我們將介紹聯合視覺語言模型,重點關注它們的訓練方式。我們還將展示如何利用 🤗 Transformers 對該領域的最新進展進行實驗。

簡介

將模型稱為 “視覺語言” 模型是什麼意思?一個結合了視覺和語言模態的模型?但這到底是什麼意思呢?

有助於定義此類模型的一個特性是它們處理圖像 (視覺) 和自然語言文本 (語言) 的能力。而這個過程體現在輸入、輸出以及要求這些模型執行的任務上。

以零樣本圖像分類任務為例。我們將傳給模型如下一張圖像和一些候選提示 (prompt),以獲得與輸入圖像最匹配的提示。

小動物圖片出自: https://www.istockphoto.com/photos/dog-cat-love

為了預測類似的東西,模型需要理解輸入圖像和文本提示。它將使用單獨或融合的視覺和語言編碼器來達到理解的目的。

輸入和輸出可以有多種形式。下面僅舉幾例:

  • 用自然語言文本來檢索圖像。
  • 短語關聯 (Phrase grounding),即在輸入圖像中檢測出文本中提到的短語 (例如: 一個 年輕人 揮動 球拍)。
  • 視覺問答,即在輸入圖像中找到自然語言問題的答案。
  • 為給定圖像生成標題。該任務還有一個形式就是條件文本生成,此時輸入變成了兩個,即自然語言提示和圖像。
  • 從包含圖像和文本模態的社交媒體內容中檢測仇恨言論。

學習策略

視覺語言模型通常由 3 個關鍵元素組成: 圖像編碼器、文本編碼器以及融合兩個編碼器的信息的策略。這些關鍵元素緊密耦合在一起,因為損失函數是圍繞模型架構和學習策略設計的。雖然視覺語言模型研究算不上是一個新的研究領域,但此類模型的設計隨着時間的變遷發生了巨大變化。早期的研究採用手工設計的圖像描述子、預訓練詞向量或基於頻率的 TF-IDF 特徵,而最新的研究主要採用 transformer 架構的圖像和文本編碼器來單獨或聯合學習圖像和文本特徵。我們使用戰略性的預訓練目標來訓練這些模型,從而使之可用於各種下游任務。

在本節中,我們將討論視覺語言模型的一些典型預訓練目標和策略,這些模型已被證明有良好的遷移性能。我們還將討論其他有趣的東西,它們要麼特定於某些預訓練目標,要麼可以用作預訓練的通用組件。

我們將在預訓練目標中涵蓋以下主題:

  • 對比學習: 以對比方式將圖像和文本對齊到聯合特徵空間
  • PrefixLM: 通過將圖像視作語言模型的前綴來聯合學習圖像和文本嵌入
  • 基於交叉注意力的多模態融合: 將視覺信息融合到具有交叉注意力機制的語言模型的各層中
  • MLM / ITM: 使用掩碼語言建模 (Masked-Language Modeling,MLM) 和圖像文本匹配 (Image-Text Matching,ITM) 目標將圖像的各部分與文本對齊
  • 無訓練: 通過迭代優化來利用獨立視覺和語言模型

請注意,本節並未詳盡陳述所有方法,還有各種其他方法以及混合策略,例如 Unified-IO。如需更全面地瞭解多模態模型,請參閲 這項工作

1) 對比學習

對比預訓練和零樣本圖像分類

對比預訓練和零樣本圖像分類,上圖出處: https://openai.com/blog/clip

對比學習是視覺模型常用的預訓練目標,也已被證明同時是視覺語言模型的高效預訓練目標。近期的工作如 CLIPCLOOBALIGNDeCLIP 在 {圖像,標題} 對組成的大型數據集上,通過使用對比損失函數聯合訓練文本編碼器和圖像編碼器,從而橋接視覺和語言兩個模態。對比學習旨在將輸入圖像和文本映射到相同的特徵空間,使得圖像 - 文本對的嵌入之間的距離在兩者匹配時最小化,而在不匹配時最大化。

CLIP 僅採用文本和圖像嵌入之間的餘弦距離作為距離度量。而 ALIGN 和 DeCLIP 等模型則設計了自己的距離度量,這些距離在設計時考慮了數據集是有噪聲的。

另一項工作 LiT 引入了一種凍結圖像編碼器而僅使用 CLIP 預訓練目標來微調文本編碼器的簡單方法。作者將這個想法解釋為 * 一種教文本編碼器更好地讀懂圖像編碼器生成的圖像嵌入的方法 *。這種方法已被證明是有效的,並且比 CLIP 的樣本效率更高。 FLAVA 等其他工作將對比學習和其他預訓練策略相結合來對齊視覺和語言嵌入。

2) PrefixLM

PrefixLM 預訓練策略框圖

PrefixLM 預訓練策略框圖, 上圖出處: https://ai.googleblog.com/2021/10/simvlm-simple-visual-language-model-pre.html

另一種訓練視覺語言模型的方法是使用 PrefixLM 目標。 SimVLMVirTex 等模型使用該預訓練目標並使用一個統一的由 transformer 編碼器和 transformer 解碼器組成的多模態架構,有點類似於自迴歸語言模型。

讓我們拆解一下,看看它是如何工作的。具有前綴目標的語言模型在給定輸入文本作為前綴的情況下預測下一個詞。例如,給定序列 “一個男人站在牆角”,我們可以使用” 一個男人站在” 作為前綴並訓練模型以預測下一個詞: 可以是 “牆角” 或另一個合理的補全詞。

Visual transformers (ViT) 通過將每個圖像劃分為多個塊 (patch) 並將這些塊按順序輸入給模型,從而將相同的前綴概念應用於圖像。利用這個想法,SimVLM 實現了這樣一種架構,將圖像塊序列和前綴文本序列串接起來作為最終的前綴,輸入給編碼器,然後由解碼器來預測該文本序列的接續文本。上圖描述了該思想。 SimVLM 模型首先在前綴中沒有圖像塊的文本數據集上進行預訓練,然後在對齊的圖像文本數據集上進行預訓練。這些模型用於圖生文 / 圖像標題生成和 VQA 任務。

利用統一的多模態架構將視覺信息融合到語言模型 (Language Model,LM) 中,最終生成的模型在圖像引導類任務中顯示出令人印象深刻的能力。然而,僅使用 PrefixLM 策略的模型在應用領域上可能會受到限制,因為它們主要為圖像標題生成或視覺問答這兩個下游任務而設計。例如,給定一組包含人的圖像,我們通過圖像的描述來查詢符合描述的圖像 (例如,“一羣人站在一起微笑着站在建築物前”) 或使用以下視覺推理問題來查詢: “有多少人穿着紅色 T 恤?” 圖像。另一方面,學習多模態表示或採用混合方法的模型可以適用於各種其他下游任務,例如目標檢測和圖像分割。

凍結 PrefixLM

凍結 PrefixLM 預訓練策略

凍結 PrefixLM 預訓練策略, 上圖出處: https://lilianweng.github.io/posts/2022-06-09-vlm

雖然將視覺信息融合到語言模型中非常有效,但能夠使用預訓練語言模型 (LM) 而無需微調會更有效。因此,視覺語言模型的另一個預訓練目標是學習與凍結語言模型對齊的圖像嵌入。

FrozenMAPLClipCap 使用了凍結 PrefixLM 預訓練目標。它們在訓練時僅更新圖像編碼器的參數以生成圖像嵌入,這些圖像嵌入可以用作預訓練的凍結語言模型的前綴,其方式與上面討論的 PrefixLM 目標類似。 Frozen 和 ClipCap 都在對齊的圖像文本 (標題) 數據集上進行訓練,目的是在給定圖像嵌入和前綴文本的情況下生成標題中的下一個詞。

最後,Flamingo 索性把預訓練視覺編碼器和語言模型都凍結了,並在一系列廣泛的開放式視覺和語言任務上刷新了少樣本學習的最高水平。 Flamingo 通過在預訓練的凍結視覺模型之上添加一個感知器重採樣器 (Perceiver Resampler) 模塊並在凍結的預訓練 LM 層之間插入新的交叉注意層以根據視覺數據調節 LM 來達到這個性能。

凍結 PrefixLM 預訓練目標的一個很好的優勢是它可以使用有限的對齊圖像文本數據進行訓練,這對於那些沒有對齊多模態數據集的領域特別有用。

3) 多模態融合與交叉注意力

使用交叉注意力機制將視覺信息直接融合到語言模型中

使用交叉注意力機制將視覺信息直接融合到語言模型中, 上圖出處: https://www.semanticscholar.org/paper/VisualGPT%3A-Data-efficient-Adaptation-of-Pretrained-Chen-Guo/616e0ed02ca024a8c1d4b86167f7486ea92a13d9

將預訓練語言模型用於多模態任務的另一種方法是使用交叉注意機制將視覺信息直接融合到語言模型解碼器的層中,而不是使用圖像作為語言模型的附加前綴。 VisualGPTVC-GPTFlamingo 使用此預訓練策略並在圖像標題任務和視覺問答任務上進行訓練。此類模型的主要目標是在把視覺信息融入文本生成能力時在這兩者間取得高效的平衡,這在沒有大型多模態數據集的情況下非常重要。

VisualGPT 等模型使用視覺編碼器來生成圖像嵌入,並將視覺嵌入提供給預訓練語言解碼器模塊的交叉注意層,以生成合理的標題。最近的一項工作 FIBER 將具有門控機制的交叉注意力層插入到視覺和語言的主幹模型中,以實現更高效的多模態融合,並使能各種其他下游任務,如圖文互搜、開放域 (open-vocabulary) 目標檢測等。

4) 掩膜語言建模及圖文匹配

另一派視覺語言模型把掩碼語言建模 (MLM) 和圖文匹配 (ITM) 目標組合起來使用,將圖像的特定部分與文本對齊,並使能各種下游任務,例如視覺問答、視覺常識推理、文搜圖以及文本引導的目標檢測。遵循這種預訓練設置的模型包括 VisualBERTFLAVAViLBERTLXMERTBridgeTower

將圖像與文本按部分相應對齊

將圖像與文本按部分相應對齊, 上圖出處: https://arxiv.org/abs/1908.02265

讓我們解釋一下 MLM 和 ITM 目標。給定一個部分遮蓋的標題,MLM 的目標是根據相應的圖像預測遮蓋的單詞。請注意,MLM 目標需要使用帶有邊界框的標註豐富的多模態數據集,或者使用目標檢測模型為部分輸入文本生成候選目標區域。

對於 ITM 目標,給定圖像和標題對,任務是預測標題是否與圖像匹配。負樣本通常是從數據集中隨機抽取的。 MLM 和 ITM 目標通常在多模態模型的預訓練期間結合使用。例如,VisualBERT 提出了一種類似 BERT 的架構,它使用預訓練的目標檢測模型 Faster-RCNN 來檢測目標。VisualBERT 在預訓練期間結合了 MLM 和 ITM 目標,通過自注意力機制隱式對齊輸入文本的元素和相應輸入圖像中的區域。

另一項工作 FLAVA 由一個圖像編碼器、一個文本編碼器和一個多模態編碼器組成,用於融合和對齊圖像和文本表示以進行多模態推理,所有這些都基於 transformers。為了實現這一點,FLAVA 使用了多種預訓練目標: MLM、ITM,以及 掩膜圖像建模 (Masked-Image Modeling,MIM) 和對比學習。

5) 無訓練

最後,各種優化策略旨在使用預訓練的圖像和文本模型來橋接圖像和文本表示,或者使預訓練的多模態模型能夠在無需額外訓練的情況下適應新的下游任務。

例如,MaGiC 提出通過預訓練的自迴歸語言模型進行迭代優化,為輸入圖像生成標題。為此,MaGiC 使用生成的詞的 CLIP 嵌入和輸入圖像的 CLIP 嵌入來計算基於 CLIP 的 “魔法分數 (magic score) ”。

用預訓練的凍結的單模態圖像和文本編碼器創建一個相似性搜索空間

用預訓練的凍結的單模態圖像和文本編碼器創建一個相似性搜索空間

ASIF 提出了一種簡單的方法,可以使用相對較小的多模態數據集將預訓練的單模態圖像和文本模型轉換為多模態模型來用於圖像標題生成,無需附加訓練。 ASIF 背後的關鍵直覺是相似圖像的標題也彼此相似。因此,我們可以通過使用小型數據集裏的真實多模態對的來構建一個相對錶示空間,然後在該空間執行基於相似性的搜索。

數據集

視覺語言模型通常根據預訓練目標在結構各異的大型圖像和文本數據集上進行訓練。在對它們進行預訓練後,再使用特定於任務的數據集進一步針對各種下游任務進行微調。本節概述了一些用於訓練和評估視覺語言模型的流行的預訓練和下游數據集。

預訓練數據集

一般來講,我們從網上收集大量的多模態數據並將它們組織成圖像 / 視頻 - 文本對數據集。這些數據集中的文本數據可以是人工生成的標題、自動生成的標題、圖像元數據或簡單的目標類別標籤。此類大型數據集有 PMDLAION-5B 等。 PMD 數據集結合了多個較小的數據集,例如 Flickr30KCOCOConceptual Captions 數據集。 COCO 檢測和圖像標題 (>330K 圖像) 數據集分別由圖像實例和其所含目標的文本標籤及描述對組成。 Conceptual Captions (> 3.3M images) 和 Flickr30K (> 31K images) 數據集中的圖像以及它們的對應的用自然語言描述圖像的標題都是從網上爬取的。

即使是那些人工生成標題的圖像文本數據集 (例如 Flickr30K) 也存在固有的噪聲,因為用户並不總是為其圖像編寫描述性或反應圖像內容的標題。為了克服這個問題,LAION-5B 等數據集利用 CLIP 或其他預訓練的多模態模型來過濾噪聲數據並創建高質量的多模態數據集。此外,一些視覺語言模型,如 ALIGN,提出了進一步的預處理步驟並創建了自己的高質量數據集。還有些視覺語言數據集包含了視頻和文本雙模態,例如 LSVTDWebVid 數據集,雖然它們規模較小。

下游數據集

預訓練視覺語言模型通常還會針對各種下游任務進行訓練,例如視覺問答、文本引導目標檢測、文本引導圖像修復、多模態分類以及各種獨立的 NLP 和計算機視覺任務。

針對問答類下游任務進行微調的模型,例如 ViLTGLIP,一般使用 VQA (視覺問答) 、VQA v2NLVR2, OKVQA, TextVQA, TextCapsVizWiz 數據集。這些數據集的圖像通常都配有多個開放式問題和答案。此外,VizWiz 和 TextCaps 等數據集也可用於圖像分割和目標定位這些下游任務。其他一些有趣的多模態下游數據集有,用於多模態分類的 Hateful Memes,用於視覺藴含預測的 SNLI-VE,以及用於視覺語言組合推理的 Winoground

請注意,視覺語言模型也可用於各種經典的 NLP 和計算機視覺任務,例如文本或圖像分類。此時,通常使用單模態數據集如 SST2ImageNet-1k 來完成此類下游任務。此外,COCOConceptual Captions 等數據集也常用於預訓練模型以及標題生成等下游任務。

在 🤗 Transformers 中支持視覺語言模型

使用 Hugging Face Transformers,你可以輕鬆下載、運行和微調各種預訓練視覺語言模型,或者混合搭配預訓練視覺模型和預訓練語言模型來搭建你自己的模型。 🤗 Transformers 支持的一些視覺語言模型有:

這裏 CLIP、FLAVA、BridgeTower、BLIP、LiT 和 VisionEncoderDecoder 等模型會生成聯合圖像 - 文本嵌入,可用之於零樣本圖像分類等下游任務,而其他模型則針對有趣的下游任務進行訓練。此外,FLAVA 是基於單模態和多模態兩個預訓練目標訓練的,因此可用於單模態視覺或語言任務以及多模態任務。

例如,OWL-ViT 使能 了零樣本 - 文本引導目標檢測和單樣本 - 圖像引導目標檢測任務,CLIPSeg 和 GroupViT 使能 了文本和圖像引導的圖像分割任務,VisualBERT、GIT 和 ViLT 使能 了視覺問答以及其他各種任務。 X-CLIP 是一種使用視頻和文本模態進行訓練的多模態模型,它能夠 使能 類似於 CLIP 的零樣本圖像分類的視頻分類任務。

與其他模型不同,VisionEncoderDecoderModel 是一個標準化的模型,可用於初始化任意圖像轉文本模型,這類模型可以使用任何預訓練的基於 Transformer 的視覺模型作為編碼器 (例如 ViT、BEiT、DeiT、Swin) 以及任何預訓練的語言模型作為解碼器 (例如 RoBERTa、GPT2、BERT、DistilBERT)。事實上,TrOCR 是這個標準類的一個實例。

讓我們繼續試驗其中的一些模型。我們將使用 ViLT 進行視覺問答,使用 CLIPSeg 進行零樣本圖像分割。首先,我們要安裝 🤗Transformers: pip install transformers

基於 ViLT 的 VQA

讓我們從 ViLT 開始,下載一個在 VQA 數據集上預訓練的模型。我們可以簡單地初始化相應的模型類然後調用 “from_pretrained ()” 方法來下載想要的 checkpoint。

from transformers import ViltProcessor, ViltForQuestionAnswering

model = ViltForQuestionAnswering.from_pretrained ("dandelin/vilt-b32-finetuned-vqa")

接下來,我們隨便下載一張有兩隻貓的圖像,並對該圖像和我們的查詢問題進行預處理,將它們轉換為模型期望的輸入格式。為此,我們可以方便地使用相應的預處理器類 (ViltProcessor) 並使用相應 checkpoint 的預處理配置對其進行初始化。

import requests
from PIL import Image

processor = ViltProcessor.from_pretrained ("dandelin/vilt-b32-finetuned-vqa")

# download an input image
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open (requests.get (url, stream=True).raw)
text = "How many cats are there?"

# prepare inputs
inputs = processor (image, text, return_tensors="pt")

最後,我們可以使用預處理後的圖像和問題作為輸入進行推理,並打印出預測答案。但是,要牢記的重要一點是確保你的文本輸入與訓練時所用的問題模板相似。你可以參考 論文和數據集 來了解如何生成這些問題。

import torch

# forward pass
with torch.no_grad ():
    outputs = model (**inputs)

logits = outputs.logits
idx = logits.argmax (-1).item ()
print ("Predicted answer:", model.config.id2label [idx])

直截了當,對吧?讓我們用 CLIPSeg 做另一個演示,看看我們如何用幾行代碼執行零樣本圖像分割。

使用 CLIPSeg 做零樣本圖像分割

我們將從初始化 CLIPSegForImageSegmentation 及其相應的預處理類開始,並加載我們的預訓練模型。

from transformers import CLIPSegProcessor, CLIPSegForImageSegmentation

processor = CLIPSegProcessor.from_pretrained ("CIDAS/clipseg-rd64-refined")
model = CLIPSegForImageSegmentation.from_pretrained ("CIDAS/clipseg-rd64-refined")

接下來,我們將使用相同的輸入圖像,並用描述待分割目標的文本來查詢模型。與其他預處理器類似,CLIPSegProcessor 將輸入轉換為模型期望的格式。由於我們要分割多個目標,我們分別對每個描述文本都使用相同的輸入圖像。

from PIL import Image
import requests

url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open (requests.get (url, stream=True).raw)
texts = ["a cat", "a remote", "a blanket"]

inputs = processor (text=texts, images=[image] * len (texts), padding=True, return_tensors="pt")

與 ViLT 類似,重要的是要參考 原作,看看他們用什麼樣的文本提示來訓練模型,以便在推理時獲得最佳性能。雖然 CLIPSeg 在簡單的對象描述 (例如 “汽車”) 上進行訓練的,但其 CLIP 主幹是在設計好的文本模板 (例如 “汽車圖像”、“汽車照片”) 上預訓練的,並在隨後的訓練中凍結。輸入經過預處理後,我們可以執行推理以獲得每個文本查詢的二值分割圖。

import torch

with torch.no_grad ():
    outputs = model (**inputs)

logits = outputs.logits
print (logits.shape)
>>> torch.Size ([3, 352, 352])

讓我們可視化一下結果,看看 CLIPSeg 的表現如何 (代碼改編自 這篇文章)

import matplotlib.pyplot as plt

logits = logits.unsqueeze (1)

_, ax = plt.subplots (1, len (texts) + 1, figsize=(3*(len (texts) + 1), 12))
[a.axis ('off') for a in ax.flatten ()]
ax [0].imshow (image)
[ax [i+1].imshow (torch.sigmoid (logits [i][0])) for i in range (len (texts))];
[ax [i+1].text (0, -15, prompt) for i, prompt in enumerate (texts)]

CLIPSeg 結果

太棒了,不是嗎?

視覺語言模型支持大量有用且有趣的用例,並不僅限於 VQA 和零樣本分割。我們鼓勵你嘗試將本節中提到的模型用於不同的應用。有關示例代碼,請參閲模型的相應文檔。

新興研究領域

伴隨着視覺語言模型的巨大進步,我們看到了新的下游任務和應用領域的出現,例如醫學和機器人技術。例如,視覺語言模型越來越多地被用於醫療,產生了諸如 Clinical-BERT 之類的工作來根據放射照片來進行醫學診斷和報告生成,以及 MedFuseNet 來用於醫學領域的視覺問答。

我們還看到大量將聯合視覺語言表示應用於各種領域的工作,如用於圖像處理 (例如,StyleCLIPStyleMCDiffusionCLIP)、基於文本的視頻檢索 (例如,X-CLIP) 、基於文本的操作 (例如,Text2Live 以及 基於文本的 3D 形狀和紋理操作 (例如,AvatarCLIPCLIP-NeRF, Latent3D, CLIPFace, Text2Mesh)。在類似的工作中,MVT 提出了一種聯合 3D 場景 - 文本表示模型,可用於各種下游任務,例如 3D 場景補全。

雖然機器人研究尚未大規模利用視覺語言模型,但我們看到 CLIPort 等工作利用聯合視覺語言表示進行端到端模仿學習,並宣稱比之前的 SOTA 有了很大的改進。我們還看到,大型語言模型越來越多地被用於機器人任務,例如常識推理、導航和任務規劃。例如,ProgPrompt 提出了一個使用大語言模型 (Large Language Model,LLM) 生成情境機器人任務計劃的框架。同樣,SayCan 使用 LLM 根據給定的環境及環境中物體的視覺描述,選擇最合理的動作。儘管這些進展令人印象深刻,但由於目標檢測數據集的限制,機器人研究仍然侷限在有限的環境和目標集中。隨着 OWL-ViTGLIP 等開放集目標檢測模型的出現,我們可以期待多模態模型與機器人導航、推理、操作和任務規劃框架的集成會更緊密。

結論

近年來,多模態模型取得了令人難以置信的進步,視覺語言模型在性能、用例以及應用的多樣性方面取得了顯著的飛躍。在這篇文章中,我們討論了視覺語言模型的最新進展,可用的多模態數據集以及我們可以使用哪些預訓練策略來訓練和微調此類模型。我們還展示瞭如何將這些模型集成到 🤗 Transformers 中,以及如何使用它們通過幾行代碼來執行各種任務。

我們將繼續集成最具影響力的計算機視覺和多模態模型,並希望收到你的迴音。要了解多模態研究的最新消息,歡迎在 Twitter 上關注我們: @adirik@NielsRogge@apsdehal@a_e_roberts@RisingSayak@huggingface

致謝: 我們感謝 Amanpreet Singh 和 Amy Roberts 的嚴格審查。此外,還要感謝 Niels Rogge、Younes Belkada 和 Suraj Patil,以及 Hugging Face 的許多其他人,他們為促進基於 Transformers 的多模態模型的使用奠定了基礎。


英文原文: <url> https://huggingface.co/blog/vision_language_pretraining </url>

作者: Alara Dirik, Sayak Paul

譯者: Matrix Yao (姚偉峯),英特爾深度學習工程師,工作方向為 transformer-family 模型在各模態數據上的應用及大規模模型的訓練推理。

審校、排版: zhongdongy (阿東)