通過深度學習的先進技術(shù),自然語言處理取得了令人難以置信的進步。了解這些強大的模型,并發(fā)現(xiàn)這些方法與人類水平的理解有多近(或遙遠)。
人類有很多感覺,但我們的感官體驗通常以視覺為主??紤]到這一點,現(xiàn)代機器學習的先鋒由計算機視覺任務主導可能并不奇怪。同樣,當人類想要交流或接收信息時,他們使用的最普遍,最自然的途徑就是語言。語言可以通過口頭和書面單詞,手勢或某種方式的組合來傳達,但是出于大數(shù)據(jù)分析深度學習在自然語言處理NLP中的應用的目的,我們將重點放在書面單詞上(盡管此處的許多課程也與口頭演講重疊)。
多年來,我們已經(jīng)看到了自然語言處理領(lǐng)域(又名NLP,不要與混淆 的是 NLP)與深層神經(jīng)網(wǎng)絡對正在進行的腳后跟緊跟 深度學習計算機視覺。隨著預訓練的通用語言模型的出現(xiàn),我們現(xiàn)在有了將學習轉(zhuǎn)移到具有大規(guī)模預訓練模型(例如GPT-2,BERT和ELMO)的新任務的方法。這些模型和類似模型在世界范圍內(nèi)都在進行實際工作,無論是日常課程(翻譯,轉(zhuǎn)錄等),還是在科學知識前沿的發(fā)現(xiàn)(例如,根據(jù)出版文本[pdf]預測材料科學的發(fā)展 ) 。
長期以來,外國人和母語人士對語言的掌握程度一直被認為是博學的個體的標志。一位杰出的作家或一個會說流利的多種語言的人受到高度重視,并有望在其他領(lǐng)域也很聰明。掌握任何語言以達到母語水平的流利程度都非常困難,甚至要賦予其高雅的風格和/或非凡的清晰度。但是,即使是典型的人類熟練程度,也表現(xiàn)出令人難以置信的能力,可以解析復雜的消息,同時可以在上下文,語句,方言以及語言理解的不可動搖的混雜因素(諷刺和諷刺)中破譯大量的編碼變化。
理解語言仍然是一個難題,盡管在許多領(lǐng)域得到了廣泛使用,但是使用機器進行語言理解的挑戰(zhàn)仍然存在許多未解決的問題。請考慮以下模糊和奇怪的單詞或短語對。表面上,每對成員具有相同的含義,但無疑傳達出細微的差別。對于我們許多人而言,唯一的細微差別可能是無視語法和語言的精確性,但是拒絕承認通用含義在大多數(shù)情況下會使語言模型看起來很愚蠢。
不在乎=(?)可以少關(guān)心
不管=(?)而不管
從字面上看=(?)比喻地
動態(tài)的=(?)動態(tài)
入門:泛化和轉(zhuǎn)移學習
深度學習在現(xiàn)代上的成功大部分歸功于轉(zhuǎn)移學習的效用。轉(zhuǎn)移學習使從業(yè)人員可以利用模型先前的培訓經(jīng)驗來更快地學習新任務。憑借原始參數(shù)計數(shù)和先進的深度網(wǎng)絡培訓狀態(tài)的計算要求,轉(zhuǎn)移學習對于實踐中深度學習的可訪問性和效率至關(guān)重要。如果您已經(jīng)熟悉遷移學習的概念,請?zhí)较乱徊糠?,以了解隨著時間的推移,深度NLP模型的繼承情況。
轉(zhuǎn)移學習是一個微調(diào)過程:與從頭開始訓練整個模型相比,僅對模型的那些特定于任務的部分進行重新訓練可以節(jié)省時間和精力,同時節(jié)省計算和工程資源。這是安德烈·卡帕蒂(Andrej Karpathy),杰里米·霍華德(Jeremy Howard)以及深度學習社區(qū)中許多其他人所擁護的“不要成為英雄”的心態(tài)。
從根本上講,轉(zhuǎn)移學習包括保留模型的低級通用組件,而僅重新訓練模型中那些專門的部分。在僅重新初始化一些特定于任務的層之后,訓練整個預先訓練的模型有時也是有利的。
深度神經(jīng)網(wǎng)絡通常可以分為兩部分:學習識別低級特征的編碼器或特征提取器,以及將這些特征轉(zhuǎn)換為所需輸出的解碼器。這個卡通示例基于一個用于處理圖像的簡化網(wǎng)絡,編碼器由卷積層組成,解碼器由幾個完全連接的層組成,但是相同的概念也可以輕松應用于自然語言處理。
在深度學習模型中,編碼器和解碼器之間通常是有區(qū)別的,編碼器是主要學習提取低級特征的一層堆棧,而解碼器是模型的一部分,它將編碼器輸出的特征轉(zhuǎn)換為分類,像素分割,下一步預測等。采用預先訓練的模型并初始化和重新訓練新的解碼器可以在更少的訓練時間內(nèi)獲得最新的性能。這是因為較低層趨于學習圖像中最通用的特征,特征(如邊緣,點和波紋)(即 圖像模型中的Gabor濾波器)。實際上,選擇編碼器和解碼器之間的截止點比科學還重要,但是請參見 Yosinki等。2014年 研究人員在其中量化了要素在不同層的可傳遞性。
相同的現(xiàn)象可以應用于NLP??梢詫⒔?jīng)過良好訓練的NLP模型訓練為通用語言建模任務(根據(jù)給定的文本預測下一個單詞或字符),可以對許多更具體的任務進行微調(diào)。這節(jié)省了 從頭訓練這些模型之一的 大量能源和經(jīng)濟成本,這就是我們擁有杰作的杰作的原因。
這兩個示例均建立在OpenAI的GPT-2之上 ,并且這些以及大多數(shù)其他生成式NLP項目比其他任何地方都更直接地進入喜劇領(lǐng)域。但是,使用通用的NLP變壓器(如GPT-2)進行的轉(zhuǎn)移學習正在迅速從愚蠢的斜坡滑落到不可思議的山谷。在這種情況發(fā)生之后,我們將處于可信度的邊緣,在這種可信度下,機器學習模型生成的文本可以用作人工編寫副本的替代品。有人猜測我們距離實現(xiàn)這些飛躍有多近,但是這可能并不像人們想象的那么重要。NLP模型不一定是莎士比亞,對于某些應用程序而言,有時可能會生成足夠好的文本。操作員可以選擇或編輯輸出以實現(xiàn)所需的輸出質(zhì)量。
在過去十年中,自然語言處理(NLP)取得了長足的進步。一路走來,有很多不同的方法可以提高諸如情感分析和BLEU 機器翻譯基準之類的任務的性能 。已經(jīng)嘗試了許多不同的體系結(jié)構(gòu),其中某些可能更適合給定的任務或硬件約束。在接下來的幾節(jié)中,我們將研究用于語言建模的深度學習NLP模型的族譜。
遞歸神經(jīng)網(wǎng)絡
循環(huán)神經(jīng)網(wǎng)絡中的一個或多個隱藏層與先前的隱藏層激活有聯(lián)系。
下面是大數(shù)據(jù)分析深度學習在自然語言處理NLP中的應用和其他圖中圖形的關(guān)鍵:
語言是序列數(shù)據(jù)的一種。與圖像不同,它按預定方向一次解析一個塊。句子開頭的文本可能與后面的元素有重要關(guān)系,并且可能需要記住一段文字中更早的概念,以便以后理解信息。有意義的是,語言的機器學習模型應該具有某種內(nèi)存,而遞歸神經(jīng)網(wǎng)絡(RNN)則通過與先前狀態(tài)的連接來實現(xiàn)內(nèi)存。在給定時間狀態(tài)下,隱藏層中的激活取決于之前一步的激活,這又取決于它們之前的值,依此類推,直到語言序列開始為止。
由于輸入/輸出數(shù)據(jù)之間的依存關(guān)系可以追溯到序列的開頭,因此網(wǎng)絡實際上非常深。這可以通過將網(wǎng)絡“展開”到其順序深度來可視化,從而揭示導致給定輸出的操作鏈。這是個非常 明顯的版本中的 消失梯度問題。因為在每個先前的時間步長中,用于為錯誤分配功勞的坡度乘以小于1.0的數(shù)字,所以訓練信號會不斷衰減,并且早期權(quán)重的訓練信號會變得非常小。解決RNN中長期依賴關(guān)系的困難的一種解決方法是完全沒有。
儲層計算和回波狀態(tài)網(wǎng)絡
回波狀態(tài)網(wǎng)絡就像RNN,但具有使用固定的未經(jīng)訓練的權(quán)重的循環(huán)連接。網(wǎng)絡的此固定部分通常稱為存儲庫。
回聲狀態(tài)網(wǎng)絡是具有固定循環(huán)連接的RNN的子類。使用靜態(tài)遞歸連接避免了用逐漸消失的梯度訓練它們的困難,并且在RNN的許多早期應用中, 回波狀態(tài)網(wǎng)絡的 性能優(yōu)于經(jīng)過反向傳播訓練的RNN。一個簡單的學習層,通常是一個完全連接的線性層,可以分析儲層的動態(tài)輸出。這使得訓練網(wǎng)絡變得更加容易,并且必須初始化儲層以使其具有復雜且持續(xù)但受限的輸出。
回波狀態(tài)網(wǎng)絡具有混沌特性,因為早期輸入可能對以后的儲層狀態(tài)產(chǎn)生長期影響。因此,回波狀態(tài)網(wǎng)絡的功效歸因于“內(nèi)核技巧”(輸入被非線性轉(zhuǎn)換為高維特征空間,可以在其中線性分離輸入)和混亂。實際上,這可以通過定義具有隨機權(quán)重的稀疏循環(huán)連接層來實現(xiàn)。
回聲狀態(tài)網(wǎng)絡和儲層計算在很大程度上已被其他方法所取代,但事實證明,它們避免消失的梯度問題在某些語言建模任務(如學習語法 或 語音識別)中很有用 。但是,在使NLP轉(zhuǎn)移學習成為可能的廣義語言建模中,儲層計算從未產(chǎn)生太大影響。
LSTM和門控RNN
長期短期記憶引入了門,以選擇性地將激活保持在所謂的單元狀態(tài)。
LSTM由Sepp Hochreiter和JürgenSchmidhuber [pdf]于1997年發(fā)明,旨在 使用“恒定誤差輪播”或CEC解決消失的梯度問題。CEC是一個持久的門控細胞狀態(tài),周圍是非線性神經(jīng)層,這些神經(jīng)層打開和關(guān)閉“門”(使用S形激活函數(shù)之類的值在0和1之間壓縮)。這些非線性層選擇應將哪些信息合并到單元狀態(tài)激活中,并確定傳遞給輸出層的內(nèi)容。單元狀態(tài)層本身不具有激活功能,因此,當其值以接近1.0的門值從一個時間步長傳遞到另一個時間步長時,漸變可以在輸入序列中跨很長的距離完整地向后流動。已經(jīng)有了很多的發(fā)展和 新版本適用于改進培訓,簡化參數(shù)計數(shù)并應用于新領(lǐng)域的LSTM。這些改進中最有用的方法之一是Gers等人開發(fā)的忘記門 。在2000年 (如圖所示),如此之多,以至于帶有遺忘門的LSTM通常被認為是“標準” LSTM。
門控或乘法RNN對來自最后一個隱藏狀態(tài)的輸出使用逐個元素的乘法運算,以確定在當前時間步將合并到新的隱藏狀態(tài)中的內(nèi)容。
門控或乘法RNN(MRNN)與LSTM非常相似,盡管不太復雜。像LSTM一樣,MRNN使用乘法運算來控制網(wǎng)絡的最后隱藏狀態(tài),并且門限值由接收來自輸入數(shù)據(jù)的神經(jīng)層確定。Sutskever 等人在2011年將MRNN用于字符級語言建模 。 [ pdf ]并擴展到Chung等人在更深的MRNN(門控反饋RNN)中跨深度選通 。 在2015年。也許因為它們更簡單,所以在某些語言建模方案上,MRNN和門控反饋RNN可以勝過LSTM,具體取決于誰來處理它們。
帶有遺忘門的LSTM已成為各種引人注目的自然語言處理模型的基礎(chǔ),其中包括OpenAI的“ 無監(jiān)督情感神經(jīng)元 ”(論文),以及 2016年百度神經(jīng)機器翻譯模型的性能大幅提升。在通過無監(jiān)督情感神經(jīng)元模型進行轉(zhuǎn)移學習的演示之后,塞巴斯蒂安·魯?shù)?Sebastian Ruder)和杰里米·霍華德(Jeremy Howard)開發(fā)了無監(jiān)督語言模型用于文本分類的微調(diào) (ULM-FiT),該方法利用預訓練來獲得最新的性能。六個特定的文本分類數(shù)據(jù)集。
盡管ULM-FiT和Unsupervised Sentiment Neuron不存在,但百度基于LSTM的翻譯??網(wǎng)絡改進的關(guān)鍵部分是注意力的廣泛應用,不僅是工程學上的關(guān)注,還包括學習機器學習中特定部分的特定機器學習概念。輸入數(shù)據(jù)。對NLP模型的關(guān)注是一個很強大的想法,它導致了下一代語言模型的發(fā)展,并且可以說是NLP中當前轉(zhuǎn)移學習的功效的原因。
輸入變壓器
變壓器模型中使用的注意機制概念的圖形描述來自“注意就是您所需要的”。在序列的給定點上,對于每個數(shù)據(jù)向量,權(quán)重矩陣會生成鍵,查詢和值張量。注意機制使用鍵和查詢向量對值向量進行加權(quán),該值向量將與其他所有鍵,查詢,值集一起受到softmax激活,并求和以產(chǎn)生到下一層的輸入。
諸如百度的2016 NMT 網(wǎng)絡之類的語言模型中使用的注意力機制運行得很好,而在機器學習硬件加速器變得足夠強大的時候,導致開發(fā)人員提出了一個問題:“如果我們僅使用注意力一個人呢?” 眾所周知,答案是關(guān)注是實現(xiàn)最新的NLP模型所需的全部(這是 介紹僅關(guān)注模型體系結(jié)構(gòu)的論文的名稱)。
這些模型稱為轉(zhuǎn)換器,與LSTM和其他RNN不同,轉(zhuǎn)換器同時考慮整個序列。他們學會使用注意力來加權(quán)輸入文本序列中每個點的影響。上圖顯示了原始Transformer模型使用的注意力機制的簡單解釋,但是可以從 Jay Alammar 的論文或此博客文章中獲得更深入的解釋 。
與同時連接的模型不同,同時考慮整個序列似乎將模型限制為只能解析固定長度的序列。但是,轉(zhuǎn)換器使用位置編碼(在原始的Transformer中,它基于正弦嵌入矢量),可以方便地以可變的輸入序列長度進行正向傳遞。變壓器架構(gòu)的一次性方法確實帶來了嚴格的內(nèi)存需求,但是在高端現(xiàn)代硬件上進行培訓并簡化內(nèi)存是高效的,并且變壓器的計算需求處于當前和該領(lǐng)域最新發(fā)展的最前沿。
NLP中深層神經(jīng)網(wǎng)絡的結(jié)論和警告
在過去的兩到三年中,Deep NLP確實已經(jīng)成為自己的一員,并且它已經(jīng)開始有效地擴展到應用程序之外的機器翻譯和愚蠢的文本生成領(lǐng)域。NLP的發(fā)展繼續(xù)追隨計算機視覺的象征性腳步,不幸的是,其中包括許多我們以前所見過的相同的失誤,旅行和絆腳石。
其中一個最緊迫的挑戰(zhàn) 是“聰明漢斯效應”,20世紀初的著名表演的馬而得名。簡而言之, 漢斯 是一匹德國馬,作為算術(shù)天賦的馬在公眾面前展出,能夠回答有關(guān)日期和計數(shù)的問題。實際上,他反而是他的教練威廉·馮·奧斯汀(Wilhelm von Osten)解釋潛意識線索的專家。在機器學習中,“聰明漢斯”效應是指通過學習訓練數(shù)據(jù)集中的虛假相關(guān)性來獲得令人印象深刻但最終無用的性能的模型。
例子包括根據(jù)識別出 病情較重的醫(yī)院所使用的機器的類型在X射線中對肺炎進行分類,通過重復最后提到的名字來回答有關(guān)文本中描述的人的問題 以及 現(xiàn)代 顱相學。盡管大多數(shù)NLP項目在無法正常工作時只會產(chǎn)生錯誤的喜劇(例如,上述配方和地牢生成器),但缺乏對NLP和其他機器學習模型如何分解的理解,為現(xiàn)代偽科學的論證鋪平了道路。以及相應的不良政策。這對業(yè)務也不利。想象一下,花費數(shù)千或數(shù)百萬美元來開發(fā)支持NLP的服裝店,該服裝店將返回對無條紋襯衫結(jié)果的搜索查詢,例如無條紋 Github回購襯衫中的結(jié)果。
顯然,盡管最近的進步使深層自然語言處理更加有效和易于使用,但在展示任何與人類理解或綜合相近的東西之前,該領(lǐng)域還有很長的路要走。盡管存在缺陷(沒有Cortana,沒有人希望您將所有話語都路由到Edge瀏覽器上的Internet搜索中),但是NLP是當今廣泛使用的許多產(chǎn)品和工具的基礎(chǔ)。直接符合NLP的缺點,對系統(tǒng)嚴格評估語言模型的需求從未如此清晰。顯然,不僅要改進模型和數(shù)據(jù)集,而且還要以有益的方式打破這些模型,這是重要的工作。
填寫下面表單即可預約申請免費試聽!怕錢不夠?可先就業(yè)掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業(yè)?一地學習,可推薦就業(yè)!
?2007-2022/ www.5wd995.cn 北京漫動者數(shù)字科技有限公司 備案號: 京ICP備12034770號 監(jiān)督電話:010-53672995 郵箱:bjaaa@aaaedu.cc