機器學習告訴你:《紅樓夢》後40回到底是不是曹雪芹寫的?
機器學習告訴你:《紅樓夢》後40回到底是不是曹雪芹寫的?

前幾天燈神給我發了一篇文章,講的是用機器學習的方式來判定紅樓夢後40回到底是不是曹雪芹寫的。

圖說明

黛玉重建桃花社。畫家孫溫。圖片來自:Wikipedia


我這段時間也在自學Andrew Ng的機器學習課程,還差4週就能完成課程了。

電腦是一個很強調learning by doing的學科,於是我也來「學以致用」,用剛學到的SVM演算法來分析下雪芹老師到底有沒有寫後面的40回。

作為一個從沒看過紅樓夢的人,我的大致思路是這樣的:

  1. 受到《獵人》裡蟻王破解會長無敵招數的啟發,每個人的寫作都有些小習慣,雖然文章前後說的內容會有差別,但是這些用詞的小習慣不容易改變;

  2. 用開源的分詞工具把全書分詞(python的jieba分詞),然後統計詞頻。把出現頻率超過100次的詞語找出來,人工去掉一些可能因為文章內容造成前後出現不一致的人名、地名;

  3. 然後每一章按照2中的詞頻表,看這一章中出現這些詞語的頻率;

  4. 前80回、後40回各選15回作為機器學習的資料,讓機器學習這些章節的用詞特點,然後推算其他章節的用詞特點是屬於前80回呢、還是後40回;

  5. 如果機器根據這些用詞特徵推算的是否屬於後40回的結果跟實際的結果吻合,那麼就說明後40回的寫作風格跟前80回有很大不同,很可能是兩個人寫的;

好了,下面我儘量少涉及數學跟程式設計的知識,來一步步解讀機器學習是怎麼完成這個問題的。

生成全書的詞頻表

圖說明

我截取了其中一段的詞頻表。像寶二爺、黛玉笑這種涉及人物的詞語,可能前面戲份多、後面戲份少,所以就不選它們作為用詞習慣的特徵,而像忽然、故、只要、可不是這種承接性質的碎詞,就不太容易會受情節的影響,所以適合選出來作為用詞習慣的特徵。

最終,我按照出現從多到少排序,選擇了278個詞作為機器學習的用詞習慣。

將120回的詞頻進行統計

接下來我把每一回出現這278個詞的頻率統計出來,得到我們給機器學習的樣本。這個樣本的樣子大概是這樣的:

圖說明

比如以B行2列舉例,說明在第一回裡面「道」這個動詞,出現了36次。

通常我們在進行複雜的事情前,喜歡先簡化問題,或者給自己一些直觀的圖表,以便瞭解問題。機器學習也是一樣的。

我嘗試著在圖上把前80回和後40回習慣用詞出現的頻率畫出來。以第一回為例,x1座標代表「道」出現多少次,x2座標代表「說」出現多少次,x3座標代表「也」出現多少次......x280座標代表「則」出現多少次。

什麼?超過三維了,那人類的大腦可是沒辦法理解的啊。

沒關係,當我們用燈光照射一個立體的圖時,平面會有它的影子。這個影子雖然沒有立體圖的資訊這麼豐富,不過我們看影子還是可以猜出來大致的樣子。對於高緯度的問題,我們也可以用投影的方式來降低緯度。

雖然資訊損失了不少,不過能給我們一個直觀的感受。

圖說明

這個是120個章節的用詞習慣從278緯降到3維以後的圖,紅色+的點是前80回,藍色o的點是後40回。

從這個圖可以很直接地看到,確實在用詞習慣上有明顯的區別。就算我們沒有機器學習工具的幫忙,也可以大膽猜測後40回是出自於另外一個人了。

下面我們用機器學習來看精確一點的判斷。

機器學習

透過課程我大致瞭解了SVM的原理和簡化版問題的演算法實現,不過對於複雜問題我還是沒這個能力寫程式。於是用python的scikit庫來幫助我來完成這個預測。

演算法的步驟很簡單,前80回、後40回各選15個來餵給機器學習它們的特點,然後把剩下的章節輸入給機器,問它們屬於前80回還是後40回。

圖說明

看out[44]的結果,代表了機器預測這120回的用詞習慣到底屬不屬於後40回(0為不屬於,1為屬於)。

如果你看不懂上面的程式碼,沒關係。我告訴你結果好了。

機器在學習以後告訴我,如果我把隨便一章的用詞習慣告訴它、但不告訴它到底是前80回還是後40回,那麼機器有95%的把握能猜出它是不是後40回。

至此,我們可以很有信心地判斷它們的寫作風格不同。

那麼,問題來了,會不會因為是情節的需要所以導致寫作風格不同了呢?

情節不同會造成用詞習慣多大的差別?

好吧,那我再來做一個旁證。我把另外一部四大名著「三國演義」拿來分析,看看上部跟下部的用詞習慣會不會有比較明顯的差別。

圖說明

這個是三國演義的用詞習慣縮到三維以後的圖,紅色+代表前60部的用詞習慣,藍色o代表後60部的用詞習慣。

你可能會說,雖然中間交叉的地方比較多,但是還是可以看出來是有區分的。

可如果你比對一下跟紅樓夢的圖,你就會發現紅樓夢的差別會明顯得多。

圖說明

紅色+為紅樓夢前80回/三國前60回,藍色o紅樓夢後40回/三國後60回

最後,用機器學習的方式來說,如果我把三國演義隨便一章的用詞習慣告訴它、但不告訴它到底是前60回還是後60回,那麼機器有7成的把握猜對,這個準確度已經遠遠低於紅樓夢的95%的預測水準。

所以,我們用「三國演義」這個旁證來分析,即便是因為情節需要導致的用詞習慣差別也不應該這麼大。

所以,我們就更有信心說曹老先生沒有寫後40回了。

更多的機器學習有趣的玩法,我會在學習的過程中慢慢嘗試的。以上。

本文作者黎晨,原文刊載於他的微信公眾號:黎小晨想太多

關鍵字: #機器學習
往下滑看下一篇文章
總統科學獎揭曉!梁賡義院士、葉均蔚院士用創新與堅持,寫下臺灣科學光輝新頁
總統科學獎揭曉!梁賡義院士、葉均蔚院士用創新與堅持,寫下臺灣科學光輝新頁

【總統科學獎】宗旨在於提升臺灣在國際學術界之地位,獎勵數理科學、生命科學、人文及社會科學、工程科學在國際學術研究上具創新性且貢獻卓著之學者,尤以對臺灣社會有重大貢獻之基礎學術研究人才為優先獎勵對象。

2025年11月11日,總統科學獎頒獎典禮於總統府正式舉行。2001年設立、每2年頒發1次的總統科學獎,今年已邁入第13屆,本屆的2位獲獎者,分別是生命科學組的院士梁賡義、工程科學組的院士葉均蔚。2位臺灣的科研泰斗,不僅全心全意投入創新,更樹立了典範,成為所有科研人員的榜樣。

總統賴清德在致詞時,引用諾貝爾和平獎得主曼德拉(Nelson Mandela)的話指出:「在事情完成之前,一切都看似不可能。這說明了2位院士的故事,他們對未知世界保持熱情、好奇,認真從基礎研究做起,並堅持努力到最後一刻,成功終將屬於他們。」

2025年總統科學獎得主,生命科學組 梁賡義 院士(右)、工程科學組 葉均蔚 院士(左)。
2025年總統科學獎得主,生命科學組 梁賡義 院士(右)、工程科學組 葉均蔚 院士(左)。
圖/ 數位時代

梁院士開創廣義估計方程式 ,加速新藥問世,造福千萬病患

從數學跨足生物統計、再投身高等教育與國家衛生的梁院士,從小就喜歡數學的嚴謹,在美國華盛頓大學攻讀博士期間,因為接觸到當時炙手可熱的「存活分析」,進而對生物統計產生興趣,「投入『生物統計』是條不歸路,因為我發現,統計工具的發展,可以對人類健康有間接幫助。」後來,他前往美國約翰霍普金斯大學任教,又與同事Scott Zeger研發出新的統計方法「廣義估計方程式」,突破了傳統分析方法必須假設所有樣本獨立的侷限,讓長期追蹤資料的解讀更嚴謹,也成為全球健康研究不可或缺的工具。

梁院士研究做得出色,卻不只將心力擺在學術上,他更心心念念著臺灣的發展,持續關心高等教育、國家衛生等領域。他在美國任教的28年間,幾乎年年暑假,都返國舉辦研討會,分享國際生物統計和流行病學的新知。2010年,他乾脆辭去教職,回臺擔任國立陽明大學校長,將陽明大學打造成醫學、人文並重的全人大學。

數位時代
賴總統親自頒發「2025年總統科學獎」殊榮予梁院士。
圖/ 數位時代

2017年,他又接下國家衛生研究院院長一職,並在新冠肺炎爆發期間,擔任中央流行疫情指揮中心研發組組長,與阿斯特捷利康(AstraZeneca)簽約,採購1千萬劑疫苗,完成防疫任務,「所以獲得總統科學獎,不僅是個人的榮耀,更是國家對全人教育的推動、公共衛生實踐,以及任務導向的研究重要性的肯定。能在其中有一些貢獻,我深感榮幸。」

高熵合金之父葉院士,堅持不懈打破材料學定律

被譽為「高熵合金之父」的葉院士,打破材料學界以1~2種主元素為基底的傳統,開創出能讓數十種元素混合的「高熵合金」,為元素週期表注入嶄新生命力,在半導體、智慧機械、綠能科技、國防與生醫等領域帶來突破性的應用。過去合金多以單一金屬為主,再加入少量元素微調性質,金屬種類愈多反而愈脆、延展性與硬度下降,使應用受限;然而高熵合金卻反其道而行,以4、5種以上金屬融合,展現出更佳的延展性、耐腐蝕性與硬度,重新定義合金的可能性。

令人驚訝的是,30年前葉院士提出高熵合金構想時,曾被質疑「觀念錯誤、毫無可能」。他不畏質疑,透過紮實的實驗與論證,於2004年一口氣發表5篇高熵材料論文,為高熵合金命名、定義並奠定理論基礎,後續更平均每年發表逾10篇研究,提出高熵效應、嚴重晶格扭曲效應、緩慢擴散效應與雞尾酒效應等核心概念,開創全新的材料科學典範。

數位時代
賴總統親自頒發「2025年總統科學獎」殊榮予葉院士。
圖/ 數位時代

如今,高熵合金不只在學界掀起熱潮,更成功落地產業。「學以致用非常重要!」葉院士強調,學術研究不該停留在象牙塔,而應投入產業、協助解決關鍵瓶頸。他不僅與國立清華大學共同成立「高熵材料研發中心」,也創辦全球首家高熵材料公司,推動技術轉移與產業升級,讓高熵合金真正走向世界舞臺。

所有總統科學獎得獎人的科學成就及重要貢獻,不僅提升臺灣學術聲譽及國際競爭力,對於增進人類生活福祉更有深遠的影響,實為臺灣學術界的最高典範。而本屆梁院士、葉院士2位得獎人終身投入科學探索、人才培育的成果,嘉惠了整個社會,更成就跨世代的深遠影響,為臺灣科學寫下光輝一頁。

【總統科學獎委員會 廣告】

登入數位時代會員

開啟專屬自己的主題內容,

每日推播重點文章

閱讀會員專屬文章

請先登入數位時代會員

看更多獨享內容

請先登入數位時代會員

開啟收藏文章功能,

請先登入數位時代會員

開啟訂閱文章分類功能,

請先登入數位時代會員

我還不是會員, 註冊去!
追蹤我們
進擊的機器人
© 2025 Business Next Media Corp. All Rights Reserved. 本網站內容未經允許,不得轉載。
106 台北市大安區光復南路102號9樓