遷移學習技術在難以獲得大量高質量注釋數據的NLP任務中特別有用。目前的方法在對下游任務進行微調之前,直接對域內文本采用預先訓練好的語言模型(LM)。我們展示了使用特定于領域的術語擴展LM的詞匯表會帶來進一步的收獲。在更大的效果上,我們利用未標記數據中的結構創建輔助合成任務,這有助于LM向下游任務轉移。在事先訓練好的Roberta-large LM系統上逐步應用這些方法,并在IT領域的三個任務上顯示出可觀的性能提升:閱讀理解、文檔排序和重復問題檢測。
當前自然語言處理的發展為低資源語言和領域提供了挑戰和機遇。眾所周知,深度神經網絡需要大量的訓練數據,而這些數據在資源貧乏的情況下可能無法得到。然而,也有越來越多的工作來提高低資源環境下的性能。基于對神經模型的基本改變和目前流行的預訓練和微調范式,我們概述了低資源自然語言處理的有前途的方法。在討論了低資源場景的定義和數據可用性的不同維度之后,我們接著研究了在訓練數據稀少時支持學習的方法。這包括創建附加標簽數據的機制,如數據增強和遠程監督,以及轉移學習設置,以減少對目標監督的需要。調查結束時,簡要地看了一下在非NLP機器學習社區中建議的方法,這些方法在資源少的情況下可能對NLP有益。
論文名稱:Combining Self-Training and Self-Supervised Learningfor Unsupervised Disfluency Detection 論文作者:王少磊,王重元,車萬翔,劉挺 原創作者:王少磊 論文鏈接://ir.hit.edu.cn/~slwang/emnlp2020.pdf
摘要:文本順滑(Disfluency Detection)的目的是刪除自動語音識別(ASR)結果中的不順滑的詞,從而得到更自然和通順的句子。目前大部分在文本順滑(Disfluency Detection)任務上的工作都嚴重依賴人工標注數據。在本工作中,我們首次嘗試用無監督的方法來解決文本順滑問題。我們通過結合自訓練(self-training)和自監督(self-supervised)兩種方法,在不采用任何有標注訓練數據的情況下,取得了跟目前最好的有監督方法接近的效果。
標題:Dialogue Distillation: Open-domain Dialogue Augmentation Using Unpaired Data
作者:張榮升,鄭銀河(共同第一作者),邵建智,毛曉曦,席亞東,黃民烈
關鍵詞:對話系統,數據增廣,模型蒸餾
類型:EMNLP 2020, Long Paper
論文地址://arxiv.org/abs/2009.09427
GitHub:
簡介:目前開放領域對話模型的訓練過程極大地依賴于大規模對話數據,但是,收集高質量的對話數據是非常消耗人力和物力的事情。本文中,我們提出了一個可適用于開放領域對話的數據增廣的方法:“對話蒸餾”。我們的方法中使用了非平行數據來增廣對話對。具體來說,我們首先設計了一個數據層面的蒸餾過程,在這一過程中,我們根據現有的對話對,在非配對數據中檢索相似的句子,從而組成增廣后的對話對。我們還提出了一個模型層面的蒸餾過程,這一過程中我們首先使用少量高質量的對話數據訓練得到了一個Teacher模型,然后再基于增廣后的數據,將這一teacher模型蒸餾到一個student模型中。自動和人工評測均表明,我們的方法可以生成高質量的增廣數據,并且我們所提出的對話蒸餾方法可以進一步幫我們提升開放領域對話模型的性能。(注:與網易伏羲實驗室合作)
Transformer 模型的自監督預訓練已經徹底改變了NLP的應用。這種語言建模目標的預訓練為參數提供了一個有用的初始化,這些參數可以很好地推廣到新的任務中。然而,微調仍然是數據效率低下的——當有標記的例子很少時,準確性可能會很低。數據效率可以通過優化預訓練;這可以看作是一個元學習問題。然而,標準的元學習技術需要許多訓練任務才能泛化;不幸的是,找到一組不同的這樣的監督任務通常是困難的。本文提出了一種自監督的方法,從無標記文本生成一個龐大的,豐富的元學習任務分布。這是使用closize風格的目標實現的,但是通過從少數詞匯表術語中收集待刪除的標記來創建單獨的多類分類任務。這產生的唯一元訓練任務與詞匯術語子集的數量一樣多。我們使用最近的元學習框架對任務分配的transformer模型進行元訓練。在17個NLP任務中,我們表明,這種元訓練比語言模型前訓練后的精細化能產生更好的少樣本泛化效果。此外,我們還展示了如何將自監督任務與監督任務結合起來進行元學習,從而比之前的監督元學習獲得了更大的準確性。
UniLMv2:統一預訓練偽掩碼語言模型
UniLMv2: Pseudo-Masked Language Models for Unified Language Model Pre-Training
論文鏈接://www.zhuanzhi.ai/paper/a6628400809ab320e597b1d4d1fca177
基于大規模語料的預訓練語言模型在各種自然語言處理任務帶來了巨大的提升。受UniLMv1 ([NeurIPS-19]Unified Language Model Pre-training for Natural Language Understanding and Generation)的啟發,本篇論文提出“偽掩碼語言模型”(PMLM),可以同時對兩種不同的語言建模目標進行高效訓練,從而使其更好地適用于語言理解(如文本分類、自動問答)和語言生成(如文本摘要、問題生成)任務。
我們將語言模型預訓練目標分為三類。第一類依賴于自編碼語言建模(Autoencoding, AE)。例如在 BERT 中使用的掩碼語言建模(MLM)隨機的在文本序列中遮蓋一部分單詞,在 Transformer 的雙向編碼結果之上,對每個被遮蓋的單詞進行分別還原。第二類方法基于自回歸建模(Autoregressive, AR)。不同于 AE,目標單詞被依次預測,且依賴于先前的結果。第三類是我們提出的半自回歸語言建模(Partially Autoregressive, PAR),對短語級別進行依賴建模,從而避免了 AR可能帶來的過度局部依賴問題。
偽掩碼語言模型(PMLM)
在新提出的偽掩碼語言模型(PMLM)中,我們對 AE 以及 PAR 這兩個語言建模目標進行了融合。在共享模型參數的基礎上,盡可能對上下文的編碼結果進行了復用,以達到高效訓練的目的。通過構造合理的自注意力模型掩碼與位置編碼,PMLM 可以在一次計算中同時對兩種語言建模任務進行訓練,且無需進行上下文編碼的冗余計算。
在自動問答、復述判別、情感分類、文本摘要、問題生成等一系列任務上的測評,說明了這一方法的有效性。
過去幾年間,遷移學習給 NLP 領域帶來了豐碩的成果,掀起了新一波的發展浪潮。 而遷移學習之所以如此有效,得益于其利用自監督任務(如語言建模或填充缺失詞)在大量可用的無標注的文本數據上對模型進行預訓練;接著,又在更小的標注數據集上對模型進行微調,從而讓模型實現比單單在標注數據上訓練更好得多的性能。 遷移學習在2018年出現的GPT、ULMFiT、ELMo以及 BERT等成果上初露鋒芒,之后又在2019年大顯身手,推動了領域內多種新方法的發展,其中就包括XLNet、RoBERTa、ALBERT、Reformer 和 MT-DNN 等等。 隨著 NLP 領域的發展迅猛,評估其中的哪些發展成果最具有意義以及這些成果結合起來會發揮出怎樣的效果,已不是易事。
論文地址://arxiv.org/abs/1910.10683
谷歌研究者在論文《使用統一的文本到文本的Transformer 來探索遷移學習的局限性》中,提出了一個大規模的實證評估,以確定哪些遷移學習技術效果最好,并大規模應用這些遷移學習技術來創建一個新模型,作者將這個新模型稱之為文本到文本的遷移Transformer (Text-To-Text Transfer Transformer,T5)。與此同時,他們還引入了一個新的開源預訓練數據集——Colossal Clean Crawled Corpus(C4)。 作者在C4數據集上對T5 模型進行預訓練,讓模型在許多 NLP 基準上都實現了最佳結果,與此同時還擁有足夠的靈活性,進行微調后可應用到多個重要的下游任務上。
一、共享的文本到文本框架
創建了T5模型后,作者將所有的 NLP 任務都重新構建為統一的文本到文本格式,輸入和輸出都始終是文本字符串,與只能輸出類標簽或者輸入范圍的 BERT 式的模型截然不同。 該文本到文本的框架讓他們可以在任何 NLP 任務上都使用相同的模型、損失函數以及超參數,包括機器翻譯、文檔摘要、問答和分類任務(如情感分析)等等。 T5 模型甚至可以被應用到回歸任務上,具體方式是訓練 T5 模型來預測一個數字的字符串表示,而不是這個數字本身。
文本到文本框架圖。對于每個任務,作者都考慮使用文本作為模型的輸入,并訓練模型生成一些目標文本。這讓他們能夠在多個任務上使用相同的模型、損失函數和超參數,包括翻譯(綠色框)、語言可接受性(紅色框)、句子相似性(黃色框)和文檔摘要(藍色框)。它也為實證評估中所包含的方法提供了一個標準的試驗臺。
二、大型預訓練數據集(C4)
遷移學習的一個重要部分,便是用于模型預訓練的未標注的數據集。為了準確地評估擴大預訓練規模的效果,我們需要一個不僅高質量、多樣化而且規模龐大的數據集。 現有的預訓練數據集無法滿足上述三點要求,例如來自維基百科的文本是高質量的,并且格式統一,但是規模相對而言較小,而從Common Crawl 網站上爬取的文本雖然規模較大并且多樣化程度高,但是質量相當低。 為了滿足這三點要求,作者開發了一個Colossal Clean Crawled Corpus數據集 (C4),該數據集是比維基百科大兩個數量級的 Common Crawl 的清潔版本。他們的清潔處理過程涉及到刪除重復數據、去除不完整的句子以及消除冒犯性或有噪音的內容。 這一過濾可以讓模型在下游任務上獲得更好的表現,與此同時額外規模的數據集也讓模型在預訓練期間不過擬合的情況下,增加其大小。 C4數據集地址:
三、遷移學習方法的系統研究
作者使用T5 文本到文本框架和新的預訓練數據集C4,評估了在過去幾年間為NLP 遷移學習引入的大量思想和方法。詳盡的評估細節可前往論文查看,其中包括以下實驗:
模型架構的實驗中,他們發現編碼—解碼模型通常比“僅解碼”的語言模型,性能更優; 預訓練目標的實驗中,他們證實了填空式的去噪目標(即訓練模型來復原輸入中缺失的詞)的效果更好,并且其中最重要的因素是計算成本。 未標注數據集的實驗中,他們展示了在域內數據集上訓練模型是有益的,而在更小的數據集上對模型進行預訓練則會導致不利的過擬合; 訓練策略的實驗中,他們發現多任務學習可以與“先預訓練再微調”的方法相媲美,但是要求更細致地選擇模型在每個任務上訓練的頻率。 模型規模的實驗中,他們對比了不同大小的模型、訓練時間以及集成模型的數量,以確定如何才能最好地利用固定的計算能力。
四、遷移方法+數據規模=性能最佳
為了探索NLP目前遷移學習的局限性,作者進行了最后一組實驗,結合系統研究中的所有最佳方法,并利用Google Cloud TPU加速器進行了優化。 其中最大規模的模型有110億個參數,在GLUE、Superglue、Team和CNN/Daily Mail基準測試中都能夠達到SOTA。另外,在SuperGLUE 自然語言理解的基準測試中獲得了接近人類水平的分數。
五、擴展到其他任務,表現也同樣可喜
T5非常靈活,可以非常容易的進行修改,除了作者論文中的一些任務,在其他任務中也能取得了巨大的成功。例如在下面兩個新任務中,模型表現也不錯。
1、封閉數據問答
在閱讀理解問題中往往可以使用文本到文本的框架。給模型提供上下文信息以及一個問題,訓練其在上下文信息中找到問題的答案,例如可以向模型提供維基百科文章中關于康尼颶風的文本,并提問“康妮颶風在哪天發生?”然后訓練模型,讓其找到文章中的日期。事實上,作者使用這種方法在斯坦福問答數據集(SQuAD)中取得了最先進的結果。 在作者的Colab demo和后續論文中,其訓練了T5在一個更加困難的封閉的環境中回答瑣碎的問題,而且不需要接觸任何外部知識。 換句話說,T在回答問題時只能用其在無監督預訓練期間訓練出的參數和知識。
在預訓練期間,T5學習如何從C4文檔中填充文本的丟失跨度。對模型進行了微調,在無需輸入任何信息或者上下文的情況下,將其應用于已經封閉式問答。 T5非常擅長這項任務,其110億參數模型分別在TriviaQA、Web問題(WebQuestions)和自然問題(Natural Questions)對50.1%、37.4%和34.5%的答案進行了精確生成。 為了客觀看待此類問題,T5團隊在酒吧瑣事挑戰(pub trivia challenge)與訓練好的模型并肩作戰,但不幸的是慘敗而歸。如下動圖所示
2、完形填空 第二個任務是完形填空。像GPT-2這種大型語言模型在文本生產方面非常擅長。模型在經過訓練之后,能夠根據輸入預測出下一個單詞,如此將模型集成,便會產生非常創新性的應用程序,例如基于文本的游戲“AI地下城”。
T5使用的預訓練目標與填空任務非常相似,在填空任務中,模型預測文本中缺少的單詞,但是此目標是對“繼續任務”(continuation task)的概括,因為填空任務中的空白有可能出現在文本的末尾。 為了完成目標,創建了一個名為“填充空白”的新任務,并要求模型用指定數量的單詞替換空白。例如給模型輸入:我喜歡吃花生醬和—4—三明治。大概會訓練模型用4個單詞進行填空。 用C4對模型進行了微調,效果良好,尤其是模型對缺失文本的預測非常棒!例如下列對于輸入:“我喜歡花生醬和—N—三明治”,輸出結果如下所示:
預訓練模型:
代碼: Colab Notebook
論文題目: Unsupervised Pre-training for Natural Language Generation
論文摘要: 最近,由于無監督預訓練在促進自然語言理解(NLU)方面取得了令人驚訝的成功以及有效利用大規模未標記語料庫的潛力,因此在計算語言學領域正變得越來越受歡迎。但是,無論NLU是否成功,當涉及自然語言生成(NLG)時,無監督預訓練的功能只能被部分挖掘。 NLG特質的主要障礙是:文本通常是基于特定的上下文生成的,可能會因目標應用程序而異。結果,像在NLU場景中一樣,設計用于預訓練的通用體系結構是很難的。此外,在目標任務上學習時保留從預訓練中學到的知識也是不容置疑的。這篇綜述總結了近期在無監督的預訓練下增強NLG系統的工作,特別著重于催化將預訓練的模型集成到下游任務中的方法。根據它們處理上述障礙的方式,它們分為基于體系結構的方法和基于策略的方法。還提供了討論,以提供這兩種工作方式之間的進一步相互了解,一些有益的經驗現象以及未來工作可能涉及的一些方向。