機器學習告訴你:《紅樓夢》後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回了。

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

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

關鍵字: #機器學習
往下滑看下一篇文章
台灣不只要用國際標準,更要參與討論!TWNIC如何培養下一代網路人才,接軌國際技術社群?
台灣不只要用國際標準,更要參與討論!TWNIC如何培養下一代網路人才,接軌國際技術社群?

打開瀏覽器、觀看串流影片,看似日常的上網行為,背後其實仰賴一套套國際網路標準運作。當網路技術持續演進,台灣除了採用這些標準,能不能進一步參與它們形成的過程?

「即便有很多事情可能要做10年才會有效果,但我想我們應該擔任這樣的角色。」TWNIC執行長余若凡指出,台灣硬體產業在全球已有亮眼成果,但對底層網路技術與國際標準的關注、參與仍有成長空間。對TWNIC而言,除了管理「.tw」、「.台灣」網域名稱與台灣IP位址資源,也希望成為台灣與國際網路社群之間的橋梁。

TWNIC 執行長余若凡
圖/ TWNIC 執行長余若凡

這也是TWNIC與國立虎尾科技大學合作舉辦IETF研習課程的背景。從IETF組織運作、RFC標準形成,到IPv6-only等新一代網路技術,課程不只協助參與者理解國際標準,更希望培養實際參與與落地的能力。透過這場合作,TWNIC也試圖串起國際社群、校園人才與產業需求,讓台灣從採用標準,進一步走向參與標準。

硬體做到世界級,下一步讓台灣人才走進標準制定現場

IETF(Internet Engineering Task Force,網際網路工程任務組)作為全球網際網路技術標準形成的重要場域,許多技術規範最終透過RFC文件發布。對TWNIC而言,台灣若能讓更多企業、學校、研究者與工程師參與,不只能更早掌握國際網路技術變化,也有機會把台灣經驗帶進國際討論。

TWNIC因此一方面把國際議題帶回台灣,另一方面也把台灣人才送出去。透過TWNIC Academy學員計畫,每年資助8位學員參與重要國際組織,時間長達一年;部分學員返台後更自主形成社群,近期一場交流活動便吸引近40位參加,背景從網路工程延伸至政策、法律及社會科學。「我們希望最終有更多人可以參與。」余若凡說。從在台培訓、實際參與國際組織到返台形成社群,TWNIC希望讓人才培育不只停留在單次課程,而能持續累積參與國際標準討論的經驗。

會設定網路還不夠,學校補上「讀懂標準」的能力

但真正想要走進IETF,光是「會用網路技術」還不夠。國立虎尾科技大學電機工程系教授兼秘書室主任秘書蘇暉凱指出,大學課堂教授TCP/IP或網路設定,多半從教科書或整理過的教材入手;真正參與國際標準討論,面對的卻是RFC等第一手技術規範。

他將其中的差距歸納成三種能力:規範閱讀、實作驗證與技術表達。工程師除了讀懂規範,也要能透過實作與工具驗證實際網路行為,最後以精準的技術英文語言與國際社群溝通。「這三種能力不是短期間就能養成。」蘇暉凱指出,因此需要逐步融入大學與研究所的課程及專題。

這也凸顯學校在合作中的角色,TWNIC負責連結國際社群、技術趨勢與參與機會,學校則把這些標準帶進人才培育與實作現場。兩者合作,才能讓「參與國際標準」從少數專家的工作,逐漸變成年輕工程師可以累積的能力。

國立虎尾科技大學電機工程系教授兼秘書室主任秘書蘇暉凱
圖/ 國立虎尾科技大學電機工程系教授兼秘書室主任秘書蘇暉凱

IPv6走向主流,校園先成為產業轉型的試驗場

IPv6正是這套合作模式的具體案例。余若凡指出,全球IPv6使用率已正式跨過五成,迎來關鍵轉折。包含越南、捷克等國皆已將全面轉向IPv6排入國家政策時程,主流行動裝置與微軟Windows作業系統也已原生支援。過去許多環境仍採取IPv4與IPv6並行的架構,隨技術、終端與轉換機制逐漸成熟,進一步走向IPv6-only的條件也開始成形。IPv6-only並不代表與既有IPv4服務切割,而是透過NAT64、DNS64等轉換機制維持連線。對產業而言,真正的問題也逐漸從「技術能不能做到」,轉向是否有足夠經驗與信心部署。

為此,TWNIC 從人才培育到校園實作,持續推動 IPv6-only 環境的應用與部署,除了自行建置 IPv6-only Demo Site,也逐步於北、中、南三地拓展示範場域與實作據點。余若凡觀察,相較於企業在商業效益尚未明朗前,對導入新技術往往較為謹慎,校園更適合作為技術驗證與人才培育的場域。透過 TWNIC 推動的實作機制,讓師生在實際環境中理解 IPv6-only 如何運作,一方面培養未來進入產業的人才,另一方面也能累積可供業界參考的部署經驗。對蘇暉凱而言,這意味著學生不能只學會 IPv6 位址格式,更要從網路維運、資安到應用發展,建立面對 IPv6 環境的完整思維。

從Demo Site、教育訓練、技術活動到實作手冊,TWNIC希望逐步降低新技術的理解與部署門檻。當IPv6走向主流,台灣面對的已不只是「網路要不要升級」;如何讓更多人才讀懂國際標準、具備實作能力,甚至走進IETF參與討論,才是台灣從標準「使用者」走向「參與者」的下一步。

IETF研習課程

TWNIC將於10月29至31日2026年臺灣網際網路研討會(TANET 2026)暨國際計算機會議(ICS)設攤展示,規劃「新世代IPv6-Only Wi-Fi無線網路體驗與建置」及「TWNIC IPv6智慧工作室(IPv6 Smart Studio)」兩大主題。歡迎各界蒞臨參觀與體驗!
詳細介紹請參閱:https://twnic.tw/blog/contents.php?id=253&lang=zh-tw

登入數位時代會員

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

每日推播重點文章

閱讀會員專屬文章

請先登入數位時代會員

看更多獨享內容

請先登入數位時代會員

開啟收藏文章功能,

請先登入數位時代會員

開啟訂閱文章分類功能,

請先登入數位時代會員

我還不是會員, 註冊去!
追蹤我們
一次搞懂工業AI
© 2026 Business Next Media Corp. All Rights Reserved. 本網站內容未經允許,不得轉載。
106 台北市大安區光復南路102號9樓