來自:AI部落聯盟
前言
這次我們總結一下ACL2021中的Transformers,看看2021年了,NLPer在如何使用、應用、改進、分析Transformers,希望可以對大家產生idea有幫助。
本文涉及25篇Transformer相關的文章,對原文感興趣的讀者可以關注公眾號回復: ACL2021Transformers,下載本文所涉及的所有文章~本文主要內容:
前言
ACL 2021中的25個Transformers模型
總結
ACL 2021中的25個Transformers模型
NLP中的層次結構Hi-Transformer: Hierarchical Interactive Transformer for Efficient and Effective Long Document Modeling
高效和長文本transformer模型設計,短文。如上圖所示,這篇文章主要提出一種解決長文本任務的transformer模型:首先分別encoder sentence表示,然后再encod document表示,最后再重新encde sentence表示,總體上比較簡單的local+global設計。
R2D2: Recursive Transformer based on Differentiable Tree for Interpretable Hierarchical Language Modeling
將Transformer和語言文字層次結構相結合的一篇文章。本文基于可差分CKY樹,提出一種recursive Transformer模型,用于捕獲語言中的層次結構(words, Phrases, sentences),與目前直接堆疊Transformer Layer的模型進行對比(例如BERT,Albert)除了可以學好表示,還能學到tree結構,與之前基于CKY的parser模型,Tree-LSTM模型比較相似。為了能讓recursive Transformer進行快速、大規模訓練,文章也相應提出了優化算法。Recursive Transformer語言模型實驗是基于WikiText-2做的,效果還可以。為了凸顯該模型的tree 結構性,文章進一步做了無監督Constituency Parse,顯示了該模型結構在學習語言層次結構上的能力。
Transformer復雜度和高效設計IrEne: Interpretable Energy Prediction for Transformers
本文預測Transformer運行所消耗的能量,很有趣。首先,這篇文章將Transformer模型結構按照Tree進行拆解:整個模型是root節點(例如BERT),root節點下逐步拆分出子模塊(比如BertSelf Attention),最終子模塊由最基本的ML單元組成(例如全連接Dense網絡),最終自底向上,先預測單個ML單元的能量消耗,再匯總計算出整體模型的能量消耗。為了驗證該方法的有效性,該文還創建了一個數據集來評測Transformer-based模型的能量消耗。IrEne的代碼在:https://github.com/StonyBrookNLP/irene
Optimizing Deeper Transformers on Small Datasets
小數據集+更深更大的模型,有點反常識的感覺,不過也很有趣。總體上,這篇文章通過合適的模型初始化方式和優化算法,在很小很難的Text-to-SQL任務上取得了不錯的結果,這篇文章的核心是Data-dependent Transformer Fixed-update,那這個DT-Fixup怎么做的呢?比如使用的模型是roberta,在roberta上面再堆疊個幾層隨機Transformer:
對于模型中非預訓練模型初始化的部分,使用Xavier initialization進行初始化。
對于模型中非預訓練模型初始化的部分,將學習率的warm-up和所有的layer normalization去掉。
對所有的樣本進行一遍前向傳播獲得輸入的一個估計:,是roberta輸出的表示。
根據得到的,在新疊加的每層Transformer上,對attention和權重矩陣進行設計好的縮放。
文章理論推導較多,建議感興趣的同學下載文章后閱讀原文進行學習。
READONCE Transformers: Reusable Representations of Text for Transformers
Transformer推理提速。文章的思路是:無論是問答任務,摘要生成任務還是其他任務里的不同樣本可能會多次涉及到同一個wiki段落,這個時候不用每次都重新encode這個wiki段落,可以只encode這個段落一次然后re-use。文章思路和另一個SIGIR 2020的很像:DC-BERT: Decoupling Question and Document for Efficient Contextual Encoding
Parameter-efficient Multi-task Fine-tuning for Transformers via Shared Hypernetworks
parameter-efficient相關的一篇文章,通過多任務學習和特定的模型參數共享來達到更好的遷移學習效果。總體上模型是make sense的。如上圖所示,該論文基于adapter類似的結構設計來幫助下游任務finetune,但adapter處的設計與之前的研究不同的是:給予task id, adapter位置,layer id動態計算所有layer的adapter參數。代碼開源在:https://github.com/rabeehk/hyperformer
Length-Adaptive Transformer: Train Once with Length Drop, Use Anytime with Search
高效Transformer設計。文章的主要亮點是:1. transformer中間層的長度自適應,可以減少參數量。2. 減少的參數所對應的token表示可以被restore,因此可以用來做抽取式QA任務。文章在文本分類和QA任務上進行了驗證。
H-Transformer-1D: Fast One-Dimensional Hierarchical Attention for Sequences
高效transformer設計。文章借鑒數值分析領域的:Hierarchical Matrix和Multigrid method,提出了一種hierarchical attention結構,該結構是線性時間復雜度和空間復雜度,并進一步優化到只使用dense layer運算進行實現。
Transformer分析和可解釋性Personalized Transformer for Explainable Recommendation
推薦、可解釋性、NLP相結合的一篇文章。該論文提出了PETER模型(如上圖所示),將user, item和item feature,item的explanation當作模型輸入,對user,item進行表示學習,同時也學習item特征向量表示和explanation文字的表示,輸出又3個任務,Rating prediction是推薦任務,context Prediction是用item的輸出表示預測item的生成item的explanation(和doc2vec算法類似),Explanation Generation就是正常的生成任務。
總體上user、item著兩個輸入和對應的表示能讓模型學到Personalized和recommendation的知識,Explanation預測就是正常的生成任務。該模型在Yelp、Amazon,TripAdvisor數據集上做了實驗,有不錯的效果。
Contributions of Transformer Attention Heads in Multi- and Cross-lingual Tasks
對Transformer不同Head重要性進行分析的一篇文章。這篇文章在multi-lingual,Cross-lingual任務上,對mBERT、XLM-R這兩個Transformer模型進行了分析,實驗結果顯示:1. 對attention head進行剪裁之后依舊可以獲得與原模型相匹配的效果,甚至可以獲得更好的效果。2. 根據梯度來確定哪些head可以被剪裁。3. 文章在多語言的POS和NER數據集上驗證了結論和方法的正確性質。
Are Pre-trained Convolutions Better than Pre-trained Transformers?
對比CNN和Transformer的效果。該文之前已經在公眾號上分享過啦,相關鏈接: 預訓練的卷積模型比Transformer更好?
Attention Calibration for Transformer in Neural Machine Translation
翻譯的時候decoder需要attention到正確的詞才能獲得更好的效果,但是如果有其他不重要帶來了嚴重的干擾,那么翻譯效果將會下降,來自騰訊的這篇工作展示了如何修正翻譯中的attention來幫助機器翻譯。
總體結構如上圖所示,通過一個mask perturbation 模型來學習如何對attention進行修正,基本思路是:如果mask到了重要的詞,那么翻譯效果下降,如果mask掉了干擾詞(也就是修正了原來的attention分數),那么翻譯效果上升。
What Context Features Can Transformer Language Models Use?
Transformer需要的重要feature分析。這篇文章對transformer模型在中長文本上的效果進行對比分析發現:
1. 對于長文本而言,增加最大token數量的限制(256到768)有幫助。
2. 對于當前的模型而言,長文本的信息主要來源于content words和局部occurrence統計信息:刪除一些function words和局部window內隨機shuffle對模型最終影響比較小。
3. 并不是context中所有feature重要性都相同。總體上文章對:word order,sentence order,order of sections,根據token屬性對token進行控制變量的刪減等一些列feature進行了控制變量分析。
Reservoir Transformers
Transformer分析文章。文章顯示:固定預訓練模型的部分參數或者增加一些隨機初始化的模塊(比如加入gru,cnn等模塊)可以提升transformer模型最終效果。文章在語言模型和翻譯任務上進行驗證。
More Identifiable yet Equally Performant Transformers for Text Classification
對Transformer模型進行可解釋性設計。文章的主要貢獻是:1. attention不同權重可鑒別性的理論分析。2. 設計了一種transformer變體有助于attention權重的鑒別從而提升可解釋性。3. 在文本分類任務上做了分析和驗證,提升可鑒別性的同時不降低原有任務的效果。
長文本處理ERNIE-DOC: A Retrospective Long-Document Modeling Transformer
針對長文本處理的Transformer優化,來自百度NLP團隊。入上圖所示,整個長文章的被分成了多片,該文章認為之前的Transformer模型都無法利用整個文章的信息,而提出的ERNIE-DOC用到了所有文本信息。
為了讓模型能看到長文本所有信息,該文章主要有以下幾個貢獻:
1. 一個長文本feed給模型2次。
2. 由于目前的recurrence Transformer所能看到的最長文本受到最大層數的限制,所以提出了一個enhanced recurrence mechanism進一步擴大Transformer所能看到的文本范圍。
3. 還提出了一個segment-reordering任務,主要就是將文本中的分片打亂,然后預測是否是正確的順序。論文在語言模型任務、document-level的長文本理解任務,以及一系列中英文下游任務上進行了驗證。
G-Transformer for Document-level Machine Translation
Transformer雖然在單句翻譯中有不錯的效果了,但多句翻譯/document-level的翻譯還遠不夠好。這篇文章發現多句翻譯訓練的時候容易陷入局部最優,陷入局部最優的原因是因為翻譯的時候需要attention 的source words太多了。
所以這個文章做了一個比較容易理解的事情:把document level的翻譯依舊看作是多個單個句子翻譯,通過句子序號來提醒模型翻譯到哪里了,從而縮小target到source需要attention的范圍。
Transformer有趣的應用Topic-Driven and Knowledge-Aware Transformer for Dialogue Emotion Detection
結合Transformer和knowledge base,對對話系統中的Topic和情感傾向進行識別。該文主要貢獻如下:1. 首次基于topic來幫助對話情感識別。2. 使用pointer network和attention機制融入commonsense knowledge。3.在解決對話情感檢測任務時,設計了一個基于Transformer encoder-decoder結構的模型,來取代之前通用的recurrent attention一類的網絡。
Unsupervised Out-of-Domain Detection via Pre-trained Transformers
深度學習模型的效果越來越好,但如果遇到和訓練樣本分布不一致的輸入會怎么樣?這篇文章基于BERT模型中多層Transformer所提取的feature,在inference階段對out-of-domian的樣本檢測,可以有效排除和訓練樣本分布不一致的測試樣本,基于深度學習模型對深度學習模型的輸入進行檢查,也是很有趣的一個方向。
MECT: Multi-Metadata Embedding based Cross-Transformer for Chinese Named Entity Recognition
融入中文字形而設計的一種Transformer,該論文顯示融入了中文字形之后,在多個中文任務上取得了更好的效果。
ChineseBERT: Chinese Pretraining Enhanced by Glyph and Pinyin Information
ARBERT & MARBERT: Deep Bidirectional Transformers for Arabic
擴展Transformer模型到多種語言。文章設計和實現了兩個ARabic-specific Transformer并在大量的語料和多種datasets上進行了預訓練,文章還提出了一個benchmark ARLUE進行專門的多語言評測。
Glancing Transformer for Non-Autoregressive Neural Machine Translation
Transformer在翻譯上的應用,主要是非自回歸翻譯模型方法的提出,來自字節跳動。文章提出一種非自回歸的翻譯模型,可以并行快速decode。感興趣的讀者可以閱讀中文講解:https://www.aminer.cn/research_report/60f0188430e4d5752f50eafd
在預訓練中用上字形和拼音信息,和上一個MECT同類型的研究。
總結
本文涉及的transformer相關研究主要分以下幾個類別:
NLP中的層次結構
Transformer的復雜度和高效設計
長文本處理
基于Transformer的一些有趣的應用
今天的分享就到這里啦,大家覺得不錯的話,幫點贊和分享一下吧,謝謝~~~
編輯:jq
-
ACL
+關注
關注
0文章
61瀏覽量
11965 -
Transformer
+關注
關注
0文章
141瀏覽量
5982 -
nlp
+關注
關注
1文章
487瀏覽量
22015
原文標題:ACL2021中的25個Transformers模型
文章出處:【微信號:NLP_lover,微信公眾號:自然語言處理愛好者】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論