日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

一文了解自然语言生成演变史!

發(fā)布時(shí)間:2025/3/21 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一文了解自然语言生成演变史! 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作者|Abhishek Sunnak 等

譯者|Sambodhi

編輯|Debra

AI 前線導(dǎo)讀:自然語(yǔ)言生成(Natural Language Generation,NLG)是自然語(yǔ)言處理的一部分,從知識(shí)庫(kù)或邏輯形式等等機(jī)器表述系統(tǒng)去生成自然語(yǔ)言。實(shí)際上,自然語(yǔ)言生成出現(xiàn)已久,至今已有 71 年了。早在 1948 年,Shannon 就把離散馬爾科夫過(guò)程的概率模型應(yīng)用于描述語(yǔ)言的自動(dòng)機(jī)。但商業(yè)自然語(yǔ)言生成技術(shù)知道最近才變得普及。但是,你了解自然語(yǔ)言生成的演變史嗎?

自從科幻電影誕生以來(lái),社會(huì)上就對(duì)人工智能十分著迷。每當(dāng)我們聽(tīng)到“人工智能”這個(gè)詞的時(shí)候,浮現(xiàn)在我們腦海的,往往是科幻電影中那樣的未來(lái)機(jī)器人,比如《Terminator》(《終結(jié)者》)、《The Matrix》(《黑客帝國(guó)》)和《I, Robot》(《我,機(jī)器人》) 等。

盡管我們離能夠獨(dú)立思考的機(jī)器人尚有幾年的時(shí)間,但在過(guò)去的幾年里,機(jī)器學(xué)習(xí)和自然語(yǔ)言理解領(lǐng)域已經(jīng)取得了重大進(jìn)展。個(gè)人助理(Siri/Alexa)、聊天機(jī)器人和問(wèn)答機(jī)器人等應(yīng)用程序正在真正徹底改變我們與機(jī)器的交互方式,并開(kāi)始滲透我們的日常生活。

自然語(yǔ)言理解(Natural Language Understanding,NLU)和自然語(yǔ)言生成(Natural Language Generation,NLG)是人工智能發(fā)展最快的應(yīng)用之一,因?yàn)槿藗冊(cè)絹?lái)越需要從語(yǔ)言中理解并推導(dǎo)出意義,而語(yǔ)言的特點(diǎn)是,有許多歧義和多樣的結(jié)構(gòu)。據(jù) Gartner 稱,“到 2019 年,自然語(yǔ)言生成將成為 90% 的現(xiàn)代商業(yè)智能和分析平臺(tái)的標(biāo)準(zhǔn)功能”。在本文中,我們將討論自然語(yǔ)言生成成立之初的簡(jiǎn)史,以及它在未來(lái)幾年的發(fā)展方向。

什么是自然語(yǔ)言生成?

語(yǔ)言生成的目標(biāo)是通過(guò)預(yù)測(cè)句子中的下一個(gè)單詞來(lái)傳達(dá)信息。使用語(yǔ)言模型可以解決(在數(shù)百萬(wàn)種可能性中)哪個(gè)單詞可能被預(yù)測(cè)的問(wèn)題,語(yǔ)言模型是對(duì)單詞序列的概率分布。語(yǔ)言模型可以在字符級(jí)別、n 元語(yǔ)法級(jí)別、句子級(jí)別甚至段落級(jí)別構(gòu)建。例如,為了預(yù)測(cè) I need to learn how to __ 之后的下一個(gè)單詞,該模型為下一個(gè)可能的單詞集分配了一個(gè)概率,可以是 writedrive 等等。神經(jīng)網(wǎng)絡(luò)(如遞歸神經(jīng)網(wǎng)絡(luò)和長(zhǎng)短期記憶網(wǎng)絡(luò))的最新進(jìn)展是的長(zhǎng)句的處理成為可能,顯著提高了語(yǔ)言模型的正確率。

馬爾科夫鏈

馬爾科夫鏈?zhǔn)亲钤缬糜谡Z(yǔ)言生成的算法之一。它們僅通過(guò)使用當(dāng)前單詞來(lái)預(yù)測(cè)句子中的下一個(gè)單詞。例如,如果模型僅適用以下句子進(jìn)行訓(xùn)練:I drink coffee in the morningI eat sanwiches with tea,那么,它預(yù)測(cè) coffee 會(huì)跟隨 drink 的可能性是 100%,而 I 跟隨 drink 的可能性是 50%,跟隨 eat 的可能性也是 50%。馬爾科夫鏈考慮到每一個(gè)唯一單詞之間的關(guān)系來(lái)計(jì)算下一個(gè)單詞的概率。在早期版本的智能手機(jī)輸入法中,馬爾科夫鏈用于為句子中的下一個(gè)單詞生成建議。

馬爾科夫模型的一個(gè)例句(來(lái)源:Hackernoon)

然而,由于馬爾科夫模型只關(guān)注當(dāng)前單詞,因此會(huì)失去句子中前面單詞的所有上下文和結(jié)構(gòu),從而有可能會(huì)導(dǎo)致錯(cuò)誤的預(yù)測(cè),如此一來(lái),就限制了它們?cè)谠S多生成場(chǎng)景中的適用性。

遞歸神經(jīng)網(wǎng)絡(luò)(RNN)

神經(jīng)網(wǎng)絡(luò)是受人類大腦運(yùn)作的啟發(fā)而建立的模型,通過(guò)對(duì)輸入和輸出之間的非線性關(guān)系建模,為計(jì)算提供了另一種方法,它們?cè)谡Z(yǔ)言建模中的應(yīng)用被稱為神經(jīng)語(yǔ)言建模。

遞歸神經(jīng)網(wǎng)絡(luò)是一種能夠利用輸入的順序性質(zhì)的神經(jīng)網(wǎng)絡(luò)。它通過(guò)前饋網(wǎng)絡(luò)傳遞序列的每一項(xiàng),并將模型的輸出作為序列中下一項(xiàng)的輸入,從而能夠允許存儲(chǔ)來(lái)自前面步驟的信息。遞歸神經(jīng)網(wǎng)絡(luò)所有用的“記憶”能力使得它們非常適合語(yǔ)言生成,因?yàn)樗麄兛梢噪S著時(shí)間的推移記住對(duì)話的上下文。遞歸神經(jīng)網(wǎng)絡(luò)和馬爾科夫鏈不同之處在于,它們也會(huì)觀察之前看到的單詞(而馬爾科夫鏈只觀察前面的單詞)來(lái)進(jìn)行預(yù)測(cè)。

遞歸神經(jīng)網(wǎng)絡(luò)模塊的展開(kāi)架構(gòu)(來(lái)源:GitHub)

用于語(yǔ)言生成的遞歸神經(jīng)網(wǎng)絡(luò)

在遞歸神經(jīng)網(wǎng)絡(luò)的每次迭代中,模型都會(huì)將之前遇到的單詞存儲(chǔ)在內(nèi)存中,并計(jì)算下一個(gè)單詞的概率。例如,如果模型生成了文本 We need to rent a __,那么它現(xiàn)在就必須計(jì)算出這句子中的下一個(gè)單詞。對(duì)于詞典的每個(gè)單詞,模型根據(jù)它所看到的前一個(gè)單詞來(lái)分配概率。在我們的這個(gè)示例中,housecar 這兩個(gè)詞的概率要比 riverdinner 這樣的單詞高得多。然后選擇概率最高的單詞并將其存儲(chǔ)在內(nèi)存中,然后模型繼續(xù)進(jìn)行下一次迭代。

通過(guò)展開(kāi)遞歸神經(jīng)網(wǎng)絡(luò)生成句子

遞歸神經(jīng)網(wǎng)絡(luò)存在一個(gè)主要的限制:梯度消失問(wèn)題。隨著序列的長(zhǎng)度增加,遞歸神經(jīng)網(wǎng)絡(luò)不能存儲(chǔ)在句子后面很遠(yuǎn)的地方遇到的單詞,且只能根據(jù)最近的單詞進(jìn)行預(yù)測(cè)。這就限制了遞歸神經(jīng)網(wǎng)絡(luò)在生成聽(tīng)起來(lái)連貫的長(zhǎng)句的應(yīng)用。

長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM)

長(zhǎng)短期記憶網(wǎng)絡(luò)模塊的架構(gòu)(來(lái)源:GitHub)

基于長(zhǎng)短期記憶網(wǎng)絡(luò)的神經(jīng)網(wǎng)絡(luò)是遞歸神經(jīng)網(wǎng)絡(luò)的一個(gè)變種,它比普通的遞歸神經(jīng)網(wǎng)絡(luò)能夠更正確地處理輸入序列中的長(zhǎng)期依賴(long-range dependencies)問(wèn)題。它們被用于各種各樣的問(wèn)題中。長(zhǎng)短期記憶網(wǎng)絡(luò)具有類似遞歸神經(jīng)網(wǎng)絡(luò)的鏈狀結(jié)構(gòu);然而,它們是由四層神經(jīng)網(wǎng)絡(luò)組成,而不是遞歸神經(jīng)網(wǎng)絡(luò)那樣的單層網(wǎng)絡(luò)。長(zhǎng)短期記憶網(wǎng)絡(luò)由單元、輸入門、輸出門和遺忘門四部分組成。這樣遞歸神經(jīng)網(wǎng)絡(luò)可以通過(guò)調(diào)節(jié)單元內(nèi)外的信息流,在任意時(shí)間間隔內(nèi)記住或忘記單詞。

用于語(yǔ)言生成的長(zhǎng)短期記憶網(wǎng)絡(luò)

通過(guò)展開(kāi)長(zhǎng)短期記憶網(wǎng)絡(luò)生成句子

將下面這句話作為模型的輸入:I am from Spain. I am fluent in __. 為了正確地預(yù)測(cè)下一個(gè)單詞為 Spanish,該模型將重點(diǎn)放在前一句中的 Spain 一詞上,并利用單元記憶來(lái)“記住”它。該信息在處理序列時(shí)由單元存儲(chǔ),然后用于預(yù)測(cè)下一個(gè)單詞。當(dāng)遇到句號(hào)時(shí),遺忘門會(huì)意識(shí)到句子的上下文可能有所變化,當(dāng)前單元狀態(tài)信息就可以被忽略。這樣網(wǎng)絡(luò)就可以選擇性地只跟蹤相關(guān)信息,同時(shí)最小化梯度消失問(wèn)題,模型就能夠在更長(zhǎng)的時(shí)間內(nèi)記住信息。

長(zhǎng)短期記憶網(wǎng)絡(luò)及其變體似乎就是消除梯度來(lái)產(chǎn)生連貫句子問(wèn)題的答案。但是,由于從以前的單元到當(dāng)前單元仍然有一條復(fù)雜的順序路徑,因此可以保存多少信息還是有限制的。如此一來(lái),長(zhǎng)短期記憶網(wǎng)絡(luò)能夠記住的序列長(zhǎng)度就限制在幾百個(gè)單詞以內(nèi)。另外一個(gè)缺陷就是,由于計(jì)算要求很高,因此長(zhǎng)短期網(wǎng)絡(luò)很難訓(xùn)練。由于順序性,它們很難并行化,這就限制了它們利用現(xiàn)代計(jì)算設(shè)備(如 GPU、TPU 之類)的能力。

Transformer

Transformer 最初是在 Google 論文《Attention Is All You Need》引入的,它提出了“自注意力機(jī)制”(self-attention mechanism)的新方法。Transformer 目前被廣泛應(yīng)用于各種自然語(yǔ)言處理任務(wù),如語(yǔ)言建模、機(jī)器翻譯和文本生成。Transformer 由一組編碼器和一組解碼器組成,前者處理任意長(zhǎng)度的輸入,后者輸出生成的句子。

動(dòng)畫:展示 Transformer 在機(jī)器翻譯中的應(yīng)用(來(lái)源:GoogleBlog)

在上面的例子中,編碼器處理輸入句子并為其生成表示。解碼器使用這種表示逐詞創(chuàng)建輸出句子。每個(gè)單詞的出事表示 / 嵌入由未填充的圓圈表示。然后,模型使用自注意聚合來(lái)自所有其他單詞的信息,以生成每個(gè)單詞的新表示,由填充的圓圈表示,并由整個(gè)上下文通知。然后對(duì)所有單詞并行重復(fù)該步驟多次,接連生成新的表示。類似地,解碼器每次從左到右生成一個(gè)單詞。它不僅關(guān)注先前創(chuàng)建的其他單詞,還關(guān)注編碼器開(kāi)發(fā)的最終表示。

與長(zhǎng)短期記憶網(wǎng)絡(luò)不同的是,Transformer 只執(zhí)行少量的、恒定數(shù)量的步驟,同時(shí)應(yīng)用自注意力機(jī)制。這種機(jī)制直接模擬句子中所有單詞之間的關(guān)系,而不考慮它們各自的位置。當(dāng)模型處理輸入序列中的每個(gè)單詞時(shí),自注意力機(jī)制允許模型查看輸入序列的其他相關(guān)部分,以便更好地對(duì)單詞進(jìn)行編碼。它使用多個(gè)注意力頭(attention head),擴(kuò)展了模型關(guān)注不同位置的能力,而無(wú)需考慮它們?cè)谛蛄兄械木嚯x。

近年來(lái),對(duì)普通 Transformer 架構(gòu)進(jìn)行了一些改進(jìn),顯著提高了它們的速度和正確度。2018 年,Google 發(fā)布了一篇關(guān)于 Transformer(BERT)雙向編碼器表示的論文,該論文為各種自然語(yǔ)言處理生成了最先進(jìn)的結(jié)果。同樣,2019 年,OpenAI 發(fā)布了一個(gè)基于 Transformer 的語(yǔ)言模型,它有大約 15 億個(gè)參數(shù),只需寥寥可數(shù)的幾行輸入文本即可生成長(zhǎng)篇連貫的文章。

使用 OpenAI GPT-2 模型進(jìn)行語(yǔ)言生成(來(lái)源:Venture Beat)

用于語(yǔ)言生成的 Transformer

最近,Transformer 也用于進(jìn)行語(yǔ)言生成。其中最著名的例子之一是 OpenAI 的 GPT-2 語(yǔ)言模型。該模型學(xué)習(xí)預(yù)測(cè)句子中的下一個(gè)單詞,是通過(guò)將注意力集中在于預(yù)測(cè)下一個(gè)單詞相關(guān)的單詞上進(jìn)行學(xué)習(xí)的。

由 Transformer 的自注意力機(jī)制決定的關(guān)系(來(lái)源:Medium)

Transformer 生成文本是基于類似于機(jī)器翻譯的結(jié)構(gòu)。如果我們舉一個(gè)例句: Her gown with the dots that are pink, white and __. 模型將會(huì)預(yù)測(cè)下一個(gè)單詞是 blue,因?yàn)樗ㄟ^(guò)自注意力機(jī)制將列表中的前一個(gè)單詞分析為顏色(white 和 pink),并理解預(yù)測(cè)的單詞也應(yīng)該是一種顏色。自注意力允許模型有選擇地關(guān)注每個(gè)單詞的句子的不同部分,而不是僅僅記住遞歸塊(recurrent block)(在遞歸神經(jīng)網(wǎng)絡(luò)和長(zhǎng)短期記憶網(wǎng)絡(luò)中)的一些特征,這些特征大部分不會(huì)用于幾個(gè)塊中。這有助于模型能夠回憶起前面句子的更多特征,并得到更準(zhǔn)確和連貫的預(yù)測(cè)。與以前的模型不同,Transformer 可以在上下文中使用所有單詞的標(biāo)識(shí),而無(wú)需將所有信息壓縮為固定長(zhǎng)度的表示。這種架構(gòu)允許 Transformer 在更長(zhǎng)的句子中保留信息,而不會(huì)顯著增加計(jì)算需求。它們?cè)诓恍枰M(jìn)行特定域修改的情況下,跨域的性能要比以前的模型表現(xiàn)得更好。

語(yǔ)言生成的未來(lái)

在本文中,我們看到了語(yǔ)言生成的演變過(guò)程,從使用簡(jiǎn)單的馬爾科夫鏈生成句子,到使用自注意力機(jī)制的模型生成更長(zhǎng)的連貫文本。然而,我們?nèi)匀惶幱谏烧Z(yǔ)言建模的早期,而 Transformer 只是朝著真正自主文本生成方向邁出的一步。除此之外,生成模型也正在開(kāi)發(fā)其他類型的內(nèi)容,如圖像、視頻和音頻等。這開(kāi)啟了將這些模型與生成文本模型集成的可能性,從而開(kāi)發(fā)出具有音頻 / 視頻界面的高級(jí)個(gè)人助理。

然而,作為一個(gè)社會(huì),我們需要謹(jǐn)慎地應(yīng)用生成模型,因?yàn)樗鼈優(yōu)樵诰W(wǎng)上生成虛假新聞、虛假評(píng)論和冒充他人開(kāi)辟了多種可能性。OpenAI 決定不發(fā)布 GPT-2 模型,因?yàn)閾?dān)心被濫用。這反映了這么一個(gè)事實(shí):我們現(xiàn)在已進(jìn)入一個(gè)語(yǔ)言模型強(qiáng)大到足以引起關(guān)注的時(shí)代。

生成模型有望改變我們的生活;然而,它們也是一把雙刃劍。我們必須對(duì)這些模型進(jìn)行適度的審查,無(wú)論是通過(guò)研究機(jī)構(gòu)還是政府監(jiān)管。在未來(lái)幾年里,這一領(lǐng)域肯定還會(huì)取得更多進(jìn)展。不管結(jié)果如何,展望未來(lái),應(yīng)該終會(huì)有激動(dòng)人心的一刻!

原文鏈接:

https://medium.com/sfu-big-data/evolution-of-natural-language-generation-c5d7295d6517

總結(jié)

以上是生活随笔為你收集整理的一文了解自然语言生成演变史!的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。