柚子快報(bào)激活碼778899分享:VIT論文閱讀
柚子快報(bào)激活碼778899分享:VIT論文閱讀
論文地址:https://arxiv.org/pdf/2010.11929.pdf
VIT論文閱讀
摘要INTRODUCTION結(jié)論RELATEDWORKMETHOD1.VISIONTRANSFORMER(VIT)整體流程消融實(shí)驗(yàn)HEAD TYPE AND CLASSTOKENpoisitional embedding
整體過(guò)程公式Inductive biasHybrid Architecture
2.FINE-TUNINGANDHIGHERRESOLUTION
實(shí)驗(yàn)
摘要
雖然transformer已經(jīng)是nlp領(lǐng)域的標(biāo)準(zhǔn),但是transformer來(lái)做cv很有限,cv中跟attention跟cnn一起使用,或者cnn中的某些卷積替換成attention,整體結(jié)構(gòu)不變。文章提出,直接使用transformer也可以在圖像,尤其在大數(shù)據(jù)做訓(xùn)練再遷移到中小數(shù)據(jù)集。同時(shí),transformer需要更少的訓(xùn)練資源。(2500天TPU V3)
INTRODUCTION
nlp領(lǐng)域的應(yīng)用,transformer已經(jīng)是必選模型。主流方式:在大規(guī)模數(shù)據(jù)集做預(yù)訓(xùn)練再去特定領(lǐng)域小數(shù)據(jù)集做微調(diào)(Bert)
transformer應(yīng)用到cv難點(diǎn):2d圖片變成1d數(shù)據(jù)
self-attention應(yīng)用到cv領(lǐng)域,
1.featuremap當(dāng)做transformer輸入,
2.孤立自注意力:通過(guò)局部小窗口,軸注意力:2d矩陣拆分為2個(gè)1d,先在高度維度做self-attention,再寬度維度做self-attention
2理論上高速,沒(méi)有在硬件上加速,模型不夠大。
直接應(yīng)用transformer在圖片領(lǐng)域,不做修改。把圖片分成幾個(gè)patches,每個(gè)patch通過(guò)fc layer得到一個(gè)linear embedding,將其輸入給transformer。圖片塊類(lèi)似nlp里面的tokens。訓(xùn)練使用有監(jiān)督
在中規(guī)模數(shù)據(jù)集,vit缺少歸納偏置(locality, translation equivariance:f(g(x))=g(f(x)),效果較弱。在大規(guī)模預(yù)訓(xùn)練,在下游任務(wù)去vit就可以取得相近或者更好的結(jié)果。
結(jié)論
抽圖片塊、位置編碼之外沒(méi)有引入歸納偏置。圖像序列的圖像塊直接做transformer,簡(jiǎn)單、擴(kuò)展性好的策略與大規(guī)模數(shù)據(jù)結(jié)合,達(dá)到了很好的效果。
未來(lái)方向:transformer在檢測(cè)、分割的應(yīng)用,自監(jiān)督的預(yù)訓(xùn)練方式
模型變大達(dá)到更好的結(jié)果。
RELATEDWORK
transformer在nlp的應(yīng)用:
BERT:denoising self-supervised(完形填空)
GPT:language modeling (next word pre)
在cv應(yīng)用:
如果每個(gè)像素點(diǎn)當(dāng)做一個(gè)元素,倆倆自注意力,平方復(fù)雜度難以應(yīng)用
1.local neighborhoods
2.sparse transformer,稀疏點(diǎn)做自注意力
3.應(yīng)用到不同大小block,或者按軸做自注意機(jī)制
需要用復(fù)雜工程加速算子
transformer和cnn結(jié)合:涵蓋各領(lǐng)域
與之相似的工作:
1.Jean-Baptiste Cordonnier,Andreas Loukas,and Martin Jaggi. On the relationship between self-attention and convolutional layers. In ICLR, 2020.
2.iGPT:生成性模型,也使用transformer。微調(diào)后性能72%
3.其他相似工作:大數(shù)據(jù)集預(yù)訓(xùn)練;數(shù)據(jù)集ImageNet-21k、JFT-300M
METHOD
模型設(shè)計(jì)貼近transformer原理,好處:直接使用nlp的transformer架構(gòu)
1.VISIONTRANSFORMER(VIT)
整體流程
1.圖分成patch,變成序列
X: 224x224,使用patch size = 16, N= HW/P^2
得到196個(gè)圖像塊 ==> 16x16x3
2.每個(gè)patch經(jīng)過(guò)linear projection線(xiàn)性投射層(全連接層E)得到特征,即patch embedding。加上位置編碼信息position embedding。
3.借鑒bert extra learnable embedding,加入特殊字符cls ,圖像*代替,class embedding。token輸入transformer encoder
E: 768x768, D = 768,第一個(gè)768是圖像計(jì)算得來(lái)16x16x8
X * E = 196 x 768 x 768 x 768 = img: 196 x 768 = 197 x 768, 矩陣乘法
cls: 1 x 768
加入位置編碼信息,sum
4.多頭自注意力機(jī)制,mlp head 分類(lèi)頭
12個(gè)頭:768 / 12 = 64
197x64 197x64 197x64 12個(gè)頭輸出拼接:197 x 768
k q v
layer norm: 197 x 768
mlp: 放到4倍:197 x 3072 縮小投射———> 197 x 768
消融實(shí)驗(yàn)
HEAD TYPE AND CLASSTOKEN
class token 當(dāng)做圖像的整體特征,token輸出接mlp,使用tanh為激活函數(shù)做預(yù)測(cè)。
(ResNet)圖像全局向量特征:feature map ——> globally average-pooling
transformer
兩種方式都可以,vit用class token,盡可能跟transformer保持一致
poisitional embedding
1D: nlp常用的 1 2 3 4 ... 9 維度 D
2D: D/2
D/2 11 12 13
21 22 23
31 32 33
維度D/2的向量表示X-embedding, D/2的向量表示Y-embedding
contact成維度D --> 2d poisitional embedding
Relative position embedding:絕對(duì)距離、相對(duì)距離
實(shí)驗(yàn)結(jié)果:都可以
ptach-level而不是pixel-level,圖像塊較小,獲取小塊之間相對(duì)位置較容易,因此采用不同位置編碼差異不大。
本文中vision transformer采用class token 跟1d position embedding(對(duì)標(biāo)準(zhǔn)的transformer不做過(guò)多改動(dòng))
整體過(guò)程公式
Inductive bias
cnn: locality、translation equivariance,模型每一層均體現(xiàn),先驗(yàn)知識(shí)貫穿
vit:mlp layer是局部、平移等變性,self-attention全局,圖片2d信息基本沒(méi)有使用。位置編碼也是隨機(jī)初始化,沒(méi)有攜帶任何2d信息。(缺少偏置,中小數(shù)據(jù)集效果不如cnn)
Hybrid Architecture
使用CNN進(jìn)行預(yù)處理
圖片通過(guò)CNN獲取feature map,拉直后跟全連接層操作
2.FINE-TUNINGANDHIGHERRESOLUTION
微調(diào)用較大尺寸圖像,得到更好結(jié)果。
使用預(yù)訓(xùn)練好的vision transformer,當(dāng)用更大尺寸圖像,patch size 保持一致,序列長(zhǎng)度增加,提前預(yù)訓(xùn)練好的位置編碼失效。
進(jìn)行2d插值解決該問(wèn)題(臨時(shí)解決方案,微調(diào)局限性),2D interpolation
實(shí)驗(yàn)
對(duì)比resnet、vit和hybrid表征學(xué)習(xí)能力,不同大小數(shù)據(jù)集做預(yù)訓(xùn)練,在很多數(shù)據(jù)集做測(cè)試。vit在大多數(shù)數(shù)據(jù)集上訓(xùn)練時(shí)間短效果好
數(shù)據(jù)集:imagetNet、imagetNet-21k、JFT
下游任務(wù)分類(lèi):CIFAR-10/100、Oxford-IIIT Pets、,OxfordFlowers-102
ViT-L/16:Large模型,patch size 16x16
序列長(zhǎng)度跟patch size成反比,模型用更小的patch size時(shí),計(jì)算代價(jià)更大
bit:cnn中較大的模型
noisy student:image net中表現(xiàn)最好 ,pseudo-label進(jìn)行self training (偽標(biāo)簽)
vit訓(xùn)練時(shí)間更短
1.小數(shù)據(jù)集cnn效果好
2.數(shù)據(jù)規(guī)模大于ImageNet-21K,vit效果較好
使用預(yù)訓(xùn)練模型當(dāng)做特征提取器,做5-shot
原因:缺少歸納偏置,小數(shù)據(jù)集效果較cnn差;
平均注意力距離
自監(jiān)督:masked patch,將圖片分成幾個(gè)patch,隨機(jī)涂抹幾個(gè)patch;
柚子快報(bào)激活碼778899分享:VIT論文閱讀
相關(guān)閱讀
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。
轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。