點樣可以將 Harry Potter 劇情用一張圖概括出嚟呢?一個 NLTK 小實驗 (1)
最近同田太喺度研究 data science 喺人文學科嘅應用,先知原來近年人文學科好熱烈喺度搞 “digital humanities”,基礎如 OCR 啲古籍、中級少少將文本數據化、再到高級少少做吓啲 visualization、再勁啲就有 style analysis、authorship classifier、network analysis 等等,都幾百花齊放的。
咁到底會唔會只係瀨尿牛丸,我就唔夠 knowledge 去 comment 喇,不過有啲應用都幾有趣的,可以為本來基本係靠 feel 嘅文本分析變成一啲數據化、可視化嘅資訊。
今次會用 Harry Potter Book 1 配合 Python 做 natural language processing (NLP) 最常用嘅 package NLTK (Natural Language Toolkit) 分享 2 個小應用,今篇會講將劇情圖像化嘅方法,將如果只可以用一張圖,我哋可以點樣 summarize 一整本書嘅情節呢?
下一篇就會講點樣繼續只用一張圖下,顯示各個小說人物之間嘅關聯度,對 Harry Potter 或者 data science 嘅網友可以留意哦。

頭盔一個,以下方法絕對不完美,方法亦唔高明,大家就當係喺傳統文本方式以外,加多一層佐証去了解文本吧。
如果只可以用一張圖,我哋可以點樣 summarize 一整本書嘅情節呢?
Harry Potter Book1 神秘的魔法石總共有 17 個 chapter,而要快速總結呢 17 個 chapter,其中一個方法就係將書中嘅關鍵字抽出嚟,再將佢哋出現嘅頻率標出嚟,做成一個 dispersion plot,例如咁樣…

喺手機睇呢幅圖會有啲細,我試吓集中頭 6 個 Chapter 畀大家睇吓:

咁就睇到啲好有趣嘅嘢喇,例如 Chapter 1 一開始集中出現 “dursley” 呢個字,主要描述 Harry Potter 呀姨一家嘅情況,跟住 Chapter 1 後半就非常密集地出現 “professor”, “mcgongall”, “dumbledore”, “hargid”,描述佢哋 3 個抱住仲要嬰兒嘅 Harry Potter 去到 The Dursley 嘅門口,交帶 The Dursley 將 Harry Potter 撫養成人。
喺 Chapter 2 同 Chapter 3 再無再出現 Hogwarts 一眾教職員,但係係非常密集地出現 “uncle”, “aunt”, “dudley”, “vermon”, “petunia” 一眾 the Dursley family 嘅名,然後貫穿整本書 “harry” 就不斷出現,代表 Harry 已經長大,描述佢喺 the Dursley family 嘅情況,同埋 Hogwarts 不斷咁寄信邀請 Harry 入學喇。
Chapter 4 係一個相對短嘅一章,Hargid 再次出場,同 Dursley 一家有好多一齊出現嘅時間,故事亦第一次出現 “wizard” 同 “hogwarts” 呢 2 個字,故事講到 Hargid 去到 Dursley 屋企準備接走 Harry。要佢跟隨父母步伐成為一個 wizard。
Chapter 5 由 Hargid 帶動,頭半出現 “gringotts”,講述 Hargid 帶 Harry Potter 去 Gringotts 攞錢,後半不斷出現 “wand”,講到 Hargid 帶 Harry 到到 Diagonal Alley 買魔法杖。
Chatper 6 一開始出現 “ platform” 呢個字,就係大家期待已久嘅 9 又 3/4 月台喇,中段非常密集地出現 Harry 未來嘅好拍擋 “ron”,再後少少就出現 “hermione”,仲有 “malfoy” 同 “neville”,即係 Harry 遇上佢未來嘅幾個同學喇。
我已經將幅圖放咗喺 Google Drive,大家有興趣可以 download 落嚟再放大慢慢睇喇,睇吓 “hat”, “broom”, “quidditch”, “snape”, “quirrell” 等等嘅字幾時第一次出現,又喺邊個 chatper 最密集,話唔定就可以講得晒整個故事出嚟喇。
Dispersion Plot 其他用途
Dispersion Plot 除咗可以用嚟睇劇情,仲有好多唔同用途,例如集中睇 he / she / I / you / they 等等嘅 pronoun,可以睇到佢小說嘅視角、男女出現嘅頻率,又或者可以抽取整本書嘅形容詞,就可以睇到整本小說氣氛嘅變化等等,幾有趣架!
例如只睇 ‘we’, ‘they’, ‘he’, ‘she’ 的話,大家會發現 1) HarryPotter 係一本多用第三身視角描述 (they) 多於第一身對話 (we) 嘅小說;2) Harry Potter 入面對男性嘅描述 (he) 要遠比女性 (she) 多。
唔知大家平時又有無留意到呢?

我哋又可以點圖像化人同人嘅「親密度」呢?
下期會講吓有咩方法可以圖像化角色與角色間嘅關係,我哋知道整本 Book 1 都係圍住 Harry 嚟轉的,但係對 Harry 嚟講咩角色同佢又最多交流呢?
如果我哋攞起 Harry,咩角色又同 Dumbledore 最多互動呢?係 Mcgongall、 Hargid 定係 Snape 呢?
下篇同大家分享啦。
2021 年開始 Medium 只會發佈部份文章,想知最新銀行 insider insight,就要訂閱我 Patreon(patreon.com/watin) 喇!2021 年 8 月 Medium 再次改制,讀者可以選擇將一半既 Medium 會費撥繳至你喜歡既作者。如果你想喺 Medium 上面支持我,可以去以下呢條 link (watin.medium.com/membership)登記做會員哦!華田銀行 FB: facebook.com/WatinResearch
華田銀行 IG: https://www.instagram.com/bank_of_watin/
華田銀行 HKET 專欄: https://wealth.hket.com/sraw116/華田銀行關於華田:
兒時夢想做i-banker,結果做了bank worker,還要是retail那種。過去在各大小銀行不同部門流徙,叫人借錢、催人還錢、審批貸款、出股票app、出借錢app、出信用卡、廣告策劃、銷售管理、分行佈點、生物認證、電子排隊、機器學習、敏捷開發,到現在還未安定下來。不懂財經、不懂經濟,只想談一下「銀行」這回事。