淺談視覺Transformer技術
1.標準Transformer
2.視覺Transformer
標準Transformer編碼器的輸入是一維embedding,為了能將該編碼器應用于圖像任務,將尺寸為(H,W,C)的圖像切分成尺寸為(P,P,C)的圖像塊,一共得到 個圖像塊,reshape后得到尺寸為(
,
的輸入embedding,這系列操作將2維圖像數據轉為1維,使得標準Transformer編碼器能對其進行處理,編碼后將特征送入MLP模塊進行分類,這就是標準的ViT(Vision Transformer),ViT在大型數據集上預訓練,針對較小的下游任務作微調訓練。在ImageNet數據集上取得了88.55% Top-1的準確率,超越了ResNet系列模型,打破了CNN(卷積神經網絡)在視覺任務上的壟斷,相較于CNN具有更強泛化能力。但是,該模型在小規模數據集的表現不如CNN,并且隨著圖像尺寸的增加,Vision Transformer的計算量會成指數倍的增長,于是有2種流派來提升Vision Transformer的效果。
一種是改良派,該流派認為Transformer缺少CNN的歸納偏置(平移不變性,局部相關性),改良Transformer編碼器結構,在其中加入圖像任務的歸納偏置。標準的ViT模型的輸出特征是扁平的,其尺寸為輸入圖像尺寸的1/16,這種維度的特征對于分類任務是可以接受的,對于檢測或者分割任務通常需要{1/4,1/8,1/16,1/32}尺度的特征,而大尺度的特征圖也會極大增加Self-Attention模塊的計算量,所以必須在引入多尺度特征的同時降低計算量。Pyramid Vision Transformer(PVT)[3]提出了Spatial-Reduction Attention(SRA)層,如下圖左SRA與MHA一樣接收query Q、key K和value V作為輸入,不同之處在于SRA在attention操作之前降低了K和V的特征維度,這可以將計算和內存的開銷減少為之前的
另一種是大模型派,在NLP領域,模型越大,模型對于零樣本和少樣本任務的能力越強。增加ViT模型的參數規模和訓練數據,再結合自監督訓練,也能提升各種下游任務的表現。ViT比CNN需要更多的訓練數據,自監督學習的設計顯得尤為重要。BEiT-3[5]模型架構基于40層的ViT-Giant組成,如下圖左模型共包含19億個參數。在預訓練數據上,BEiT-3 在單模態(即圖像與文本)和多模態數據(即圖像-文本對)上通過統一的掩碼-預測任務進行 BEiT-3 預訓練。預訓練期間,會隨機掩蓋一定百分比的文本字符或像素塊,模型通過被訓練恢復掩蓋的文本字符或其視覺符號,來學習不同模態的表示及不同模態間的對齊,BEiT-3在分類、檢測、分割多個基準上刷新了記錄。22年12月智源開源了簡單又強大的視覺基礎模型EVA[6],將最強語義學習與最強幾何結構學習相結合,在ImageNet分類、COCO檢測分割、Kinetics視頻分類等廣泛的視覺感知任務中取得當前最強性能。EVA,如下圖右將ViT規模擴大到十億參數(1-Billion)ViT-Giant進行訓練,CLIP[7]模型輸入為完整的圖像,而EVA模型的輸入為有遮蓋的圖像,訓練過程是讓EVA模型遮蓋部分的輸出去重構CLIP模型對應位置的輸出。
3.總結
ViT技術使得目標檢測、圖像識別、自動駕駛等領域都得到了質的飛躍,通過在預訓練ViT基礎上微調下游任務,企業可以快速地將AI技術應用到實際生產和業務中,創造出更多的商業價值。筆者在微調ViT-Giant檢測模型時發現,batchszie設置為1時顯存達到25GB以上,P40(22GB)顯卡已經無法容納微調訓練,只能將代碼及數據遷移至V100云主機得以繼續訓練,大型ViT的預訓練則需要更大的算力,這導致只有擁有大量算力的資源和數據的企業才能夠開發和應用大型ViT模型,從而加深產業的技術壁壘。ViT技術給AI產業帶來了巨大的影響,其影響將持續深遠。
參考文獻
[1]Attention is all you need
[2]AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE
[3]Pyramid Vision Transformer: A Versatile Backbone for Dense Prediction without Convolutions
[4]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
[5]Image as a Foreign Language: BEIT Pretraining for All Vision and Vision-Language Tasks
[6]EVA: Exploring the Limits of Masked Visual Representation Learning at Scale
[7]Contrastive Language-Image Pre-Training
