一.研究背景
對比性圖像語言預訓練模型(CLIP)在近期展現(xiàn)出了強大的視覺領域遷移能力,可以在一個全新的下游數(shù)據(jù)集上進行 zero-shot 圖像識別。為了進一步提升 CLIP 的遷移性能,現(xiàn)有方法使用了 few-shot 的設置,例如 CoOp 和 CLIP-Adapter,即提供了少量下游數(shù)據(jù)集的訓練數(shù)據(jù),使得 CLIP 能夠更好的針對不同的視覺場景做出調整。但是,這種額外的訓練步驟會帶來不小的時間和空間資源開銷,一定程度上影響了 CLIP 固有的快速知識遷移能力。因此,我們提出了 Tip-Adapter,一種不需要額外下游訓練并且能很大程度提升 CLIP 準確率的 few-shot 圖像分類方法?;诖耍覀冇痔岢隽艘环N僅需要少量微調就能達到 state-of-the-art 性能的方案:Tip-Adapter-F,實現(xiàn)了效率和性能的最佳折中。如下表 1 所示,Tip-Adapter 不需要任何訓練時間,即可以將 CLIP 在 ImageNet 數(shù)據(jù)集提升 + 1.7% 準確率(Accuracy),而 Tip-Adapter-F 僅需要之前方案十分之一的訓練時間(Epochs,Time),就可以實現(xiàn)現(xiàn)有最佳的分類性能。
表 1:不同方案在 ImageNet 數(shù)據(jù)集上 16-shot 的圖像分類準確率和訓練時間的比較
二.研究方法
1.Tip-Adapter
Tip-Adapter 的整體網(wǎng)絡結構如下圖 1 所示,對于給定的 few-shot 訓練數(shù)據(jù)集和標簽,我們借助 CLIP 通過一個非訓練的方案來構建一個緩存模型(Cache Model),它存儲了來自下游訓練數(shù)據(jù)的分類知識;在測試時,Tip-Adapter 通過將 Cache Model 的預測和原始 CLIP 的預測進行線性加和,來得到更強的最終分類結果。
詳細的來說,我們使用 CLIP 預訓練好的視覺編碼器(Visual Encoder)來提取 few-shot 訓練集所有圖片的特征,作為 Cache Model 的 Keys;并且將對應的圖片標簽轉化為 one-hot 編碼的形式,作為 Cache Model 的 Values。這種 Key-Value Cache Model 的構建方法由于使用的是已經預訓練好的 Visual Encoder,所以不需要任何訓練開銷;并且考慮到 few-shot 訓練集中,每一個類別只含有少量的圖片(1~16 shots),Cache Model 也幾乎不會占用額外的顯存開銷,參考表一中的 GPU Mem. 指標。
對于一張測試圖片,我們首先會利用 CLIP 的 Visual Encoder 來得到它的特征,再將該特征視為 Query 去 Cache Model 中進行下游 few-shot 數(shù)據(jù)的知識檢索。由于 Keys 也是由 CLIP 的 Visual Encoder 提取得倒,因此和測試圖片特征 Query 同源,我們可以直接計算它們之間的余弦相似度得倒一個 Key-Query 的鄰接矩陣,此矩陣可以看作是每一個對應 Value 的權重。因此,我們可以計算 Values 的加權和來得到該測試圖像通過檢索 Cache Model 得到的分類預測。除此之外,我們還可以通過將測試圖片特征和 CLIP 的 Textual Encoder 文本特征進行匹配,來得到 CLIP 的 zero-shot 預測。通過將兩者進行線性加權求和,我們得到了最終的分類預測,該預測既蘊含了 CLIP 預訓練的圖像語言對比性知識,也結合了下游新數(shù)據(jù)集的 few-shot 知識,因此可以實現(xiàn)更強的圖像分類準確率。
基于 Tip-Adapter 的網(wǎng)絡結構,我們可以進一步將 Cache Model 中的 Keys 部分變?yōu)閷W習參數(shù),即可以通過訓練來進行更新,該方案為 Tip-Adapter-F。借助已經構建好的 Cache Model,Tip-Adapter-F 僅需要現(xiàn)有 CLIP-Adapter 十分之一的訓練回合數(shù)和時間,就可以實現(xiàn)更高的性能,如表一所示。
圖 1:Tip-Adapter 和 Tip-Adapter-F 的網(wǎng)絡流程圖
2.Tip-Adapter 和現(xiàn)有方案的區(qū)別與聯(lián)系
對比 CLIP-Adapter,如圖 2 所示,Tip-Adapter 存儲的 Keys 和 Values 其實可以分別對應于 CLIP-Adapter 中 adapter 結構的兩個線性層,只不過前者是不需要訓練來構建的,后者是隨機初始化,然后需要訓練來學習最佳的參數(shù)。
圖 2:Tip-Adapter 相比于 CLIP-Adapter
對比現(xiàn)有的其他構建 Cache Model 的方案,如圖 3 所示,Tip-Adapter 的 Cache Model 可以看作是一種多模態(tài)的視覺語言 Cache。因為 CLIP 的 Textual Encoder 輸出的特征可以看作是文本的 Key-Value,即相當于測試圖片特征作為 Query,分別在視覺和文本的 Cache 中檢索知識,相對于現(xiàn)有的僅含視覺 Cache 的方案,Tip-Adapter 能夠利用多模態(tài)知識得到更強的識別性能。
圖 3:Tip-Adapter 相比于其他構建 Cache Model 的方案
三.實驗結果
1. 在 ImageNet 的分類準確率
圖 4 和表 2 比較了 Tip-Adapter、Tip-Adapter-F 和現(xiàn)有各個方案在 1、2、4、8、16 shots 的 few-shot 圖像分類準確率;表 3 比較了 16-shot ImageNet 數(shù)據(jù)集上使用不同 CLIP 的 Visual Encoder 的準確率比較??梢?,我們的兩種方案都在資源開銷很小的情況下,達到了非常卓越的性能。
圖 4 和表 2:ImageNet 數(shù)據(jù)集上不同方法的 1~16-shot 圖像分類準確率比較
表 5:16-shot ImageNet 上不同 CLIP 的 Visual Encoder 的圖像分類準確率比較
2. 在另外 10 個圖像分類數(shù)據(jù)集
如圖 5 所示,我們提供了另外 10 個圖像分類數(shù)據(jù)集的準確率比較結果,分別是 StandfordCars,UCF101,Caltech101,F(xiàn)lowers102,SUN397,DTD,EuroSAT,F(xiàn)GVCAircraft,OxfordPets 和 Food101。如圖所示,我們的 Tip-Adapter-F 均取得了最高的識別準確率。
圖 5:另外 10 個數(shù)據(jù)集上不同方法的 1~16-shot 圖像分類準確率比較
3. 領域泛化能力的測評
我們也測試了 Tip-Adapter 和 Tip-Adapter-F 在領域泛化(Domain Generalization)方面的表現(xiàn)。如表 6 所示,我們的兩種方案都表現(xiàn)出了很強的魯棒性以及特征遷移能力。
四.結論
本文提出了 Tip-Adapter,一種可以免于訓練的將 CLIP 用于下游 few-shot 圖像分類的方案。Tip-Adapter 通過構建一個 Key-Value Cache Model,來作為測試圖片 Query 的知識檢索庫,并通過融合 Cache Model 的預測和 CLIP 的 zero-shot 預測,來得到更強的識別性能。我們期望 Tip-Adapter 可以啟發(fā)更多預訓練模型高效遷移的后續(xù)工作。
-
圖像識別
+關注
關注
9文章
514瀏覽量
38149 -
Clip
+關注
關注
0文章
30瀏覽量
6611 -
訓練模型
+關注
關注
1文章
35瀏覽量
3781
原文標題:ECCV 2022 | 無需下游訓練,Tip-Adapter大幅提升CLIP圖像分類準確率
文章出處:【微信號:CVSCHOOL,微信公眾號:OpenCV學堂】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論