小說人物的身份、行為挖掘,技術角度解讀《慶余年》,深度挖掘小說語料 -02

  • 2019 年 12 月 25 日
  • 筆記

《慶余年》是由孫皓執導,張若昀、李沁、陳道明、吳剛、辛芷蕾、宋軼、郭麒麟等主演的古裝劇。該劇改編自貓膩的同名小說,講述了一個有著神秘身世的少年,自海邊小城初出茅廬,歷經家族、江湖、廟堂的種種考驗、錘鍊的故事。於2019年11月26日在騰訊影片、愛奇藝首播……

系列文章:

技術角度解讀《慶余年》,深度挖掘小說語料 -01

今天繼續更這個系列,這篇主要從挖掘人物相關的身份、行為等角度來試驗,作為初次試驗,我們只取小說其中幾章的數據試驗下:

STEP01 首先收集小說中人物的人名

例如:

范閑 林婉兒 慶帝 陳萍萍 海棠朵朵 戰豆豆 范若若 司理理 葉靈兒 肖恩 費介

數據從哪裡來呢?這個比較容易收集,從豆瓣或者百科就可以獲得。

STEP02 把人名添加到分詞演算法里,並提高權重

我這邊設定的方式是:

范閑 actor 99999

這樣分詞,就可以優先把人物給切出來啦,看下結果:

STEP03 二階共性分析VS三階共性分析

這裡先嘗試 二階共性分析,主要基於互資訊提取出人物的相關詞。

什麼是互資訊?

互資訊(Mutual Information)是資訊理論里一種有用的資訊度量,它可以看成是一個隨機變數中包含的關於另一個隨機變數的資訊量,或者說是一個隨機變數由於已知另一個隨機變數而減少的不肯定性 。

簡單來說,互資訊用於度量兩個對象之間的相關性。互資訊的值越大,兩個對象的相關性越高。

目前,人工智慧大部分的應用都是基於關聯性的,缺少了因果關係。

計算結果例如:

{

"范閑":{

'相信': {'value': 3230, 'nature': 'v'},

'酗酒': {'value': 2830, 'nature': 'vi'},

'忍不住': {'value': 3073, 'nature': 'v'}

}

}

STEP04 根據詞性,把行為相關的辭彙總出來

這裡只取前3的結果,例如這裡以動詞為主,結果如下:

二皇子

['拉攏', '賞賜', '拉扯']

五竹

['堅持', '看著']

司理理

['看著', '帶著', '覺得']

李弘成

['知道', '一怔']

林婉兒

['忍不住', '發現', '知道']

林若甫

['望著', '苦笑',]

王啟年

['介紹', '走到']

范建

['微笑']

范思轍

['搖頭', '咕噥']

范若若

['低頭', '嘆息']

范閑

['知道', '看著']

費介

['看著', '笑著']

長公主

['決裂', '立起', '破涕為笑']

除了了解人物的主要行為,我們還可以了解到人物的身份。比如把 共現詞的詞性限制為名詞,可以得到以下這些詞:

皇帝 大人 院長 殿下 老師 先生 怪老頭 少爺 小姐 姑娘 叔

重複下STEP04步,結果如下:

五竹

['叔', '老師']

司理理

['姑娘']

王啟年

['大人']

范思轍

['少爺']

范若若

['小姐']

范閑

['少爺', '大人']

費介

['老師', '先生']

長公主

['殿下']

以上是今天主要的試驗,可以應用的場景有哪些呢?

比如,了解小說人物在每個章節主要的行為,

進而可以了解到小說的情節變化

還有很多有意思的,

待續……