自然語言生成的演變史

2020-11-29 千家智客

[導讀]自科幻電影誕生以來,社會一直對人工智慧著迷。

來源:專知

摘要:自科幻電影誕生以來,社會一直對人工智慧著迷。

每當我們聽到「AI」一詞時,我們的第一個想法通常是電影中的未來機器人,如終結者和黑客帝國。儘管我們距離可以自己思考的機器人還有幾年的時間,但在過去幾年中,機器學習和自然語言理解領域已經取得了重大進展。 個人助理(Siri / Alexa),聊天機器人和問答機器人a等應用程式真正徹底改變了我們與機器和開展日常生活的方式。自然語言理解(NLU)和自然語言生成(NLG)是人工智慧發展最快的應用之一,因為人們越來越需要理解和從語言中獲得意義,其中含有大量含糊不清的結構。 根據Gartner的說法,「到2019年,自然語言生成將成為90%的現代BI和分析平臺的標準功能」。 在這篇文章中,我們將討論NLG成立初期的簡短歷史,以及它在未來幾年的發展方向。

什麼是自然語言生成

語言生成的目標是通過預測句子中的下一個單詞來傳達信息。 可以通過使用語言模型來解決。語言模型是對詞序列的概率分布。 語言模型可以在字符級別,短語級別,句子級別甚至段落級別構建。 例如,為了預測「我需要學習如何___」之後出現的下一個單詞,模型為下一個可能的單詞分配概率,這些單詞可以是「寫作」,「開車」等。神經網絡的最新進展如RNN和LSTM允許處理長句,顯著提高語言模型的準確性。

馬爾可夫鏈

馬爾可夫鏈是最早用於語言生成的算法之一。 它通過使用當前單詞來預測句子中的下一個單詞。 例如,如果模型僅使用以下句子進行訓練:「我早上喝咖啡」和「我吃三明治加茶」。 有100%的可能性預測「咖啡」跟隨「飲酒」,而「我」有50%的機會跟著「喝」,50%跟隨「吃」。 馬爾可夫鏈考慮每個獨特單詞之間的關係來計算下一個單詞的概率。 它們在早期版本的智慧型手機鍵盤中使用,為句子中的下一個單詞生成建議。

遞歸神經網絡(RNN)

神經網絡是受人類大腦運作啟發的模型,通過建模輸入和輸出之間的非線性關係提供另一種計算方法 - 它們用於語言建模被稱為神經語言建模。

RNN是一種可以利用輸入的順序性質的神經網絡。 它通過前饋網絡傳遞序列的每個項目,並將模型的輸出作為序列中下一項的輸入,允許存儲前面步驟中的信息。 RNN擁有的「記憶」使它們非常適合語言生成,因為它們可以隨時記住對話的背景。 RNN與馬爾可夫鏈不同,因為它會查看先前看到的單詞來進行預測。

用於語言生成的RNN

在RNN的每次迭代中,模型在其存儲器中存儲遇到的先前單詞並計算下一單詞的概率。 例如,如果模型生成了文本「我們需要租用___」,那麼它現在必須弄清楚句子中的下一個單詞。 對於字典中的每個單詞,模型根據它看到的前一個單詞分配概率。 在我們的例子中,「house」或「car」這個詞比「river」或「dinner」這樣的詞有更高的概率。 選擇具有最高概率的單詞並將其存儲在存儲器中,然後模型繼續進行下一次迭代。

RNN受到梯度消失的限制。 隨著序列的長度增加,RNN不能存儲在句子中遠處遇到的單詞,並且僅基於最近的單詞進行預測。 這限制了RNN用於產生聽起來連貫的長句子的應用。

LSTM

基於LSTM的神經網絡是RNN的變體,旨在更準確地處理輸入序列中的長程依賴性。 LSTM具有與RNN類似的鏈式結構; 然而,它們包括四層神經網絡而不是RNN的單層網絡。 LSTM由4個部分組成:單元,輸入門,輸出門和忘記門。 這些允許RNN通過調節單元的信息流來記住或忘記任意時間間隔的單詞。

考慮以下句子作為模型的輸入:「我來自西班牙。我精通____。「為了正確預測下一個單詞為」西班牙語「,該模型在前面的句子中側重於」西班牙「一詞,並使用單元格的記憶」記住「它。該信息在處理序列時由單元存儲,然後在預測下一個字時使用。當遇到句號時,遺忘門意識到句子的上下文可能有變化,並且可以忽略當前的單元狀態信息。這允許網絡選擇性地僅跟蹤相關信息,同時還最小化消失的梯度問題,這允許模型在更長的時間段內記住信息。

LSTM及其變體似乎是消除漸變以產生連貫句子的問題的答案。然而,由於仍存在從先前單元到當前單元的複雜順序路徑,因此可以節省多少信息存在限制。這將LSTM記憶的序列長度限制為幾百個單詞。另一個缺陷是LSTM由於高計算要求而非常難以訓練。由於它們的順序性,它們難以並行化,限制了它們利用諸如GPU和TPU之類的現代計算設備的能力。

Transformer

Transformer最初是在2017年Google論文「Attention is all you need」中引入的,它提出了一種稱為「自注意力機制」的新方法。變形金剛目前正在各種NLP任務中使用,例如語言建模,機器翻譯和文本生成。變換器由一堆編碼器組成,用於處理任意長度的輸入和另一堆解碼器,以輸出生成的句子。

與LSTM相比,Transformer僅執行小的,恆定數量的步驟,同時應用自注意力機制,該機制直接模擬句子中所有單詞之間的關係,而不管它們各自的位置如何。當模型處理輸入序列中的每個單詞時,自注意力允許模型查看輸入序列的其他相關部分以更好地編碼單詞。它使用多個注意頭,擴展了模型聚焦在不同位置的能力,無論它們在序列中的距離如何。

最近,對普通Transformer架構進行了一些改進,顯著提高了它們的速度和精度。在2018年,谷歌發布了一篇關於變形金剛雙向編碼器表示的論文(BERT),該論文為各種NLP任務提供了最先進的結果。同樣,在2019年,OpenAI發布了一個基於變換器的語言模型,其中包含大約15億個參數,只需幾行輸入文本即可生成長篇連貫的文章。

用於語言生成的Transformer

最近,Transformer也被用於語言生成。 用於語言生成的Transformer最著名的例子之一是OpenAI,他們的GPT-2語言模型。 該模型通過使用注意力集中於先前在模型中看到的與預測下一個單詞相關的單詞來學習預測句子中的下一個單詞。

使用變形金剛生成文本的基礎與機器翻譯所遵循的結構類似。如果我們採用一個例句「她的禮服有粉紅色,白色和___點。」該模型將預測藍色,通過使用自注意力分析列表中的前一個單詞作為顏色(白色和粉紅色)並理解期望的詞也需要是一種顏色。自我關注允許模型選擇性地關注每個單詞的句子的不同部分,而不是僅僅記住循環塊(在RNN和LSTM中)的一些特徵,這些特徵通常不會用於幾個塊。這有助於模型回憶起前一句的更多特徵,並導致更準確和連貫的預測。與以前的模型不同,Transformer可以在上下文中使用所有單詞的表示,而無需將所有信息壓縮為單個固定長度表示。這種架構允許變換器在更長的句子中保留信息,而不會顯著增加計算要求。它們在跨域的性能也優於以前的模型,無需特定領域的修改。

語言生成的未來

在這篇博客中,我們看到了語言生成的演變,從使用簡單的馬爾可夫鏈生成句子到使用自我注意模型生成更長距離的連貫文本。然而,我們正處於生成語言建模的曙光,而變形金剛只是向真正自主文本生成方向邁出的一步。還針對其他類型的內容(例如圖像,視頻和音頻)開發了生成模型。這開啟了將這些模型與生成文本模型集成的可能性,以開發具有音頻/視覺界面的高級個人助理。

然而,作為一個社會,我們需要謹慎對待生成模型的應用,因為它們為生成假新聞,虛假評論和在線冒充人們開闢了多種可能性。 OpenAI決定拒絕發布他們的GPT-2語言模型,因為它可能被誤用,這證明了我們現在已經進入了一個語言模型足夠引起關注的時代。

生成模型有可能改變我們的生活;然而,它們是一把雙刃劍。通過對這些模型進行適當的審查,無論是通過研究界還是政府法規,未來幾年在這一領域肯定會取得更多進展。無論結果如何,都應該有激動人心的時刻!

相關焦點

  • 一文縱覽自然語言生成的發展
    機器人具有獨立思考的能力在目前看來還比較遙遠,但機器學習和自然語言理解領域已經在過去幾年取得了重大進展。個人助理(Siri/Alexa)、聊天機器人及問答機器人等應用程式正悄無聲息地改變著人們的生活方式。
  • 中科院自動化所提出BIFT模型:面向自然語言生成,同步雙向推斷
    正文內容如下:前言:概括地講,自然語言處理包括兩大任務:自然語言文本理解和自然語言文本生成。自然語言文本理解就是讓機器洞悉人們所言之意,自然語言文本生成旨在讓機器像人一樣表達和說話。文本理解的關鍵在於對已知文本的上下文表徵和建模,而文本生成的本質是在文本理解的基礎上準確流暢地產生自然語言文本。
  • NeurIPS|既能理解又能生成自然語言,微軟提出統一預訓練新模型
    在機器之心的 SOTA 項目中,我們同樣發現 UniLM 模型在很多自然語言理解、自然語言生成任務中有非常好的效果,並且在機器閱讀理解等方面能獲得當前最優的水平。為此,本文將介紹 UniLM 這項研究工作,該研究已經被接收為 NeurIPS 2019 論文。
  • Arria自然語言生成技術擴大了BBC對英國大選的新聞報導
    在唱票後幾分鐘內發表英國690個選區每個選區的本地選舉新聞和結果 新澤西州莫裡斯鎮2019年12月18日 /美通社/ -- Arria NLG今天宣布,BBC新聞網站通過其Semi-Automatic Local Content(半自動本地化內容,簡稱「Salco」)項目擴大了對Arria的自然語言生成
  • ...不用跨界也能從文本生成圖像,OpenAI新模型打破自然語言與視覺...
    自然語言與視覺的次元壁正在被打破。這不,OpenAI 最近連發大招,提出兩個連接文本與圖像的神經網絡:DALL·E 和 CLIP。DALL·E 可以基於文本直接生成圖像,CLIP 則能夠完成圖像與文本類別的匹配。OpenAI 的新工作引起了 AI 圈的一陣歡呼。
  • 科普自然語言處理
    自然語言通常是指一種自然地隨文化演化的語言。例如,漢語、英語、日語為自然語言的例子,這一種用法可見於自然語言處理一詞中。自然語言是人類交流和思維的主要工具。以上是百度百科對自然語言的釋義。語言是信息的載體,如同數字、文字、圖像、視頻等一樣,它們的目的都是為了記錄和傳播信息。
  • 《饑荒》發光飛蟲介紹 最弱動物的演變史
    發光飛蟲是《饑荒》哈姆雷特dlc中的一種生物,只擁有1點血量而且不躲著人走,經過結繭後還會生成另一種生物。那麼今天就就來看看發光飛蟲的演變史和它有什麼作用吧!以上就是關於發光飛蟲演變史的介紹了,希望可以對你有所幫助!
  • 自然語言處理深度學習的7個應用
    基於卷積神經網絡的句子分類,20142、 語言建模語言建模真的是更有趣的自然語言問題的一個子任務,特別是那些在其它輸入條件下的語言模型。…問題是根據給出的前一個詞來預測下一個詞。這項任務是語音或光學字符識別的基礎,也用於拼寫矯正,手寫識別和統計機器翻譯。—191頁,統計自然語言處理基礎,1999.
  • 什麼是自然語言處理?它為什麼比計算機視覺更重要?
    自然語言是指中文、英語、西班牙語、法語、德語等等語言,作為人們日常使用的其他語言,它們對人類的交流有著重要作用。自然語言是隨著人類社會的發展而自然產生的語言,而不是由人類所特意創造的語言。自然語言是人們日常學習生活的重要工具和媒介,如果人類失去交流的能力,文明就失去了意義。
  • 實踐入門NLP:基於深度學習的自然語言處理
    特別是最近兩年,基於深度學習的自然語言處理逐漸取得了一定進展,在人機對話、問答系統、語言翻譯等方向的應用也一直是自然語言處理中的熱門話題,而這些應用的實現,基本依賴於底層技術和模型的進步,再加上自然語言處理領域也算是一個多學科交叉的行業,自然語言處理的未來發展對於很多相關學科和方向都具有深遠的影響力。
  • 自然語言處理起源:馬爾科夫和香農的語言建模實驗
    選自towardsdatascience作者:Raimi Karim機器之心編譯參與:王子嘉、Geek AI語言建模和文本生成是當下自然語言處理領域非常火熱的兩個研究課題和馬爾科夫一樣,香農通過一些文本實驗證明了這一點,這些文本實驗除了建立語言的統計模型外,還嘗試了使用該模型根據這些統計規則生成文本。
  • AI自然語言處理(NLP)領域常用的16個術語
    自然語言處理(NLP)是人工智慧領域一個十分重要的研究方向。NLP研究的是實現人與計算機之間用自然語言進行有效溝通的各種理論與方法。本文整理了NLP領域常用的16個術語,希望可以幫助大家更好地理解這門學科。
  • 自然語言處理的經驗主義和理性主義
    傑裡內克的這些話,把基於規則的自然語言處理研究貶低到了一無是處的程度,把從事基於規則的自然語言處理研究的人,貶低到了一文不值的程度,對於基於規則的自然語言處理,採取嗤之以鼻的態度。哲學中的這種經驗主義深刻地影響到自然語言處理中基於統計的經驗主義方法,它是自然語言處理中經驗主義方法的哲學基礎。在自然語言處理中,除了基於統計的經驗主義方法之外,還同時存在著基於規則的理性主義方法。自然語言處理中的理性主義來源於哲學中的理性主義。
  • 從語言學到深度學習NLP,一文概述自然語言處理
    本文從兩篇論文出發先簡要介紹了自然語言處理的基本分類和基本概念,再向讀者展示了深度學習中的 NLP。這兩篇論文都是很好的綜述性入門論文,希望詳細了解自然語言處理的讀者可以進一步閱讀這兩篇論文。本文第一部分介紹了自然語言處理的基本概念,作者將 NLP 分為自然語言理解和自然語言生成,並解釋了 NLP 過程的各個層級和應用,這一篇論文很適合讀者系統的了解 NLP 的基本概念。
  • 手錶黑夜中的「明燈」,勞力士夜光物料的演變史
    說到這裡,想必大家對夜光物料的過程會感興趣,今天就為大家講講勞力士夜光物料的演變史。註:勞力士夜光物料的使用過程幾乎可以作為制表業夜光的進階史。鐳最早被使用在手錶上的物料為鐳,被著名的化學、物理學家居裡夫人於1902年發現,這種物質因本身的輻射而發光,無需接觸自然或人工光線,便能產生夜光效果。
  • 人工智慧難點之——自然語言處理(NLP)
    (人工智慧主要包含以下幾個方面: 自動推理-計算語言學-計算機視覺-進化計算-專家系統-自然語言處理-機器人學)自然語言處理(NLP)是資訊時代最重要的技術之一。理解複雜的語言也是人工智慧的重要組成部分。NLP的應用無處不在,因為人們用語言進行大部分溝通:網絡搜索,廣告,電子郵件,客戶服務,語言翻譯,發布學報告等等。
  • 2019 自然語言處理前沿論壇,百度NLP技術全揭秘
    雷鋒網 AI 科技評論按,近日,由百度聯合中國計算機學會中文信息技術專委會、中國中文信息學會青工委舉辦的「2019 自然語言處理前沿論壇」上,來自百度和各大高校的嘉賓們分享了關於 NLP 技術研究的心得體會。
  • 想攻克自然語言處理?你需要這個武器
    用戶:給我叫一輛計程車
  • AI閱卷「翻車」 其實是「翻」在了自然語言處理
    AI閱卷系統則涉及到對語言文字的評判,涵蓋很多方面,如語法、語義等,會大量運用到自然語言處理技術。「自然語言處理技術是人工智慧的一個重要分支,研究利用計算機對自然語言進行智能化處理,基礎的自然語言處理技術主要圍繞語言的不同層級展開,包括音位(語言的發音模式)、形態(字、字母如何構成單詞、單詞的形態變化)、詞彙(單詞之間的關係)、句法(單詞如何形成句子)、語義(語言表述對應的意思)、語用(不同語境中的語義解釋)、篇章(句子如何組合成段落)7個層級。」
  • 自然語言處理必讀:5本平衡理論與實踐的書籍
    1.應用Python進行自然語言處理(Natural Language Processing with Python)本書由Steven Bird, Ewan Klein 和 Edward Loper編寫,你可以從Python系統的角度學習自然語言處理的實用基礎知識,更適合初學者。