丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號安全和更好的產(chǎn)品體驗,強烈建議使用更快更安全的瀏覽器
此為臨時鏈接,僅用于文章預(yù)覽,將在時失效
人工智能學(xué)術(shù) 正文
發(fā)私信給MrBear
發(fā)送

0

對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

本文作者: MrBear 2020-06-28 16:09
導(dǎo)語:能回答出這 21 個問題,才算真正入門了 NLP 遷移學(xué)習(xí)。

2018 年 10月,Bert 問世。從此,一波自然語言處理(NLP)遷移學(xué)習(xí)的浪潮向我們襲來。

你知道 BERT 的掩碼語言模型由來已久嗎?

你知道注意力機制的時間復(fù)雜度不一定是輸入的二次方量級嗎?

你知道你可以反向?qū)崿F(xiàn) Google 的模型嗎?

當下,全球研究人員已經(jīng)在此領(lǐng)域做出了大量的工作,取得了豐碩的成果!NLP 也許是當前最吸引人的研究領(lǐng)域。

NLP 是一個龐大的話題,在本文中我們并不對 NLP 的基本理論進行過多的展開。

下面,我們向大家提出 21 個問題,它們可以測試你對 NLP 的最新進展有多么熟悉,使你足以面對任何將要到來的技術(shù)討論。

畢竟,從某種程度上來說,掌握多少專業(yè)術(shù)語決定了你的水平。

Q1:NLP 預(yù)訓(xùn)練模型(PTM,Pre-trained models)的最新進展如何?

參考論文:Pre-trained Models for Natural Language Processing: A Survey,https://arxiv.org/pdf/2003.08271.pdf

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!      

圖 1:具有代表性的 PTM 的分類情況

近年來,大量的研究工作表明,大規(guī)模語料庫上的預(yù)訓(xùn)練模型可以學(xué)習(xí)到通用的語言表征,這有助于下游的 NLP 任務(wù),可以避免從頭開始訓(xùn)練一個新的模型。隨著算力的發(fā)展,各種深度學(xué)習(xí)模型(例如,Transformer)層出不窮。

隨著網(wǎng)絡(luò)訓(xùn)練技巧的發(fā)展,PTM 的架構(gòu)也逐漸從淺層向深層發(fā)展:

「第一代 PTM」旨在學(xué)習(xí)優(yōu)秀的詞嵌入。由于在下游任務(wù)中,這些第一代 PTM 方法自身并不被需要,出于對計算效率的考慮,它們往往層數(shù)很淺(例如,Skip-Gram 和 GloVe)。盡管這些預(yù)訓(xùn)練的嵌入可以捕獲單詞的語義,但是它們是上下文無關(guān)的,不能捕獲文本中更高級的概念(例如,詞義排歧、句法結(jié)構(gòu)、語義角色、指代)。

「第二代 PTM」重點關(guān)注學(xué)習(xí)上下文相關(guān)的詞嵌入(例如,CoVe,ELMo、OpenAI GPT,以及 BERT)。在下游任務(wù)中,仍然需要這些學(xué)習(xí)到的編碼器來表征上下文中的單詞。此外,針對于不同的目的,研究人員也提出了各種各樣的預(yù)訓(xùn)練任務(wù)來學(xué)習(xí) PTM。

第一代 PTM:「上下文無關(guān)」的預(yù)訓(xùn)練詞嵌入

將單詞表征為稠密的向量由來已久。「現(xiàn)代的」詞嵌入技術(shù)首先在神經(jīng)網(wǎng)絡(luò)語言模型(NNLM)中被提出。Collobert 等人說明在未標記數(shù)據(jù)上預(yù)訓(xùn)練的詞嵌入可以顯著地改進許多 NLP 任務(wù)。為了解決計算復(fù)雜度的問題,他們并沒有使用語言模型,而是通過 pairwise 的排序任務(wù)學(xué)習(xí)詞嵌入。他們的工作首次嘗試了使用未標記數(shù)據(jù)獲取對于其它任務(wù)有用的通用詞嵌入。

Mikolov 等人指出,深度神經(jīng)網(wǎng)絡(luò)沒有必要構(gòu)建良好的詞嵌入。他們提出了兩種淺層的架構(gòu):連續(xù)詞袋(CBOW)和跳字(Skip-Gram)模型。盡管這些模型很簡單,但是它們?nèi)匀豢梢詫W(xué)習(xí)到高質(zhì)量的詞嵌入,從而捕獲潛在的單詞之間的句法和語義相似性。

Word2vec 是一種最流行的這些模型的實現(xiàn),它讓 NLP 領(lǐng)域的各種任務(wù)都可以使用預(yù)訓(xùn)練的詞嵌入。此外,GloVe 也是一種被廣泛使用的獲取預(yù)訓(xùn)練詞嵌入的模型,它是根據(jù)一個大型語料庫中全局詞共現(xiàn)的統(tǒng)計量計算而來的。

盡管研究人員已經(jīng)證實了預(yù)訓(xùn)練詞嵌入在 NLP 任務(wù)中是有效的,但它們與上下文無關(guān),并且大多數(shù)是通過淺層模型訓(xùn)練而來。當它們被用于下游任務(wù)時,仍然需要從頭開始學(xué)習(xí)整體模型中的其余部分。

第二代 PTM:「上下文相關(guān)」的預(yù)訓(xùn)練編碼器

由于大多數(shù) NLP 任務(wù)并不僅僅停留在單詞層面上,研究人員自然而然地想到在句子或更高的層面上預(yù)訓(xùn)練神經(jīng)編碼器。由于神經(jīng)編碼器的輸出向量表征了依賴于上下文的單詞語義,它們也被稱為「上下文相關(guān)的詞嵌入」。

Dai 和 Le 提出了第一個成功的用于 NLP 領(lǐng)域的 PTM。他們通過一個語言模型(LM)或一個序列自編碼器初始化 LSTM,發(fā)現(xiàn)預(yù)訓(xùn)練可以提升 LSTM 在很多文本分類任務(wù)上的訓(xùn)練和泛化能力。

Liu 等人通過 LM 預(yù)訓(xùn)練了一個共享的 LSTM 編碼器,并且在多任務(wù)學(xué)習(xí)(MTL)的框架下對其進行了調(diào)優(yōu)。他們發(fā)現(xiàn)預(yù)訓(xùn)練和調(diào)優(yōu)可以在一些文本分類任務(wù)中進一步提升 MTL 的性能。

Ramachandran 等人發(fā)現(xiàn)可以通過無監(jiān)督預(yù)訓(xùn)練顯著提升 Seq2Seq 模型的性能。編碼器和解碼器的權(quán)值都是通過兩個預(yù)訓(xùn)練語言模型的權(quán)值初始化,并且使用有標記數(shù)據(jù)調(diào)優(yōu)的。

除了通過 LM 預(yù)訓(xùn)練上下文相關(guān)的編碼器,McCann 等人還通過用于機器翻譯(MT)任務(wù)的注意力序列到序列模型預(yù)訓(xùn)練了一個深度 LSTM 編碼器。預(yù)訓(xùn)練的編碼器輸出的上下文向量(CoVe)可以提升模型在各種常見的 NLP 任務(wù)中的性能。

現(xiàn)代的 PTM 通常是在更大規(guī)模的語料庫上,使用更強大或更深的架構(gòu)(如 Transformer),通過新的預(yù)訓(xùn)練任務(wù)訓(xùn)練而來。

Peter 等人使用一個雙向語言模型(BiLM)預(yù)訓(xùn)練了一個 2 層的 LSTM,這個 BiLM 由一個前向傳播 LM 和一個反向傳播 LM。上下文相關(guān)的表征是通過預(yù)訓(xùn)練 BiLM、ELMo(語言模型嵌入)得來的,研究人員已證實這種表征可以為多種 NLP 任務(wù)帶來巨大的性能提升。

Akbik 等人通過字符層面上的 LM 訓(xùn)練的上下文相關(guān)字符串嵌入捕獲了單詞語義。然而,這兩種 PTM 往往被用作生成上下文相關(guān)詞嵌入的特征提取器,生成的嵌入會被用作下游任務(wù)的主要模型的輸入。BiLM 和 ELMo 的參數(shù)是固定的,主要模型中其它的參數(shù)也是從頭開始訓(xùn)練的。

ULMFiT(通用語言模型調(diào)優(yōu))試圖針對文本分類(TC)任務(wù)對預(yù)訓(xùn)練的 LM 進行調(diào)優(yōu),并且在 6 個被廣為使用的 TC 數(shù)據(jù)集上取得了最先進的性能。ULMFiT 包含 3 個步驟:(1)在通用領(lǐng)域的數(shù)據(jù)上訓(xùn)練 LM(2)在目標數(shù)據(jù)上對 LM 進行調(diào)優(yōu)(3)在目標任務(wù)上進行調(diào)優(yōu)。ULMFiT 也研究了一些有效的調(diào)優(yōu)策略,包括分層調(diào)優(yōu)(discriminative fine-tuning)、斜三角學(xué)習(xí)率(slanted triangular learning rates )、逐層解凍(gradual unfreezing)。

最近,層數(shù)非常深的 PTM 已經(jīng)在學(xué)習(xí)通用語言表征的任務(wù)中,例如 OpenAI GPT(生成式預(yù)訓(xùn)練),BERT(基于 Transformer 的雙向編碼器表征)。除了 LM 之外,研究人員還提出了越來越多的自監(jiān)督任務(wù),從而使 PTM 能從大型文本語料庫中捕獲更多的知識。

自從 ULMFiT 和 BERT 問世以來,調(diào)優(yōu)已經(jīng)成為了使 PTM 適應(yīng)下游任務(wù)的主流方法。

Q2:被用來訓(xùn)練 PTM的任務(wù)都有哪些?

參考論文:Pre-trained Models for Natural Language Processing: A Survey,https://arxiv.org/pdf/2003.08271.pdf

預(yù)訓(xùn)練任務(wù)對于學(xué)習(xí)語言的通用表征是非常重要的。通常,這些預(yù)訓(xùn)練任務(wù)應(yīng)該是具有挑戰(zhàn)性的,并且有大量的訓(xùn)練數(shù)據(jù)。我們將預(yù)訓(xùn)練任務(wù)總結(jié)為三類:監(jiān)督學(xué)習(xí)、無監(jiān)督學(xué)習(xí)、自監(jiān)督學(xué)習(xí)。

1. 監(jiān)督學(xué)習(xí)(SL)是基于「輸入-輸出」對組成的訓(xùn)練數(shù)據(jù),學(xué)習(xí)將輸入映射到輸出的函數(shù)。

2. 無監(jiān)督學(xué)習(xí)(UL)是從未標記的數(shù)據(jù)中發(fā)現(xiàn)一些內(nèi)在的知識,如簇、密度(densities)、潛在表征。

3.自監(jiān)督學(xué)習(xí)(SSL)是監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)的折中。SSL 的學(xué)習(xí)范式與監(jiān)督學(xué)習(xí)完全相同,但是訓(xùn)練數(shù)據(jù)的標簽是自動生成的。SSL 的關(guān)鍵思想是以某種方式根據(jù)輸入中的其它部分預(yù)測任一部分的輸入。例如,掩模語言模型(MLM)是一種自監(jiān)督任務(wù),它嘗試通過一個句子中其余的詞去預(yù)測被掩模屏蔽的詞。

對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

1、語言建模(LM)

NLP 領(lǐng)域中最常見的無監(jiān)督任務(wù)是概率化的語言建模(LM),這是一個經(jīng)典的概率密度估計問題。雖然 LM 是一個通用概念,但在實踐中,LM通常特指自回歸 LM 或單向 LM。

給定文本序列 x_(1:T) = [x_1, x_2,...,x_T],其聯(lián)合概率 p(x1:T) 可被分解為:

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!      

其中  x_0 是表示句子開頭的特殊詞例。

條件概率 p(x_t|x_0:t?1) 可以通過給定語言上下文 x_0:t?1 的詞匯集合上的概率分布來建模。通過神經(jīng)編碼器 fenc(.) 對上下文 x_0:t?1 建模,得到的條件概率為:

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!      

其中,g_LM(.) 是預(yù)測層。

給定一個大型的語料庫,我們可以通過最大似然估計訓(xùn)練整個網(wǎng)絡(luò)。

2、掩模語言建模

掩模語言建模(MLM)最早由 Taylor 提出,他將其作為一個完形填空任務(wù)。Devlin 等人將此任務(wù)改造為一種新的預(yù)訓(xùn)練任務(wù),從而克服標準單向 LM 的缺點。簡而言之,MLM 首先對輸入語句中的一些詞例進行掩模處理,然后訓(xùn)練模型通過其它詞例來預(yù)測被屏蔽的詞例。但是,由于掩模詞例在調(diào)優(yōu)階段并沒有出現(xiàn),這種預(yù)訓(xùn)練方法將造成預(yù)訓(xùn)練階段和調(diào)優(yōu)階段之間的不匹配。根據(jù)經(jīng)驗,Devlin 等人在 80% 的情況下用 [MASK],10% 的情況下用隨機的詞例,10% 的情況下用原始詞例來執(zhí)行掩模操作。

1)序列到序列的掩模語言建模(Seq2Seq MLM)

研究人員通常將 MLM 作為分類問題來求解。我們將掩模處理后的序列輸入給一個神經(jīng)編碼器,其輸出向量進一步被進送入一個 softmax 分類器來預(yù)測被屏蔽的詞例?;蛘?,我們可以將編碼-解碼器架構(gòu)用于 MLM,此時我們將掩模處理后的序列送入編碼器,解碼器以自回歸的方式按照順序產(chǎn)生掩模處理后的詞例。我們將這種 MLM 稱為序列到序列的 MLM(Seq2Seq MLM),該任務(wù)已被用于 MASS 和 T5。Seq2Seq MLM 有助于 Seq2Seq類的下游任務(wù)(例如問答、摘要和機器翻譯)。

2)增強的掩模語言建模(E-MLM)

目前,有多個研究提出了不同的 MLM 的增強版本,從而進一步改進 BERT。RoBERTa 并沒有使用靜態(tài)掩模,而是通過動態(tài)掩模改進了 BERT。

UniLM 將掩模預(yù)測任務(wù)擴展到三類的語言建模任務(wù)上:單向、雙向、序列到序列預(yù)測。XLM 在平行的雙語句子對的串聯(lián)上執(zhí)行 MLM,這杯稱為翻譯語言建模(TLM)。SpanBERT 用隨機連續(xù)字掩模(Random Contiguous Words Masking)和跨度邊界目標(Span Boundary Objective,SBO)代替 MLM,將結(jié)構(gòu)信息集成到預(yù)訓(xùn)練中,這要求系統(tǒng)基于跨度邊界來預(yù)測經(jīng)過了掩模處理的跨度區(qū)間中的內(nèi)容。此外,StructBERT 還引入了跨度順序恢復(fù)任務(wù)進一步引入語言結(jié)構(gòu)。

另一種豐富 MLM 的方式是引入外部知識。

3、排列語言模型 (PLM)

盡管 MLM 任務(wù)在預(yù)訓(xùn)練中被廣泛使用,但 Yang 等人認為,當模型被用于下游任務(wù)時,MLM 的預(yù)訓(xùn)練過程中使用的一些特殊詞例(如[MASK])并不存在。這導(dǎo)致了預(yù)訓(xùn)練和調(diào)優(yōu)階段之間存在差異性。為了克服這個問題,研究人員提出用 PLM 作為預(yù)訓(xùn)練目標來替代 MLM。簡而言之,PLM 是一種在輸入序列的隨機排列上進行的語言建模任務(wù)。每種排列(permutation)是從所有可能的排列中隨機抽取得來的。然后,我們將序列的排列中的一些詞例選取為目標,并訓(xùn)練模型根據(jù)其它的詞例以及目標的自然位置,來預(yù)測目標詞例。注意,這種排列并不影響序列的自然位置,只定義詞例預(yù)測的順序。實際上,由于收斂較慢,我們只能預(yù)測排列后的序列中的最后幾個詞例。針對面向目標的表征,研究人員還引入了雙流自注意力機制。

4、去噪自編碼器(DAE)

DAE 接收部分被損壞的輸入,旨在恢復(fù)出原始的無損輸入。在 NLP 領(lǐng)域中,研究人員使用序列到序列模型(如標準的 Transformer)來重建原始文本。損壞文本的方式包含:

1)詞例屏蔽(token masking):從輸入中隨機采樣詞例并用 [MASK] 元素替換它們。

2)詞例刪除:從輸入中隨機刪除詞例。與詞例屏蔽的不同之處在于,模型需要確定刪除后的輸入的位置。

3)文本填充:類似于 SpanBERT ,對一些文本跨度區(qū)間進行采樣,將其替換為一個 [MASK]。每個跨度區(qū)間的長度服從泊松分布(λ= 3)。模型需要預(yù)測在一個跨度區(qū)間中刪除了多少個詞例。

4)句子排列:根據(jù)句號將一個文檔互粉成若干個句子,并將這些句子按照隨機順序排列。

5)文檔旋轉(zhuǎn):隨機均勻地選擇一個詞例,并旋轉(zhuǎn)文檔,使其以該token開始。模型需要識別文檔的實際開始位置。

5、對比學(xué)習(xí)(CTL)

對比學(xué)習(xí)假設(shè)一些觀測到的文本對之間的語義相似度要高于隨機采樣得到的文本對。通過最小化下面的目標函數(shù)來學(xué)習(xí)文本對 (x, y) 的得分函數(shù) s(x, y):

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!      

其中 (x, y+) 代表相似的文本對,y- 可能與 x 不相似。y+ 和 y- 通常被稱為正樣本和負樣本。得分函數(shù) s(x, y) 通常由一個可學(xué)習(xí)的神經(jīng)編碼器以兩種方式計算:

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!       或        對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!      

CTL 背后的指導(dǎo)思想是「通過比較學(xué)習(xí)」。與 LM 相比,CTL 的計算復(fù)雜度往往更低,因此對于 PTM 來說是另一種理想的訓(xùn)練標準。

近年來,研究人員提出的 CTL 任務(wù)包括:Deep InfoMax(DIM)、替換詞例探測(RTD)、CBOW-NS、ELECTRA、后續(xù)句子預(yù)測(NSP)、據(jù)此順序預(yù)測(SOP)等。

除了上述任務(wù),研究人員還設(shè)計了許多其它的輔助預(yù)訓(xùn)練任務(wù),它們被用于引入事實知、提升在跨語言任務(wù)上的性能、多模態(tài)應(yīng)用,或其它的特定任務(wù)。

Q3:PTM 在 GLUE 對比基準上的最新進展如何?

參考論文:Pre-trained Models for Natural Language Processing: A Survey,https://arxiv.org/pdf/2003.08271.pdf

通用語言理解評價(GLUE)基準是 9 個自然語言理解任務(wù)的集合,包括單句分類任務(wù)(CoLA 和 SST-2)、成對文本分類任務(wù)(MNLI、RTE、WNLI、QQP 和 MRPC)、文本相似度任務(wù)(STSB)和相關(guān)性排序任務(wù)(QNLI)。GLUE 對比基準被設(shè)計用來評估模型的魯棒性和泛化能力,它不為測試集提供標簽,而是設(shè)置了一種評估器。

一些具有代表性的模型在 GLUE 對比基準上的性能如下:

對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

在上圖中,Transformer Enc 和 Transformer Dec 分別代表標準 Transformer 架構(gòu)的編碼器和解碼器。它們的區(qū)別在于解碼器部分使用經(jīng)過三角矩陣掩模處理的自注意力,從而防止詞例注意未來出現(xiàn)的(右側(cè)的)位置上的詞例。Transformer 指標準的編碼器-解碼器架構(gòu)。

GLUE 是在 9 個 GLUE 對比基準上的平均得分。

「*」代表不包含 WNLI 任務(wù)。

Q4:使用更多的數(shù)據(jù)是否總是能夠得到更好的語言模型?

參考論文:Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer,https://arxiv.org/pdf/1910.10683.pdf

這篇論文指出,當數(shù)據(jù)量達到一定規(guī)模時,數(shù)據(jù)的質(zhì)量比數(shù)據(jù)的數(shù)量對于模型性能的提升更加重要。如下圖所示,未過濾的 C4 數(shù)據(jù)集規(guī)模達到了 6.1 TB,過濾后的 C4 數(shù)據(jù)集規(guī)模則為 745GB。然而,在過濾后的 C4 數(shù)據(jù)集上,預(yù)訓(xùn)練模型的各項指標均優(yōu)于未過濾的情況。

對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

Q5:對預(yù)訓(xùn)練語言模型來說,使用哪種分詞方法是最好的?

參考論文:Byte Pair Encoding is Suboptimal for Language Model Pretraining,https://arxiv.org/pdf/2004.03720.pdf

論文指出,一種新的 Unigram 語言建模(https://www.aclweb.org/anthology/P18-1007.pdf)方法比BPE(字節(jié)對編碼)和 WordPiece 方法更好。

Unigram LM 方法可以恢復(fù)出更好地與底層詞法相匹配的子詞單元,并且避免 BPE 詞干提取的貪心構(gòu)造過程中的一些缺點。作者還對比了使用 Unigram、BPE 等分詞方法的相同的 Transformer 掩模語言模型的調(diào)優(yōu)性能。

他們發(fā)現(xiàn),在下游任務(wù)中,Unigram LM 分詞方法的性能始終優(yōu)于  BPE。在各種調(diào)優(yōu)任務(wù)上的實驗結(jié)果如下圖所示。 對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

Q6:哪種任務(wù)能夠最好地訓(xùn)練一個語言模型?

目前最佳的方法是 ELECTRA,該方法使用一個生成器替換輸入序列中的詞例,然后使用一個判別器預(yù)測哪個詞例被替換了。

參考論文:ELECTRA: PRE-TRAINING TEXT ENCODERS AS DISCRIMINATORS RATHER THAN GENERATORS,https://arxiv.org/pdf/2003.10555.pdf對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

在論文中,作者在 GLUE 自然語言理解對比基準和 SQuAD 問答對比基準上對各種替換詞例探測(RTD)任務(wù)和掩模語言模型(MLM)任務(wù)進行了實驗分析。實驗結(jié)果表明,在給定相同的模型規(guī)模的情況下,ELECTRA 的性能始終優(yōu)于基于 MLM 的方法(例如,BERT、XLNet)。

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

針對任務(wù)的目標序列長度,論文「Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer」(https://arxiv.org/pdf/1910.10683.pdf)進一步指出,將丟棄的跨度區(qū)間長度選擇為 3 是較為合適的。具體而言,作者將平均跨度區(qū)間設(shè)置為 3,原始序列的丟棄率設(shè)置為 15%。他們發(fā)現(xiàn)這種目標可以得到較好的性能,此時由于目標序列長度較短使得計算效率較高。

對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

Q7:對于訓(xùn)練 Transformer 的任務(wù)來說,逐層解凍(gradual unfreezing)是否有必要?

參考論文:Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer,https://arxiv.org/pdf/1910.10683.pdf

該論文指出,并不一定需要進行逐層解凍。

作者發(fā)現(xiàn),在所有的對比基準任務(wù)上,盡管逐層解凍確實在調(diào)優(yōu)階段帶來了一定的速度提升,但是它會造成少許的性能下降。

下圖為使用不同的模型參數(shù)子集的情況下,不同調(diào)優(yōu)方法的對比。對于適配器層來說,d 代表適配器的內(nèi)部維度。

對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

Q8:如果你的訓(xùn)練資源預(yù)算有限,為了得到更好的語言模型,你會選擇做出什么改變?

參考論文:Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer,https://arxiv.org/pdf/1910.10683.pdf

這篇論文中,作者建議我們同時增大模型參數(shù)的規(guī)模和訓(xùn)練步數(shù)。

下圖為不同的擴展基線模型的方法的對比。除了集成調(diào)優(yōu)模型之外, 所有的方法都以 4 倍的計算量為對比基線?!窼ize」代表模型中的參數(shù)量,「Training time」代表預(yù)訓(xùn)練和調(diào)優(yōu)階段使用的步數(shù)。

一般來說,相較于僅僅增大訓(xùn)練訓(xùn)練時間或批處理規(guī)模來說,同時增大模型參數(shù)的規(guī)模會得到顯著的性能提升。

對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

Q9:如果你的序列長度長于 512 個詞例,你會使用哪種模型?

眾所周知,多頭注意力機制 (Multi-Head Self-Attention) 的計算開銷很大。在處理長度為 n 的序列時,其        對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!      的時間復(fù)雜度會使得原始的 Transformer 模型難以處理長文本序列。

目前,較為流行的做法是使用 Transformer-XL(將先前「段落」的隱藏狀態(tài)作為循環(huán)段落層的輸入,并且使用使這種策略容易實現(xiàn)的相對位置編碼方案)或 Longformer(詳見雷鋒網(wǎng)AI科技評論文章:這六大方法,如何讓 Transformer 輕松應(yīng)對高難度長文本序列?)

Q10:隨著序列的長度增長,Transformer 的時間復(fù)雜度將如何增長?

由于自注意力機制在運算的過程中每兩個詞例之間將形成一對注意力,此時時間復(fù)雜度的增長速率是        對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!      的。

Q11:由于 Transformer 的計算時間復(fù)雜度是序列長度的二次函數(shù),如何降低其在處理長文本時的運算時間?

近年來,許多研究工作都著眼于提升 Transformer 在長序列上的計算效率。它們主要關(guān)注自回歸的語言建模,然而在遷移學(xué)習(xí)環(huán)境中將長文本 Transformer 應(yīng)用于文本級的 NLP 任務(wù)仍然是一個急需解決的問題。

Longformer 使用了一種計算時間可以線性地隨著序列長度增長而增長的注意力機制(窗口化的局部上下文的自注意力和由終端任務(wù)激活的全局注意力)。

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!      

Longformer 在語義搜索任務(wù)上,有很好的編碼長文本的能力。下圖展示了目前該領(lǐng)域的研究進展。

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!       

Q12:BERT 是因為其注意力層才取得了優(yōu)秀的性能嗎?

參考論文:Attention is not Explanation,https://www.aclweb.org/anthology/N19-1357.pdf

該論文認為,盡管研究人員往往聲稱注意力機制為模型提供了透明度(使用注意力機制的模型給出了對于輸入單元的注意力分布),但是注意力權(quán)重和模型的輸出之間存在怎樣的關(guān)系還不明確。

作者在各種各樣的 NLP 上進行了大量的實驗,發(fā)現(xiàn)注意力機制并不能恰當?shù)嘏c輸出相關(guān)聯(lián)。例如,學(xué)習(xí)到的注意力權(quán)重往往與基于梯度的特征重要性度量無關(guān),我們可以發(fā)現(xiàn)有些差異非常大的注意力分布可以產(chǎn)生相同的預(yù)測結(jié)果。因此我們不能認為模型是由于注意力機制才取得了優(yōu)秀的性能。

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!       

Q13:如果我們?nèi)サ粢粋€注意力頭,BERT 的性能會顯著下降嗎?

答案是:不會。

在論文「Revealing the Dark Secrets of BERT」中,作者使用了一部分 GLUE 任務(wù),以及一些手動收集的特征,提出了一些研究方法并且對 BERT 的注意力頭編碼的信息進行了定量和定性的分析。

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

實驗結(jié)果表明,不同的注意力頭會重復(fù)一些特定的注意力模式,這說明模型存在過參數(shù)化的現(xiàn)象。盡管不同的注意力頭會使用相同的注意力模式,但是他們在不同的任務(wù)上對性能有不同的影響。作者指出,手動去掉某些注意力頭的注意力,一般會使得條右后的 BERT 模型獲得性能的提升。

具體而言,由于 BERT 在很大程度上依賴于學(xué)習(xí)到的注意力權(quán)重,作者將去除一個注意力頭定義為將某個注意力頭對于輸入句子中的每個詞例的注意力值修改為一個常量 a=1/L(其中 L 是句子的長度)。因此,每個詞例都會得到相同的注意力,這樣做可以有效地去除注意力模式,同時保留原始模型的信息流。請注意,通過使用這種框架,作者可以去除任意數(shù)目的注意力頭(從去除每個模型中的單個注意力頭到整個一層注意力,或者多層注意力)。

實驗結(jié)果表明,某些注意力頭對 BERT 的整體表現(xiàn)有負面的影響,這一趨勢適用于所有選擇到的任務(wù)。令人意想不到的是,去除一些注意力頭并沒有如人們預(yù)期的那樣導(dǎo)致準確率的下降,而是提升了性能。如下圖所示,這種影響因任務(wù)和數(shù)據(jù)集而異。       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

Q14:如果我們?nèi)サ粢粋€網(wǎng)絡(luò)層,BERT 的性能會顯著下降嗎?

答案是:不會。

在論文「Revealing the Dark Secrets of BERT」中,作者指出,去掉整個一層的注意力(即給頂層中的 12 個注意力頭),也會提升模型的性能。如下圖所示,當去除不同的層時,在識別文本蘊含(RTE) 的任務(wù)中,去掉第一層注意力會取得極其顯著的性能提升(3.2%)。

論文地址:https://arxiv.org/pdf/1908.08593.pdf   對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

Q15:如果我們隨機初始化BERT,BERT 的性能會顯著下降嗎?

不一定會。

在論文「Revealing the Dark Secrets of BERT」中,為了評價預(yù)訓(xùn)練 BERT 對于整體性能的影響,作者考慮了兩種權(quán)值初始化方式:預(yù)訓(xùn)練 BERT 權(quán)值,以及從正態(tài)分布中隨機采樣得到的權(quán)值。

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

如下表所示,對使用正太分布中隨機采樣得到的權(quán)值初始化的 BERT 進行調(diào)優(yōu),其性能得分始終低于使用預(yù)訓(xùn)練權(quán)值初始化的 BERT。然而,在某些任務(wù)(如 MRPC )上,性能的下降并不太顯著。

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!       

Q16:我們真的需要模型壓縮技術(shù)嗎?

并不一定。

模型壓縮是一種收縮訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)的技術(shù)。 壓縮后的模型通常與原始模型相似,而它只使用一小部分計算資源。 然而,在許多應(yīng)用中的瓶頸是在壓縮之前訓(xùn)練原來的大型神經(jīng)網(wǎng)絡(luò)。 

博文「Do We Really Need Model Compression?」指出,模型壓縮技術(shù)說明了過參數(shù)化的模型趨向于收斂到哪些類型的解上,從而提示我們?nèi)绾斡?xùn)練適當參數(shù)化的模型。目前有許多類型的模型壓縮方法,每一種都利用了訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)中易于發(fā)現(xiàn)的不同類型的「樸素特性」:

許多權(quán)值接近于 0(剪枝)

權(quán)值矩陣是低秩的(權(quán)值分解)

權(quán)值可以被表征為少數(shù)幾個比特(量化)

網(wǎng)絡(luò)的層通常會學(xué)習(xí)到相似的函數(shù)(權(quán)值共享)

博文地址:http://mitchgordon.me/machine/learning/2020/01/13/do-we-really-need-model-compression.html

Q17:如果一個模型的 API 暴露出來,我們能否反向?qū)崿F(xiàn)出這個模型?

是的!可以。

參考論文:Thieves on Sesame Street! Model Extraction of BERT-based APIs,https://arxiv.org/abs/1910.12366

作者在這篇 ICLR2020 論文中展示了,在不使用任何真實輸入訓(xùn)練數(shù)據(jù)的情況下反向?qū)崿F(xiàn)出基于 BERT 的自然語言處理模型是可能的。 攻擊者向被攻擊的模型輸入了無意義的隨機采樣得到的詞序列,然后根據(jù)被攻擊模型預(yù)測的標簽對他們自己的 BERT 進行調(diào)優(yōu)。

該方法的有效性指出了:如果通過調(diào)優(yōu)訓(xùn)練公共托管的 NLP 推理 API,這些模型存在被反向?qū)崿F(xiàn)的風險。 惡意用戶可以通過隨機查詢向 API 發(fā)送垃圾信息,然后使用輸出重建模型的副本,從而發(fā)起模型提取攻擊。

Q18:知識蒸餾的最新研究進展如何?

知識蒸餾是一種壓縮技術(shù),它通過訓(xùn)練一個被稱為學(xué)生模型的小型模型來復(fù)現(xiàn)一個被稱為教師模型的大模型。在這里,教師模型可以是許多模型的集合,它們通常都被預(yù)訓(xùn)練好了。與模型壓縮不同,知識蒸餾技術(shù)通過一些優(yōu)化目標根據(jù)一個固定的教師模型學(xué)習(xí)一個小型的學(xué)生模型,而壓縮技術(shù)旨在搜索一個更稀疏的模型架構(gòu)。

一般來說,知識蒸餾機制可以被分為三類:(1)從軟目標概率(soft target probabilities)中蒸餾(2)從其它知識中蒸餾(3)蒸餾成其它的結(jié)構(gòu):

(1)從軟目標概率(soft target probabilities)中蒸餾:Bucilua 等人指出,讓學(xué)生模型近似教師模型可以從教師模型向?qū)W生模型遷移知識。通常的方法是近似教師模型的 logit。DistilBERT 用教師模型的軟目標概率作為蒸餾損失訓(xùn)練學(xué)生模型:

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!      

其中 t_i 和 s_i 分別是教師模型和學(xué)生模型估計出的概率。

從軟目標概率中蒸餾出的知識也可以被用于特定任務(wù)的模型中(如信息檢索和序列標記)。

(2)從其他知識中提煉:從軟目標概率中蒸餾模型將教師模型視為黑盒,只關(guān)注其輸出。此外,分解教師模型,正流出更多的知識,可以提升學(xué)生模型的性能。

TinyBERT 使用嵌入輸出、隱藏狀態(tài),以及自注意力分布進行層到層的蒸餾。MobileBERT 也使用軟目標概率、隱藏狀態(tài),以及自注意力分布進行層到層的蒸餾。MiniLM 從教師模型中正流出自注意力分布以及自注意力值關(guān)系。

此外,其它模型也通過許多不同的方法蒸餾知識。Sun 等人提出了一種「patient」教師-學(xué)生機制,Liu 等人利用知識蒸餾改進了預(yù)訓(xùn)練的多任務(wù)深度神經(jīng)網(wǎng)絡(luò)。

(3)蒸餾成其他結(jié)構(gòu):一般來說,學(xué)生模型的結(jié)構(gòu)和教師模型是一樣的,只是學(xué)生網(wǎng)絡(luò)中層的規(guī)模更小,隱層的規(guī)模也更小。然而,減少參數(shù),以及將模型從 Transformer 簡化為 RNN 或 CNN 結(jié)構(gòu),可以降低計算復(fù)雜度。  對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

Q19:更大的 Transformer 模型訓(xùn)練的更快,還是更小的 Transformer 模型訓(xùn)練的更快?

博文「Speeding Up Transformer Training and Inference By Increasing Model Size」指出,較大的模型可以更快地獲得更高的準確率。對于預(yù)訓(xùn)練 RoBERTa,增加模型寬度和 / 或深度都會導(dǎo)致訓(xùn)練地更快。對于機器翻譯任務(wù),更寬模型比更深的模型更有效。

博文地址:https://bair.berkeley.edu/blog/2020/03/05/compress/

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!       

Q20:學(xué)生-教師框架的實際應(yīng)用有哪些?

參考論文:TINYBERT: DISTILLING BERT FOR NATURAL LANGUAGE UNDERSTANDING,https://arxiv.org/pdf/1909.10351.pdf

論文中,作者為了加速模型推理并且提升模型在資源有限的設(shè)備上的執(zhí)行效率,提出了一種 Transformer 蒸餾方法。通過使用這種方法,大量的「教師」BERT 中被編碼的知識可以被很好地遷移到小型的「學(xué)生」網(wǎng)絡(luò) TinyBERT 中。

此外,作者還引入了一種新的兩階段學(xué)習(xí)框架:在預(yù)訓(xùn)練和特定任務(wù)學(xué)習(xí)階段都執(zhí)行 Transformer 蒸餾。這種框架保證了 TinyBERT 可以同時捕獲 BERT中通用領(lǐng)域中和特定任務(wù)的知識。

對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

在論文「Scaling Laws for Neural Language Models」中,作者提出了一種簡單高效的方法將現(xiàn)有的句子嵌入模型擴展到新的語言上,從而為不同的語言生成相似的句子嵌入。作者使用原始的單語言模型為源語言生成句子嵌入,然后根據(jù)翻譯后的句子訓(xùn)練了一個新的系統(tǒng)來模仿原始模型。

論文地址:https://arxiv.org/pdf/2004.09813v1.pdf

       對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!     

Q21:如何設(shè)計模型?最重要的參數(shù)是什么?

這個問題很難回答!

論文「Scaling Laws for Neural Language Models」對這個問題進行了說明,它向我們揭示了以下幾種關(guān)系:

測試損失 Vs 計算開銷

測試損失 Vs 數(shù)據(jù)集規(guī)模

測試損失 Vs 參數(shù)規(guī)模

想要設(shè)計并訓(xùn)練一個模型,我們首先要決定其架構(gòu),然后決定參數(shù)的數(shù)目。接著,你才能夠計算損失。最后,選擇數(shù)據(jù)的規(guī)模以及需要的計算開銷。  雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)

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

對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。

對 NLP 遷移學(xué)習(xí)了解得有多深,回答完這 21 個問題就知道了!

分享:
相關(guān)文章

知情人士

當月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個人簡介
為了您的賬戶安全,請驗證郵箱
您的郵箱還未驗證,完成可獲20積分喲!
請驗證您的郵箱
立即驗證
完善賬號信息
您的賬號已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說