0
本文作者: camel | 2020-04-29 21:06 | 專題:ICLR 2019 |
雷鋒網(wǎng)AI科技評(píng)論:繼昨天的「知識(shí)圖譜@ICLR2020」之后,我們今天關(guān)注ICLR 2020 上 Transformer的研究動(dòng)態(tài)。
Transformers,作為一種基于注意力的神經(jīng)架構(gòu),在自然語(yǔ)言處理中已經(jīng)無處不在,在過去一年多的時(shí)間里也將自然語(yǔ)言處理推向了新的高度。那么,在ICLR 2020 上有什么新的內(nèi)容呢?在這篇文章中,我們從三個(gè)維度:對(duì)架構(gòu)的修改、訓(xùn)練方法的創(chuàng)新以及應(yīng)用——介紹相關(guān)的 9 篇文章。
注:文中涉及論文,可關(guān)注「AI科技評(píng)論」微信公眾號(hào),并后臺(tái)回復(fù)「Transformer@ICLR2020」打包下載。
論文:ALBERT: A Lite BERT for Self-supervised Learning of Language Representations
鏈接:https://openreview.net/pdf?id=H1eA7AEtvS
曾經(jīng),預(yù)訓(xùn)練是大模型(玩家)的天下,直到出現(xiàn)了 ALBERT。
預(yù)訓(xùn)練自然語(yǔ)言表征時(shí),增加模型大小一般是可以提升模型在下游任務(wù)中的性能。但是這種純粹依賴模型尺寸進(jìn)而期望大力出奇跡的想法在未來會(huì)越發(fā)困難。進(jìn)一步增加模型大小將帶來三點(diǎn)困難:1)GPU/TPU內(nèi)存不足;2)訓(xùn)練時(shí)間會(huì)更長(zhǎng);3)模型退化。
為了解決這些問題,谷歌研究人員提出了「一個(gè)精簡(jiǎn)的 BERT」(A Lite BERT,ALBERT),參數(shù)量遠(yuǎn)遠(yuǎn)少于傳統(tǒng)的 BERT 架構(gòu),而性能方面則基本一致。
ALBERT的優(yōu)化包括三個(gè)方面
嵌入向量參數(shù)化的因式分解:通過使用與詞嵌入大小不同的隱藏大小,可以對(duì)嵌入?yún)?shù)化進(jìn)行因式分解,將其大小從O(Vocab×Hidden)減小為O(Vocab×Emb + Emb + Emb×Hidden),當(dāng) Hidden >> Emb時(shí),這種減小會(huì)有實(shí)質(zhì)性意義。
跨層參數(shù)共享:重新使用不同 Transformer 模塊的參數(shù),例如FFN 或注意力權(quán)重。句子間順序預(yù)測(cè):作者認(rèn)為從原始的BERT預(yù)測(cè)下一個(gè)句子并不是什么有挑戰(zhàn)的事情,因此引入了新的句子級(jí)自監(jiān)督目標(biāo)。
結(jié)果?與BERT-Large相比,參數(shù)可減少18倍,性能相當(dāng),推理速度稍快。
論文:Reformer: The Efficient Transformer
鏈接:https://openreview.net/pdf?id=rkgNKkHtvB
Transformer是NLP中廣為應(yīng)用的成熟技術(shù),在許多任務(wù)中取得了驕人的成績(jī),尤其是長(zhǎng)序列文本上表現(xiàn)突出,但卻極其耗費(fèi)算力和內(nèi)存資源,Transformer網(wǎng)絡(luò)一層的參數(shù)量約0.5B,需要2G的內(nèi)存空間,單層網(wǎng)絡(luò)的Transformer在單臺(tái)機(jī)器上尚可滿足,但鑒于以下考慮,整個(gè)Transformer網(wǎng)絡(luò)所需要的資源是驚人的:
一個(gè)N層的網(wǎng)絡(luò)需要的內(nèi)存資源要多于一層所需內(nèi)存的N倍,因?yàn)橥瑫r(shí)需要存儲(chǔ)激活結(jié)果,在反向傳播時(shí)使用。
Transformer前饋全連接神經(jīng)網(wǎng)絡(luò)的寬度(神經(jīng)單元數(shù))要比attention激活的寬度(可理解為embedding的size)多,需要更多的內(nèi)存消耗。
對(duì)一個(gè)長(zhǎng)度為L(zhǎng)的序列,Attention層的復(fù)雜度是,這對(duì)長(zhǎng)序列文本處理是無法接受的。
Source: Reformer: The Efficient Transformer
這篇文章通過下面幾項(xiàng)技術(shù)解決上面提到的幾個(gè)問題:
使用可逆殘差層取代標(biāo)準(zhǔn)殘差層,在訓(xùn)練階段只需要存儲(chǔ)一層的激活結(jié)果而不是N層(N是網(wǎng)絡(luò)層數(shù))(消除了網(wǎng)絡(luò)中N的倍數(shù))。
分離前饋全連接層的激活部分,分區(qū)塊進(jìn)行處理,消除對(duì)內(nèi)存的消耗。
使用局部敏感哈希(Local-Sensitive Hashing, LSH)技術(shù)把計(jì)算attention部分的復(fù)雜度O(L2)(主要來自于點(diǎn)乘)從降至O(L log L)(其中L代表序列長(zhǎng)度)。
論文:Lite Transformer with Long-Short Range Attention (LSRA)
鏈接:https://openreview.net/pdf?id=ByeMPlHKPH
這篇文章針對(duì)Transformer 在mobile device(CPU)上做了改進(jìn)。
Transformer 要實(shí)現(xiàn)高性能,需要大量計(jì)算,這顯然不適用于受硬件限制的移動(dòng)設(shè)備。在這篇文章中,作者提出了一種高效的移動(dòng)端的輕量級(jí)的 Transformer,以此來促進(jìn)在邊緣設(shè)備上部署NLP應(yīng)用程序。
Source: Lite Transformer with Long-Short Range Attention (LSRA)
關(guān)鍵點(diǎn)是,作者提出了一個(gè)長(zhǎng)短距離注意力(Long-Short Range Attention,LSRA),其中一組heads專門(通過卷積)對(duì)局部上下文進(jìn)行建模,另一組heads(通過注意力)對(duì)長(zhǎng)程關(guān)系進(jìn)行建模。
這個(gè)模型雖然在最終結(jié)果上與那些大型Transformer不可比,但1)其研究動(dòng)機(jī);2)其創(chuàng)新性的架構(gòu),值得我們重點(diǎn)關(guān)注。
目前這篇文章已經(jīng)開源:https://github.com/mit-han-lab/lite-transformer
Transformer架構(gòu)重要,訓(xùn)練方法也同樣。在今年的ICLR上出現(xiàn)了不少令人耳目一新的訓(xùn)練方法。
論文:ELECTRA: Pre-training Text Encoders as Discriminators Rather Than Generators
鏈接:https://openreview.net/pdf?id=r1xMH1BtvB
這是斯坦福SAIL實(shí)驗(yàn)室Manning組與谷歌合作的工作。ELECTRA的全稱是Efficiently Learning an Encoder that Classifies Token Replacements Accurately。網(wǎng)傳這是2019年最佳NLP預(yù)訓(xùn)練模型。
在去年11月份,ELECTRA一經(jīng)發(fā)布,迅速火爆整個(gè)NLP圈,其中ELECTRA-small模型參數(shù)量?jī)H為 BERT-base模型的1/10,性能卻依然能與BERT、RoBERTa等模型相媲美。
在前不久,谷歌也開源了ELECTRA,并發(fā)布了預(yù)訓(xùn)練模型。中文社區(qū),哈工大訊飛聯(lián)合實(shí)驗(yàn)室(HFL)基于ELECTRA開源代碼,也發(fā)布了中文版的 ELECTRA 預(yù)訓(xùn)練模型。https://github.com/ymcui/Chinese-ELECTRA
感受一下ELECTRA的效果:
Source: ELECTRA: Pre-training Text Encoders as Discriminators Rather Than Generators
ELECTRA能夠取得如此優(yōu)異結(jié)果,基于其新穎的預(yù)訓(xùn)練框架,其中包含兩個(gè)部分:Generator和Discriminator。
Generator: 一個(gè)小的MLM,在[MASK]的位置預(yù)測(cè)原來的詞。Generator將用來把輸入文本做部分詞的替換。
Discriminator: 判斷輸入句子中的每個(gè)詞是否被替換,即使用Replaced Token Detection (RTD)預(yù)訓(xùn)練任務(wù),取代了BERT原始的Masked Language Model (MLM)。需要注意的是這里并沒有使用Next Sentence Prediction (NSP)任務(wù)。
在預(yù)訓(xùn)練階段結(jié)束之后,只使用Discriminator作為下游任務(wù)精調(diào)的基模型。
換句話說,作者們把CV領(lǐng)域的GAN運(yùn)用到了自然語(yǔ)言處理。
值得注意的是,盡管與GAN的訓(xùn)練目標(biāo)相似,但仍存在一些關(guān)鍵差異。首先,如果生成器碰巧生成了正確的token,則該token被視為“真實(shí)”而不是“偽造”;所以模型能夠適度改善下游任務(wù)的結(jié)果。更重要的是,生成器使用最大似然來訓(xùn)練,而不是通過對(duì)抗性訓(xùn)練來欺騙判別器。
論文:TabFact: A Large-scale Dataset for Table-based Fact Verification
鏈接:https://openreview.net/pdf?id=rkeJRhNYDH
這篇工作來自 UCSB 計(jì)算機(jī)科學(xué)系助理教授王威廉等人的研究。隨著現(xiàn)在 Transformer 的性能與人類水平之間的差距越來越小,許多經(jīng)典的NLP數(shù)據(jù)集事實(shí)上已經(jīng)過時(shí)了。因此,若想更近一步研究,就需要?jiǎng)?chuàng)建一個(gè)更具挑戰(zhàn)性的新基準(zhǔn)。在這種背景下,作者提出了一個(gè)新的數(shù)據(jù)集,用來解決以自然語(yǔ)言表達(dá)的基于事實(shí)的信息進(jìn)行建模的問題。
Source: TabFact: A Large-scale Dataset for Table-based Fact Verification
數(shù)據(jù)集由Wikipedia的16k 的表和118k人工注釋的語(yǔ)句組成,這些語(yǔ)句帶有ENTAILMENT或REFUTED標(biāo)簽來引用事實(shí)數(shù)據(jù)。
目前這個(gè)任務(wù)的基準(zhǔn)性能仍然處于中等水平,仍然大有可為。
論文:Pretrained Encyclopedia: Weakly Supervised Knowledge-Pretrained Language Model
鏈接:https://openreview.net/pdf?id=BJlzm64tDH
預(yù)訓(xùn)練語(yǔ)言模型的最新進(jìn)展表明,自監(jiān)督學(xué)習(xí)對(duì)于多種自然語(yǔ)言處理(NLP)任務(wù)的有效性。除了標(biāo)準(zhǔn)的語(yǔ)法和語(yǔ)義NLP任務(wù)外,預(yù)訓(xùn)練的模型還對(duì)涉及真實(shí)世界知識(shí)的任務(wù)進(jìn)行了大幅度改進(jìn),這表明大規(guī)模語(yǔ)言建??赡苁遣东@知識(shí)的隱式方法。
在這篇文章中,作者提出了一個(gè)簡(jiǎn)單而有效的弱監(jiān)督預(yù)訓(xùn)練目標(biāo)。這個(gè)目標(biāo)明確強(qiáng)迫模型納入有關(guān)現(xiàn)實(shí)世界實(shí)體的知識(shí)。使用這個(gè)新目標(biāo)訓(xùn)練的模型在「事實(shí)完成」(fact completion)任務(wù)上有較大改進(jìn)。當(dāng)應(yīng)用于下游任務(wù)時(shí),他們的在多個(gè)任務(wù)(如問答、實(shí)體鍵入)上性能都優(yōu)于BERT。
Transformer不僅與語(yǔ)言建模有關(guān),在一些相關(guān)問題上也有一些巧妙的應(yīng)用。
論文:BERTScore: Evaluating Text Generation with BERT
鏈接:https://openreview.net/pdf?id=SkeHuCVFDr
在松散定義的環(huán)境(即生成連貫的文本)下,客觀地測(cè)量生成質(zhì)量,具有很大的挑戰(zhàn)性。傳統(tǒng)上,BLUE分?jǐn)?shù)作為文本相似性的代名詞,雖然被廣泛應(yīng)用(例如翻譯、問答),但在長(zhǎng)文本生成任務(wù)中卻顯得不那么完美。
Example of one of the BERT-based scoring function. Source: BERTScore: Evaluating Text Generation with BERT
為了解決這個(gè)問題,BERTScore提出了一種新的度量標(biāo)準(zhǔn),利用來自BERT的預(yù)訓(xùn)練上下文嵌入,并通過余弦相似性匹配候選和參考句子中的單詞。
這個(gè)過程其實(shí)非常簡(jiǎn)單,不涉及任何微調(diào),僅進(jìn)行預(yù)訓(xùn)練的上下文嵌入,以及余弦相似度和基于頻率的重要性加權(quán)。
相較于BLUE,這種度量方法會(huì)失去一些可解釋性。這種學(xué)習(xí)型評(píng)分標(biāo)準(zhǔn)是否能成為新的評(píng)價(jià)標(biāo)準(zhǔn)呢?時(shí)間會(huì)給出答案。
BERT既然這么牛逼,為什么不能用它作為一種度量標(biāo)準(zhǔn)呢?直接把生成句子和參考句子懟進(jìn)BERT,然后計(jì)算token之間的cos相似度,然后用一個(gè)max-pool,再玄學(xué)算一下,暴力有效,因吹斯聽!據(jù)說和人類評(píng)估更接近,而且也比較魯棒(這篇文章好像是某會(huì)被拒了,重投ICLR)。來源:https://xueqiu.com/4851636118/135380777
論文:Pre-training Tasks for Embedding-based Large-scale Retrieval
鏈接:https://openreview.net/pdf?id=rkg-mA4FDr
大規(guī)模查詢文檔檢索問題,即給定一個(gè)查詢(例如一個(gè)問題),會(huì)從一個(gè)大型文檔語(yǔ)料庫(kù)中返回相應(yīng)文檔集(例如包含答案的段落)。這個(gè)問題通常會(huì)分為兩個(gè)步驟:1)檢索階段主要來減小解空間的大小,并返回一個(gè)包含候選文檔的子集;2)計(jì)分階段,會(huì)根據(jù)分?jǐn)?shù)對(duì)文檔進(jìn)行排序。
對(duì)于評(píng)分階段,由于基于交叉注意力模型的BERT類的預(yù)訓(xùn)練,有了顯著的提高。但檢索階段的研究卻仍然較少,目前的方法大多還以來經(jīng)典的IR技術(shù),例如BM-25(令牌匹配+TF-IDF權(quán)重)。這些模型只能處理少量手工的特征,而無法針對(duì)感興趣的其他下游任務(wù)進(jìn)行優(yōu)化。
Source: Pre-training Tasks for Embedding-based Large-scale Retrieval
在這篇文章中,作者對(duì)基于嵌入的檢索模型,通過適當(dāng)設(shè)計(jì)段落級(jí)預(yù)訓(xùn)練任務(wù),Transformer模型可以顯著改善檢索的性能;甚至在缺乏監(jiān)督訓(xùn)練數(shù)據(jù)的情況下,在問答任務(wù)上也比BM25性能更好。
論文:VL-BERT: Pre-training of Generic Visual-Linguistic Representations
鏈接:https://openreview.net/pdf?id=SygXPaEYvH
開源:https://github.com/jackroos/VL-BERT
如何利用預(yù)訓(xùn)練和微調(diào)框架來學(xué)習(xí)語(yǔ)言和視覺表示呢?
在這篇文章中,作者引入了一種新型的可做預(yù)訓(xùn)練的通用表示形式 VL-BERT。VL-BERT以 Transformer和R-CNN作為主干進(jìn)行擴(kuò)展(盡管并不是首個(gè)這樣做的,但它對(duì)現(xiàn)有模型的改進(jìn)讓人耳目一新),從而能夠?qū)⒁曈X和語(yǔ)言嵌入特征作為輸入。輸入的每個(gè)元素要么是輸入句子中的單詞,要么是輸入圖像中的關(guān)注區(qū)域(RoI)。
Source: VL-BERT: Pre-training of Generic Visual-Linguistic Representations
這個(gè)設(shè)計(jì)可以適用于大多數(shù)的可視語(yǔ)言的下游任務(wù)。作者將VL-BERT與純文本語(yǔ)料庫(kù)一起,在大規(guī)模概念字幕數(shù)據(jù)集(Conceptual Captions dataset)上進(jìn)行了預(yù)訓(xùn)練。實(shí)驗(yàn)表明,預(yù)訓(xùn)練可以很好地協(xié)調(diào)視覺語(yǔ)言線索,且有利于下游任務(wù)。
這個(gè)工作,在發(fā)布的時(shí)候,也在視覺常識(shí)推理(VCR)基準(zhǔn)測(cè)試的排行榜上取得第一名的成績(jī)。
雷鋒網(wǎng)雷鋒網(wǎng)
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。
本專題其他文章