您現(xiàn)在的位置:海峽網(wǎng)>新聞中心>IT科技>科技數(shù)碼
分享

原標(biāo)題:程序員分析唐詩(shī)朋友圈:白居易最“大V”李白的確“負(fù)心”

程序員分析唐詩(shī)朋友圈:白居易最“大V”李白“負(fù)心”

漫畫:張建輝

航天工程師跨界研究玩出有趣結(jié)果,編程分析數(shù)據(jù)展示初唐、盛唐、中唐、晚唐各時(shí)期詩(shī)壇社交網(wǎng)絡(luò)。

程序員分析唐詩(shī)朋友圈:白居易最“大V”李白“負(fù)心”

唐朝社交網(wǎng)絡(luò)

2017年初綜藝節(jié)目《中國(guó)詩(shī)詞大會(huì)》的走紅不僅讓幾位優(yōu)秀選手家喻戶曉,還間接催生民間朗誦、學(xué)習(xí)、研究古詩(shī)詞的熱潮。在這個(gè)背景下,一個(gè)本職工作是做數(shù)據(jù)分析的程序員也閑不住了,他用自己擅長(zhǎng)的編程語(yǔ)言為工具,向我們展示了計(jì)算機(jī)對(duì)全唐詩(shī)的分析成果:唐朝詩(shī)人最喜歡的季節(jié)是春天,最鐘意的動(dòng)物是龍、馬,最喜歡提及的地名是江南……

這不夠,他還要告訴你全唐詩(shī)中排名第一的“好基友”是哪兩位;初唐、盛唐、中唐、晚唐各時(shí)期詩(shī)壇社交網(wǎng)絡(luò)如何,分別產(chǎn)生了以誰(shuí)為中心的“朋友圈”……程序員的文章發(fā)表后,引發(fā)不凡的閱讀量與回應(yīng),同時(shí)有人文領(lǐng)域的研究者指出其不足之處。高呼“代碼改變世界”操之過急,技術(shù)的進(jìn)步帶給人文社科領(lǐng)域巨大的推力卻是不爭(zhēng)的事實(shí):跨界研究有益亦有趣。

全唐詩(shī)作數(shù)量“無(wú)名氏”排第四

程序員分析唐詩(shī)朋友圈:白居易最“大V”李白“負(fù)心”

漫畫:張建輝

2017年2月26日,“前進(jìn)四先生”終于在自己的微信公眾號(hào)“前進(jìn)日志”上貼出了《當(dāng)我們?cè)谧x唐詩(shī)時(shí),我們?cè)谧x什么》。說起他的職業(yè)“航天工程師”,似乎和唐詩(shī)沒有任何關(guān)聯(lián),日常工作圍著數(shù)據(jù)分析、寫程序轉(zhuǎn),是標(biāo)準(zhǔn)的“程序員”。用“前進(jìn)四先生”(以下簡(jiǎn)稱“前進(jìn)四”)的話來說:“這是一個(gè)非常嚴(yán)謹(jǐn)?shù)男袠I(yè),容不得半點(diǎn)差錯(cuò)。”

能寫出這篇文章,和他另一個(gè)身份定位有關(guān):古典詩(shī)詞愛好者。平日對(duì)詩(shī)詞抱有濃厚興趣,讀過不少相關(guān)書籍,在心情不好時(shí)喜歡讀詩(shī)的他和千千萬(wàn)萬(wàn)觀眾一樣,在春節(jié)期間關(guān)注到一檔綜藝節(jié)目《中國(guó)詩(shī)詞大會(huì)》。節(jié)目的熱度刺激了他的職業(yè)習(xí)慣:用數(shù)據(jù)分析遇到的各類問題,唐詩(shī)也包括在內(nèi)?!扒斑M(jìn)四”對(duì)記者表示,用科技手段來分析文藝作品在學(xué)術(shù)界并不新鮮,其之前也讀過相關(guān)論文,如浙江大學(xué)徐永明《中國(guó)古典文學(xué)研究的幾種可視化途徑——— 以湯顯祖研究為例》。只不過這些文章多流傳在學(xué)術(shù)圈中,并沒有流傳開來。

“程序員”開始行動(dòng)了。為分析唐朝詩(shī)歌,他先從網(wǎng)上找來一份全唐詩(shī),其使用的版本共2609位作者,收錄42974首詩(shī)。通過Python(一種計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言)這種工具,他決定小試牛刀,分析唐詩(shī)中出現(xiàn)的字、詞,找找有哪些好玩的點(diǎn)。

第一個(gè)問題,唐朝詩(shī)人誰(shuí)的作品數(shù)量最多?程序統(tǒng)計(jì)的結(jié)果前三名是:白居易(2643首)、杜甫(1151首)、李白(897首)。而位居第四的是N A (843首),即“無(wú)名氏”?!扒斑M(jìn)四”后來告訴南都記者,這個(gè)統(tǒng)計(jì)只局限在全唐詩(shī)里,存在的不足是各個(gè)作者流傳至今的詩(shī)詞數(shù)量不一,提醒讀者其中可能存在誤差:“比如全唐詩(shī)中白居易的詩(shī)最多,這是因?yàn)榘拙右咨白约壕幾脒^文集,李杜則沒有,所以白的文章流傳到后世的就比李杜的多一些”。

“難道唐朝詩(shī)人也講龍馬精神”

程序員分析唐詩(shī)朋友圈:白居易最“大V”李白“負(fù)心”

漫畫:張建輝

接著,他用計(jì)算機(jī)統(tǒng)計(jì)全唐詩(shī)中常見的字、詞,例如出現(xiàn)最多的字、季節(jié)、顏色、植物、動(dòng)物等詞匯分別是哪些?!扒斑M(jìn)四”稱,這些檢索十分簡(jiǎn)單,只需要幾行代碼就可以實(shí)現(xiàn);而檢索的關(guān)鍵詞是他本著對(duì)于詩(shī)歌常見意象的閱讀經(jīng)驗(yàn)想出來的。讓我們看看他得出的結(jié)論:唐詩(shī)中出現(xiàn)最多的字是“不”字;四季出現(xiàn)的頻率中,“春”和“秋”呈現(xiàn)出壓倒性的場(chǎng)面;顏色中,詩(shī)人用的最多的是“白”色;植物中,“松”“竹”最受詩(shī)人喜愛;動(dòng)物中,“龍”“馬”出場(chǎng)次數(shù)高于其他種類,對(duì)此“前進(jìn)四”開玩笑———“難道唐朝也講龍馬精神”?

至于以詞為單位的分析,他告訴記者,實(shí)際與字的分析原理相同,但借助了T H U LA C這個(gè)分詞工具?!扒斑M(jìn)四”解釋,T H U LA C在分詞之后,還能同時(shí)得到詞的詞性(同時(shí)他提到,此分詞工具有缺陷。計(jì)算機(jī)之所以能分詞,是因?yàn)樗鼜拇罅康娜斯し衷~結(jié)果中學(xué)習(xí)了規(guī)律。TH U LAC是用現(xiàn)代語(yǔ)文分詞的材料訓(xùn)練出來的,相應(yīng)的,T H U LA C也就在現(xiàn)代語(yǔ)文材料分詞中表現(xiàn)良好,針對(duì)古代文獻(xiàn)沒那么理想)。比如這個(gè)詞到底是形容詞,動(dòng)詞還是名詞?T H U LA C的詞性劃分得非常細(xì)致,其中就有地名詞性、時(shí)間詞性、處所詞性等,因此統(tǒng)計(jì)唐詩(shī)中出現(xiàn)的地名、時(shí)間、場(chǎng)景等也較為簡(jiǎn)單。

根據(jù)“前進(jìn)四”的統(tǒng)計(jì),唐詩(shī)中最常出現(xiàn)的地名是“江南”和“長(zhǎng)安”,他在文中如是說———“畢竟一個(gè)地方環(huán)境好,一個(gè)地方是首都,想必這兩個(gè)地方的房?jī)r(jià)一定也很貴?!蹦敲?,什么具體場(chǎng)景能引發(fā)詩(shī)人們的興致呢?門前、海上、江邊、樓上,“這就跟我們現(xiàn)在到景區(qū)門前要合影留念,到海邊、河邊、高樓上都要拍照發(fā)朋友圈是一個(gè)意思吧”。

更進(jìn)一步, 通過w ord2vec這個(gè)工具,實(shí)現(xiàn)詞到向量的轉(zhuǎn)換,即所有詞可轉(zhuǎn)換成一長(zhǎng)串?dāng)?shù)字。由此,計(jì)算機(jī)以數(shù)字之間的相似度可以簡(jiǎn)單分析詩(shī)句中詞與詞之間的關(guān)聯(lián)?!扒斑M(jìn)四”向記者解釋,這個(gè)轉(zhuǎn)化過程非三言兩語(yǔ)能說清楚。粗略來講,不同詞的上下文是不一樣的,但是又有一定的相關(guān)性。比方說“蘋果”和“梨”,這兩個(gè)詞出現(xiàn)的語(yǔ)境應(yīng)該會(huì)很相似,比如:“我們?nèi)ニ曩I蘋果/梨吧”,“午飯后再吃個(gè)蘋果/梨”。在這兩個(gè)句子中,蘋果和梨都是可以互換的詞。而“蘋果”和“貓”就基本不可能出現(xiàn)在相同的上下文語(yǔ)境中。計(jì)算機(jī)通過分析每個(gè)詞上下文出現(xiàn)的詞,最后可以每個(gè)詞轉(zhuǎn)換為一串?dāng)?shù)字。上下文比較接近的詞,這串?dāng)?shù)字就比較接近。

以此手段,“前進(jìn)四”找出了與“寂寞”關(guān)聯(lián)密切的10個(gè)詞:唯有、今夜、搖落、悵望、故國(guó)、伴、惆悵、深春、明日、旅。他在文中這樣寫道:“能看出來,詩(shī)人們往往在春日的深夜里,在樹葉搖落的季節(jié)里,在旅途中,懷念故國(guó)的時(shí)候,最容易寂寞。這也難怪,我寫完上個(gè)句子,都感覺有點(diǎn)寂寞了呢?!?/p>

最熱烈“基友”:陸龜蒙和皮日休

程序員分析唐詩(shī)朋友圈:白居易最“大V”李白“負(fù)心”

漫畫:張建輝

3月12日,“前進(jìn)四”又貼出另一篇分析成果《計(jì)算機(jī)告訴你,唐朝詩(shī)人之間的關(guān)系到底是什么樣的》,超高的閱讀量讓他感到驚訝:“最初只是為了好玩,沒想到有這么多人喜歡?!彼嬖V記者,這篇文章寫的時(shí)候其實(shí)很隨意,遠(yuǎn)沒有之前寫數(shù)學(xué)類文章那么認(rèn)真。如果能知道有這么大的傳播度,就會(huì)更加認(rèn)真些。

這篇文章,他把關(guān)注焦點(diǎn)放在詩(shī)人身上,試圖理清兩個(gè)詩(shī)人以至于多個(gè)詩(shī)人間的關(guān)系。如何解決呢?借助全唐詩(shī),他把“關(guān)系”簡(jiǎn)化為“引用關(guān)系”,即詩(shī)的標(biāo)題和正文中只要提到過對(duì)方,那么兩者之間的引用關(guān)系加1。一首詩(shī)如果提到多次對(duì)方,只算一次引

用?!扒斑M(jìn)四”對(duì)記者說,“這種引用關(guān)系的分析只是大體上的分析。如果要認(rèn)真分析兩位詩(shī)人之間的關(guān)系,勢(shì)必要按年代順序來分析兩者之間的唱和作品,這工作量有點(diǎn)大,并且不是我擅長(zhǎng)的內(nèi)容”。計(jì)算機(jī)無(wú)法對(duì)引用的詩(shī)做細(xì)微的情感分析,因此文中的詩(shī)壇“社交網(wǎng)絡(luò)”“朋友圈”都只是以“引用關(guān)系”為依托。

全唐詩(shī)共2000多名作者,詩(shī)人的別稱又很多,比如杜甫字子美,按排行稱為杜二,按官職稱為杜工部。為了讓他們對(duì)號(hào)入座、不重復(fù)、不遺漏,“前進(jìn)四”使用C B D B(中國(guó)歷代人物傳記資料庫(kù),系統(tǒng)性收錄中國(guó)歷代名人傳記資料)查詢?cè)娙说闹饕畔⒓皠e名,排除年代不符的重名,手動(dòng)補(bǔ)充遺漏部分。由于把全唐詩(shī)所有詩(shī)人關(guān)系都理出來會(huì)很亂,借助CBD B來的篩選,“前進(jìn)四”將762位詩(shī)人納入社交網(wǎng)絡(luò)的關(guān)心范圍。

范圍既定,程序運(yùn)行。首先,看一下著名的李白與杜甫。全唐詩(shī)中,杜甫寫了12首與李白有關(guān)的詩(shī),李白則只有3首與杜甫有關(guān)的詩(shī)。雖然“前進(jìn)四”也調(diào)侃“李白這種朋友確實(shí)差勁了一點(diǎn)”,但對(duì)于近來網(wǎng)上流傳的李杜二人的段子,他覺得“看看笑笑就好”?!扒斑M(jìn)四”表示,杜甫寫李白的詩(shī)多,一方面因?yàn)槔畎资情L(zhǎng)輩,比杜甫大了十來歲,成名時(shí)間也早得多,更多的是因?yàn)槎鸥屠畎椎男愿癫煌豪畎罪h逸,杜甫深情。

那么,唐代詩(shī)人間的唱和互動(dòng)以哪兩人最為頻繁呢?排名第一的是晚唐時(shí)期陸龜蒙和皮日休,堪稱“絕對(duì)的好基友”。兩人互相提到對(duì)方的次數(shù)均達(dá)百次以上,常年酬唱的成果被集成唱和詩(shī)集《松陵集》,文學(xué)史上也留下“皮陸”的美名。

并列排名第二的則是白居易和劉禹錫、白居易和元稹。白居易與元稹是文學(xué)史上聞名的“元白”二人組,關(guān)系之親密自不待言;白居易和劉禹錫同年(772年)出生,從政道路都是“各種被貶謫”。白居易得知?jiǎng)⒂礤a去世的消息后,還寫下了悼亡的千古名詩(shī):四海齊名白與劉,百年交分兩綢繆。同貧同病退閑日,一死一生臨老頭。

白居易是“大V中的大V”

另外,從排名前三十的引用關(guān)系來看,白居易還與李逢吉、崔玄亮、李建、李紳等名字相連次數(shù)很多。“前進(jìn)四”稱,白居易絕對(duì)是唐朝詩(shī)人朋友圈中的明星,是“大V中的大V”。

兩人間關(guān)系有了排名,“前進(jìn)四”利用E C harts將前一百名引用關(guān)系圖示化,得到詩(shī)人們的社交網(wǎng)絡(luò)圈。依據(jù)引用度的強(qiáng)弱,關(guān)系圖顯示出了唐朝詩(shī)人的兩個(gè)大型朋友圈:盛唐杜甫-李白朋友圈、中唐白居易朋友圈。

對(duì)于白居易這個(gè)“社交核心”,“前進(jìn)四”向南都記者解釋,社交網(wǎng)絡(luò)圈的核心人物,就是與其他文人發(fā)生聯(lián)系比較多,并且在文壇上有一定名望的人。白居易是其中典型,白與其同時(shí)代的其他文人都有聯(lián)系,并且是當(dāng)時(shí)的詩(shī)壇領(lǐng)袖。

除此之外,從初唐、盛唐、中唐、晚唐分階段看,初唐詩(shī)人中關(guān)系最好的是宋之問和沈銓期,兩位正是宮廷詩(shī)人的代表,確定了近體詩(shī)的格律,史稱“沈宋”;晚唐詩(shī)人的社交網(wǎng)絡(luò)比較散亂,沒有明顯的核心。其中最重要的就是李商隱和杜牧,文學(xué)史也以“小李杜”認(rèn)證。

跨界回響

“這個(gè)數(shù)據(jù)統(tǒng)計(jì)很有趣但還流于簡(jiǎn)單”

以“前進(jìn)四”這個(gè)程序員的思維,計(jì)算機(jī)不僅可以分析唐詩(shī),還可以解剖其他時(shí)代的文獻(xiàn),梳理時(shí)代人物關(guān)系。當(dāng)然前提是這種分析需要“對(duì)當(dāng)時(shí)的時(shí)代有一定的了解”。伴隨著計(jì)算機(jī)技術(shù)的發(fā)展和古典文獻(xiàn)的數(shù)字化進(jìn)程,他對(duì)做出中國(guó)歷史人物關(guān)系圖的愿景抱有期待。

就程序員的思路,南都記者請(qǐng)教了一位人文領(lǐng)域研究者劉銳。劉銳現(xiàn)在香港教育大學(xué)中國(guó)語(yǔ)言學(xué)系做詞匯語(yǔ)義學(xué)、語(yǔ)料庫(kù)語(yǔ)言學(xué)方面的研究。他評(píng)價(jià)兩篇文章稱:這種文理之間、文科和工程科學(xué)之間的跨界,在大眾看來還比較新奇,想必這和教育體制的文理分科在大眾中形成的觀念有關(guān)。這樣的文章雖然算不上學(xué)術(shù)研究(其實(shí)很多是程序員的“練筆之作”),但是對(duì)于向大眾普及文理合流、文理相通的觀念很有幫助。由此可以看到跨界和學(xué)術(shù)走入生活的趨勢(shì)。通過一些計(jì)算機(jī)技術(shù),從宏觀的方面揭示詩(shī)詞歌曲的特點(diǎn),并通過現(xiàn)代人熟知的一些概念表達(dá)出來,比如“社交網(wǎng)絡(luò)”、朋友圈等,能夠引發(fā)大眾對(duì)現(xiàn)象的思考,和對(duì)學(xué)術(shù)的興趣。

劉銳告訴南都記者,之前他看過另一篇很火的文章《我分析了42萬(wàn)字的歌詞,為了搞清楚民謠歌手們?cè)诔┦裁础?,是用?jì)算機(jī)方法分析歌詞。相比之下,“前進(jìn)四”的文章所用材料數(shù)量更大,分析較為嚴(yán)謹(jǐn)。不過,就學(xué)術(shù)研究而言,失之簡(jiǎn)單。做詩(shī)歌研究繞不過文學(xué)史。詩(shī)人社交網(wǎng)絡(luò)、詩(shī)壇核心,考量的維度很多,“除了詩(shī)歌的互引,還比如各種史料記載的詩(shī)人交游的情況,詩(shī)人對(duì)文學(xué)風(fēng)格的影響,貢獻(xiàn)等。如果文章根據(jù)制圖得出結(jié)論后再查查文學(xué)史,若能互相印證,會(huì)更有說服力”。

同時(shí)他認(rèn)為,基于字詞統(tǒng)計(jì)的方法是語(yǔ)言學(xué)中常用的方法,比如漢語(yǔ)中哪些是常用詞,就用統(tǒng)計(jì)方法加一些語(yǔ)言學(xué)原理來確定。但是“前進(jìn)四”的字詞統(tǒng)計(jì)還是流于簡(jiǎn)單?!霸?shī)歌精細(xì)的意義不說,單說這個(gè)字詞統(tǒng)計(jì)沒有考慮到多義詞、多義字的情況,這就不是很可靠了。而且他用的分詞軟件是不是適用于古漢語(yǔ)呢?古今漢語(yǔ)的分詞是非常不同的”。

劉銳表示,整體而言他很樂見這種“跨界研究”。據(jù)他介紹,學(xué)術(shù)領(lǐng)域有一門計(jì)算語(yǔ)言學(xué),專門用計(jì)算機(jī)研究語(yǔ)言。由此能驗(yàn)證出不少有趣的結(jié)論,最著名的便是“齊普夫定律”。此定律有點(diǎn)像所謂的“二八定律”,是最省力法則在語(yǔ)言中的體現(xiàn)。

他山之石

“數(shù)據(jù)挖掘”

在歷史研究中大有可為

實(shí)際上,程序員的這次“跨界”也得到不少人文領(lǐng)域讀者的關(guān)注?!坝行┎粫?huì)寫代碼的朋友,他們想知道有沒有現(xiàn)成的工具可以對(duì)其他文獻(xiàn)進(jìn)行分析”;還有一些讀者和“前進(jìn)四”交流對(duì)話,由此他聽說了數(shù)字史學(xué)(digital history)這一概念,才明白自己的文章用計(jì)算機(jī)分析、展示歷史,可以算作“數(shù)字史學(xué)”的范疇。

“前進(jìn)四”口中的數(shù)字史學(xué),據(jù)南京大學(xué)歷史系王濤的論文《挑戰(zhàn)與機(jī)遇:“數(shù)字史學(xué)”與歷史研究》介紹,早在上個(gè)世紀(jì)90年代就有了這一概念。信息技術(shù)革命與“大數(shù)據(jù)”時(shí)代的到來,為史學(xué)研究史料整理、分析思路造成了不小的沖擊。論文認(rèn)為,計(jì)算機(jī)“數(shù)據(jù)挖掘”的特長(zhǎng)在歷史研究中大有可為。王濤提到,2007年開始,哈佛大學(xué)由谷歌公司支持,借助電腦“閱讀”百萬(wàn)計(jì)電子書,利用n-grams分析書籍中出現(xiàn)的重要詞匯,獲悉不少有趣的結(jié)果。例如,對(duì)著名歷史人物的成名過程有了定量的描述,而且發(fā)現(xiàn)成名的準(zhǔn)備期從20世紀(jì)中期開始變得越來越短;對(duì)歷史上出現(xiàn)的瘟疫流行路線有了清晰的描繪;主流文化對(duì)技術(shù)進(jìn)步的接納,在19世紀(jì)初平均需要66年,而在1880—1920年間,則只需27年。

無(wú)論是“計(jì)算語(yǔ)言學(xué)”還是“數(shù)字史學(xué)”,離普通人還是有些距離。不過,善用搜索工具、用程序處理人文,總能帶給你意想不到的結(jié)論。畢竟,依照計(jì)算機(jī)分析,現(xiàn)代民謠歌手在歌詞中最喜歡春天,最愛念叨“南方”,和全唐詩(shī)中詩(shī)人的偏愛有那么一絲接近呢。

責(zé)任編輯:海凡

最新科技數(shù)碼 頻道推薦
進(jìn)入新聞?lì)l道新聞推薦
胖東來模式永輝調(diào)改店鼓樓首秀,“福州
進(jìn)入圖片頻道最新圖文
進(jìn)入視頻頻道最新視頻
一周熱點(diǎn)新聞
下載海湃客戶端
關(guān)注海峽網(wǎng)微信
?

職業(yè)道德監(jiān)督、違法和不良信息舉報(bào)電話:0591-87095414 舉報(bào)郵箱:service@hxnews.com

本站游戲頻道作品版權(quán)歸作者所有,如果侵犯了您的版權(quán),請(qǐng)聯(lián)系我們,本站將在3個(gè)工作日內(nèi)刪除。

溫馨提示:抵制不良游戲,拒絕盜版游戲,注意自我保護(hù),謹(jǐn)防受騙上當(dāng),適度游戲益腦,沉迷游戲傷身,合理安排時(shí)間,享受健康生活。

CopyRight ?2016 海峽網(wǎng)(福建日?qǐng)?bào)主管主辦) 版權(quán)所有 閩ICP備15008128號(hào)-2 閩互聯(lián)網(wǎng)新聞信息服務(wù)備案編號(hào):20070802號(hào)

福建日?qǐng)?bào)報(bào)業(yè)集團(tuán)擁有海峽都市報(bào)(海峽網(wǎng))采編人員所創(chuàng)作作品之版權(quán),未經(jīng)報(bào)業(yè)集團(tuán)書面授權(quán),不得轉(zhuǎn)載、摘編或以其他方式使用和傳播。

版權(quán)說明| 海峽網(wǎng)全媒體廣告價(jià)| 聯(lián)系我們| 法律顧問| 舉報(bào)投訴| 海峽網(wǎng)跟帖評(píng)論自律管理承諾書

友情鏈接:新聞?lì)l道?| 福建頻道?| 新聞聚合