【逆天的算法】这几首宋词,你能看出来是出自计算机之手吗?
生活随笔
收集整理的這篇文章主要介紹了
【逆天的算法】这几首宋词,你能看出来是出自计算机之手吗?
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
先來看看下面的幾首宋詞:
宋詞一: 西江月 飲酒開懷酣暢,洞簫笑語尊前。欲看盡歲歲年年,悠然輕云一片。 賞美景開新釀,人生堪笑歡顏。故人何處向天邊,醉里時(shí)光漸漸。宋詞二: 清平樂 相逢縹緲,窗外又拂曉。長憶清弦弄淺笑,只恨人間花少。 風(fēng)雨重陽又過,登高多少黃昏。黃菊不待清尊,相思飄落無痕。宋詞三: 佳人 點(diǎn)絳唇 人靜風(fēng)清,蘭心蕙性盼如許.夜寒疏雨,臨水聞嬌語. 佳人多情,千里獨(dú)回首.別離后,淚痕衣袖,惜夢回依舊.
第一感覺是不是在想這是哪位大家的手筆,如果告訴你這是由遺傳算法自動(dòng)生成的,你會(huì)不會(huì)對(duì)之前的上過的語文課有些許感慨。你覺得計(jì)算機(jī)的作詩能力如何呢?
什么是遺傳算法?
遺傳算法指的是迷你達(dá)爾文生物進(jìn)化論自然選擇,以及遺傳學(xué)機(jī)理生物進(jìn)化的過程的一種計(jì)算模型。
有人說遺傳算法很少用,實(shí)際上,在很多地方,遺傳算法都有很有趣的應(yīng)用。這不,有人就把遺傳算法用在宋詞中。分享者稱是用在NLG(自然語言生成)技術(shù)中的。
自動(dòng)生成宋詞的遺傳算法
生成宋詞的算法是來自廈門大學(xué)和浙江大學(xué)的三位學(xué)者,主要針對(duì)宋詞這種特殊的漢語詩歌體裁,設(shè)計(jì)了其自動(dòng)生成算法及其實(shí)現(xiàn)方法。
根據(jù)宋詞特點(diǎn)設(shè)計(jì)了基于平仄的編碼方式,將“平、仄”與“0、1”編碼相對(duì)應(yīng)的編碼方案.比如詞牌《清平樂》平仄分布如下:
⊙平⊙仄,⊙仄平平仄.⊙仄⊙平平仄仄,⊙仄⊙平⊙仄. ⊙平⊙仄平平,⊙平⊙仄平平.⊙仄⊙平⊙仄,⊙平⊙仄平平. 其中⊙表示可平可仄.根據(jù)我們的編碼方案可得如下編碼串: *0*1,*1001.*1*0011,*1*0*1. *0 *100,*0*100.*1*0*1,*0*100.
通過對(duì)大量宋詞語句構(gòu)成的分析,發(fā)現(xiàn)組成句子的有效模式的數(shù)目是有限的,并且呈現(xiàn)出了層次化的結(jié)構(gòu),因此比較適合采用DFA(deterministic finite automata)來表示。隨機(jī)組合的詞語,在產(chǎn)生大量的備選個(gè)體后,逐個(gè)進(jìn)行DFA 分析測試,通過留下,沒通過則剔除。
宋詞的語義計(jì)算問題,包括詞義相關(guān)度計(jì)算、詞義相似度計(jì)算,以及風(fēng)格情感一致性計(jì)算3 個(gè)方面。計(jì)算詞義相關(guān)的目的是建立詞語間的關(guān)聯(lián),發(fā)掘詞語共現(xiàn)和搭配的可能,從而保證生成詩詞行文和主題上的連貫。
下面是該算法的論文,感興趣的可以讀一讀。
Via W3Cschool
宋詞一: 西江月 飲酒開懷酣暢,洞簫笑語尊前。欲看盡歲歲年年,悠然輕云一片。 賞美景開新釀,人生堪笑歡顏。故人何處向天邊,醉里時(shí)光漸漸。宋詞二: 清平樂 相逢縹緲,窗外又拂曉。長憶清弦弄淺笑,只恨人間花少。 風(fēng)雨重陽又過,登高多少黃昏。黃菊不待清尊,相思飄落無痕。宋詞三: 佳人 點(diǎn)絳唇 人靜風(fēng)清,蘭心蕙性盼如許.夜寒疏雨,臨水聞嬌語. 佳人多情,千里獨(dú)回首.別離后,淚痕衣袖,惜夢回依舊.
第一感覺是不是在想這是哪位大家的手筆,如果告訴你這是由遺傳算法自動(dòng)生成的,你會(huì)不會(huì)對(duì)之前的上過的語文課有些許感慨。你覺得計(jì)算機(jī)的作詩能力如何呢?
什么是遺傳算法?
遺傳算法指的是迷你達(dá)爾文生物進(jìn)化論自然選擇,以及遺傳學(xué)機(jī)理生物進(jìn)化的過程的一種計(jì)算模型。
有人說遺傳算法很少用,實(shí)際上,在很多地方,遺傳算法都有很有趣的應(yīng)用。這不,有人就把遺傳算法用在宋詞中。分享者稱是用在NLG(自然語言生成)技術(shù)中的。
自動(dòng)生成宋詞的遺傳算法
生成宋詞的算法是來自廈門大學(xué)和浙江大學(xué)的三位學(xué)者,主要針對(duì)宋詞這種特殊的漢語詩歌體裁,設(shè)計(jì)了其自動(dòng)生成算法及其實(shí)現(xiàn)方法。
根據(jù)宋詞特點(diǎn)設(shè)計(jì)了基于平仄的編碼方式,將“平、仄”與“0、1”編碼相對(duì)應(yīng)的編碼方案.比如詞牌《清平樂》平仄分布如下:
⊙平⊙仄,⊙仄平平仄.⊙仄⊙平平仄仄,⊙仄⊙平⊙仄. ⊙平⊙仄平平,⊙平⊙仄平平.⊙仄⊙平⊙仄,⊙平⊙仄平平. 其中⊙表示可平可仄.根據(jù)我們的編碼方案可得如下編碼串: *0*1,*1001.*1*0011,*1*0*1. *0 *100,*0*100.*1*0*1,*0*100.
通過對(duì)大量宋詞語句構(gòu)成的分析,發(fā)現(xiàn)組成句子的有效模式的數(shù)目是有限的,并且呈現(xiàn)出了層次化的結(jié)構(gòu),因此比較適合采用DFA(deterministic finite automata)來表示。隨機(jī)組合的詞語,在產(chǎn)生大量的備選個(gè)體后,逐個(gè)進(jìn)行DFA 分析測試,通過留下,沒通過則剔除。
宋詞的語義計(jì)算問題,包括詞義相關(guān)度計(jì)算、詞義相似度計(jì)算,以及風(fēng)格情感一致性計(jì)算3 個(gè)方面。計(jì)算詞義相關(guān)的目的是建立詞語間的關(guān)聯(lián),發(fā)掘詞語共現(xiàn)和搭配的可能,從而保證生成詩詞行文和主題上的連貫。
下面是該算法的論文,感興趣的可以讀一讀。
Via W3Cschool
總結(jié)
以上是生活随笔為你收集整理的【逆天的算法】这几首宋词,你能看出来是出自计算机之手吗?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 查看mysql,apache,php,n
- 下一篇: 记一次与用户的亲密接触