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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

一文纵览自然语言生成的发展

發(fā)布時間:2024/8/23 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一文纵览自然语言生成的发展 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

人們對人工智能的興趣隨著科幻電影的誕生和發(fā)展變得愈發(fā)濃厚。每當(dāng)我們聽到“人工智能”這個詞,便會聯(lián)想到《終結(jié)者》、《黑客帝國》、《我,機(jī)器人》等電影。

機(jī)器人具有獨立思考的能力在目前看來還比較遙遠(yuǎn),但機(jī)器學(xué)習(xí)和自然語言理解領(lǐng)域已經(jīng)在過去幾年取得了重大進(jìn)展。個人助理(Siri/Alexa)、聊天機(jī)器人及問答機(jī)器人等應(yīng)用程序正悄無聲息地改變著人們的生活方式。

人們需要理解大量有歧義且結(jié)構(gòu)多變的語言并從中獲取意義,這促使自然語言理解(Natural Language Understanding,NLU)和自然語言生成(Natural Language Generation, NLG)成為人工智能中發(fā)展最快的應(yīng)用。Gartner預(yù)測,“到2019年,自然語言生成將是90%的現(xiàn)代BI和分析平臺的標(biāo)準(zhǔn)特征”。本文將回顧NLG的歷史,并展望其未來。

什么是NLG?
NLG通過預(yù)測句子中的下一個單詞傳達(dá)信息。使用語言模型能夠預(yù)測下一個可能出現(xiàn)的單詞,也就是找到單詞在序列中的概率分布。舉個例子,預(yù)測“I need to learn how to __”的下一個單詞,語言模型會計算下一個單詞,如“write”,“drive”可能出現(xiàn)的概率。RNNs及LSTMs等高級神經(jīng)網(wǎng)絡(luò)能夠處理較長的句子,提高了語言模型預(yù)測的準(zhǔn)確性。

馬爾可夫鏈(Markov Chains)
馬爾可夫鏈?zhǔn)亲钤缬糜谡Z言生成的算法。它通過當(dāng)前單詞預(yù)測句子中的下一個單詞。舉個例子,模型通過下面兩個句子進(jìn)行訓(xùn)練,“I drink coffee in the morning”和“I eat sandwiches with tea”。“drink”后面出現(xiàn)“coffee”的概率是100%,“I”后面出現(xiàn)“eat”和“drink”的概率分別為50%。馬爾可夫鏈在計算下一個單詞出現(xiàn)概率的時候,會把每個單詞之間的關(guān)系考慮進(jìn)去。該模型最早用于為智能手機(jī)輸入句子提供下一個單詞生成建議。

但由于僅注意當(dāng)前單詞,馬爾可夫模型無法探測當(dāng)前單詞與句子中其它單詞的關(guān)系以及句子的結(jié)構(gòu),使得預(yù)測結(jié)果不夠準(zhǔn)確,在許多應(yīng)用場景中受限。

循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)
神經(jīng)網(wǎng)絡(luò)啟發(fā)于人類大腦的工作原理,通過對輸入和輸出數(shù)據(jù)之間的非線性關(guān)系進(jìn)行建模,為計算提供了一種新的方法,用于語言建模即稱為神經(jīng)語言建模。

RNN是神經(jīng)網(wǎng)絡(luò)的一種,它能夠捕捉輸入數(shù)據(jù)的序列特征。通過前饋網(wǎng)絡(luò)處理序列中的每一個item,并將模型的輸出作為序列的next item,此過程能夠幫助存儲前面每步的信息。這樣的“記憶”使得RNN在語言生成中有著出色的表現(xiàn),因為記住過去的信息能夠幫助更好的預(yù)測未來。與馬爾可夫鏈不同的是,在進(jìn)行預(yù)測時,RNN不僅關(guān)注當(dāng)前單詞,還關(guān)注已經(jīng)處理過的單詞。

利用RNN進(jìn)行語言生成
在RNN的每一次迭代中,模型都能在其“記憶”單元中存儲出現(xiàn)過的單詞,以及計算下一個單詞出現(xiàn)的概率。舉個例子,有“We need to rent a __”,此時要預(yù)測句子中的下一個單詞。模型能夠記住在詞典中每個單詞隨前面單詞出現(xiàn)的概率。在上述例子中,“house”或者“car”比“river”和“dinner”有著更高的出現(xiàn)概率。“記憶”單元選擇概率更高的單詞,并對其進(jìn)行排序,然后進(jìn)行下一次迭代。

但RNN有一個很大的問題——梯度消失。隨著序列長度的增加,RNNs不能存儲那些很久前遇到的單詞,便只能根據(jù)最近的單詞進(jìn)行預(yù)測。這使得RNNs無法應(yīng)用于生成連貫的長句子。

長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory, LSTM)

長短期記憶網(wǎng)絡(luò)是RNNs的變體,比vanilla RNNs更適合處理長序列。LSTM應(yīng)用廣泛,其與RNNs的結(jié)構(gòu)類似。不同的是,RNNs只有一個簡單的層結(jié)構(gòu),而LSTM內(nèi)部有4個層結(jié)構(gòu)。一個LSTM由4部分組成:cell,輸入門,輸出門以及遺忘門。

利用LSTM進(jìn)行語言生成

示例,輸入句子為“I am from Spain. I am fluent in ___”。為了正確預(yù)測出下一個單詞“Spanish”,LSTM會更加關(guān)注上一句中的“Spain”并且利用cell對其進(jìn)行記憶。在處理序列時cell會對獲取的信息進(jìn)行存儲,這些信息會用于預(yù)測下一個單詞。當(dāng)遇到句號時,遺忘門會意識到句子中的上下文發(fā)生了改變,并忽略當(dāng)前cell中存儲的狀態(tài)信息,換句話說,遺忘門的作用是讓循環(huán)神經(jīng)網(wǎng)絡(luò)“忘記”之前沒有用到的信息。

LSTM及其變體能夠解決梯度消失問題并生成連貫的句子。但是,LSTM也有其局限性:計算要求高,難以訓(xùn)練。

Transformer

Transformer在2017年,由Google團(tuán)隊在論文《Attention Is All You Need》中首次提出,并涉及到一種名為“self-attention mechanism”的新方法。Transformers目前廣泛用于解決NLP問題,例如語言建模,機(jī)器翻譯以及文本生成等。Transformer模型由一組編碼器和一組解碼器組成,前者負(fù)責(zé)處理任意長度的輸入,后者負(fù)責(zé)輸出生成的句子。

在上述示例中,編碼器處理輸入句子,并為其生成表示。解碼器利用表示生成用于輸出的句子。每個單詞最初的表示或嵌入由空心圓表示。接下來,Transformer模型利用self-attention機(jī)制獲取所有其他單詞之間的關(guān)系,生成每個單詞的新表示,如圖中的實心圓。對每個單詞重復(fù)該步驟,連續(xù)生成新的表示,類似地,解碼器從左往右依次生成單詞。

與LSTMs不同的是,Transformer需要的步驟少,應(yīng)用self-attention機(jī)制能夠在不考慮單詞位置的情況下,直接捕捉句子中所有單詞之間的關(guān)系。

最近,許多研究學(xué)者對vanilla transformer模型進(jìn)行了改進(jìn),提升了速度與精度。在2018年,谷歌提出BERT模型,此模型在各種NLP任務(wù)中均取得了最先進(jìn)的結(jié)果。在2019年,OpenAI發(fā)布了一個基于transformer的語言模型,只需要輸入幾行文本就可以生成長篇文章。

利用Transformers進(jìn)行語言生成
Transformer模型同樣可以用于語言生成,最著名的要數(shù)OpenAI提出的GPT-2語言模型。該模型通過將注意力集中在與預(yù)測下一個單詞相關(guān)的單詞上,更好的學(xué)習(xí)并預(yù)測句子中的下一個單詞。

使用Transformer進(jìn)行文本生成與機(jī)器翻譯所遵循的結(jié)構(gòu)類似。舉個例子,“Her gown with the dots that are pink, white and ____”。通過利用self-attention機(jī)制對前面所出現(xiàn)的顏色(白色和粉色)進(jìn)行分析,理解需要預(yù)測的單詞也是一種顏色,此時模型的輸出為“blue”。Self-attention能夠幫助模型選擇性地關(guān)注每一個單詞在句子中擔(dān)任的角色,而不僅僅是通過循壞記住些許特征。

語言生成的未來
本文帶我們縱覽了語言生成的發(fā)展,從利用馬爾可夫鏈預(yù)測下一個單詞,到使用self-attention生成連貫的文章。但是,我們?nèi)蕴幱谏烧Z言建模的初期,今后還會往自主生成文本的方向邁進(jìn)。生成模型也將用于圖像、視頻、音頻等內(nèi)容的開發(fā)。


原文鏈接
本文為云棲社區(qū)原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。

總結(jié)

以上是生活随笔為你收集整理的一文纵览自然语言生成的发展的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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