清朝有一位進(jìn)士,名叫孫洙,此人為官才華有限,最高做到知縣一級(jí)(七品),便止步不前。不過,與多數(shù)考取功名之后的讀書人一樣,一旦解決衣食問題,就希望做點(diǎn)兒能夠流芳百世、光宗耀祖的事情。 問題在于,文人在清朝本身就不太有地位(巨匠曹雪芹也難逃窮困潦倒而逝的命運(yùn)),所以即使在鄉(xiāng)野間有著“書循歐陽詢,詩追杜工部”的美名,孫洙的舞文弄墨,也沒有造成多大影響。 但是,孫洙“流芳百世”的愿望,最后還是實(shí)現(xiàn)了,因?yàn)閷?duì)盛唐詩詞極為推崇的他,和自己的夫人一起,編制了一本摘錄和注釋唐詩的家塾課本,這部課本,就是流傳至今的《唐詩三百首》。 孫洙的選詩標(biāo)準(zhǔn)是“因?qū)>吞圃娭心捴巳丝谥?,擇其尤要者”,后世還以《唐詩三百首》為內(nèi)容出現(xiàn)過許多注釋本,時(shí)至今日,仍是啟蒙唐詩文化的重要作品。 而在《唐詩三百首》的序中,孫洙如此描述這部作品的意義:“熟讀唐詩三百首,不會(huì)作詩也會(huì)吟”。 了解私塾教育的人可能也都有同樣的感受,那些可能根本沒有人生經(jīng)歷的兒童,只要每天搖頭晃腦的背誦各種唐詩,一段時(shí)間之后,讓他們獨(dú)立作詩,有些佼佼者也能出口成章個(gè)八九不離十。為什么經(jīng)歷反復(fù)的閱讀和背誦,就能夠給人賦予“不會(huì)作詩也會(huì)吟”能力,而這是否有違文學(xué)藝術(shù)所重視的靈性?所謂“詩人”,是否可以加以系統(tǒng)的訓(xùn)練出來? 北京郵電大學(xué)信息安全中心(沒錯(cuò),這就是方校長(zhǎng)所在的那所大學(xué),其“信息安全中心”大概也難逃罪責(zé),此時(shí)讓我們暫且就事論事,不去計(jì)較這所學(xué)府的齷蹉往事)有一名教授,名叫楊義先,他公開了一篇題為《出詩表——機(jī)器文學(xué)新進(jìn)展》的科研報(bào)告,既用計(jì)算機(jī)的能力,揭開了“熟讀唐詩三百首,不會(huì)作詩也會(huì)吟”的秘密。 下面是這篇報(bào)告的全文: 摘要 借力“大數(shù)據(jù)”,我們雖不能讓啞巴說話,但確實(shí)可以讓文盲寫詩,而且,只需一分鐘!不信?請(qǐng)讀此文!(當(dāng)然,為了讓文、理、工、農(nóng)、醫(yī)等各科讀者都能夠讀懂,我們只在此敘述原理和實(shí)例) (一)前言 機(jī)器文學(xué)的最終目標(biāo)是:用機(jī)器創(chuàng)作文學(xué)作品!初聽起來,好像不靠譜,但是,到目前為止,機(jī)器已經(jīng)可以進(jìn)行(或輔助)一些特殊的文學(xué)創(chuàng)作,比如,撰寫史上最牛的千字文[1],破解史上最難璇璣圖[2],撰寫同音文[3],研究“影文”[4]和語言動(dòng)力學(xué)[5]等。 事實(shí)證明,規(guī)矩越多的文學(xué)體裁,就越適合于計(jì)算機(jī)發(fā)揮其特長(zhǎng)。對(duì)“平仄”和“押韻”有嚴(yán)格要求的五言和七言詩,也許要算“規(guī)矩很多”的文體了吧,因此,本文就來研究如何用機(jī)器創(chuàng)作律詩。(注:本文的研究思路和方法完全適用于“機(jī)器撰寫各種詞牌名的詞”,但是,由于詞牌名太多,超過一千個(gè),而且每首詞的字?jǐn)?shù)也不少,對(duì)我這個(gè)“詩盲”來說,要想建設(shè)相關(guān)的“意境庫”就太難了,所以,本文不考慮這些“詞”) (二) 五言絕詩“出詩表” 2.1)仄起五絕首韻“出詩表”實(shí)例 仄起五絕首韻出詩表的結(jié)構(gòu)如下表1.1所示:
表1.1 (仄起)五絕(首韻)出詩表 基于上述的表1.1,任何傻瓜都可以按如下兩步輕松寫詩: 第一步,任意選取一個(gè)八位數(shù),比如,毛澤東的生日18931226,然后,把該數(shù)代替表1.1中的X1X2X3X4X5X6X7X8,于是,獲得了如下的表格1.2:
表1.2 “毛澤東生日”所對(duì)應(yīng)的出詩表 第二步,從表1.1的第Xi列中,選取第i組文字串(“2字串”或“3字串”),并把這些“字串”串接起來就行了。比如,在表1.2中,就應(yīng)該從第1、2、3、4、5、6、7、8列里,分別取出第1、8、9、3、1、2、2、6個(gè)“字串”(見表1.2中的紅字部分),最后,串接起來的文字便是如下五言絕詩:羞玉竟不還,西湖哀苦寒;鳳樓留不住,夜郎醉不眠。 讀者可以自行用本人的生日數(shù)字來輕松寫詩。為了增加趣味性,我們?cè)倥e幾個(gè)例子: 數(shù)字π=3.1415926,從表1.1所對(duì)應(yīng)的詩是:窈窕未曾看,梅花水月牽;水晶凝望久,夜郎醉不眠。 根號(hào)2=1.4142135,從表1.1所對(duì)應(yīng)的詩是:羞玉水生煙,燕然覺夜寒;故情人不見,多苦老紅顏。 共和國(guó)的生日19491001,從表1.1所對(duì)應(yīng)的詩是:羞玉貴鄉(xiāng)還,梅花不可攀;鳳樓都莫問,遠(yuǎn)憶晚妝殘。 八寶山的電話號(hào)碼88259666,從表1.1所對(duì)應(yīng)的詩是:傷別竟不還,芙蓉嬉笑牽;相思腸斷處,無限醉不眠。 黃金分割數(shù)0.6180339,從表1.1所對(duì)應(yīng)的詩是:回首暗無邊,燕然流淚泉;當(dāng)年追往事,多苦涕衣沾。 遞增數(shù)列12345678,從表1.1所對(duì)應(yīng)的詩是:羞玉斬樓蘭,鴛鴦?dòng)X夜寒;水晶腸斷處,寂寞蔽青天。 關(guān)于五言絕詩,除了表1.1所述的“仄起五絕首韻”之外,還有其它的一些格律,比如,下一小節(jié)2.1)所述的“平起五絕首韻”、“仄起五絕首句不入韻”和“平起五絕首句不入韻”等四種情況。為了節(jié)省篇幅,我們僅再述一個(gè)“平起五絕首韻”的出詩表例子。 2.2)平起五絕首韻出詩表實(shí)例 平起五絕首韻出詩表的結(jié)構(gòu)如下表1.3所示:
表1.3 (平起)五絕(首韻)出詩表 若借助表1.3,那么,仿照前面的方法,我們可以得到 毛澤東的生日18931226對(duì)應(yīng)的詩是:炎涼指波瀾,不似通人煙;桃李君知否,天涯繡木蘭。 數(shù)字π=3.1415926對(duì)應(yīng)的詩是:多情水月牽,依舊若浮煙;蕭颯天長(zhǎng)久,天涯繡木蘭。 根號(hào)2=1.4142135對(duì)應(yīng)的詩是:炎涼樂世間,遙看亂紫煙;杳渺人間世,微茫豈敢安。 共和國(guó)的生日19491001對(duì)應(yīng)的詩是:炎涼流雪山,依舊跳白猿;桃李空回首,蒼生羞長(zhǎng)安。 黃金分割數(shù)0.6180339對(duì)應(yīng)的詩是:嫦娥醉上山,遙看去不還;半落誰知道,微茫傷別年。 八寶山的電話號(hào)碼88259666:凄凄指波瀾,風(fēng)雨同交歡;何事斜陽處,香爐繡木蘭。 遞增數(shù)列12345678對(duì)應(yīng)的詩是:炎涼夢(mèng)日邊,流水亂紫煙;蕭颯斜陽處,無花怒上天。 (三)五言律詩“出詩表” 與“五絕”類似,“五律”格律詩也有四類:“仄起五律首韻”、“平起五律首韻”、“仄起五律首句不入韻”、“平起五絕首句不入韻”等四種情況。為節(jié)省篇幅,我們也僅僅敘述一個(gè)例子,即“仄起五律首韻”出詩表,見下表1.4所示:
表1.4 (仄起)五律(首韻)出詩表 與前面的表1.1類似,此處的表1.4也可以讓任何傻瓜按如下兩步輕松寫詩了: 第一步,任意選取兩個(gè)八位數(shù)(或者一個(gè)16位數(shù)),然后,把它們分別代替表1.4中的X1X2X3X4X5X6X7X8和Y1Y2Y3Y4Y5Y6Y7Y8; 第二步,從表1.4上半部分的第Xi列中,選取第i組文字串(“2字串”或“3字串”),并把這些“字串”串接起來就得到了五律詩的前面四句;從表1.4下半部分的第Yi列中,選取第i組文字串(“2字串”或“3字串”),并把這些“字串”串接起來就得到了五律詩的后面四句,于是,五律的全詩就完成了。 比如,毛澤東和江青的生日分別是18931226、19140317,那么,將它們放入表1.4中,就應(yīng)該從上半部分的第1、2、3、4、5、6、7、8列里,分別取出第1、8、9、3、1、2、2、6個(gè)“字串”,將它們串接起來的文字便是如下五言律詩的前四句(雨落待明年,孤房清且安;花落空悵望,久坐難追攀),然后,從下半部分的第1、2、3、4、5、6、7、8列里,分別取出第1、9、1、4、0、3、1、7個(gè)“字串”,將它們串接起來的文字便是如下五言律詩的后四句(罷笑孤帆影,思君亂紫煙;紅妝留不住,忽憶侍軒轅)。將這前面各四句串起來,就完成了全詩:雨落待明年,孤房清且安;花落空悵望,久坐難追攀;罷笑孤帆影,思君亂紫煙;紅妝留不住,忽憶侍軒轅。 數(shù)字π=3.1415926 53589793對(duì)應(yīng)的詩是:買醉指長(zhǎng)天,玲瓏豈敢安;從君不得意,久坐難追攀;百草怎知道,飄零萬事閑;沉吟如兩忘,美酒卷珠簾。 根號(hào)2=1.4142135 62373095對(duì)應(yīng)的詩是:雨落愿年年,松鳴羞玉顏;采薇遙相望,素手送君還;黃鳥須知道,珠璣了不閑;隱然空相待,美酒奉瓊筵。 黨和共和國(guó)的生日19210701、19491001對(duì)應(yīng)的詩是:雨落照當(dāng)年,幽哀豈敢安;長(zhǎng)歌凝望處,流水亦不還;罷笑孤帆影,腰肢長(zhǎng)空閑;幾何空相待,邀我落興酣。 黃金分割數(shù)0.6180339 88749894對(duì)應(yīng)的詩是:今古想當(dāng)年,松鳴盡欲言;長(zhǎng)歌離別處,素手好廬山;淺畫星芒盡,千春亂紫煙;從君君不見,美酒笑折旋。 鏡像數(shù)列12345678 87654321對(duì)應(yīng)的詩是:雨落掃青天,君情羞玉顏;從君回首處,遙寄空登攀;淺畫啼不盡,天涯寫遠(yuǎn)川;長(zhǎng)歌留不住,莫洗落興酣。 八寶山的電話號(hào)碼88259666、88259777:香袖待明年,幽哀多苦顏;織錦回首處,眷我難追攀;淺畫星芒盡,霜衣寫遠(yuǎn)川;從君如兩忘,醉后侍軒轅。 (四)七絕“出詩表” 與五言類似,七言格律詩也分為“七言絕詩”和“七言律詩”,它們又可再細(xì)分為“仄起首韻”、“平起首韻”、“仄起首句不入韻”和“平起首句不入韻”等情況。但是,從基于大數(shù)據(jù)的“出詩表”角度來看,它們的原理都是一樣的,因此,為了節(jié)省篇幅,我們僅給出如下表1.5中的(仄起)七絕(首韻)“出詩表”:
表1.5 仄起七絕首韻“出詩表” 與前面的表1.1類似,此處的表1.5也可以讓任何傻瓜按如下兩步輕松寫詩了: 第一步,任意選取兩個(gè)六位數(shù)(或者一個(gè)12位數(shù)),然后,把它們分別代替表1.5中的X1X2X3X4X5X6和Y1Y2Y3Y4Y5Y6; 第二步,從表1.5上半部分的第Xi列中,選取第i組文字串(“2字串”或“3字串”),并把這些“字串”串接起來就得到了七絕詩的前面兩句;從表1.5下半部分的第Yi列中,選取第i組文字串(“2字串”或“3字串”),并把這些“字串”串接起來就得到了七絕詩的后面兩句,于是,七絕的全詩就完成了。比如, 數(shù)字π=3.14159 265358對(duì)應(yīng)的詩是:窈窕愁絕方未還,綠煙風(fēng)雨兩相歡;故情楊柳空惆悵,梅梢瀑布傷別年。 鏡像數(shù)列123456 654321對(duì)應(yīng)的詩是:羞玉池花夜已殘,玉階風(fēng)雨話孤眠;畫屏春色落花絮,梅梢悲鳥愁空山。 黃金分割數(shù)0.61803 398874對(duì)應(yīng)的詩是:美酒瑤泉落九天,浣紗白兔拜龍顏;染香芳樹難忘酒,絕艷風(fēng)景望遠(yuǎn)山。 根號(hào)2=1.41421 356237對(duì)應(yīng)的詩是:羞玉嫦娥落九天,玉階憔悴似真仙;染香春色傷心碧,鶯羽幾度入遠(yuǎn)山。 (五)原理淺析 古人早就發(fā)現(xiàn)了這樣一個(gè)“事實(shí)”:熟讀唐詩三百首,不會(huì)吟詩也會(huì)吟!但是,古人并不知道,這個(gè)“事實(shí)”的基礎(chǔ)就是現(xiàn)在風(fēng)靡全球的“大數(shù)據(jù)”。通過熟讀眾多詩詞,人們便在頭腦中無意識(shí)地建立起了針對(duì)各種意境的“字串庫”,然后,在需要時(shí),觸境生情把庫中現(xiàn)成的“字串”取出來,就拼接成詩了。 借助“大數(shù)據(jù)”的各種整理和挖掘技術(shù),針對(duì)相關(guān)的意境,遵守事先約定的各種平仄格律等要求,完全可以為每個(gè)用戶獨(dú)立地建設(shè)和維護(hù)一個(gè)專用的“意境庫”。比如,若選取“愛情”為“意境”,那么,利用“大數(shù)據(jù)”就可以收集人類在愛情的各種情況下(熱戀中、失戀中、暗戀中……)都會(huì)有什么話語,至少可以收集詩人們的同類現(xiàn)成詩詞,對(duì)這些“話語”經(jīng)過機(jī)械加工,即按平仄音韻等條條框框來改造,于是,基礎(chǔ)“意境庫”就完成了。當(dāng)然,在每個(gè)人的使用過程中,“大數(shù)據(jù)”還可以根據(jù)用戶的愛好和習(xí)慣和“意境庫”進(jìn)行精細(xì)化處理,使得每個(gè)人,以傻瓜方式“寫”出來的詩,也具有個(gè)性特點(diǎn)。其實(shí),本文中的表1.1至1.5中每列的內(nèi)容就是各種“意境庫”,我們把它們以“死的方式”(不是以軟件程序方式)表現(xiàn)出來的目的是:讓讀者可以更加直觀地了解“傻瓜寫詩”的原理。所以,“出詩表”軟件真正面市后,它的操作就只需要用戶隨機(jī)輸入相關(guān)的數(shù)串就行了。 “機(jī)器能夠?qū)懺姟钡牧硪粋€(gè)原因是:人其實(shí)是很容易被“騙”的,當(dāng)你先申明某個(gè)字串是詩時(shí)(即,把相關(guān)的心理暗示傳遞給了讀者),人們就會(huì)努力去想像這些字串中的“詩意”,那怕這些字串其實(shí)是“狗屁不通”。這種“主動(dòng)受騙”的現(xiàn)象很少出現(xiàn)在閱讀散文、小說等其它文章的過程中。 “大數(shù)據(jù)”的神威其實(shí)早就被廣泛利用了,比如,大家熟知的“搜狗輸入法”,就采用了搜索引擎技術(shù),從網(wǎng)絡(luò)的“大數(shù)據(jù)”中迅速找到“熱詞”或用戶自己個(gè)性化常用詞,于是,機(jī)器好像就能夠預(yù)知你的心思,提前把你要的詞展現(xiàn)出現(xiàn),使得輸入速度、詞庫廣度、詞語準(zhǔn)確度等方面都有了實(shí)質(zhì)性的提高。又比如,谷歌公司最近推出一種嶄新的機(jī)譯方法:將語言翻譯變成向量空間數(shù)學(xué)問題,利用數(shù)據(jù)挖掘技術(shù)建模一種語言的結(jié)構(gòu),然后與另一種語言的結(jié)構(gòu)進(jìn)行對(duì)比,從而擴(kuò)充和完善現(xiàn)有的雙語語料庫,于是,徹底顛覆了語言翻譯的基本思路。 甚至有人預(yù)言,隨著“大數(shù)據(jù)”的迅速發(fā)展,今后,你不必學(xué)醫(yī)就能夠診病并開處方了(當(dāng)然,外科手術(shù)還得由專門的醫(yī)生來實(shí)施)。 總之,用“大數(shù)據(jù)”來寫詩,特別是寫那些清規(guī)戒律很多的“格律詩”,其實(shí)應(yīng)該是意料之中的事情。歡迎各位網(wǎng)友八仙過海,研究出更多的“機(jī)器寫詩系統(tǒng)”,由于本人是“詩盲”,因此,相關(guān)的“意境庫”肯定粗制濫造,希望不要誤導(dǎo)大家。 |
|