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

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

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

關鍵字: #機器學習
往下滑看下一篇文章
台灣數位安全發展協會揭打詐盲點:截圖難當證據,AI加b-JADE讓數位足跡可驗證
台灣數位安全發展協會揭打詐盲點:截圖難當證據,AI加b-JADE讓數位足跡可驗證

重點一:數位詐騙生命週期極短,打完一波就轉移陣地,「下架」只處理了眼前的內容,處理不了事後追查。

重點二:台灣數位安全發展協會以AI蒐集、分類詐騙廣告,九成以上工作可由AI完成,最終判斷仍保留人工背書。

重點三:透過司法聯盟鏈b-JADE,只把資料的「數位指紋」上鏈存證,原始資料另行保存,目標是降低被害人的訴訟舉證成本。

一則可疑的投資廣告被檢舉、下架,帳號也停權了,多數人以為事情就此結束。真正麻煩的是,廣告消失的那一刻,追查詐騙集團的線索也可能跟著消失。

為了補上這個缺口,台灣數位安全發展協會正與司法聯盟鏈「b-JADE」合作,替詐騙相關資料做存證。b-JADE是一套以區塊鏈為基礎的司法存證機制,只有通過程序認證的單位才能提供上鏈服務;資料一旦上鏈,任何改動都會留下痕跡。白話說,就是替數位證據貼上「封條」,讓證據從蒐集到進入法庭,都能驗證有沒有被動過手腳。

詐騙廣告下架,為什麼還不夠?

原因在於數位詐騙的生命週期太短,下架只能處理眼前的內容。台灣數位安全發展協會理事長劉彥伯指出,傳統電話詐騙一套劇本可以拉長到半年、甚至一年;數位詐騙則像打游擊,一波結束就移往下一個平台,從廣告、社群到另一個App,一路跨平台引導被害人。

更大的問題是證據跟著斷線。被害人發現受騙時,可能已是半年後,手上通常只留得住最末端的匯款與聯絡紀錄,最初看過哪則廣告、點進哪個網站,早已消失。等到一、兩年後警方抓到詐騙集團,對方就能在法庭上反問「你怎麼證明我投過這則廣告?」劉彥伯以假設情境說明,一個集團原本可能詐騙了30億元,最後因證據不足,認定金額只剩幾千萬甚至幾百萬元。

不過,詐騙活動都會留下數位足跡,包括投放帳號、代理商、投放時間、運作國家與網址註冊紀錄,只要事先保存,日後調閱就「有憑有據」。

台灣數位安全發展協會
台灣數位安全發展協會理事長劉彥伯
圖/ 數位時代

AI都這麼強了,為什麼還要先做資料治理?

台灣數位安全發展協會的核心主張是:好的資料分析,從好的資料治理開始。所謂資料治理,就是把散落在各平台、格式不一的碎片資料,整理成來源清楚、格式一致、可以互相比對的資料。協會先確認每筆公開資料的來源、時間、權限、版本與隱私,再標上事件分類、風險評估、曝光平台、投放者與網址等標籤,才能找出彼此關聯、還原詐騙網絡。

根據協會的實證簡報,系統在一段監測期間內掃描309.5萬則廣告,通報62.8萬則(約占20%),投放當日偵測率達99.21%。劉彥伯也提到,協會與資安院、數位發展部在打詐通報查詢網的合作中,判斷率接近百分之百。

那還需要人嗎?答案是需要。現行法律仍要求有人為判斷結果背書負責,加上詐騙劇本會隨被害人的回應即時調整,因此協會讓AI處理九成多的工作,最後由人做判斷。

截圖不能當證據?b-JADE如何替詐騙證據貼上「封條」

在AI改圖越來越容易的今天,單純截圖很難在法庭上證明自己沒被竄改過。劉彥伯的比喻是:截圖比較像「我那天真的看過,還拍了一張照片」;可信存證則是把證物放進有封條、有時間、有編號、有保管紀錄的證物袋,「重點不是有沒有留下東西,而是未來能不能驗證這是不是當時那一份」。

這也是b-JADE派上用場的地方,但並不是把所有資料都放上區塊鏈。協會把原始資料與AI分析結果,保存在權限受管控的系統裡,只把每份資料的「數位指紋」交給b-JADE存證。數位指紋的特性是,內容只要有任何改動,指紋就會完全不同,因此能證明資料沒被動過;需要時,再經授權調閱原始資料,兼顧隱私與驗證。依b-JADE規範盤點,協會既有流程已符合19項要求,其餘7項缺口也逐步補強,例如存證時間改採具公信力的標準時間來源,不再依賴電腦本機。

防詐能從事後追查走向事前預警嗎?

可以,協會正把存證從被害人受騙後,往前推到「主動式上鏈」:AI判定高風險的內容,先一步蒐集存證,不必等到有人受害。

小農是第一個場景。許多消費者在網路上支持小農,錢最後卻流進冒名的詐騙集團。協會因此與農業部合作推出「農本人」系統,讓小農自行登錄銷售管道與社群帳號形成白名單,再結合AI蒐集的黑名單,一旦遭冒名就能第一時間發現並報案。這套模式未來也可延伸至網路霸凌、性私密影像等案件。

制度面也在加速。2026年8月,司法聯盟已開設認證專班,邀集司法院、法務部、高檢署、調查局與警政署相關人員受訓,相關存證應用預計明年正式推出,時程仍待聯盟拍板。

劉彥伯坦言,目前從蒐集、分案到下架的流程仍然冗長,技術正好能在保留人為背書的前提下縮短流程。他在《數位關鍵字》節目尾聲留給聽眾的一句話是:「數位安全不只是技術工具,也涉及資料的可信、法遵治理與跨領域合作。」當AI幫人更快找到線索,經得起驗證的資料,將讓每一位被害人在法庭上多一分底氣。

台灣數位安全發展協會
台灣數位安全發展協會理事長劉彥伯認為,可信存證的重點不是留下東西,而是未來能被驗證。
圖/ 數位時代

常見問答
Q1:詐騙廣告被下架後,還能當作證據嗎?
A:若事前沒有保存,下架後就很難追溯。台灣數位安全發展協會建議在內容消失前,保存投放帳號、代理商、投放時間、運作國家與網址等數位足跡,日後才能據以向平台請求調閱。

Q2:手機截圖可以當作詐騙證據嗎?
A:截圖只能證明「看過」,難以證明未被竄改。在AI改圖越來越容易的情況下,透過數位指紋與具公信力的時間紀錄進行可信存證,才能在日後驗證資料是否為當時的原始版本。

Q3:什麼是b-JADE司法聯盟鏈?
A:b-JADE是以區塊鏈為基礎的司法存證機制,只有通過程序認證的單位才能提供上鏈服務。台灣數位安全發展協會的做法是只將資料的數位指紋上鏈,原始資料另行保存在權限受管控的系統,兼顧隱私與驗證,目標是降低訴訟舉證成本。

Q4:AI可以完全取代人工判斷詐騙嗎?
A:目前不行。依台灣數位安全發展協會的做法,九成以上的蒐集與分類工作可由AI完成,但現行法律仍要求由人做最終判斷,並為結果背書負責。

Q5:小農要如何預防被冒名詐騙?
A:可登錄台灣數位安全發展協會與農業部合作的「農本人」系統,自行提交銷售管道、粉絲專頁與LINE帳號建立白名單,搭配AI主動蒐集的黑名單,遭冒名時能第一時間發現並報案。

完整對談請收聽《數位時代》Podcast《數位關鍵字》EP264。

登入數位時代會員

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

每日推播重點文章

閱讀會員專屬文章

請先登入數位時代會員

看更多獨享內容

請先登入數位時代會員

開啟收藏文章功能,

請先登入數位時代會員

開啟訂閱文章分類功能,

請先登入數位時代會員

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