CLIP論文閱讀筆記

論文CLIP: Learning Transferable Visual Models From Natural Language Supervision

Abstract

相比於監督式的CV學習方法,直接對圖文對學習有可能提供更多監督信息。在互聯網上收集4億圖文對的體量下,通過簡單的預訓練任務(預測圖文對的對應關係),便可以達到sota的圖像表徵能力。預訓練後,自然語言被用來參考學習到的視覺概念,用於將模型遷移到下游任務實現zero-shot. 對比了30多個CV任務,在zero-shot的性能達到了resnet-50在imagenet訓練的性能。

1. Introduction and Motivating Work

GPT-3等成果表明,現代預訓練方法在互聯網規模的文本集中的總體監督能力超過了高質量的人類標記NLP數據集。
在CV領域,使用自然語言作爲圖像表徵學習的監督信息的工作比較少,可能是因爲其性能較低。而一些弱監督的方法提升了性能,在Instagram圖像上預測ImageNet相關的標籤是一項有效的預訓練任務,在imagenet調參可獲得5%的性能提升。
2.方法
方法核心是學習自然語言蘊含的感知信息
數據集收集:互聯網4億圖文對,儘可能涵蓋更多的視覺概念,使用50萬個搜索詞,爲了類間平衡,規定每個搜索詞對應的圖像數量不超過2萬個圖文對。數據集的詞語數量與訓練GPT-2使用的數據集WebText體量相近。
高效預訓練:sotaCV方法對於GPU的消耗是很驚人的,成功的從自然語言中學習到對圖像的監督信息的核心和訓練效率。
原始方法:類似 VirTex,協同訓練一個CNN和文本transformer,實現圖像描述任務(image caption)。但是發現效率比較低,63M的文本transformer編碼器的訓練效率是CNN的3倍。可能的原因是圖像描述任務太難了。將代理任務設計爲基於對比學習,預測哪個文本與圖像是一對。預訓練過程是協調訓練圖像編碼器和文本編碼器,最大化對應圖像-文本對embedding的餘弦相似度。是一種跨模態的對比學習。 對餘弦相似度優化symmetric cross entropy loss 。
模型細節:圖像編碼器和文本編碼器都是從頭訓練,因爲數據集足夠大。移除了非線性投射,使用線性投射。 移除 the text transformation function tu, 簡化the image transformation function tv. 圖像數據增強只用了 random square crop from resized images。對比學習損失函數中的溫度係數直接從訓練中優化,而不是超參數。
模型設計:圖像編碼器有兩種結構。
一種是resnet-50,改進的細節包括使用resnet-50D和 antialiased
rect-2 blur pooling,global average pooling layer 改成了 attention pooling mechanism。
第二種結構是ViT,區別只在於 adding
an additional layer normalization to the combined patch
and position embeddings。
文本編碼器:As a base size we use a 63M-parameter 12-layer 512-wide model with 8 attention heads.
對於模型規模的變化,只對text encoder的寬度進行變化,沒改變深度,因爲實驗發現CLIP的性能與對文本encoder的能力不敏感。
模型訓練:5個resnet網絡和3個vit
resnet:resnet-50,resnet-101,RN50x4, RN50x16, andRN50x64
ViT:ViT-B/32, a ViT-B/16, and a ViT-L/14
mini-batch:32768
訓練資源:最大的resnetRN50x64, took 18 days to train on 592 V100 GPUs while
the largest Vision Transformer took 12 days on 256 V100
GPUs.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章