本文試圖將大約15年的工作量濃縮為今天最重要的八個里程碑,因此省略了許多相關和重要的發展。特別是,主要介紹神經網絡方法,其他方法暫時忽略。更重要的是,本文中提出的許多神經網絡模型建立在同一時代的非神經網絡上。
2001年 - 神經語言模型
語言建模是在給定前面的單詞的情況下預測文本中的下一個單詞的任務。它可能是最簡單的語言處理任務,具有實際應用,如智能鍵盤,電子郵件響應建議(Kannan et al。,2016),拼寫自動修正等。不出所料,語言建模有著豐富的歷史。經典方法基于n-gram并采用平滑處理看不見的n-gram(Kneser&Ney,1995)。
Bengio等人于2001年提出了第一個神經語言模型,一個前饋神經網絡。如下圖1所示。
該模型用作輸入向量表示以前的單詞,在表中查找。如今,這種載體被稱為單詞嵌入。這些單詞嵌入被連接并饋入隱藏層,然后將其輸出提供給softmax層。
最近,前饋神經網絡已被循環神經網絡所取代(RNNs; Mikolov等,2010) 和長期短期記憶網絡(LSTMs; Graves,2013)用于語言建模。近年來已經提出了許多擴展經典LSTM的新語言模型(請參閱此頁面以獲得概述)。盡管有這些發展,但經典的LSTM仍然是一個強大的基礎? (Melis et al 2018)。甚至Bengio等人的經典前饋神經網絡在某些情況下也能與更復雜的模型競爭,因為這些通常只學會考慮最近的單詞(Daniluk et al 2017)。更好地理解這些語言模型捕獲的信息是一個活躍的研究領域(Kuncoro 2018; Blevins 2018)。
語言建模通常是應用RNN時的首選訓練場,并成功捕捉到了想象力,許多人通過Andrej的博客文章獲得了他們的第一次曝光。語言模型是無監督學習的一種形式。關于語言建模最顯著的方面可能是,盡管它很簡單,但它是本文討論的許多后期進展的核心:
Word嵌入:word2vec的目標是簡化語言建模。
序列到序列模型:這種模型通過一次預測一個單詞來生成輸出序列。
預訓練語言模型:這些方法使用語言模型中的表示來進行轉移學習。
為了做“真正的”自然語言理解,僅僅從原始形式的文本中學習可能是不夠的,我們將需要新的方法和模型。
2008年 - 多任務學習
多任務學習是在多個任務上訓練的模型之間共享參數的一般方法。在神經網絡中,這可以通過綁定不同層的權重來輕松完成。Rich Caruana于1993年首次提出了多任務學習的想法 并應用于道路跟蹤和肺炎預測(Caruana,1998)。直觀地說,多任務學習鼓勵模型學習對許多任務有用的表示。這對于學習一般的低級表示,集中模型的注意力或在有限量的訓練數據的設置中特別有用。
Collobert和Weston于2008年首次將多任務學習應用于NLP的神經網絡。在他們的模型中,查找表(或單詞嵌入矩陣)在兩個在不同任務上訓練的模型之間共享,如下面的圖2所示。
共享單詞嵌入使模型能夠在單詞嵌入矩陣中協作和共享一般的低級信息,這通常構成模型中最大數量的參數。Collobert和Weston在2008年的論文中證明了它在多任務學習中的應用。它引領了諸如預訓練單詞嵌入和使用卷積神經網絡(CNN)之類的思想,這些思想僅在過去幾年中被廣泛采用。它贏得了在ICML 2018測試的時間獎勵(見測試的時間獎勵談話情境紙這里)。
多任務學習現在用于各種NLP任務,并且利用現有或“人工”任務已成為NLP指令集中的有用工具。雖然通常預定義參數共享,但在優化過程中也可以學習不同的共享模式(Ruder et al。,2017)
。隨著模型越來越多地評估多項任務以評估其泛化能力,多任務學習越來越重要,最近提出了多任務學習的專用基準(Wang et al。,2018; McCann et al 2018)。
2013年 - Word嵌入
文本的稀疏矢量表示,即所謂的詞袋模型在NLP中具有悠久的歷史。正如我們在上面所看到的,早在2001年就已經使用了單詞或單詞嵌入的密集向量表示。Mikolov等人在2013年提出的主要創新。是通過刪除隱藏層和近似目標來使這些單詞嵌入的訓練更有效。雖然這些變化本質上是簡單的,但它們與有效的word2vec實現 - 字嵌入的大規模培訓一起實現了。
Word2vec有兩種風格,可以在下面的圖3中看到:連續詞袋(CBOW)和skip-gram。它們的目標不同:一個基于周圍的單詞預測中心詞,而另一個則相反。
連續的詞袋和跳躍式結構
然這些嵌入在概念上與使用前饋神經網絡學習的嵌入技術沒有什么不同,但是對非常大的語料庫的訓練使它們能夠捕獲諸如性別,動詞時態和國家 - 資本關系之類的單詞之間的某些關系,這可以看出在下面的圖4中。
圖4
這些關系及其背后的意義引發了對嵌入詞的初步興趣,許多研究調查了這些線性關系的起源(Arora等,2016; Mimno&Thompson,2017; Antoniak&Mimno,2018; Wendlandt等,2018) )。然而,使用預訓練嵌入作為初始化的固定詞嵌入作為當前NLP的主要內容被證明可以提高各種下游任務的性能。
雖然捕獲的關系word2vec具有直觀且幾乎神奇的質量,但后來的研究表明word2vec沒有任何固有的特殊性:通過矩陣分解也可以學習單詞嵌入(Pennington等,2014; Levy&Goldberg,2014) 通過適當的調整,經典的矩陣分解方法(如SVD和LSA)可以獲得類似的結果(Levy等,2015)。
從那時起,許多工作已經開始探索單詞嵌入的不同方面(正如原始論文的引用次數所示)。看看這篇文章,了解一些趨勢和未來方向。盡管有許多發展,但word2ve仍然是一種流行的選擇并且在今天被廣泛使用。Word2vec的范圍甚至超出了單詞級別:帶有負抽樣的skip-gram,一個基于本地環境學習嵌入的方便目標,已被應用于學習句子的表示(Mikolov&Le,2014; Kiros et al 2015)---甚至超越NLP ---到網絡(Grover&Leskovec,2016) 和生物序列(Asgari&Mofrad,2015)等等。
一個特別令人興奮的方向是將不同語言的單詞嵌入投影到同一空間中以實現跨語言轉移。越來越有可能以完全無監督的方式學習良好的投射(至少對于類似的語言)(Conneau等,2018; Artetxe等,2018;S?gaard等,2018),打開低資源語言和無監督機器翻譯的應用程序(Lample等,2018; Artetxe等,2018)。看看(Ruder et al。,2018) 概述。
2013年 - NLP的神經網絡
2013年和2014年是神經網絡模型開始在NLP中被采用的時間。三種主要類型的神經網絡成為使用最廣泛的:循環神經網絡,卷積神經網絡和遞歸神經網絡。
循環神經網絡? 循環神經網絡(RNN)是處理NLP中普遍存在的動態輸入序列的明顯選擇。Vanilla RNNs(Elman,1990)被經典的長期短期記憶網絡迅速取代(Hochreiter&Schmidhuber,1997),證明了對消失和爆炸梯度問題更具彈性。在2013年之前,仍然認為RNN很難訓練;Ilya Sutskever的博士論文是改變這種說法的一個關鍵例子。LSTM結構圖可以在下面的圖5中看到。雙向LSTM(Graves et al。,2013) 通常用于處理左右上下文。
圖5
卷積神經網絡? 隨著卷積神經網絡(CNN)被廣泛應用于計算機視覺,它們也開始應用于語言(Kalchbrenner等,2014; Kim等,2014)。用于文本的卷積神經網絡僅在兩個維度上操作,其中濾波器僅需要沿時間維度移動。下面的圖6顯示了NLP中使用的典型CNN。
圖6
卷積神經網絡的一個優點是它們比RNN更可并行化,因為每個時間步的狀態僅取決于本地環境(通過卷積運算)而不是像RNN中的所有過去狀態。CNN可以使用擴張的卷積擴展到更廣泛的感受野,以捕捉更廣泛的背景(Kalchbrenner等,2016)。CNN和LSTM也可以組合和堆疊(Wang et al。,2016) 和卷積可以用來加速LSTM(Bradbury et al。,2017)
遞歸神經網絡? RNN和CNN都將語言視為序列。然而,從語言學的角度來看,語言本質上是等級的:單詞被組成高階短語和子句,它們本身可以根據一組生產規則遞歸地組合。將句子視為樹而不是序列的語言啟發思想產生了遞歸神經網絡(Socher et al。,2013),可以在下面的圖7中看到。
圖7
機器翻譯成了這個框架的殺手級應用。2016年,谷歌宣布開始用神經機器翻譯模型替換其基于單片短語的MT模型(Wu et al。,2016)。根據Jeff Dean的說法,這意味著用500行神經網絡模型替換500,000行基于短語的機器翻譯代碼。
與從左到右或從右到左處理句子的RNN相比,遞歸神經網絡從下到上構建序列的表示。在樹的每個節點處,通過組合子節點的表示來計算新表示。由于樹也可以被視為在RNN上施加不同的處理順序,LSTM自然地擴展到樹木(Tai et al。,2015)
不僅可以擴展RNN和LSTM以使用分層結構。不僅可以基于本地語言而且可以基于語法背景來學習單詞嵌入(Levy&Goldberg,2014); 語言模型可以基于句法堆棧生成單詞(Dyer et al。,2016); 圖形卷積神經網絡可以在樹上運行(Bastings等,2017)
2014年 - 序列到序列模型
2014年,Sutskever等人。提出的序列到序列學習,一種使用神經網絡將一個序列映射到另一個序列的通用框架。在該框架中,編碼器神經網絡按符號處理句子并將其壓縮成矢量表示; 然后,解碼器神經網絡基于編碼器狀態逐個符號地預測輸出符號,在每個步驟中將先前預測的符號作為輸入,如下面的圖8所示。
圖8
機器翻譯成了這個框架的殺手級應用。2016年,谷歌宣布開始用神經MT模型替換其基于單片短語的MT模型(Wu et al。,2016)
。根據Jeff Dean的說法,這意味著用500線神經網絡模型替換500,000行基于短語的MT代碼。
由于其靈活性,該框架現在是自然語言生成任務的首選框架,不同的模型承擔編碼器和解碼器的角色。重要的是,解碼器模型不僅可以以序列為條件,而且可以以任意表示為條件。這使得例如基于圖像生成標題(Vinyals等,2015)
(如下圖9所示),基于表格的文本(Lebret等,2016),以及基于源代碼更改的描述(Loyola等,2017),以及許多其他應用程序。
圖9 基于圖像生成標題
序列到序列學習甚至可以應用于NLP中常見的結構化預測任務,其中輸出具有特定結構。為簡單起見,輸出是線性化的,如下面圖10中的選區解析所示。在給予選區解析的足夠數量的訓練數據的情況下,神經網絡已經證明能夠直接學習產生這種線性化輸出(Vinyals等,2015)和命名實體識別(Gillick等,2016)等等。
圖10 線性化選區分析樹
用于序列和解碼器的編碼器通常基于RNN,但是可以使用其他模型類型。新架構主要來自MT的工作,MT作為序列到序列架構的培養皿。最近的模型是深LSTM(Wu et al。,2016),卷積編碼器(Kalchbrenner等,2016; Gehring等,2017),變壓器(Vaswani等,2017),將在下一節討論,以及LSTM和變壓器的組合(Chen et al。,2018)
2015年 - 注意力
注意力(Bahdanau等,2015)是神經MT(NMT)的核心創新之一,也是使NMT模型優于基于經典短語的MT系統的關鍵思想。序列到序列學習的主要瓶頸是它需要將源序列的整個內容壓縮成固定大小的矢量。注意力通過允許解碼器回顧源序列隱藏狀態來減輕這種情況,然后將其作為加權平均值提供給解碼器的附加輸入,如下面的圖11所示。
圖11 注意力
有不同形式的關注(Luong等,2015)。注意力廣泛適用,并且可能對任何需要根據輸入的某些部分做出決策的任務有用。它已被應用于選區解析(Vinyals等,2015)閱讀理解(Hermann et al。,2015)和一次性學習(Vinyals等,2016)等等。輸入甚至不需要是序列,但可以包含其他表示,如圖像字幕的情況(Xu et al。,2015),這可以在下面的圖12中看到。注意力的一個有用的副作用是,它通過檢查輸入的哪些部分基于注意力權重與特定輸出相關,提供了一種罕見的 - 如果只是膚淺的 - 一瞥模型的內部工作。
圖12 圖像字幕模型中的視覺注意,指示模型在生成單詞“飛盤”時所遵循的內容
注意力也不僅限于查看輸入序列; 自我注意可用于查看句子或文檔中的周圍單詞以獲得更多上下文敏感的單詞表示。多層自我關注是Transformer架構的核心(Vaswani等,2017),目前最先進的NMT模型。
2015年 - 基于內存的網絡
注意力可以看作是模糊記憶的一種形式,其中記憶由模型的過去隱藏狀態組成,模型選擇從記憶中檢索的內容。有關注意事項及其與內存的關聯的更詳細概述,請查看此文章。已經提出了許多具有更明確記憶的模型。它們有不同的變體,例如神經圖靈機(Graves et al。,2014),Memory Networks(Weston et al。,2015) 和端到端內存網絡(Sukhbaatar等,2015),動態記憶網絡(Kumar et al。,2015),神經可微分計算機(Graves et al。,2016)和經常性實體網絡(Henaff等,2017)。
通常基于與當前狀態的相似性來訪問存儲器,類似于注意,并且通常可以寫入和讀取存儲器。模型在實現和利用內存方面有所不同。例如,端到端內存網絡多次處理輸入并更新內存以啟用多個推理步驟。神經圖靈機還具有基于位置的尋址,允許他們學習簡單的計算機程序,如排序。基于內存的模型通常應用于任務,其中保留較長時間跨度的信息應該是有用的,例如語言建模和閱讀理解。存儲器的概念非常通用:知識庫或表可以用作存儲器,而存儲器也可以基于整個輸入或其特定部分來填充。
2018年 - 預訓練語言模型
預訓練的單詞嵌入與上下文無關,僅用于初始化模型中的第一層。最近幾個月,一系列監督任務被用于預訓練神經網絡(Conneau等,2017; McCann等,2017; Subramanian等,2018)。相比之下,語言模型只需要未標記的文本; 因此,培訓可以擴展到數十億個令牌,新域和新語言。2015年首次提出預訓練語言模型(Dai&Le,2015); 直到最近,它們才被證明對各種各樣的任務都有益。語言模型嵌入可以用作目標模型中的特征(Peters等,2018) 或者可以根據目標任務數據微調語言模型(Ramachandran等,2017; Howard&Ruder,2018)。添加語言模型嵌入比許多不同任務的最新技術有了很大的改進,如下面的圖13所示。
圖13:語言模型嵌入優于現有技術的改進
已經展示了預訓練語言模型,可以用更少的數據進行學習。由于語言模型僅需要未標記的數據,因此對于標記數據稀缺的低資源語言尤其有用。有關預訓練語言模型潛力的更多信息,請參閱本文。
其他里程碑
其他一些發展不如上面提到的那么普遍,但仍然具有廣泛的影響。
基于字符的表示,在字符上使用CNN或LSTM來獲得基于字符的單詞表示是相當普遍的,特別是對于形態學豐富的語言和形態信息很重要或具有許多未知單詞的任務。據我所知,基于特征的表示首先用于序列標記(Lample等,2016; Plank等,2016)。基于字符的表示減少了必須以增加的計算成本處理固定詞匯表的需要,并且能夠實現諸如完全基于字符的NMT之類的應用(Ling等人,2016; Lee等人,2017)。。
對抗性學習? 對抗性方法已經在風暴中占據了ML的領域,并且在NLP中也以不同的形式使用。對抗性示例越來越廣泛地被廣泛使用,不僅作為探測模型和理解其失敗案例的工具,而且還使它們更加健壯(Jia&Liang,2017)。(虛擬)對抗性訓練,即最壞情況的擾動(Miyato等,2017; Yasunaga等,2018) 和域對抗性損失(Ganin等,2016; Kim等,2017)是有用的正則化形式,可以同樣使模型更加健壯。生成對抗網絡(GAN)對于自然語言生成來說還不是太有效(Semeniuta et al。,2018),但在匹配分布時很有用(Conneau et al。,2018)
強化學習? 強化學習已被證明對于具有時間依賴性的任務非常有用,例如在訓練期間選擇數據(Fang et al。,2017; Wu et al。,2018) 和建模對話(Liu et al。,2018)。RL對于直接優化諸如ROUGE或BLEU的不可微分的末端度量而不是優化代理損失(例如總結中的交叉熵)也是有效的(Paulus等,2018; Celikyilmaz等,2018)。 和機器翻譯(Ranzato等,2016)。類似地,反向強化學習在獎勵太復雜而無法指定的環境中非常有用,例如視覺敘事(Wang et al。,2018)。
非神經里程碑
1998年以及隨后幾年,引入了FrameNet項目(Baker等,1998)這導致了語義角色標記的任務,這是一種淺層語義分析,至今仍在積極研究中。在21世紀初期,與自然語言學習會議(CoNLL)共同組織的共同任務催化了核心NLP任務的研究,如分塊(Tjong Kim Sang et al。,2000),命名實體識別(Tjong Kim Sang et al。,2003)和依賴解??析(Buchholz et al。,2006)等等。許多CoNLL共享任務數據集仍然是當今評估的標準。
2001年,條件隨機場(CRF; Lafferty等,2001),引入了最具影響力的序列標記方法之一,獲得了ICML 2011的時間測試獎。CRF層是當前最先進的模型的核心部分,用于序列標記問題,標簽相互依賴性,如命名實體識別(Lample et al。,2016)。
2002年,雙語評估替補(BLEU; Papineni等,2002)提出了度量標準,這使得MT系統能夠擴展,并且仍然是目前MT評估的標準度量標準。在同一年,結構化的先行者(柯林斯,2002年)介紹,為結構化感知工作奠定了基礎。在同一次會議上,引入了最受歡迎和廣泛研究的NLP任務之一的情緒分析(Pang et al。,2002)。這三篇論文都獲得了2018年NAACL的時間測試獎。
2003年引入了潛在的dirichlet分配(LDA; Blei等,2003),機器學習中使用最廣泛的技術之一,它仍然是進行主題建模的標準方法。在2004年,提出了新的最大邊際模型,它們更適合捕獲結構化數據中的相關性而不是SVM(Taskar等,2004a; 2004b)。
2006年,OntoNotes(Hovy等,2006),介紹了一個具有多個注釋和高交互注入協議的大型多語言語料庫。OntoNotes已被用于培訓和評估各種任務,例如依賴性解析和共參考解析。米爾恩和維滕(2008)2008年描述了維基百科如何用于豐富機器學習方法。到目前為止,維基百科是用于訓練ML方法的最有用的資源之一,無論是用于實體鏈接和消歧,語言建模,作為知識庫還是各種其他任務。
2009年,遠程監督的想法(Mintz et al。,2009)提出了。遠程監督利用來自啟發式或現有知識庫的信息來生成可用于從大型語料庫中自動提取示例的噪聲模式。遠程監督已被廣泛使用,并且是關系提取,信息提取和情感分析以及其他任務中的常用技術。
作者:readilen
鏈接:http://www.lxweimin.com/p/03a76d45fb08
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。