復(fù)旦邱錫鵬組最新綜述:A Survey of Transformers!

極市導(dǎo)讀
本文將重心放在對(duì)Transformer結(jié)構(gòu)(模塊級(jí)別和架構(gòu)級(jí)別)的改良上,包括對(duì)Attention模塊的諸多改良、各種位置表示方法等。 >>加入極市CV技術(shù)交流群,走在計(jì)算機(jī)視覺的最前沿
轉(zhuǎn)眼Transformer模型被提出了4年了。依靠弱歸納偏置、易于并行的結(jié)構(gòu),Transformer已經(jīng)成為了NLP領(lǐng)域的寵兒,并且最近在CV等領(lǐng)域的潛能也在逐漸被挖掘。盡管Transformer已經(jīng)被證明有很好的通用性,但它也存在一些明顯的問題,例如:
1、核心模塊自注意力對(duì)輸入序列長度有平方級(jí)別的復(fù)雜度,這使得Transformer對(duì)長序列應(yīng)用不友好。例如一個(gè)簡單的32x32圖像展開就會(huì)包括1024個(gè)輸入元素,一個(gè)長文檔文本序列可能有成千上萬個(gè)字,因此有大量現(xiàn)有工作提出了輕量化的注意力變體(例如稀疏注意力),或者采用“分而治之”的思路(例如引入recurrence);
2、與卷積網(wǎng)絡(luò)和循環(huán)網(wǎng)絡(luò)不同,Transformer結(jié)構(gòu)幾乎沒有什么歸納偏置。這個(gè)性質(zhì)雖然帶來很強(qiáng)的通用性,但在小數(shù)據(jù)上卻有更高的過擬合風(fēng)險(xiǎn),因此可能需要引入結(jié)構(gòu)先驗(yàn)、正則化,或者使用無監(jiān)督預(yù)訓(xùn)練。
近幾年涌現(xiàn)了很多Transformer的變體,各自從不同的角度來改良Transformer,使其在計(jì)算上或者資源需求上更友好,或者修改Transformer的部分模塊機(jī)制增大模型容量等等。但是,很多剛接觸Transformer的研究人員很難直觀地了解現(xiàn)有的Transformer變體,例如前陣子有讀者私信我問Transformer相關(guān)的問題,聊了一會(huì)兒才發(fā)現(xiàn)他不知道Transformer中的layer norm也有pre-LN和post-LN兩種變體。因此,我們認(rèn)為很有必要對(duì)現(xiàn)有的各種Transformer變體做一次整理,于是產(chǎn)生了一篇survey ,現(xiàn)在掛在了arxiv上:http://arxiv.org/abs/2106.04554。
在這篇文章之前,已經(jīng)有一些很好的對(duì)PTM和Transformer應(yīng)用的綜述(例如https//arxiv.org/abs/2003.082711和https://arxiv.org/abs/2012.12556),在這篇文章中,我們把重心放在對(duì)Transformer結(jié)構(gòu)(模塊級(jí)別和架構(gòu)級(jí)別)的改良上,包括對(duì)Attention模塊的諸多改良、各種位置表示方法等。

值得一提的是,Google去年放出過一篇關(guān)于Transformer的綜述(Efficient Transformers: A Survey,https://arxiv.org/abs/2009.06732),主要關(guān)注了Attention模塊的效率問題(這在我們的綜述中也覆蓋了)。雖然是一篇很好的review,但是筆者認(rèn)為它對(duì)于Attention變體的分類有一些模糊,例如作者將Compressive Transformer、ETC和Longformer這一類工作、以及Memory Compressed Attention都?xì)w類為一種基于Memory的改進(jìn),筆者認(rèn)為memory在這幾種方法中各自有不同的含義,使用Memory來概括很難捕捉到方法的本質(zhì)。我們的文章對(duì)這幾個(gè)方法有不同的分類:
1、Compressive Transformer是一種“分而治之”的架構(gòu)級(jí)別的改進(jìn),相當(dāng)于在Transformer基礎(chǔ)上添加了一個(gè)wrapper來增大有效上下文的長度;
2、ETC和Longformer一類方法是一種稀疏注意力的改進(jìn),主要思路是對(duì)標(biāo)準(zhǔn)注意力代表的全鏈接二分圖的連接作稀疏化的處理;
3、Set Transformer、Memory Compressed Attention、Linformer對(duì)應(yīng)一種對(duì)KV memory壓縮的方法,思路是縮短注意力矩陣的寬。
我們希望這篇文章可以給關(guān)注Transformer的同行、朋友們提供一個(gè)參考,歡迎大家閱讀:
http://arxiv.org/abs/2106.04554
如果有任何疑問或?qū)氋F建議,歡迎通過評(píng)論、郵件或私信反饋給我們。
如果覺得有用,就請(qǐng)分享到朋友圈吧!
公眾號(hào)后臺(tái)回復(fù)“79”獲取CVPR 2021:TransT 直播鏈接~

# CV技術(shù)社群邀請(qǐng)函 #
備注:姓名-學(xué)校/公司-研究方向-城市(如:小極-北大-目標(biāo)檢測(cè)-深圳)
即可申請(qǐng)加入極市目標(biāo)檢測(cè)/圖像分割/工業(yè)檢測(cè)/人臉/醫(yī)學(xué)影像/3D/SLAM/自動(dòng)駕駛/超分辨率/姿態(tài)估計(jì)/ReID/GAN/圖像增強(qiáng)/OCR/視頻理解等技術(shù)交流群
每月大咖直播分享、真實(shí)項(xiàng)目需求對(duì)接、求職內(nèi)推、算法競(jìng)賽、干貨資訊匯總、與 10000+來自港科大、北大、清華、中科院、CMU、騰訊、百度等名校名企視覺開發(fā)者互動(dòng)交流~

