論文 · arXiv 2103.00020
Learning Transferable Visual Models From Natural Language Supervision
三句話總結
- 🎯 標準電腦視覺系統依賴固定、預設的標籤集,需要昂貴的標註成本,且無法泛化到未見過的視覺概念。
- 🔧 對比式語言—影像預訓練(CLIP)共同訓練影像編碼器與文字編碼器,在大批次資料中透過對稱交叉熵損失最大化配對圖文之間的餘弦相似度。
- 📈 在不使用 ImageNet 128 萬筆標註樣本的情況下,以零樣本方式打平全監督 ResNet-50 在 ImageNet 上的 76.2% top-1 準確率。
摘要
現今最先進的電腦視覺系統大多被訓練來預測一組固定的預設物件類別。這種受限的監督形式限制了它們的泛化能力與實用性,因為指定任何其他視覺概念都需要額外的標註資料。直接從與影像相關的原始文字中學習是一種極具前景的替代方案,能善用更廣泛的監督來源。我們證明,預測哪段圖說與哪張影像相符這項簡單的預訓練任務,是一種高效且具擴展性的方法,能從網路上收集的 4 億個(影像,文字)配對資料集中從頭開始學習 SOTA 影像表徵。預訓練完成後,自然語言可用於引用已學到的視覺概念(或描述新概念),進而實現模型在下游任務上的零樣本轉移(zero-shot transfer)。我們透過在超過 30 個現有電腦視覺資料集上進行基準測試來研究此方法的效能,涵蓋 OCR、影片動作辨識、地理定位以及多種細粒度物件分類等任務。此模型在大多數任務上均能展現出非凡的轉移能力,且往往無需任何特定資料集的訓練,即可與全監督基準模型相媲美。例如,我們在 ImageNet 上達成了與原始 ResNet-50 相同的零樣本準確率,而無需使用其訓練所用的 128 萬個訓練樣本中的任何一個。我們在 https://github.com/OpenAI/CLIP 開源了程式碼與預訓練模型權重。
英文原文摘要
State-of-the-art computer vision systems are trained to predict a fixed set of predetermined object categories. This restricted form of supervision limits their generality and usability since additional labeled data is needed to specify any other visual concept. Learning directly from raw text about images is a promising alternative which leverages a much broader source of supervision. We demonstrate that the simple pre-training task of predicting which caption goes with which image is an efficient and scalable way to learn SOTA image representations from scratch on a dataset of 400 million (image, text) pairs collected from the internet. After pre-training, natural language is used to reference learned visual concepts (or describe new ones) enabling zero-shot transfer of the model to downstream tasks. We study the performance of this approach by benchmarking on over 30 different existing computer vision datasets, spanning tasks such as OCR, action recognition in videos, geo-localization, and many types of fine-grained object classification. The model transfers non-trivially to most tasks and is often competitive with a fully supervised baseline without the need for any dataset specific training. For instance, we match the accuracy of the original ResNet-50 on ImageNet zero-shot without needing to use any of the 1.28 million training examples it was trained on. We release our code and pre-trained model weights at https://github.com/OpenAI/CLIP.
論文解讀
問題與動機
最先進的視覺模型傳統上依賴群眾標註的閉集分類基準測試,例如 ImageNet。這種固定標籤的範式限制了它們的實用性:要辨識目標詞彙庫之外的任何概念,都必須收集並標註新的資料。相反地,自然語言處理領域已成功轉向直接在網路規模文字上進行與任務無關的預訓練(例如 GPT-3),藉由 text-to-text 介面產生具備零樣本泛化能力的模型。作者探討了在網路規模資料上擴大自然語言監督,是否能產生廣泛泛化至各項電腦視覺任務的視覺表徵,而無需針對特定資料集進行監督式微調。
核心概念
- 從自然語言監督中學習:將網路爬取的(影像,文字)配對作為訓練訊號,將視覺特徵直接與豐富的自然語言語意連結,擺脫了 N 選 1 的離散類別標註。
- 提高效率的對比學習:預測精確的文字 token(生成式圖說生成)在計算上極為浪費。將目標制定為對比匹配任務——在 minibatch 中區分真實的(影像,文字)配對與錯誤配對——被證實比詞袋預測(bag-of-words)的樣本效率高出 4 倍,且遠快於生成式建模。
- 作為動態線性分類器的零樣本分類:目標資料集的類別透過文字編碼器嵌入為特徵向量。這些向量作為零樣本線性分類器的權重,與影像嵌入進行比對。
- 提示工程與提示集成(Prompt Engineering and Ensembling):零樣本效能對提示語法與上下文非常敏感。將類別名稱包裝在完整句子中(例如
"A photo of a {label}.")並跨多種提示變體進行集成,可使 ImageNet 上的零樣本轉移提升約 5 個百分點。
方法(含核心公式)
CLIP 透過在 4 億個網路爬取的(影像,文字)配對資料集(WIT)上共同訓練影像編碼器 和文字編碼器 ,構建出多模態嵌入空間。
特徵提取與投影: 給定一個由 個圖文對組成的 minibatch ,其中 ,各編碼器透過線性投影 和 將輸入映射至共同維度 :
相似度矩陣: Logit 透過縮放餘弦相似度計算: 其中 為可學習的溫度參數,初始值設為 0.07,並經過截斷以防止 logit 縮放超過 100。
對稱交叉熵損失: 總損失為 配對矩陣上影像至文字與文字至影像分類損失的平均值:
零樣本推論: 對於具有 個類別的資料集,文字模板(例如
"a photo of a {class_name}")會被編碼為 。對於測試影像 ,預測機率為:
結果(含最重要數據)
- 零樣本 ImageNet:CLIP(ViT-L/14@336px)在 ImageNet 上達到 76.2% top-1 準確率(以及 95% top-5 準確率)的零樣本表現,在不使用其 128 萬張訓練影像的情況下打平原始監督式 ResNet-50。
- 零樣本對比監督基準:在評估的 27 個下游資料集中,零樣本 CLIP 在其中 16 個資料集上的表現優於建立在標準 ResNet-50 特徵之上的全監督線性探針(linear probe)。
- 少樣本(Few-Shot)比較:零樣本 CLIP 達到與在完全相同的 CLIP 特徵表徵上訓練的 4-shot 線性分類器相同的平均效能,並能抗衡 16-shot BiT-M ResNet-152x2 模型。
- 線性探針表徵品質:當使用監督式線性探針評估凍結的特徵表徵時,CLIP 的最佳模型在 27 個資料集中的 21 個上擊敗了 Noisy Student EfficientNet-L2,在 OCR、影片動作辨識(Kinetics-700:相較 ResNet-50 提升 +14.5%)和地理定位方面尤為出色。
- 分佈偏移穩健性(Distribution Shift Robustness):在 7 個自然分佈偏移資料集(ImageNetV2、ImageNet-R、ImageNet-A、ObjectNet 等)上,與標準 ImageNet 訓練的模型相比,零樣本 CLIP 將分佈內與分佈外準確率之間的落差減少了高達 75%。
限制與開放研究問題
- 抽象、特化與系統性任務:零樣本 CLIP 在計數任務(CLEVRCounts)、細粒度微小差異任務(FGVCAircraft、Flowers102)以及網路文字不常見的特定領域任務(PatchCamelyon 上的腫瘤檢測;KITTI 上的距離估計)上表現相當吃力。
- 真正的分佈外資料:在 MNIST 手寫數字上,零樣本 CLIP 僅取得 88% 的準確率——表現不如在原始像素上訓練的邏輯迴歸——這表明 CLIP 只是規避而非真正解決了分佈外脆弱性問題。
- 運算資源需求:若要依據現有的擴展趨勢,純粹以零樣本方式在所有基準測試上全面達到監督式的 SOTA 水準,估計需要將運算量擴大 1000 倍。
- 社會偏見與貶損:使用 FairFace 基準進行探測時發現了嚴重的差異性失效模式,包含偏向黑人族群與青少年的非人類及犯罪相關錯誤分類,且這些問題高度受到類別標籤設計與閾值設定的影響。
關鍵術語
- CLIP
- 對比式語言—影像預訓練;一種利用成對網路資料,以對比學習目標共同訓練影像與文字編碼器的架構。
- WIT
- WebImageText;OpenAI 利用 50 萬個查詢詞從網際網路來源收集並整理的 4 億個(影像,文字)配對資料集。
- Zero-Shot Transfer (零樣本轉移)
- 在不更新目標任務參數的情況下,使用自然語言概念描述在未見過的資料集和任務上評估模型。
- Prompt Engineering (提示工程)
- 將類別名稱組織成自然語言上下文模板(例如「A photo of a {label}, a type of pet.」),以彌合預訓練文字的分佈差距。
- Prompt Ensembling (提示集成)
- 在計算分類相似度之前,將同一個類別從多個不同上下文提示生成的文字嵌入向量進行平均。
- Effective Robustness (有效穩健性)
- 在分佈外準確率上取得超出標準基準擴展趨勢由分佈內表現所預期的改善。
- Linear Probe (線性探針)
- 在凍結的預訓練特徵表徵之上訓練的監督式、正則化線性分類層,用於衡量特徵表徵的品質。
- Attention Pooling (注意力池化)
- 針對 ResNet 主幹網路修改的空間池化層,以全局平均池化特徵為條件的單層多頭 QKV 注意力機制實現。
常見問題
為什麼 CLIP 選擇對比學習而非影像圖說生成(Image Caption Generation)?
生成式圖說模型試圖預測精確的文字 token,由於圖說的文字多樣性極大,這需要耗費龐大的運算資源。對比學習則解決將完整文字與影像進行配對這項更簡單的代理任務,被證實比詞袋預測的運算效率高出 4 倍,且比生成模型高出一個數量級以上。
零樣本分類在 CLIP 測試時是如何運作的?
每個候選類別標籤都會被放入文字提示模板中,並透過文字編碼器進行嵌入。這些經過正規化的嵌入向量作為動態線性分類器的固定權重向量,藉由餘弦相似度和 softmax 與正規化後的影像嵌入進行評估。
為什麼零樣本 CLIP 比監督式 ImageNet 模型對分佈偏移更具穩健性?
監督式 ImageNet 模型往往會記住特定於 ImageNet 視覺分佈的假性關聯與表面統計特徵。零樣本 CLIP 避免了在目標訓練分佈上微調,因此在 ImageNet-A、ObjectNet 和 ImageNet-R 等分佈偏移資料集上進行評估時,大幅縮小了效能落差。
訓練集重疊是否解釋了 CLIP 優異的零樣本基準測試結果?
否。資料去重分析發現,在 35 個下游資料集中重疊的中位數僅為 2.2%。移除重疊樣本後,評估準確率的變化鮮少超過 0.1%,其中檢測到的最大改善幅度在 Birdsnap 上也僅為 0.6%。
本頁解讀由 AI 根據論文生成,可能有錯誤;細節請以原文為準。