女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Transformers在計(jì)算機(jī)視覺領(lǐng)域的應(yīng)用情況

新機(jī)器視覺 ? 來源:AI科技評(píng)論 ? 作者:AI科技評(píng)論 ? 2021-06-18 11:08 ? 次閱讀

CV(計(jì)算機(jī)視覺)領(lǐng)域一直是引領(lǐng)機(jī)器學(xué)習(xí)的弄潮兒。近年來更是因?yàn)門ransformers模型的橫空出世而掀起了一陣腥風(fēng)血雨。小編今天就帶大家初步認(rèn)識(shí)一下這位初來乍到的CV當(dāng)紅炸子雞~本文主要介紹Transformers背后的技術(shù)思想,Transformers在計(jì)算機(jī)視覺領(lǐng)域的應(yīng)用情況、最新動(dòng)態(tài)以及該架構(gòu)相對(duì)于CNN的優(yōu)勢(shì)。讀完這篇文章之后,你將能知道:

為什么Transformers模型在NLP自然語(yǔ)言處理任務(wù)中能夠力壓群雄,變成SOTA模型的必備組件之一。

Transformers模型的計(jì)算原理。

為什么說Transformers是對(duì)CNN的當(dāng)頭棒喝,Transformers是怎么針對(duì)CNN的各種局限性進(jìn)行補(bǔ)全的。

計(jì)算機(jī)視覺領(lǐng)域的最新模型是如何應(yīng)用Transformers提升自己的。

1

長(zhǎng)期依賴和計(jì)算效率之間的權(quán)衡取舍

在自然語(yǔ)言處理領(lǐng)域中,一個(gè)重要的技術(shù)基礎(chǔ)就是創(chuàng)建合理的Embedding。Embedding是NLP系統(tǒng)的根基,一個(gè)好的Embedding需要能夠?qū)⒃嘉谋局斜M可能多的語(yǔ)義片段進(jìn)行有效編碼。

這些語(yǔ)義信息其實(shí)并不只是代表一個(gè)詞的定義跟含義,很多時(shí)候是需要結(jié)合上下文進(jìn)行聯(lián)系的。比如當(dāng)我們孤零零的得到一個(gè)詞“快”的時(shí)候,我們不知道它是指Fast還是Almost,基于這樣沒有上下文的孤零零的單詞的Embedding,很多時(shí)候是盲目并且沒有意義的。又比如說這句話:“Transformers特別牛,因?yàn)樗诤芏囗?xiàng)目中都能大幅提高模型的性能”。

讀了這句話,我們知道文中的“它”是指Transformers,但是如果沒有這一整句話的承載,而是孤零零的給你一個(gè)詞“它”,估計(jì)誰(shuí)都不曉得這個(gè)家伙指代的是誰(shuí),那如此Embedding出來的結(jié)果也將毫無意義。

一個(gè)好的機(jī)器學(xué)習(xí)模型應(yīng)該能夠準(zhǔn)確表達(dá)單詞之間的依賴關(guān)系,不論是在超大型的文本中,還是在比較簡(jiǎn)短的文字片段中都是如此。

這就像是一個(gè)伏筆,作者在第一章中埋下了一個(gè)伏筆,隔了四五十頁(yè)之后再次提及起它的時(shí)候,讀者會(huì)覺得這是神來之筆,因?yàn)槟軌蚵?lián)系起它和當(dāng)前文字之間的關(guān)系。機(jī)器學(xué)習(xí)模型也應(yīng)該具備這種記憶能力,以及超遠(yuǎn)文字之間的記錄和依賴表達(dá)能力?;蛘邠Q句話說,好的模型應(yīng)該具有“長(zhǎng)期依賴性的編碼能力”。

在詳細(xì)介紹Transformers之前,我們先來梳理一下NLP領(lǐng)域在Transformers技術(shù)誕生之前所面臨的問題,尤其是在挖掘數(shù)據(jù)之間的長(zhǎng)期依賴性時(shí)所面臨的問題。

循環(huán)神經(jīng)網(wǎng)絡(luò)的問題

在NLP領(lǐng)域中,以LSTMs和GRU為代表的循環(huán)神經(jīng)網(wǎng)絡(luò)曾經(jīng)風(fēng)光無限,它們的結(jié)構(gòu)內(nèi)部有極其巧妙的長(zhǎng)期狀態(tài)輸入和輸出,能夠讓模型從文本中提取豐富的上下文語(yǔ)義。

它們的工作方式都是串行的,一次處理一個(gè)單詞或者輸入單元,并且設(shè)計(jì)了記憶結(jié)構(gòu)來存儲(chǔ)已經(jīng)看到的內(nèi)容的抽象特征,這些長(zhǎng)時(shí)的抽象信息能夠在之后的數(shù)據(jù)處理中幫助模型理解當(dāng)前輸入,或者處理長(zhǎng)期的數(shù)據(jù)依賴,從而將前文中的語(yǔ)義信息添加到當(dāng)前的結(jié)果輸出之中。

RNN結(jié)構(gòu)能夠?qū)⑶拔牡男畔懭氲接洃浤K之中,是因?yàn)樗鼈儍?nèi)部有各種門結(jié)構(gòu)。其中輸入門能夠讓神經(jīng)網(wǎng)絡(luò)有選擇性的記錄一些長(zhǎng)時(shí)的有效信息,遺忘門會(huì)有針對(duì)性地拋棄一些無關(guān)的冗余信息,更新門還可以讓網(wǎng)絡(luò)對(duì)自身當(dāng)前的狀態(tài)根據(jù)輸入進(jìn)行實(shí)時(shí)更新。

相對(duì)于普通RNNs來說,加入了各種門結(jié)構(gòu)的LSTM和GRU更受世人的喜愛,這是因?yàn)樗鼈兡軌蚪鉀Q梯度爆炸和梯度消失的問題,模型的魯棒性得到了明顯提升。

梯度爆炸和梯度消失是長(zhǎng)久以來困擾RNNs的一大問題。LSTM和GRU能夠利用自身模型結(jié)構(gòu)給梯度“續(xù)命”,有效追蹤序列數(shù)據(jù)中相當(dāng)長(zhǎng)時(shí)間數(shù)據(jù)之間的依賴關(guān)系。

但是我們還是發(fā)現(xiàn),這種序列式的網(wǎng)絡(luò),以及將有效信息存儲(chǔ)到各個(gè)零散的神經(jīng)元的方式,并不能有效地保存那些超長(zhǎng)的數(shù)據(jù)依賴。

此外,序列式的網(wǎng)絡(luò)結(jié)構(gòu)也難以讓LSTM和GRU網(wǎng)絡(luò)有效地進(jìn)行擴(kuò)展和并行化計(jì)算。

因?yàn)槊恳粋€(gè)前向的傳遞都是依賴于前一個(gè)時(shí)間步的處理結(jié)果,每得到一個(gè)輸入,模型只能給出一步的輸出。也就是每一步的計(jì)算都只能顧及當(dāng)前輸出,得到一個(gè)Embedding結(jié)果。

卷積神經(jīng)網(wǎng)絡(luò)的問題

卷積神經(jīng)網(wǎng)絡(luò)也是 NLP 系統(tǒng)中的???,尤其是對(duì)于那些使用 GPUs 訓(xùn)練的模型任務(wù)來說更是如此。這是因?yàn)?CNNs 和 GPU 的組合能夠天然耦合兩者在計(jì)算伸縮性和高效性上的特點(diǎn),所以二者逐漸成為形影不離的好基友。

CNNs 常被用在圖像特征提取上,與此類似,在 NLP領(lǐng)域中,網(wǎng)絡(luò)也會(huì)利用 CNNs 的一維濾波器從文本中提取有效信息,此時(shí)的文本就對(duì)應(yīng)地以一維時(shí)間序列的形式進(jìn)行表示了。

所以圖像處理中使用2D CNN , NLP 中就使用1D CNN ~CNN的感受野(就是CNN能夠看到的局部信息大?。┦怯删矸e核/濾波器的尺寸,以及濾波器的通道數(shù)所決定的。

增加卷積核的尺寸或者濾波器的通道數(shù)會(huì)增加模型的大小,也會(huì)讓模型的復(fù)雜度大幅增加。這也許會(huì)導(dǎo)致梯度消失的問題,從而引發(fā)讓整個(gè)網(wǎng)絡(luò)無法訓(xùn)練收斂的嚴(yán)重后果。

為解決這個(gè)問題,殘差連接 Residual connections 和空洞卷積 Dilated Convolutions 應(yīng)運(yùn)而生。它們能夠在一定程度上增強(qiáng)梯度的傳播深度,從而在一定程度上擴(kuò)大模型的感受野(后面的層就能看到更多的局部信息了嘛)。

但是,卷積神經(jīng)網(wǎng)絡(luò)畢竟只是關(guān)注局部信息的網(wǎng)絡(luò)結(jié)構(gòu),它的這種計(jì)算機(jī)制導(dǎo)致了它在文本信息處理上難以捕捉和存儲(chǔ)長(zhǎng)距離的依賴信息。人們一方面想擴(kuò)大卷積核、增加通道數(shù)來捕捉長(zhǎng)期依賴,一方面還害怕由于擴(kuò)大模型所導(dǎo)致的維度災(zāi)難。

2

Transformers橫空出世

扯了半天終于要介紹我們今天的主角——Transformer 了。2017年的時(shí)候 Transformer 橫空出世,當(dāng)時(shí)的它被定位成一種簡(jiǎn)單并且可擴(kuò)展的自然語(yǔ)言翻譯方法,并且很快被應(yīng)用到各類 NLP 任務(wù)之中,逐漸成為 SOTA 模型中的必備成員(比如 GLUE 、SQuAD 或者 sWAG )。

但并不是所有任務(wù)都是有能夠喂飽深度網(wǎng)絡(luò)的數(shù)據(jù)資本的,所以很多任務(wù)都會(huì)基于上述SOTA模型公開版本的半成品進(jìn)行微調(diào)( finetuning ),從而適配自己的任務(wù)。

這種做法十分常見并且有效,因?yàn)樗蠓墓?jié)省了訓(xùn)練所需的數(shù)據(jù)量。這些模型有的已經(jīng)有著數(shù)十億個(gè)參數(shù)量了,但是似乎還沒有達(dá)到性能的天花板。

隨著模型參數(shù)量的增加,模型的結(jié)果還會(huì)持續(xù)上升,模型由此而表現(xiàn)的一些新特性和學(xué)習(xí)到的新知識(shí)也會(huì)越來越豐富,具體可以看GPT3的文章。

Transformer模型

當(dāng)我們給定了一個(gè)包含N個(gè)單詞的文本輸入時(shí),對(duì)于每個(gè)單詞W,Transformers會(huì)為文本中的每個(gè)單詞Wn創(chuàng)建N個(gè)權(quán)重,每個(gè)權(quán)重的值取決于單詞在上下文中的依賴關(guān)系(Wn),以此來表示正在處理的單詞的語(yǔ)義信息W。下圖表述了這個(gè)想法,其中,藍(lán)色線條的顏色深度表示分配給某個(gè)單詞的注意力Attention的權(quán)重。

09cd5468-cf69-11eb-9e57-12bb97331649.png

在這里,上面一行表示正在處理的單詞,下面一行表示用作上下文的單詞(注意,有些單詞是相同的,但是如果它們正在被處理或被用于處理另一個(gè)單詞的時(shí)候,它們的地位和處理方式將會(huì)有所差異)。

請(qǐng)注意,上面一行的“They ”、“Cool”或者“Efficient”有很高的權(quán)重指向“Transformer”,因?yàn)檫@確實(shí)是它們所引用的目標(biāo)單詞。然后,這些權(quán)重被用來組合來自每對(duì)單詞的值,并為每個(gè)單詞( W )生成一個(gè)更新的嵌入,該單詞( W )現(xiàn)在包含關(guān)于這些重要單詞( Wn )在特定單詞( W )上下文中的信息。

其實(shí),在這些現(xiàn)象的背后,transformers 使用了 self attention 即自注意力技術(shù)來計(jì)算這些更新的 Embedding 。

Self Attention 是一種計(jì)算效率很高的模型技術(shù),它可以并行地更新輸入文本中每個(gè)單詞的嵌入結(jié)果。

自注意力機(jī)制

假設(shè)我們得到了一段輸入文本,并且從文本中的單詞嵌入 W 開始。我們需要找到一種 Embedding 方法來度量同一文本中其他單詞嵌入相對(duì)于 W 的重要度,并合并它們的信息來創(chuàng)建更新的嵌入W‘。

自注意力機(jī)制會(huì)將 Embedding 輸入文本中的每個(gè)單詞線性投影到三個(gè)不同的空間中,從而產(chǎn)生三種新的表示形式:即查詢query、鍵key和值value。這些新的嵌入將用于獲得一個(gè)得分,該得分將代表 W 和每個(gè)Wn 之間的依賴性(如果 W 依賴于 W’,則結(jié)果為絕對(duì)值很高的正數(shù),如果 W 與W‘不相關(guān),則結(jié)果為絕對(duì)值很高的負(fù)值)。

這個(gè)分?jǐn)?shù)將被用來組合來自不同 Wn 單詞嵌入的信息,為單詞 W 創(chuàng)建更新的嵌入W’。下面這張圖展示了如何計(jì)算兩個(gè)單詞之間的 Attention 得分:

09df0258-cf69-11eb-9e57-12bb97331649.png

作者親繪

圖中的藍(lán)色線段表示來自第一個(gè)單詞 W 的信息流,棕色線代表來自第二個(gè)單詞 Wn 的信息流。每個(gè)單詞的嵌入將乘以一個(gè)鍵和一個(gè)查詢矩陣,從而得到每個(gè)單詞的查詢值和鍵值。

為了計(jì)算 W 和 Wn 之間的分?jǐn)?shù),將W(W_q)的查詢嵌入發(fā)送到 Wn ( Wn_k )的密鑰嵌入,并為兩個(gè)張量使用點(diǎn)積相乘。點(diǎn)積的結(jié)果值是它與自身之間的得分,表示 W 相對(duì)于 Wn 的依賴程度。需要注意的是,我們還可以將第二個(gè)單詞作為W,以及將第一個(gè)單詞作為 Wn 。

這樣的話,我們就可以另外計(jì)算出一個(gè)分?jǐn)?shù),表示第二個(gè)單詞對(duì)第一個(gè)單詞的依賴性。我們甚至可以用同一個(gè)詞 W 和 Wn 來計(jì)算這個(gè)詞本身對(duì)它的定義有多重要~很巧妙吧。

自注意力機(jī)制能夠計(jì)算文本中每對(duì)單詞之間的注意力得分。該得分將被軟最大化處理 (Softmaxed),也就是將其轉(zhuǎn)換為0到1之間的權(quán)重。下圖展示了如何使用這些權(quán)重獲得每個(gè)單詞的最終詞嵌入:

09f75e20-cf69-11eb-9e57-12bb97331649.png

作者親繪

請(qǐng)注意,每個(gè)單詞的 Embedding 現(xiàn)在需要乘以第三個(gè)矩陣來生成它們的值表示。這個(gè)結(jié)果將用于計(jì)算每個(gè)單詞的最終嵌入。對(duì)于每個(gè)單詞 W,文本 Wn 中每個(gè)單詞的計(jì)算權(quán)重將乘以其相應(yīng)的值表示(Wn_v),然后將它們相加。這個(gè)加權(quán)和的結(jié)果將用于更新嵌入單詞 W (圖中用e1和e1表示)。

這里我們只是簡(jiǎn)單的對(duì)計(jì)算過程進(jìn)行介紹,如果有小伙伴對(duì)其中的具體過程感興趣的話,可以看看 Jay Alamar 下面的這篇文章:https://jalammar.github.io/illustrated-transformer/。

3

卷積歸納偏差

卷積網(wǎng)絡(luò)模型多年來在計(jì)算機(jī)視覺領(lǐng)域是絕對(duì)的大哥大,獲得了無數(shù)的成功,收獲了無數(shù)的好評(píng)。GPU 作為 CNN 的好基友,由于可以進(jìn)行有效的并行卷積計(jì)算而身價(jià)瘋長(zhǎng)。此外,CNN 也會(huì)在圖像特征提取的過程中提供適當(dāng)?shù)臍w納偏差( Inductive Biases )。CNN 中的卷積運(yùn)算由于使用了兩個(gè)重要的空間約束,從而有助于視覺特征的學(xué)習(xí)和提取:

由于 CNN 權(quán)重共享機(jī)制,卷積層所提取的特征便具有平移不變性,它們對(duì)特征的全局位置不感冒,而只在乎這些決定性的特征是否存在。

由于卷積算子的性質(zhì),所以卷積的特征圖具有局部敏感性,也就是每次卷積操作只會(huì)考慮原始數(shù)據(jù)的一小部分的局部信息。

正是由于此,CNN 的歸納偏差缺乏對(duì)輸入數(shù)據(jù)本身的整體把握。

它很擅長(zhǎng)提取局部的有效信息,但是沒能提取全局?jǐn)?shù)據(jù)之間的長(zhǎng)距離特征。比如,當(dāng)我們使用 CNN 去訓(xùn)練一個(gè)人臉識(shí)別模型時(shí),卷積層可以有效的提取出眼睛大小、鼻子翹不翹、嘴巴顏色等小器官的特征,但是無法將他們聯(lián)系起來,無法形成“眼鏡在鼻子上”、“嘴巴在眼睛下面”的這種長(zhǎng)距離的特征。

因?yàn)槊總€(gè)卷積核都很局部,沒辦法同時(shí)處理這么多個(gè)特征。為了提取和跟蹤這些原始數(shù)據(jù)中的長(zhǎng)相關(guān)特征,模型需要擴(kuò)大自己的感受野,這就需要使用一些更大的卷積核,以及更深的卷積。但是由此會(huì)帶來計(jì)算效率的大幅下降,會(huì)讓模型的復(fù)雜度劇烈上升,甚至?xí)屇P彤a(chǎn)生維度災(zāi)難從而無法收斂訓(xùn)練。

這種顧此失彼的權(quán)衡是不是聽起來很耳熟?

4

計(jì)算機(jī)視覺領(lǐng)域中的Transformers

受到 Transformer 論文中使用自注意力機(jī)制來挖掘文本中的長(zhǎng)距離相關(guān)依賴的啟發(fā),很多計(jì)算機(jī)視覺領(lǐng)域的任務(wù)提出使用自注意力機(jī)制來有效克服卷積歸納偏差所帶來的局限性。

希望能夠?qū)⑦@種 NLP 領(lǐng)域中的技術(shù)思想借鑒到視覺領(lǐng)域中,從而提取長(zhǎng)時(shí)依賴關(guān)系。功夫不負(fù)有心人,Transformer為視覺領(lǐng)域帶來了革新性的變化,它讓視覺領(lǐng)域中目標(biāo)檢測(cè)、視頻分類、圖像分類和圖像生成等多個(gè)領(lǐng)域有了長(zhǎng)足的進(jìn)步。

這些應(yīng)用了 Transformer 技術(shù)的模型有的識(shí)別能達(dá)到甚至超越該領(lǐng)域 SOTA 解決方案的效果。

更讓人興奮的是,這些技術(shù)有的甚至干脆拋棄了 CNN,直接單單使用自注意力機(jī)制來構(gòu)建網(wǎng)絡(luò)。

目標(biāo)檢測(cè):https://arxiv.org/pdf/2005.12872.pdf

視頻分類:https://arxiv.org/pdf/1711.07971.pdf

圖像分類:https://arxiv.org/pdf/1802.05751.pdf

圖像生成:https://arxiv.org/pdf/2010.11929.pdf

這些使用了自注意力機(jī)制所生成的視覺特征圖不會(huì)像卷積計(jì)算一樣具有空間限制。相反,它們能夠根據(jù)任務(wù)目標(biāo)和網(wǎng)絡(luò)中該層的位置來學(xué)習(xí)最合適的歸納偏差。

研究表明,在模型的前幾層中使用自注意力機(jī)制可以學(xué)習(xí)到類似于卷積計(jì)算的結(jié)果。

如果小伙伴想具體了解這一領(lǐng)域最近的動(dòng)態(tài),可以查看這篇由 Gbriel | lharco

撰寫的推文:https://arxiv.org/pdf/1911.03584.pdf

自注意力層

計(jì)算機(jī)視覺領(lǐng)域中的自注意力層的輸入是特征圖,目的是計(jì)算每對(duì)特征之間的注意力權(quán)重,從而得到一個(gè)更新的特征映射。其中每個(gè)位置都包含關(guān)于同一圖像中任何其他特征的信息。

這些層可以直接代替卷積或與卷積層相結(jié)合,它們也能夠處理比常規(guī)卷積更大的感受野。因此這些模型能夠獲取空間上具有長(zhǎng)距離間隔的特征之間的依賴關(guān)系。

比如Non-local Netorks和Attention Augmented Convolutional Networks文章中所述,自注意力層最基本的實(shí)現(xiàn)方法是將輸入特征圖的空間維度展開成為一系列的 HWxF 的特征序列,其中 HW 表示二維空間維度, F 表示特征圖的深度。自注意力層可以直接作用在序列數(shù)據(jù)上來獲取更新后的特征圖表示。

想具體了解這兩篇論文的小伙伴請(qǐng)戳這里Non-local Netorks:https://arxiv.org/pdf/1711.07971.pdfAttention Augmented Convolutional Networks:https://arxiv.org/abs/1904.09925

但是實(shí)際上,對(duì)于高分辨率的輸入來說,自注意力機(jī)制層的計(jì)算量很大,因此它只適用于較小的空間維度輸入的數(shù)據(jù)場(chǎng)景。

很多工作也注意到這個(gè)問題,并且提出了一些解決方案,比如Axial DeepLab,它們沿著兩個(gè)空間軸順序計(jì)算Attention,而不是像普通自注意力機(jī)制一樣直接處理整個(gè)圖像數(shù)據(jù),這使得計(jì)算更加高效。還有一些其他的優(yōu)化解決方案,比如只處理較小的特征圖Patch,而不是處理整個(gè)特征圖空間。

但是這樣操作的代價(jià)是感受野比較小,這是在論文Stand-Alone Self-Attention in Vision Models中提出的。但是即便這樣的感受野受到了限制,也比卷積操作的卷積核的感受野要大得多。

Axial DeepLab:https://arxiv.org/pdf/2003.07853.pdfStand-Alone Self-Attention in Vision Models:https://arxiv.org/pdf/1906.05909.pdf

當(dāng)我們?cè)谀P偷淖詈笠粚邮怯米宰⒁饬C(jī)制來將前面的各種卷積層相融合的時(shí)候,就可以得到最優(yōu)的模型結(jié)果。

事實(shí)上,在實(shí)驗(yàn)中我們會(huì)發(fā)現(xiàn),自注意力機(jī)制和卷積層是很類似的,尤其是在網(wǎng)絡(luò)的前若干層中自注意力機(jī)制學(xué)習(xí)到的歸納偏差和卷積層學(xué)習(xí)到的特征圖十分類似。

視覺Transformers

現(xiàn)有的計(jì)算機(jī)視覺工作中,除了那些將自注意力機(jī)制加入卷積流程中的工作之外,其他的方法的計(jì)算都僅僅依賴于自注意力層,并且只使用了最原始的Transformer的編碼-解碼器結(jié)構(gòu)。

當(dāng)我們的模型參數(shù)量能夠設(shè)置得很大,并且數(shù)據(jù)量充足的時(shí)候,這些模型在圖像分類任務(wù)/目標(biāo)檢測(cè)等任務(wù)中所表現(xiàn)出來的效果能夠達(dá)到SOTA的程度,甚至有時(shí)候更好。

同時(shí)這些模型的結(jié)構(gòu)會(huì)更加簡(jiǎn)單,訓(xùn)練速度還會(huì)更快。最原始的Transorfer的編碼-解碼器結(jié)構(gòu):https://arxiv.org/pdf/1706.03762.pdf

接下來我們簡(jiǎn)要的介紹三篇重要的相關(guān)論文,它們都在自己的網(wǎng)絡(luò)中使用了Transformer結(jié)構(gòu)。

1、Image Transormer這篇論文提出了一種在ImageNet數(shù)據(jù)集上的全新SOTA圖像生成器,并且在超高分辨率任務(wù)上取得了很好的效果。

論文地址:https://arxiv.org/pdf/1802.05751.pdf

在這篇論文中,他們將圖像生成任務(wù)視作一個(gè)自回歸問題,圖片中的每個(gè)新像素僅基于圖像中先前已知的像素值生成。在每一個(gè)特征生成過程中,自注意力機(jī)制將m個(gè)展開后的特征圖作為上下文,從而生成未知的像素值。為了讓這些像素能夠匹配自注意力層的輸入,論文使用1D卷積將每個(gè)RGB值轉(zhuǎn)換為d維張量,并將局部的上下文特征圖的m維特征展平到一維。下圖就是這個(gè)模型的示意圖:

0a0e9b94-cf69-11eb-9e57-12bb97331649.png

原文中3.2節(jié)圖1的自注意力結(jié)構(gòu)

在圖中,q表示要更新的像素embedding,它與內(nèi)存中的像素m的所有其他嵌入相乘,使用查詢和鍵矩陣(Wq和Wk)生成一個(gè)得分,然后對(duì)該得分進(jìn)行softmax操作,并將其作為矩陣Wv的權(quán)重。

算法最終將該Embedding加到原始的q Embedding中,從而得到最終的結(jié)果。在圖中,p表示添加到每個(gè)輸入嵌入中的位置編碼。這種編碼是從每個(gè)像素的坐標(biāo)生成的。

需要注意的是,通過使用自注意力機(jī)制,算法可以并行地預(yù)測(cè)多個(gè)像素值,因?yàn)樗惴ㄒ呀?jīng)知道輸入圖像的原始像素值,并且用于計(jì)算自我注意的Patch機(jī)制,可以處理比卷積層更高的感受野。但是在評(píng)估的操作過程中,由于圖像的生成依賴于每個(gè)像素的鄰居的值,因此只能單步執(zhí)行。

2、DETRDETR是DEtection TRansformer的縮寫,它是一種結(jié)構(gòu)較為簡(jiǎn)單的模型,在目標(biāo)檢測(cè)領(lǐng)域中達(dá)到了SOTA的高度。論文地址:https://arxiv.org/pdf/2005.12872.pdf模型的結(jié)構(gòu)如下圖所示:

0a2516f8-cf69-11eb-9e57-12bb97331649.png

原文中3.2節(jié)圖2的DETR結(jié)構(gòu)圖

它搭配著使用了自注意力機(jī)制,以及從卷積神經(jīng)網(wǎng)絡(luò)提取的視覺特征。在CNN的主干模塊中,算法計(jì)算的特征圖會(huì)首先被展平,也就是說,如果特征地圖具有形狀(h x w x d),則展平結(jié)果將具有形狀(hw x d)。每一個(gè)維度中都添加了一個(gè)可學(xué)習(xí)的位置編碼,而編碼器也會(huì)將結(jié)果序列作為輸入。

編碼器使用多個(gè)自注意力塊來組合不同Embedding之間的特征。處理后的Embedding被傳遞到一個(gè)解碼器模塊。這個(gè)解碼器模塊使用可學(xué)習(xí)的Embedding作為對(duì)象查詢來處理所有視覺特征,從而生成一個(gè)嵌入。在該嵌入中,執(zhí)行目標(biāo)檢測(cè)所需的所有信息都被編碼。

每個(gè)輸出被輸入到一個(gè)全連接層中,該網(wǎng)絡(luò)模塊將輸出一個(gè)包含元素c和b的五維張量,其中c表示該元素的預(yù)測(cè)類個(gè)數(shù),b表示邊界框的坐標(biāo)(分別是一維和四維)。

c的值分配給一個(gè)“no object”標(biāo)記,它表示沒有找到任何有意義的檢測(cè)的目標(biāo)查詢,所以說模型將不考慮它的坐標(biāo)。

這個(gè)模型能夠并行計(jì)算單個(gè)圖像的多個(gè)檢測(cè)。但是,它可以檢測(cè)到的目標(biāo)個(gè)數(shù)受制于所使用的目標(biāo)查詢次數(shù)。

論文的作者在文中表示,該模型在大尺寸目標(biāo)識(shí)別的圖像處理方面優(yōu)于SOTA模型。他們認(rèn)為這都?xì)w功于自注意力機(jī)制為模型提供了更高的感受野。

3、Vision Transformer(ViT)這個(gè)模型是圖像識(shí)別領(lǐng)域的代表性SOTA工作,它僅僅使用了自注意力機(jī)制,而且達(dá)到了目前的SOTA識(shí)別率。論文地址:https://arxiv.org/pdf/2010.11929.pdf下面是論文模型的一個(gè)例子:

0a68ee6e-cf69-11eb-9e57-12bb97331649.png

原文3.1節(jié)圖1中的ViT結(jié)構(gòu)

該模型的輸入是從像素大小為PxP的塊中提取的平坦像素向量。每個(gè)輸入像素被送入一個(gè)線性投影層,這個(gè)層將產(chǎn)生文中所謂的“補(bǔ)丁嵌入(Patch embeddings)”。

注意,在序列的開頭處,模型附加了一個(gè)額外可學(xué)習(xí)的嵌入。這種嵌入處于自我注意更新之后,用于預(yù)測(cè)輸入圖像的類別。

每個(gè)Embedding中也添加了一個(gè)可學(xué)習(xí)的位置Embedding。分類只需將一個(gè) MLP 頭放在Transformer結(jié)構(gòu)的頂部,具體的插入位置就是在我們添加到序列中的額外可學(xué)習(xí)的Embedding位置。

此外,本文還給出了一種混合的模型結(jié)構(gòu)。它使用ResNet早期的特征映射作為Transformer的輸入,而沒有選擇輸入投影的圖像塊。

通過對(duì) Transformer 模型和 CNN 骨干網(wǎng)絡(luò)端到端的訓(xùn)練,模型能夠達(dá)到最好的圖像分類結(jié)果。

5

位置編碼

由于Transformers需要學(xué)習(xí)一個(gè)具體的任務(wù),也就是需要學(xué)習(xí)該任務(wù)的歸納偏差,所以只要進(jìn)行模型訓(xùn)練,就都會(huì)對(duì)該網(wǎng)絡(luò)產(chǎn)生一定的收益。

換句話說,任何可以包含在模型輸入中的歸納偏差都將有助于模型的學(xué)習(xí),并能夠用于改善結(jié)果。當(dāng)使用Transformers的更新功能時(shí),輸入序列的順序信息會(huì)被丟失。

對(duì)于Transformer模型來說,這個(gè)順序信息是很難被學(xué)習(xí)到的,或者說有的時(shí)候根本不可能被學(xué)習(xí)到。

所以它所做的就是將一個(gè)位置表示聚合到模型的輸入嵌入中。這種位置編碼可以通過學(xué)習(xí)獲得,也可以從一個(gè)固定的函數(shù)中取樣得到。

雖然聚合操作通常只在輸入到模型的嵌入處完成,但是我們其實(shí)是可以改變這個(gè)聚合操作的位置。在計(jì)算機(jī)視覺中,這些嵌入既可以表示特征在一維平坦序列中的位置,也可以表示特征的二維位置。在該領(lǐng)域中,大家普遍認(rèn)為位置編碼是很有效的一種信息。

它們由可學(xué)習(xí)的若干個(gè)嵌入組成。

這些嵌入特征不用編碼全局的位置,轉(zhuǎn)而去學(xué)習(xí)各個(gè)編碼特征之間的相對(duì)距離從而達(dá)到更好的效果。

6

結(jié)論

Transformers結(jié)構(gòu)解決了一個(gè)自然語(yǔ)言處理和計(jì)算機(jī)視覺領(lǐng)域都困擾已久的問題——長(zhǎng)期依賴。

Transformer模型是一種很簡(jiǎn)單但是很靈活的方法,如果將其抽象為一系列嵌入,那么它可以應(yīng)用于任何類型的數(shù)據(jù)。卷積具有平移不變性、局部敏感性,也缺少對(duì)圖像的整體感知和宏觀理解。

Transformers可用于卷積網(wǎng)絡(luò)中,從而讓網(wǎng)絡(luò)學(xué)習(xí)處對(duì)圖像的全局理解。

Transformers能夠用于計(jì)算機(jī)視覺領(lǐng)域,就算我們把原來卷積網(wǎng)絡(luò)中的卷積層都拋棄,只使用Transformers層的時(shí)候,模型也能得到SOTA的結(jié)果。

責(zé)任編輯:lq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴

原文標(biāo)題:Transformer在CV界火的原因是?

文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    計(jì)算機(jī)視覺有哪些優(yōu)缺點(diǎn)

    計(jì)算機(jī)視覺作為人工智能領(lǐng)域的一個(gè)重要分支,旨在使計(jì)算機(jī)能夠像人類一樣理解和解釋圖像和視頻中的信息。這一技術(shù)的發(fā)展不僅推動(dòng)了多個(gè)行業(yè)的變革,也帶來了諸多優(yōu)勢(shì),但同時(shí)也伴隨著一些挑戰(zhàn)和局限
    的頭像 發(fā)表于 08-14 09:49 ?1800次閱讀

    機(jī)器視覺計(jì)算機(jī)視覺有什么區(qū)別

    機(jī)器視覺計(jì)算機(jī)視覺是兩個(gè)密切相關(guān)但又有所區(qū)別的概念。 一、定義 機(jī)器視覺 機(jī)器視覺,又稱為計(jì)算機(jī)
    的頭像 發(fā)表于 07-16 10:23 ?973次閱讀

    計(jì)算機(jī)視覺的五大技術(shù)

    計(jì)算機(jī)視覺作為深度學(xué)習(xí)領(lǐng)域最熱門的研究方向之一,其技術(shù)涵蓋了多個(gè)方面,為人工智能的發(fā)展開拓了廣闊的道路。以下是對(duì)計(jì)算機(jī)視覺五大技術(shù)的詳細(xì)解析
    的頭像 發(fā)表于 07-10 18:26 ?2230次閱讀

    計(jì)算機(jī)視覺與機(jī)器視覺的區(qū)別與聯(lián)系

    隨著人工智能技術(shù)的飛速發(fā)展,計(jì)算機(jī)視覺和機(jī)器視覺作為該領(lǐng)域的兩個(gè)重要分支,逐漸引起了廣泛關(guān)注。盡管兩者名稱上有所相似,但實(shí)際上它們
    的頭像 發(fā)表于 07-10 18:24 ?2396次閱讀

    計(jì)算機(jī)視覺的工作原理和應(yīng)用

    計(jì)算機(jī)視覺(Computer Vision,簡(jiǎn)稱CV)是一門跨學(xué)科的研究領(lǐng)域,它利用計(jì)算機(jī)和數(shù)學(xué)算法來模擬人類視覺系統(tǒng)對(duì)圖像和視頻進(jìn)行識(shí)別、
    的頭像 發(fā)表于 07-10 18:24 ?3086次閱讀

    機(jī)器人視覺計(jì)算機(jī)視覺的區(qū)別與聯(lián)系

    機(jī)器人視覺計(jì)算機(jī)視覺是兩個(gè)密切相關(guān)但又有所區(qū)別的領(lǐng)域。 1. 引言 在當(dāng)今科技迅猛發(fā)展的時(shí)代,機(jī)器人和計(jì)算機(jī)
    的頭像 發(fā)表于 07-09 09:27 ?1080次閱讀

    計(jì)算機(jī)視覺與人工智能的關(guān)系是什么

    引言 計(jì)算機(jī)視覺是一門研究如何使計(jì)算機(jī)能夠理解和解釋視覺信息的學(xué)科。它涉及到圖像處理、模式識(shí)別、機(jī)器學(xué)習(xí)等多個(gè)領(lǐng)域的知識(shí)。人工智能則是研究如
    的頭像 發(fā)表于 07-09 09:25 ?1164次閱讀

    計(jì)算機(jī)視覺與智能感知是干嘛的

    感知(Intelligent Perception)則是計(jì)算機(jī)視覺的一個(gè)分支,它強(qiáng)調(diào)計(jì)算機(jī)處理視覺信息時(shí)的智能性和自適應(yīng)性。 隨著
    的頭像 發(fā)表于 07-09 09:23 ?1607次閱讀

    計(jì)算機(jī)視覺和機(jī)器視覺區(qū)別在哪

    計(jì)算機(jī)視覺和機(jī)器視覺是兩個(gè)密切相關(guān)但又有明顯區(qū)別的領(lǐng)域。 一、定義 計(jì)算機(jī)視覺
    的頭像 發(fā)表于 07-09 09:22 ?781次閱讀

    計(jì)算機(jī)視覺和圖像處理的區(qū)別和聯(lián)系

    計(jì)算機(jī)視覺和圖像處理是兩個(gè)密切相關(guān)但又有明顯區(qū)別的領(lǐng)域。 1. 基本概念 1.1 計(jì)算機(jī)視覺 計(jì)算機(jī)
    的頭像 發(fā)表于 07-09 09:16 ?2083次閱讀

    計(jì)算機(jī)視覺人工智能領(lǐng)域有哪些主要應(yīng)用?

    計(jì)算機(jī)視覺是人工智能領(lǐng)域的一個(gè)重要分支,它主要研究如何讓計(jì)算機(jī)能夠像人類一樣理解和處理圖像和視頻數(shù)據(jù)。計(jì)算機(jī)
    的頭像 發(fā)表于 07-09 09:14 ?2518次閱讀

    計(jì)算機(jī)視覺屬于人工智能嗎

    屬于,計(jì)算機(jī)視覺是人工智能領(lǐng)域的一個(gè)重要分支。 引言 計(jì)算機(jī)視覺是一門研究如何使計(jì)算機(jī)具有
    的頭像 發(fā)表于 07-09 09:11 ?1955次閱讀

    深度學(xué)習(xí)計(jì)算機(jī)視覺領(lǐng)域的應(yīng)用

    隨著人工智能技術(shù)的飛速發(fā)展,深度學(xué)習(xí)作為其中的核心技術(shù)之一,已經(jīng)計(jì)算機(jī)視覺領(lǐng)域取得了顯著的成果。計(jì)算機(jī)
    的頭像 發(fā)表于 07-01 11:38 ?1526次閱讀

    機(jī)器視覺計(jì)算機(jī)視覺的區(qū)別

    人工智能和自動(dòng)化技術(shù)的快速發(fā)展中,機(jī)器視覺(Machine Vision, MV)和計(jì)算機(jī)視覺(Computer Vision, CV)作為兩個(gè)重要的分支
    的頭像 發(fā)表于 06-06 17:24 ?2168次閱讀

    計(jì)算機(jī)視覺的主要研究方向

    計(jì)算機(jī)視覺(Computer Vision, CV)作為人工智能領(lǐng)域的一個(gè)重要分支,致力于使計(jì)算機(jī)能夠像人眼一樣理解和解釋圖像和視頻中的信息。隨著深度學(xué)習(xí)、大數(shù)據(jù)等技術(shù)的快速發(fā)展,
    的頭像 發(fā)表于 06-06 17:17 ?1646次閱讀