国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于演化算法的唐詩自動生成系統(tǒng)研究

2020-01-11 08:41:10穆肇南劉夢珠孫界平王成
關(guān)鍵詞:唐詩適應(yīng)度變異

穆肇南 劉夢珠 孫界平 王成

摘要:針對基于演化算法的唐詩自動生成系統(tǒng)展開研究.研究工作主要有:使用GloVe(Global Vectors for Word Representation)模型訓(xùn)練詞向量,設(shè)計了基于關(guān)鍵詞和平仄押韻的初始種群方案、基于語法語義加權(quán)值的適應(yīng)度函數(shù)、基于錦標賽算法的選擇策略、基于啟發(fā)式交叉算子和啟發(fā)式變異算子的演化算法;給出了基于演化算法的唐詩自動生成模型及系統(tǒng)實現(xiàn).實驗表明,根據(jù)給定關(guān)鍵詞,該系統(tǒng)初步實現(xiàn)了唐詩的自動生成,生成的唐詩經(jīng)人工修改后具有一定的欣賞價值.

關(guān)鍵詞:演化算法;自動生成;唐詩;自然語言處理

中圖分類號:TP391

文獻標志碼:A

文章編號:1000-5641(2020)06-0129-11

0引言

自然語言生成在自然語言處理領(lǐng)域中占據(jù)著重要的位置,它是研究和模仿人類自然語言文本生成的過程和方法。自然語言生成研究的是,計算機根據(jù)文本信息在機器內(nèi)部形成表達的形式,即模擬人類生成一段高質(zhì)量的自然語言文本.唐詩語言形式簡潔凝練,是中華民族兩千多年來思想、文化、精神、情感的一種藝術(shù)體現(xiàn),人們希望借助技術(shù)手段,以人工智能為載體,讓計算機自動“創(chuàng)作”出能與唐詩媲美的詩歌.

本文從唐代詩歌出發(fā),對唐詩自動生成系統(tǒng)進行了研究和實現(xiàn);基于演化算法搭建自動生成模型,構(gòu)建了一套較完善的唐詩自動生成系統(tǒng).實驗表明,文本系統(tǒng)可簡單模擬人的思維,生成較押韻的詩詞作品.

1相關(guān)研究

國際上對機器生成詩歌的研究興起于20世紀70年代,此后又誕生了很多英語、德語、日語、韓語等語言的不同類型、不同風格的機器自動生成的詩歌.先后經(jīng)歷了隨機詞匯連接方法(代表系統(tǒng)為Pete Kilgannon的“LYRIC3025”)、基于模板的詩歌生成方式(代表系統(tǒng)有RACTER、PROSE和RETURNER等)、基于進化算法的詩歌生成方式(代表系統(tǒng)為Levy的POEVOLVE和Manurung H.M.的MCGONAGALL系統(tǒng))等生成詩歌的方式,以及近年來基于序列模型生成詩歌的方法.

在我國,漢語古詩詞計算機語言學方面的研究在20世紀90年代中期才開始興起,其中值得關(guān)注的有20世紀90年代林鴻城獨立開發(fā)的“稻香老農(nóng)作詩機”、1999年費越在中科院自動化所開發(fā)的春聯(lián)藝術(shù)系統(tǒng)、2006年微軟中文網(wǎng)站上提供的一個中文對聯(lián)在線生成系統(tǒng)、2007年游維的基于遺傳算法的宋詞自動生成研究、2010年游維的又一種宋詞自動生成的遺傳算法及其機器實現(xiàn)的研究、2011年曹衛(wèi)華的基于進化策略的仿唐詩自動生成系統(tǒng)研究.除此之外,還有臺灣元智大學與北京大學計算語言研究所合作開發(fā)的“古詩研究的計算機支持環(huán)境”模型系統(tǒng)、以160萬字的宋代名家詩作為研究對象的“宋代名家詩自動注音系統(tǒng)”.近年來,也開始有人利用循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)等方法創(chuàng)作中文詩歌,如清華大學的九歌系統(tǒng)就是采用最新的深度學習技術(shù),結(jié)合多個詩歌生成的不同模型對超過30萬首古代詩歌進行訓(xùn)練學習,以及東北大學自主研發(fā)的機器翻譯系統(tǒng)NiuTrans等.詩歌作為漢語精髓,時至今日仍需更多的探索和發(fā)現(xiàn).

本文主要針對唐詩這種獨特的漢語詩歌體裁,基于演化算法設(shè)計并實現(xiàn)一個機器自動生成仿唐詩的系統(tǒng).本文主要研究工作包括以下幾個部分.

(1)建立唐詩語料庫.首先通過對唐詩格律的研究將唐詩細分為子句,統(tǒng)計子句中的詞語;其次根據(jù)通過GloVe模型得到的詞與詞共現(xiàn)的頻率,篩選出結(jié)合強度較高的詞語來建立唐詩詞表;最后利用工具對已經(jīng)切分的唐詩中的詞語進行注音、詞性標注及平仄押韻等工作.

(2)語法語義的處理.首先根據(jù)全唐詩語料庫中詩歌的語法規(guī)則,判斷生成的仿唐詩詞句語法的正確性;其次通過GloVe模型計算兩個單詞之間的語義相似性;最后采用人工方式對高頻詞進行風格和情感的評判.

(3)設(shè)計基于演化算法的仿唐詩自動生成系統(tǒng).根據(jù)唐詩的特點,本文運用啟發(fā)式交叉算子和啟發(fā)式變異算子進行雜交與變異,設(shè)計了基于語法規(guī)則、語義相似的加權(quán)適應(yīng)度函數(shù),基于錦標賽算法的選擇策略.

(4)實現(xiàn)基于演化算法的仿唐詩自動生成系統(tǒng),包括給出數(shù)據(jù)庫建立模塊、語法語義處理模塊、基于演化算法的生成模塊的具體算法實現(xiàn)流程以及仿唐詩生成實例等.

2基于演化算法的系統(tǒng)設(shè)計

系統(tǒng)的總體架構(gòu)分為3個基本模塊:數(shù)據(jù)庫建立模塊、語義語法處理模塊、基于演化算法生成模塊.具體的系統(tǒng)架構(gòu)設(shè)計如圖1所示.

2.1數(shù)據(jù)庫建立模塊

先建立針對古代詩歌處理用的全唐詩語料庫.由于本文的詩詞生成主要集中于仿唐詩的機器生成,所以選取大量唐詩語料庫進行切分,生成單字詞;除此之外還將詩歌切分成單獨的詩句并且存入數(shù)據(jù)庫.數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)設(shè)計如下.

(1)單字詞,包括的數(shù)據(jù)項有編號、詞語、拼音、平仄、詞語頻率、詞語詞性.

(2)詩句表,包括的數(shù)據(jù)項有編號、詩句.

由上述分析可知,本系統(tǒng)需要設(shè)計兩張表:單字詞表和詩句表.單字表用來存儲單個字的基本信息.詩句表用來存放唐詩中出現(xiàn)過的所有詩句.

根據(jù)數(shù)據(jù)庫分析中的存單字表的數(shù)據(jù)項可以設(shè)計出單字表,如表1所示.

同理,根據(jù)數(shù)據(jù)庫分析中的存詩句表的數(shù)據(jù)項可以設(shè)計出詩句表,包含的字段有字段名、數(shù)據(jù)類型、長度、描述.

該模塊實現(xiàn)的是對已有的唐詩的每行詩進行單字詞的切分和各行詩詩句的切分,以及數(shù)據(jù)庫建立的功能.

數(shù)據(jù)庫建立包括對單字詞進行詞性、拼音、音韻、頻率的標注等.利用分詞工具對單字詞的詞性進行標注,利用注音工具對單字詞的拼音進行標注,利用高頻詞查詢工具對單字詞的詞頻進行標注;繼而利用SQL實現(xiàn)對單字表音韻的標注.

2.2語義語法處理模塊

基于演化算法的唐詩機器自動生成設(shè)計根據(jù)適應(yīng)度函數(shù)值的大小進行優(yōu)勝劣汰,那么關(guān)鍵問題就是要設(shè)計出評價機器自動生成的唐詩優(yōu)劣程度的量化計算方式.本文通過對大量唐詩的構(gòu)成規(guī)律、語法結(jié)構(gòu)、語義呈現(xiàn)及情感表達等方面的研究,總結(jié)出了唐詩的質(zhì)量主要體現(xiàn)在語法的規(guī)范性和語義的關(guān)聯(lián)度兩方面.

在語法方面,主要考慮兩個方面:一是唐詩詞性組合規(guī)則;二是押韻平仄規(guī)則.首先本系統(tǒng)需要通過對大量唐詩詞性組合規(guī)則的總結(jié)來確立合適的詩歌語法規(guī)則,通過對大量唐詩構(gòu)成規(guī)律的分析總結(jié)出語法規(guī)則.然后需要考慮詩歌的押韻問題,押韻的要求可以根據(jù)詞庫的音韻標注來實現(xiàn).系統(tǒng)最終從這兩個方面判斷生成的仿唐詩的語法合法性.

詩歌在語義方面要求風格統(tǒng)一、主題連貫、情感豐富等.對于給定的主題詞,本系統(tǒng)主要使用GloVe模型計算兩個單詞之間的語義相似性,進而建立起詞與詞之間的關(guān)聯(lián)度.GloVe融合了矩陣分解(Latent Semantic Analysis,LSA)的全局統(tǒng)計信息和局部上下文窗口(Local Context Window,LCW)優(yōu)勢.融入全局的先驗統(tǒng)計信息,可以加快模型的訓(xùn)練速度,又可以控制詞的相對權(quán)重.具體實現(xiàn)包括以下3步.

第一步,根據(jù)語料庫構(gòu)建一個共現(xiàn)矩陣X,矩陣中的每一個元素Xij代表單詞i和上下文單詞j在特定大小的上下文窗口內(nèi)共同出現(xiàn)的次數(shù).一般而言,這個次數(shù)的最小單位為1,但是GloVe模型根據(jù)兩個單詞在上下文窗口的距離d提出了一個衰減函數(shù)decay=1/d,用于計算權(quán)重,也就是說距離越遠的兩個單詞所占總計數(shù)的權(quán)重越小.

通過以上模型計算兩個單詞之間的語義相似性,進而建立詞與詞之間的關(guān)聯(lián)度,使詞與詞之間更有凝聚力,使產(chǎn)生的句子看起來更有意義,且符合語義語法的要求.語法語義處理模塊流程圖如圖2所示.

2.3基于演化算法生成模塊

基于演化算法生成模塊主要是實現(xiàn)生成仿唐詩的功能,主要包括初始種群的生成、適應(yīng)度值的計算、選擇操作、交叉、變異這5個步驟.

首先,種群的初始化主要步驟如下.

第一,根據(jù)給定的主題詞,從數(shù)據(jù)庫中抽取與其相關(guān)的候選詞,構(gòu)成候選詞空間.

第二,從候選詞空間隨機選擇高頻詞進行隨機組合,生成一首五言仿唐詩.

第三,判斷生成的仿唐詩的第二行詩押的是什么韻腳,如押的是仄韻,那就再判斷仿唐詩第四句是不是同樣押的仄韻,如若不是則隨機從候選詞空間選擇一個押仄韻且與韻腳語義相關(guān)度強的高頻詞來替換原來的詞,從而使得整個詩歌押的都是仄韻;重復(fù)此操作,直到最終能夠生成含有N個個體的初始種群.

其次,就是計算其適應(yīng)度.本次試驗個體適應(yīng)性評判主要依據(jù)是否符合詞性組合規(guī)則(C)、是否符合押韻平仄規(guī)則(Y)以及詞義相關(guān)度(X),適應(yīng)度函數(shù)F為以上3個測量依據(jù)歸一化后的加權(quán)值,即

再次,就是選擇操作,此操作就是從群體中選出更加適應(yīng)環(huán)境的個體.在此操作中本系統(tǒng)采用了錦標賽算法,算法具體實現(xiàn)是通過父代與之生成的子代進行比較,適應(yīng)度值高的個體會存活下來繼續(xù)產(chǎn)生下一代個體,適應(yīng)度值低的個體將會被其子代取代.基于演化算法生成模塊的具體流程如圖3所示.

最后,就是雜交和變異操作.雜交時隨機選擇兩個父代個體,然后再將兩個父代個體中的各行進行雜交生成新個體.變異則是在每一個個體中的每一行隨機抽取一個位置,把此位置上的詞換成候選詞中與之詞義相近的候選詞,如果抽取的位置是韻腳,那就要在候選詞里選取與韻腳押相同韻的詞語來進行替換.

3基于演化算法的系統(tǒng)實現(xiàn)

3.1語法語義處理模塊的實現(xiàn)

語法語義處理模塊包括語法合法性的確立和語義相關(guān)度的計算的實現(xiàn).語法規(guī)范的確立主要是通過合法的詞性語法規(guī)則以及詩歌的平仄和押韻來實現(xiàn)的.就唐詩而言,每種體裁下的句法都有固定的總句數(shù)、每一句都有固定的總字數(shù)、每句話的最后一個字又或者是偶數(shù)句通常是押韻的.所以根據(jù)唐詩的這種語法要求,本系統(tǒng)通過對大量的唐詩進行學習總結(jié)出了語法規(guī)則,具體語法規(guī)則如N(名詞)+V(動詞)+N+N+V、N+V+A(形容詞)+N+V;還對此次生成的五言絕句在其第二行與第四行的最后一個字進行了押韻操作,比如新生成詩的第二行的韻腳是平聲,那本首詩第四行的最后一個字必然也是押平聲.詞義相關(guān)度通過使用GloVe模型計算兩個單詞之間的語義相似性來實現(xiàn).

3.2基于演化算法的生成模塊的實現(xiàn)

仿唐詩的生成模塊是基于演化算法來實現(xiàn)的,具體算法的實現(xiàn)主要包括初始種群生成、交叉操作、變異操作、適應(yīng)度值計算和選擇操作這5個部分.

初始種群生成是根據(jù)輸入的主題詞,從數(shù)據(jù)庫中抽取與其相關(guān)的候選詞,隨機選擇滿足押韻要求的候選詞來填充詩歌需要押韻的位置,在滿足平仄押韻要求的基礎(chǔ)上,隨機抽取候選詞填充唐詩中剩余的位置來生成滿足唐詩詩歌的要求,重復(fù)此操作,直到最終能夠生成含有N個個體的初始種群.

則依據(jù)是否符合詞性組合規(guī)則(C)、是否符合押韻平仄規(guī)則(Y)以及詞義相關(guān)度(X)的加權(quán)來進行計算的,重復(fù)此操作直至計算出整個種群的適應(yīng)度值.

選擇操作是基于錦標賽算法,通過比較父代與子代的適應(yīng)度值,選擇適應(yīng)度高的個體留下繁殖下一代,適應(yīng)度值低的將被淘汰.因此,適應(yīng)度值計算和選擇操作的關(guān)系比較緊密.

交叉操作是隨機抽取父代X1,然后隨機在兩行詩中產(chǎn)生一個雜交點point,其中X1中的第一行雜交點point之前(包括雜交點point本身)的部分保留,雜交點point之后的部分被X1第二行雜交點point后的部分取代,就這樣X1經(jīng)過變異后產(chǎn)生了新的個體.

變異操作就是在每一首詩的每一行詩句中以概率p隨機抽取一個變異點point,變異點point前后部分繼續(xù)保留,但是變異點point則選用與其相關(guān)的候選詞進行填充,如若抽取到韻腳,則要選取與韻腳聲調(diào)相同的字進行填充,以保證詩歌的押韻規(guī)則不被破壞.

以上為基于演化算法機器自動生成唐詩的具體實現(xiàn),下面給出機器生成唐詩的演化算法實現(xiàn)流程,算法主要包括初始種群生成、適應(yīng)度值計算、選擇操作、交叉操作和變異操作,具體實現(xiàn)見算法1.

上述算法實現(xiàn)中,g為根據(jù)給定關(guān)鍵詞產(chǎn)生的候選詞集合,N為初始種群中個體的數(shù)量,k為設(shè)置的最大進化次數(shù),F(xiàn)為適應(yīng)度值,p為個體變異的概率.其主要計算由是否符合詞性組合規(guī)則(C)、是否符合押韻平仄規(guī)則(Y),以及詞義相關(guān)度(X)的加權(quán)和得到.

4實驗結(jié)果與分析

4.1實驗數(shù)據(jù)

針對本文的唐詩自動生成系統(tǒng),采用以下參數(shù)進行測試:①進化次數(shù)分別為100次、200次、300次,相應(yīng)對比數(shù)據(jù)為500次、1000次、1500次;②初始種群數(shù)分別為20個、30個、40個,相應(yīng)對比數(shù)據(jù)分別為40個、60個、80個;③變異率(p)分別為0.1、0.3、0.5,相應(yīng)對比數(shù)據(jù)分別為0.2、0.4、0.6;④輸入的關(guān)鍵詞分別為“花、風、秋、天、春”.具體測試數(shù)據(jù)如表2至表5所示.

4.2實驗結(jié)果

本系統(tǒng)以關(guān)鍵字“花、風、秋、天、春”為例.當輸入這些關(guān)鍵詞,體裁為五言絕句時,系統(tǒng)自動提取關(guān)鍵詞并在數(shù)據(jù)庫中查找與關(guān)鍵詞相關(guān)的候選詞.部分候選詞如表6所示.

根據(jù)上述給定的關(guān)鍵詞以及設(shè)置的各種參數(shù),系統(tǒng)自動生成的仿唐詩適應(yīng)度值如表7至表10所示.

根據(jù)上述實驗結(jié)果數(shù)據(jù)顯示,比較表7和表8可知,初始種群和變異率相同時,進化次數(shù)越大,所有關(guān)鍵詞產(chǎn)生的詩歌整體質(zhì)量有所提升;比較表7和表9可知,進化次數(shù)和變異率相同時,初始種群越大,所有關(guān)鍵詞產(chǎn)生的詩歌整體質(zhì)量也有所提升;比較表7和表10可知,進化次數(shù)和初始種群相同時,初始種群數(shù)量較小,變異率增大時,部分關(guān)鍵詞產(chǎn)生的詩歌整體質(zhì)量也有所提升,而當初始種群數(shù)量較大,變異率增大時,部分關(guān)鍵詞產(chǎn)生的詩歌整體質(zhì)量卻有所下降.

由上述結(jié)果可見,進化次數(shù)和初始種群的大小對詩歌整體質(zhì)量的影響呈正相關(guān),變異率在初始種群較小的時候?qū)φw詩歌的質(zhì)量正相關(guān),而在初始種群較大時,其影響卻不明顯甚至部分關(guān)鍵詞產(chǎn)生的詩歌的質(zhì)量有所下降.

通過多次輸入關(guān)鍵詞“花、風、秋、天、春”得到大量的仿唐詩,雖然這些仿唐詩和真正的唐詩比起來還有一定的差距,但是經(jīng)過對詩詞創(chuàng)作風格辨析的研究及人工篩選,還是能夠得到適應(yīng)度值較高且可讀性較強的仿唐詩.生成仿唐詩的具體參數(shù)如表11所示.

5結(jié)論

在對國內(nèi)外現(xiàn)有的機器自動生成詩歌方法研究的基礎(chǔ)上,本文給出了一種基于演化算法的唐詩自動生成模型及其系統(tǒng)實現(xiàn).首先通過對唐詩格律的研究,建立含有的詞性、音韻、詞頻等屬性的唐詩語料庫;然后根據(jù)全唐詩語料庫中詩歌的語法語義規(guī)則,判斷生成的仿唐詩的詞句語法合法性以及詞義的相關(guān)度;最后結(jié)合唐詩構(gòu)成特點,設(shè)計了包含初始種群、適應(yīng)度函數(shù)、選擇、交叉和變異等優(yōu)勝劣汰操作在內(nèi)的演化算法模型,并加以系統(tǒng)實現(xiàn).實驗結(jié)果表明,演化算法在唐詩自動生成方面具有較好的通用性,基本上達到了研究目標.本研究將現(xiàn)代機器智能技術(shù)與到中國傳統(tǒng)文化進行交叉融合,弘揚了中國詩歌文化.但是研究工作也存在諸多不足之處,如系統(tǒng)的自學能力不足、生成詩句的好與壞的評測標準的定義缺乏、生成唐詩的評價體系欠缺等都將可以成為下一步研究的方向.

猜你喜歡
唐詩適應(yīng)度變異
改進的自適應(yīng)復(fù)制、交叉和突變遺傳算法
計算機仿真(2022年8期)2022-09-28 09:53:02
唐詩寫柳之妙
中華詩詞(2020年5期)2020-12-14 07:44:50
春夜講唐詩記
文苑(2020年7期)2020-08-12 09:36:30
變異危機
變異
唐詩里的日與月之爭
文苑(2020年5期)2020-06-16 03:18:32
唐詩賞讀
基于空調(diào)導(dǎo)風板成型工藝的Kriging模型適應(yīng)度研究
中國塑料(2016年11期)2016-04-16 05:26:02
變異的蚊子
百科知識(2015年18期)2015-09-10 07:22:44
少數(shù)民族大學生文化適應(yīng)度調(diào)查
米脂县| 全椒县| 成武县| 湖州市| 海林市| 博湖县| 广元市| 南开区| 长泰县| 班戈县| 天峻县| 霸州市| 绥中县| 溆浦县| 临高县| 富平县| 元朗区| 昌宁县| 惠水县| 隆安县| 桐城市| 武强县| 合阳县| 湘潭市| 嵊州市| 合作市| 孝感市| 康保县| 沈丘县| 永济市| 汝南县| 温泉县| 朝阳县| 武城县| 潮州市| 综艺| 临清市| 原阳县| 新乡县| 南康市| 红安县|