張 琪,王東波,黃水清,鄧三鴻
(1.南京大學(xué)信息管理學(xué)院,南京 210023;2.南京農(nóng)業(yè)大學(xué)信息管理學(xué)院,南京 210095;3.江蘇省數(shù)據(jù)工程與知識(shí)服務(wù)重點(diǎn)實(shí)驗(yàn)室,南京 210023)
浩如煙海的史籍承載著我國(guó)悠久的歷史文化。在古籍保護(hù)與利用引起廣泛重視的背景下,盡管史籍電子化已經(jīng)取得了大規(guī)模的成果,但是目前大眾化利用程度仍然較低。
從信息獲取的角度來(lái)看。一方面,艱澀的古漢語(yǔ)文法、深厚的歷史文化背景為閱讀史書(shū)原文設(shè)立了門(mén)檻;另一方面,史書(shū)體裁自身維度的單一性筑起了從時(shí)間、地點(diǎn)、人物等多種維度出發(fā)獲取信息的壁壘。例如,編年體史書(shū)以時(shí)間為主線展開(kāi),便于以時(shí)間為索引定位所需信息,卻難以從中獲取某一人物或某一地點(diǎn)的全部史料。而在紀(jì)傳體、紀(jì)事本末體史書(shū)中,因采用帝王年號(hào)、王公即位等中國(guó)古代紀(jì)年法,時(shí)間描述的歧義、共指、省略、模糊等特性,使得查找某一時(shí)間點(diǎn)的歷史事件非常困難。
首先,盡管目前史籍電子化已經(jīng)取得了大規(guī)模的成果,但是大部分古籍知識(shí)庫(kù)僅支持瀏覽和字符串檢索,利用方式處于比較原始的紙質(zhì)替代狀態(tài)[1]。而上述問(wèn)題的解決需要完成史籍知識(shí)重組與形式再造,支持從時(shí)間、人物、地點(diǎn)等多個(gè)維度出發(fā),查詢(xún)并以圖結(jié)構(gòu)的方式展示承載于史書(shū)之中的結(jié)構(gòu)化知識(shí)及對(duì)應(yīng)原文,從而易于被人們理解[2],便于語(yǔ)義計(jì)算的展開(kāi)。然而,目前的相關(guān)研究多在知識(shí)來(lái)源與可視化呈現(xiàn)方面與史書(shū)原文相割裂,不利于拉近讀者與經(jīng)典史籍之間的距離。其次,盡管有研究從史書(shū)原文中獲取結(jié)構(gòu)化知識(shí),但從所采用的方法來(lái)看,大部分研究通過(guò)人工標(biāo)注或正則匹配的方法獲取語(yǔ)義知識(shí)。盡管有部分研究探討了自動(dòng)獲取方法,但復(fù)雜的本體建模在現(xiàn)有的技術(shù)條件下難以實(shí)現(xiàn)高質(zhì)量自動(dòng)填充,而簡(jiǎn)單的三元組抽取則容易丟失歷史事件的時(shí)間等重要維度。
綜上分析,目前史籍知識(shí)重組與形式再造主要存在以下痛點(diǎn)和難點(diǎn):(1)知識(shí)重組:從史籍原文出發(fā),綜合考慮史書(shū)知識(shí)表示的充分性與自動(dòng)抽取的可行性,實(shí)現(xiàn)史書(shū)多維知識(shí)抽取、融合、存儲(chǔ)與知識(shí)庫(kù)自動(dòng)構(gòu)建;(2)形式再造:結(jié)構(gòu)化知識(shí)與所對(duì)應(yīng)的史籍原文相結(jié)合的多維度可視化呈現(xiàn)。本研究圍繞上述問(wèn)題,試圖基于知識(shí)組織、古籍智能處理技術(shù)、可視化等相關(guān)理論、方法和技術(shù)提出并實(shí)現(xiàn)史書(shū)多維知識(shí)重組與可視化系統(tǒng),最后將其應(yīng)用于我國(guó)第一部紀(jì)傳體史書(shū)《史記》中。
史書(shū)多維知識(shí)自動(dòng)重組與可視化隸屬于數(shù)字人文的研究范疇,主要涉及史書(shū)體裁的演變、歷史領(lǐng)域語(yǔ)義知識(shí)庫(kù)構(gòu)建以及古籍智能處理三個(gè)研究領(lǐng)域。本節(jié)對(duì)上述領(lǐng)域的實(shí)踐和研究進(jìn)行回顧,以借鑒已有研究的可取之處并發(fā)現(xiàn)其不足。
在我國(guó)歷史上的幾種主要史書(shū)體裁中,最早出現(xiàn)的是編年體。編年體史書(shū)以時(shí)間為主線展開(kāi)的方式便于展現(xiàn)歷史的動(dòng)態(tài)變化,同時(shí)也存在一定的缺陷[3]。例如,與重大歷史事件密切相關(guān)的人物事跡無(wú)法得到描述,無(wú)法展現(xiàn)不同時(shí)間發(fā)生事件之間的聯(lián)系等。此后,又出現(xiàn)以人物為主線的紀(jì)傳體、以國(guó)家(諸侯國(guó))為主線的國(guó)別體、以地點(diǎn)為主線的地方志、以事件為主線的記事本末體、以典章制度為主線的典制體。然而,每本史書(shū)在寫(xiě)就時(shí)只能采用一種體裁,史書(shū)內(nèi)容只能就人物、時(shí)間、地點(diǎn)、事件等一條主線展開(kāi)。采用一種體裁,從對(duì)歷史記錄的角度而言,難以反映復(fù)雜的歷史進(jìn)程[4]以及人與社會(huì)的復(fù)雜聯(lián)系[5];從信息獲取的角度,則使得讀者難以從其他維度入手獲取相應(yīng)信息。
為了彌補(bǔ)單一史書(shū)體裁組織史料的缺陷,史學(xué)家采用豐富支線和人工輔以多維度主線等方式加以改進(jìn)。司馬遷在紀(jì)傳體史書(shū)《史記》中引入年表,但年表中只能概述歷年大事,而無(wú)法涵蓋本紀(jì)、世家、列傳中豐富的歷史知識(shí),并且大部分紀(jì)傳體史書(shū)中并未包含年表這一體例。東漢史學(xué)家荀悅將“紀(jì)傳體的《漢書(shū)》刪改成編年體的《漢紀(jì)》”[5],但我國(guó)史書(shū)規(guī)模巨大,難以人工完成對(duì)所有史書(shū)的重寫(xiě)。北宋司馬光在編年體史書(shū)《資治通鑒》的撰寫(xiě)中增加與主體事件極為密切的人物事跡,但傳記中的時(shí)間與編年體中的人物信息均為支線,盡管多面的歷史知識(shí)得以納入史書(shū)之中,但多維信息獲取的問(wèn)題未能得到解決。
不同于史料全文數(shù)據(jù)庫(kù),實(shí)體級(jí)知識(shí)庫(kù)的構(gòu)建包含歷史人物、地點(diǎn)、官職、時(shí)間、著作等實(shí)體以及實(shí)體之間的關(guān)系。盡管目前自動(dòng)從史籍原文中獲取結(jié)構(gòu)化知識(shí)的研究較少,但人工構(gòu)建實(shí)體級(jí)歷史知識(shí)庫(kù)的研究早在20世紀(jì)便已萌芽。研究宋代社會(huì)經(jīng)濟(jì)史的郝若貝教授從20世紀(jì)80年代開(kāi)始將宋代歷史人物的生卒年、親屬等信息手動(dòng)錄入計(jì)算機(jī),以便自己的研究使用,之后將其捐贈(zèng)給哈佛燕京學(xué)社,并逐漸演變?yōu)橹袊?guó)歷代人物傳記資料庫(kù)(China Biographical Database,CBDB)[6-7]。CBDB搜集了公元7世紀(jì)至19世紀(jì)將近40萬(wàn)個(gè)歷史人物的傳記資料,包含人物姓名、地址、官職、著作、親屬關(guān)系和社會(huì)關(guān)系等歷史人物信息[5],目前主要知識(shí)來(lái)源是歷史人物資料索引。歷史知識(shí)APP“全歷史”[8]提供關(guān)系圖譜展示實(shí)體之間的關(guān)系,其知識(shí)主要來(lái)源是百科及用戶(hù)人工補(bǔ)充。武漢大學(xué)董慧等[9]從文獻(xiàn)語(yǔ)義分析的角度出發(fā)設(shè)計(jì)了一個(gè)史籍語(yǔ)義分析系統(tǒng),該系統(tǒng)主要采取人工標(biāo)注的方式獲取實(shí)體間關(guān)系。
古文智能處理是指對(duì)數(shù)字化后的古籍原文進(jìn)行自動(dòng)斷句、詞匯處理、語(yǔ)義和句法標(biāo)注,自動(dòng)獲取史書(shū)中的結(jié)構(gòu)化知識(shí)并實(shí)現(xiàn)知識(shí)融合,主要涉及語(yǔ)義三元組抽取、實(shí)體消歧以及共指消解,其受到斷句、詞匯處理及句法分析等前序任務(wù)效果的影響。目前,古漢語(yǔ)領(lǐng)域的自動(dòng)斷句以及分詞、詞性標(biāo)注、實(shí)體識(shí)別等詞法分析經(jīng)過(guò)近十年的研究已經(jīng)取得了較好的效果[10],MARKUS[11]等古籍實(shí)體半自動(dòng)標(biāo)記及自動(dòng)標(biāo)記平臺(tái)已較為成熟。古漢語(yǔ)自動(dòng)句法分析方面,馮秋香等[12]從自然語(yǔ)言處理的角度出發(fā)梳理了《左傳》中的句法結(jié)構(gòu),基于Perl構(gòu)建的句法分析器的召回率達(dá)到88.8%,但語(yǔ)料覆蓋范圍較小,目前仍沒(méi)有公開(kāi)可用的古漢語(yǔ)句法分析器。
從英語(yǔ)、現(xiàn)代漢語(yǔ)語(yǔ)義三元組抽取的相關(guān)研究來(lái)看,基于機(jī)器學(xué)習(xí)的抽取系統(tǒng)效果受句法特征的影響較大[13],因此,古漢語(yǔ)領(lǐng)域語(yǔ)義三元組的抽取也在初期受到一定限制。陳雅玲[14]采用基于觸發(fā)詞匹配的方法獲取實(shí)體關(guān)系類(lèi)型,在此基礎(chǔ)上基于條件隨機(jī)場(chǎng)模型獲得實(shí)體對(duì),但古漢語(yǔ)言簡(jiǎn)意賅的特點(diǎn)導(dǎo)致實(shí)體關(guān)系類(lèi)型識(shí)別的召回率較低。
實(shí)體鏈接包括實(shí)體消歧和指代消解,是結(jié)構(gòu)化數(shù)據(jù)三元組知識(shí)互聯(lián)的前提,古漢語(yǔ)方面,于麗麗等[15]探究了基于條件隨機(jī)場(chǎng)的古漢語(yǔ)詞義消歧。
結(jié)合敘事維度回顧中國(guó)歷史上的主要史書(shū)體裁,可知古代史學(xué)家從時(shí)間、人物、事件、典制、地點(diǎn)等不同維度出發(fā),確定了編年體、紀(jì)傳體、國(guó)別體、紀(jì)事本末體、典制體、地方志等史書(shū)體裁,并采用引入支線、輔以主線、體裁改寫(xiě)等方式解決單一體裁難以反映復(fù)雜社會(huì)生活的問(wèn)題。然而,引入支線不利于讀者集中獲取相關(guān)信息。在史書(shū)中增加以其他維度為主線的體例,如在紀(jì)傳體史書(shū)中引入年表可以較為有效地緩解信息獲取問(wèn)題,但這種方式在史書(shū)中較為少見(jiàn)。而人工構(gòu)建或人工體裁改寫(xiě)較為困難,并且鑒于我國(guó)史書(shū)數(shù)量之多,難以人工完成對(duì)所有史書(shū)的處理。
從增強(qiáng)讀者與史書(shū)原文關(guān)聯(lián)的角度來(lái)看,已有的歷史領(lǐng)域語(yǔ)義知識(shí)庫(kù)的構(gòu)建存在以下問(wèn)題:首先,從知識(shí)來(lái)源來(lái)看,已有歷史領(lǐng)域知識(shí)庫(kù)主要從索引、百科而非史書(shū)原文中獲取具體實(shí)例,因此一定程度上與史書(shū)原文相割裂,無(wú)法起到拉近普通讀者與史籍原文的作用;其次,從基于史書(shū)原文的知識(shí)抽取方法來(lái)看,一方面,目前具體知識(shí)實(shí)例、尤其是實(shí)體之間的語(yǔ)義關(guān)系主要來(lái)自人工標(biāo)注,難以向大規(guī)模史書(shū)擴(kuò)展;另一方面,目前自動(dòng)化抽取方面主要限于三元組知識(shí),人物關(guān)系等隨時(shí)間的動(dòng)態(tài)變化無(wú)法得以體現(xiàn);最后,知識(shí)庫(kù)可視化層面,已有研究或?qū)嵺`均將重點(diǎn)置于對(duì)結(jié)構(gòu)化知識(shí)的展示,割裂了與史書(shū)原文之間的關(guān)聯(lián),難以拉近讀者與史書(shū)原文之間的距離。
基于上述分析,本研究從史書(shū)原文出發(fā),提出并實(shí)現(xiàn)史書(shū)多維知識(shí)重組與可視化系統(tǒng),引入古籍智能處理領(lǐng)域的相關(guān)技術(shù)與方法,在考慮知識(shí)動(dòng)態(tài)變化的基礎(chǔ)上,從史書(shū)體裁所涉及的人物、時(shí)間、地點(diǎn)、典制等不同維度入手重組史書(shū)知識(shí)并完成可視化,以期緩解由艱澀的古漢語(yǔ)文法以及史書(shū)線性的展開(kāi)方式所帶來(lái)的信息獲取問(wèn)題。
本研究從滿(mǎn)足史書(shū)信息獲取的需求出發(fā),提出史書(shū)多維知識(shí)重組與可視化系統(tǒng)框架。系統(tǒng)框架如圖1所示,主要包括史書(shū)多維知識(shí)建模、史書(shū)多維知識(shí)庫(kù)構(gòu)建以及史書(shū)多維知識(shí)可視化三部分。
圖1 史書(shū)多維知識(shí)重組與可視化系統(tǒng)框架
系統(tǒng)各部分承擔(dān)著不同的作用?;诓煌窌?shū)體裁所采用的主線如時(shí)間、人物、地點(diǎn)等不同維度展開(kāi)史書(shū)知識(shí)建模是史書(shū)知識(shí)重組的前提和基礎(chǔ);基于古籍智能處理技術(shù)的多維知識(shí)庫(kù)構(gòu)建是史書(shū)多維知識(shí)重組實(shí)現(xiàn)自動(dòng)化及規(guī)?;那疤幔渲?,歷史事件時(shí)間軸自動(dòng)生成是使紀(jì)傳體、國(guó)別體、紀(jì)事本末體等體裁的史書(shū)以時(shí)間為主線展開(kāi)的關(guān)鍵技術(shù),三元組知識(shí)抽取是將史書(shū)知識(shí)以人物、地點(diǎn)、社會(huì)集團(tuán)等維度為中心展開(kāi)的關(guān)鍵技術(shù),史書(shū)知識(shí)融合是不同來(lái)源的知識(shí)相互連接的關(guān)鍵技術(shù),史書(shū)知識(shí)存儲(chǔ)方式則直接用與知識(shí)庫(kù)后續(xù)的應(yīng)用場(chǎng)景相關(guān);史書(shū)多維知識(shí)可視化是同時(shí)以多個(gè)維度呈現(xiàn)史書(shū)歷史知識(shí)的關(guān)鍵手段。下文將依次對(duì)系統(tǒng)各部分所涉及的主要理論、方法與技術(shù)進(jìn)行闡述。
知識(shí)建模又被稱(chēng)為本體構(gòu)建或知識(shí)體系構(gòu)建,旨在通過(guò)定義和描述事物、概念、屬性和關(guān)系對(duì)目標(biāo)領(lǐng)域知識(shí)進(jìn)行合理組織與描述。史書(shū)多維知識(shí)建模需要從人物、時(shí)間、地點(diǎn)多個(gè)維度出發(fā)對(duì)史書(shū)中知識(shí)實(shí)例及實(shí)例之間的語(yǔ)義關(guān)系加以概括性的描述和定義,是史書(shū)知識(shí)以多個(gè)維度展開(kāi)的基礎(chǔ)。
SPO(subject-predicate-object)知識(shí)表示模型與RDF(resource description framework)兼容的同時(shí),能夠統(tǒng)一表示實(shí)例型數(shù)據(jù)和描述型數(shù)據(jù),目前DB‐pedia[16]、Zhishi.me[17]等知識(shí)圖譜均采用SPO知識(shí)表示模型。然而,SPO知識(shí)表示模型難以建模復(fù)雜知識(shí)。對(duì)于史書(shū)多維知識(shí)建模而言,其無(wú)法展現(xiàn)知識(shí)的時(shí)間信息以及知識(shí)來(lái)源。時(shí)間是信息空間的重要維度,盡管目前已有知識(shí)圖譜中以SPO三元組的形式建模人物出生時(shí)間、死亡時(shí)間等常見(jiàn)的實(shí)體與時(shí)間之間的關(guān)系,但三元組知識(shí)所構(gòu)成的事實(shí)(facts)的時(shí)間信息被忽略,例如其難以表示人物身份隨時(shí)間的變化。
為了彌補(bǔ)SPO在表示現(xiàn)實(shí)世界知識(shí)方面的缺陷,Hoffart等[18]提出SPO-X知識(shí)表示模型,并在YAGO2中將X具體化為T(mén)L(time,location),在已存在時(shí)間和地點(diǎn)實(shí)體用于描述實(shí)體存續(xù)時(shí)間、固有地點(diǎn)的基礎(chǔ)上,為事實(shí)(facts)增加時(shí)間和空間維度,從而描述事實(shí)的時(shí)間、空間變化。
本研究從史書(shū)多維知識(shí)重組的需求出發(fā),將X具體化為T(mén)S(time,source text),保留實(shí)體與時(shí)間的關(guān)系從而表示實(shí)體消亡時(shí)間的基礎(chǔ)上,該知識(shí)表示模型可以為由SPO三元組組成的事實(shí)提供釋明其相關(guān)時(shí)間以及所依據(jù)原文的能力。SPO-TS(subject property object-time source text)知識(shí)表示模型及具體應(yīng)用示例如圖2所示。
圖2 采用SPO-TS表示史書(shū)知識(shí)示例
3.1.1 核心概念及其數(shù)據(jù)屬性
本研究在第2.1節(jié)中已經(jīng)列舉了主要的史書(shū)體裁以及各種體裁所采用的敘事主線,本研究將編年體、紀(jì)傳體、地方志(志書(shū)體)、國(guó)別體及官制史(典制體)五種史書(shū)體裁的主線作為重組史書(shū)知識(shí)的維度,并對(duì)其內(nèi)涵進(jìn)行一定的縮小或延伸。
(1)人物(people):紀(jì)傳體史書(shū)以歷史上的重要人物為中心展開(kāi),此處的人物包括《史記》中的所有人物,每個(gè)人物被分配以唯一的ID,避免知識(shí)庫(kù)中的人名歧義,其屬性包括主稱(chēng)謂與別名。
(2)時(shí)間(time):編年體史書(shū)以時(shí)間為主線展開(kāi),為使編年體、紀(jì)傳體、紀(jì)事本末體等不同體裁的史書(shū)中的知識(shí)內(nèi)容能夠按時(shí)間順序排列,須規(guī)范知識(shí)內(nèi)容涉及的時(shí)間實(shí)體屬性,既包含公元紀(jì)年,也包含中國(guó)古代紀(jì)年(包括王公即位紀(jì)年、帝王年號(hào)紀(jì)年)。
(3)地點(diǎn)(places):地方志將地點(diǎn)分門(mén)別類(lèi)繼而展開(kāi),地方志中的地點(diǎn)主要根據(jù)行政區(qū)域劃分。本研究中的地點(diǎn)包括《史記》中出現(xiàn)的行政區(qū)域與自然地理,行政區(qū)域如“雍林”“葵丘”等,自然地理如“河”“山”等。
(4)社會(huì)集團(tuán)/團(tuán)體(groups):國(guó)別體按國(guó)家(諸侯國(guó))組織史書(shū)內(nèi)容,而國(guó)家(諸侯國(guó))與家族、學(xué)術(shù)流派屬于不同層面的社會(huì)集團(tuán),因此將社會(huì)集團(tuán)作為核心實(shí)體以滿(mǎn)足更多的信息獲取需求。上古漢語(yǔ)標(biāo)記語(yǔ)料庫(kù)(http://lingcorpus.iis.sinica.edu.tw/ancient/)將其社會(huì)集團(tuán)分為國(guó)家、家族和學(xué)術(shù)流派三種,各類(lèi)別具體示例如表1所示。
表1 《史記》中三種主要的社會(huì)集團(tuán)類(lèi)型及實(shí)例
(5)職官(official/postings):官制史隸屬典制體[19],記載并評(píng)述歷史上的職官制度?!妒酚洝分杏涊d了大量的職官名,為歷史學(xué)領(lǐng)域?qū)β毠僦贫鹊难芯刻峁┝素S富的材料。主要包括中央官制、郡縣官制、諸侯國(guó)官制、爵祿制度、秩祿、選舉制度等不同的職官制度及所涉及的職官。本研究的目的是從史書(shū)原文中提取職官實(shí)體及相關(guān)人物、社會(huì)集團(tuán),之后可引入官制史中對(duì)職官職能的描述,從而幫助讀者進(jìn)一步獲取豐富的背景信息。
3.1.2 核心概念間的關(guān)系
在確定史書(shū)知識(shí)重組的五個(gè)維度,即五個(gè)核心概念的基礎(chǔ)上,需要進(jìn)一步確定五個(gè)核心概念之間的關(guān)系。
圖3給出了產(chǎn)生關(guān)系的概念對(duì),具體關(guān)系類(lèi)型在http://www.shijigraph.com/help中給出。其中,人物與人物、人物與地點(diǎn)、人物與社會(huì)集團(tuán)以及社會(huì)集團(tuán)之間存在較多細(xì)分關(guān)系,下文將進(jìn)一步展開(kāi)說(shuō)明。
圖3 具有關(guān)系的概念對(duì)
(1)人物-人物:人物與人物之間的關(guān)系包括人物社會(huì)關(guān)系和人際態(tài)度傾向。其中,人物社會(huì)關(guān)系(social relationships)又分為親屬關(guān)系和非親屬關(guān)系,血緣親屬關(guān)系如父母、子女、兄弟姐妹、祖、孫等不具有時(shí)間屬性,而婚戀等非血緣親屬關(guān)系則可能隨時(shí)間發(fā)生變化,因此具有時(shí)間屬性;非親屬關(guān)系包括上下級(jí)、師生、帝位更替等。
發(fā)生交互的歷史人物之間往往呈現(xiàn)出某種態(tài)度傾向,認(rèn)知心理學(xué)學(xué)者Heider[20]將人對(duì)人以及人對(duì)事的態(tài)度(attitude)分為積極(positive)與消極(negative)兩種類(lèi)型。本研究將史書(shū)中所描述的人物之間的態(tài)度稱(chēng)為人物態(tài)度傾向,正向關(guān)系主要包括推薦、欣賞、支持等,負(fù)向關(guān)系則體現(xiàn)為批評(píng)、彈劾、反對(duì)、攻擊等。需要注意的是,人物態(tài)度傾向往往具有動(dòng)態(tài)性,因此必須結(jié)合時(shí)間以及具體語(yǔ)境加以分析。本研究借助SPO-TS知識(shí)表示模型,賦予三元組時(shí)間屬性呈現(xiàn)人物態(tài)度傾向的動(dòng)態(tài)變化,并給出具體知識(shí)來(lái)源進(jìn)一步對(duì)其進(jìn)行解釋說(shuō)明,如圖4所示。
(2)人物-地點(diǎn):本研究所包含的人物與地點(diǎn)之間的關(guān)系類(lèi)型主要有籍貫、居、轄、逃奔、卒于和其他六種。除籍貫外,人物地理位置的變化往往伴隨著時(shí)間的變化。
(3)團(tuán)體-團(tuán)體:社會(huì)集團(tuán)之間既存在從屬關(guān)系,也往往具有一定態(tài)度傾向。在Heider[20]提出態(tài)度關(guān)系結(jié)構(gòu)的基礎(chǔ)上,Doreian等[21]將二戰(zhàn)之后各國(guó)之間的結(jié)盟與敵對(duì)符號(hào)化,從而探究國(guó)際關(guān)系的變遷。本研究將其引入對(duì)先秦時(shí)期社會(huì)集團(tuán)間關(guān)系的描述中,并將其命名為團(tuán)體態(tài)度傾向。其中,積極傾向主要包括國(guó)家(諸侯國(guó))間的結(jié)盟、聯(lián)姻等,消極傾向則包括國(guó)家間戰(zhàn)爭(zhēng)、競(jìng)爭(zhēng)、沖突等。團(tuán)體態(tài)度傾向也具有動(dòng)態(tài)性,因此同樣受時(shí)間信息的約束并由知識(shí)來(lái)源提供具體情境。
3.1.3 事實(shí)屬性
本研究采用上文中所定義的SPO-TS知識(shí)表示模型為所有三元組附加原文信息,為部分三元組附加時(shí)間信息,具有時(shí)間信息的所有三元組關(guān)系類(lèi)型在鏈接http://www.shijigraph.com/help中給出。
圖4給出了人物態(tài)度傾向隨時(shí)間的變化的實(shí)例。由此可見(jiàn),采用SPO-TS知識(shí)表示模型,可以結(jié)合時(shí)間和原文較為完整地呈現(xiàn)齊桓公小白對(duì)管仲的態(tài)度傾向由消極轉(zhuǎn)向積極的過(guò)程。
圖4 SPO-TS表示動(dòng)態(tài)知識(shí)示例
3.2.1 多維知識(shí)獲取
(1)歷史事件時(shí)間軸自動(dòng)生成:作為記載歷史事件的重要維度,時(shí)間識(shí)別的準(zhǔn)確性和全面性異常重要。首先,除編年體史書(shū)外,其余史書(shū)的時(shí)間信息均散落于文本之中,而中國(guó)古代時(shí)間表達(dá)存在歧義(如“桓公二十七年”)、共指(如“繆公任好元年”和“秦穆公元年”)、省略(“九年……”)、模糊(“昔者”)等特點(diǎn),為后續(xù)處理帶來(lái)了較大困難。其次,若僅從單個(gè)句子或段落等粒度抽取時(shí)間實(shí)體而不進(jìn)行規(guī)范化處理及事件時(shí)間對(duì)齊,則將會(huì)導(dǎo)致大量具有隱式時(shí)間表達(dá)式及繼承前文時(shí)間信息的句子被忽略。
為此,本研究構(gòu)建了時(shí)間維度下的史籍自動(dòng)重組系統(tǒng),為史書(shū)中的事件句分配語(yǔ)義唯一、可計(jì)算的統(tǒng)一時(shí)間表達(dá)式。系統(tǒng)包含兩個(gè)模塊:第一個(gè)模塊識(shí)別史書(shū)原文中所包含的時(shí)間描述,繼而經(jīng)過(guò)時(shí)間描述規(guī)范化、時(shí)間表達(dá)式鏈接實(shí)現(xiàn)時(shí)間描述的語(yǔ)義解析;第二個(gè)模塊識(shí)別史書(shū)中的事件句,并將事件句關(guān)聯(lián)至經(jīng)過(guò)語(yǔ)義解析的時(shí)間描述。通過(guò)上述兩層語(yǔ)義關(guān)聯(lián),使史書(shū)中的事件句獲得無(wú)歧義的時(shí)間信息。
(2)三元組知識(shí)自動(dòng)抽?。喝M知識(shí)抽取又被稱(chēng)為關(guān)系抽?。╮elation extration),目的在于從非結(jié)構(gòu)化文本中獲取實(shí)體對(duì)以及實(shí)體對(duì)之間的語(yǔ)義關(guān)系,獲得的語(yǔ)義三元組根據(jù)中心節(jié)點(diǎn)整合后可獲得多元組知識(shí)。三元組知識(shí)抽取是文本挖掘和信息抽取的核心任務(wù)[22],是知識(shí)圖譜構(gòu)建的關(guān)鍵技術(shù)[23],也是將史書(shū)知識(shí)以人物、地點(diǎn)為中心展開(kāi)的關(guān)鍵技術(shù)。從語(yǔ)言的角度來(lái)講,古代漢語(yǔ)具有言簡(jiǎn)意賅的特點(diǎn),而記載幾百乃至上千年歷史的史書(shū)信息量則更為密集,統(tǒng)計(jì)顯示白話(huà)文版的《史記》字?jǐn)?shù)是大約是《史記》原文的1.617倍[24],這一特點(diǎn)也使得古漢語(yǔ)知識(shí)自動(dòng)抽取難度更大。以《史記·吳太伯世家》的第一個(gè)句子“吳太伯,太伯弟仲雍,皆周太王之子,而王季歷之兄也”為例,短短25個(gè)字中存在6條人物關(guān)系,其中包含父子、兄弟等多種知識(shí)類(lèi)型,且存在實(shí)體邊界重疊、無(wú)觸發(fā)詞等現(xiàn)象。從技術(shù)角度來(lái)講,以往基于SVM(support vec‐tor machines)、核函數(shù)等機(jī)器學(xué)習(xí)模型的方法依賴(lài)于句法特征,而目前古漢語(yǔ)領(lǐng)域暫時(shí)沒(méi)有可用的句法分析器。
為此,本研究構(gòu)建了基于深度學(xué)習(xí)模型BERT(bidirectional encoder representations from transform‐ers)的史書(shū)三元組抽取系統(tǒng),以句子為單位獲取史書(shū)中的三元組知識(shí)。首先,人工標(biāo)注《史記》原文部分篇章以供前期為模型選定及模型訓(xùn)練提供基礎(chǔ),統(tǒng)計(jì)發(fā)現(xiàn)古漢語(yǔ)具有單個(gè)句子中所含知識(shí)類(lèi)別多、數(shù)量多的特點(diǎn),并且具有語(yǔ)義關(guān)系的實(shí)體對(duì)在句子中的距離更近,結(jié)合目前古漢語(yǔ)領(lǐng)域沒(méi)有可用句法分析器的現(xiàn)狀,本研究最終采用BERT作為基礎(chǔ)模型,并添加分詞與詞性特征對(duì)其進(jìn)行改進(jìn)。然后將模型的輸出層通過(guò)池化(pooling)轉(zhuǎn)化為句子級(jí)特征輸出,并將激活函數(shù)設(shè)置為sigmoid構(gòu)建基于多標(biāo)簽分類(lèi)的知識(shí)分類(lèi)模型;將知識(shí)類(lèi)別向量融入模型輸入,并將激活函數(shù)設(shè)置為softmax構(gòu)建基于序列標(biāo)注的實(shí)體對(duì)抽取模型,通過(guò)分步的方法解決史書(shū)三元組知識(shí)抽取問(wèn)題。最終,對(duì)系統(tǒng)效果的驗(yàn)證發(fā)現(xiàn)知識(shí)分類(lèi)模型的F值達(dá)到84.80%,論元角色抽取模型的F值達(dá)到75.50%,這說(shuō)明系統(tǒng)達(dá)到了較好的抽取效果。
3.2.2 知識(shí)融合
知識(shí)融合是指將不同來(lái)源、不同語(yǔ)言、不同結(jié)構(gòu)的知識(shí)進(jìn)行融合。對(duì)于本研究而言,主要包括實(shí)體融合(實(shí)體消歧和共指消解)和SPO-TS實(shí)例融合兩部分。
實(shí)體層面的知識(shí)融合包含實(shí)體消歧與共指消解,本研究的解決方法如下:首先,構(gòu)建了同名詞典與別名詞典,本研究從課題組前期已經(jīng)實(shí)現(xiàn)電子化的《漢學(xué)引得叢刊》中獲取了其中所包含的別名與同名信息,并結(jié)合自動(dòng)構(gòu)建的方法進(jìn)行補(bǔ)充,從而構(gòu)建了實(shí)體歧義詞典與實(shí)體別名詞典。例如,通過(guò)拆分“齊桓公小白”與“齊桓公午”可知,“桓公”“齊桓公”兩種稱(chēng)謂均存在歧義;而齊桓公小白具有別名“桓公”“齊桓公”“小白”“桓公小白”。在此基礎(chǔ)上,通過(guò)歧義詞典確定抽取自原文的實(shí)體是否具有歧義。對(duì)于存在歧義的實(shí)體,結(jié)合上下文信息將其指向?qū)嶓w主稱(chēng)謂;若不存在歧義,則通過(guò)別名詞典判斷其是否具有別名,并映射至唯一主稱(chēng)謂。
SPO-TS知識(shí)實(shí)例層面的融合則主要涉及合并與去重,具體解決方法如下:若三元組部分與發(fā)生時(shí)間均相同,則三元組部分合并同時(shí)保留所有知識(shí)來(lái)源;若實(shí)體對(duì)及知識(shí)類(lèi)型相同但發(fā)生時(shí)間不同,則視為不同的知識(shí)分別存儲(chǔ)。
3.2.3 知識(shí)存儲(chǔ)
知識(shí)存儲(chǔ)主要有基于內(nèi)存、文件、關(guān)系型數(shù)據(jù)庫(kù)、原生RDF數(shù)據(jù)存儲(chǔ)系統(tǒng)和圖數(shù)據(jù)庫(kù)等五種方式[25-27]。一方面,由于使用圖數(shù)據(jù)庫(kù)存儲(chǔ)知識(shí),不僅更加符合節(jié)點(diǎn)、節(jié)點(diǎn)屬性、關(guān)系表達(dá)邏輯,還可以為邊分配屬性[28],與SPO-TS知識(shí)表示模型相契合;另一方面,從知識(shí)的計(jì)算與推理的角度來(lái)看,Neo4j[29]等圖數(shù)據(jù)庫(kù)支持社團(tuán)檢測(cè)(community de‐tection)、標(biāo)簽傳播(label propagation)、中心節(jié)點(diǎn)計(jì)算(centrality algorithm)等圖挖掘算法,便于史書(shū)知識(shí)的進(jìn)一步挖掘與利用。綜上考慮,本研究采用圖數(shù)據(jù)庫(kù)Neo4j完成史書(shū)多維知識(shí)的存儲(chǔ)。
在史書(shū)多維知識(shí)庫(kù)的基礎(chǔ)上,本研究借助可視化技術(shù)實(shí)現(xiàn)史書(shū)知識(shí)的多維展示,不僅能夠拉近普通讀者與史書(shū)的距離,更允許從不同維度出發(fā)探索史書(shū)中包含的歷史知識(shí)。如何展現(xiàn)知識(shí)背后的知識(shí)體系以及實(shí)現(xiàn)知識(shí)與原文的鏈接是可視化平臺(tái)構(gòu)建應(yīng)考慮的重點(diǎn)問(wèn)題。
本研究結(jié)合不同類(lèi)型實(shí)體的知識(shí)特點(diǎn),設(shè)計(jì)了三種呈現(xiàn)方案,即中心視圖、時(shí)間軸視圖和關(guān)聯(lián)視圖,實(shí)現(xiàn)以不同實(shí)體為中心的、與史書(shū)原文相關(guān)聯(lián)的結(jié)構(gòu)化知識(shí)呈現(xiàn)方案。由于對(duì)可視化的說(shuō)明結(jié)合具體實(shí)例更加直觀,因此,相關(guān)內(nèi)容在第4.2節(jié)中展開(kāi)說(shuō)明。
紀(jì)傳體史書(shū)以歷史上的重要人物為主線,大量未成傳人物的信息散落于各卷之中,難以獲取。因此,需要從人物、時(shí)間、地點(diǎn)等維度出發(fā)完成重組。《史記》是我國(guó)歷史上第一部紀(jì)傳體史書(shū),記載了從上古時(shí)期至西漢漢武帝時(shí)期長(zhǎng)達(dá)三千多年的歷史事件,被稱(chēng)為中國(guó)古代二十四史之首。本節(jié)將上文提出的史書(shū)多維知識(shí)重組與可視化系統(tǒng)應(yīng)用于《史記》,以證明系統(tǒng)的可行性。
本研究以上文提出的SPO-TS知識(shí)表示模型作為史書(shū)知識(shí)語(yǔ)義化和形式化描述的基礎(chǔ)框架,基于上文所確定的史書(shū)中的核心概念以及概念之間的關(guān)系,完成史書(shū)多維知識(shí)建模。下文主要介紹《史記》多維知識(shí)庫(kù)構(gòu)建及可視化呈現(xiàn)的具體過(guò)程和結(jié)果。
4.1.1 語(yǔ)料采集與預(yù)處理
首先,本研究獲取了包含年表及段落信息的《史記》全文、具有分詞與詞性標(biāo)記的《史記》語(yǔ)料以及古代職官辭典,并基于《史記及注釋綜合引得》獲得了人物同名詞典與人物別名詞典,具體信息如表2所示。
表2 《史記》多維知識(shí)處理基礎(chǔ)語(yǔ)料
采用機(jī)器學(xué)習(xí)、字符串匹配等方法整合上述基礎(chǔ)語(yǔ)料,獲得具備段落、句子信息以及分詞、詞性、官職名標(biāo)記的《史記》語(yǔ)料,共130卷,包含十二本紀(jì)、三十世家、七十列傳、十表、八書(shū),共45109個(gè)句子,680941個(gè)字(含標(biāo)點(diǎn)符號(hào))。
4.1.2 《史記》多維知識(shí)獲取與融合
采用本課題組前期開(kāi)發(fā)的史書(shū)時(shí)間軸自動(dòng)生成系統(tǒng),將史書(shū)中的事件句定位在時(shí)間軸上,實(shí)現(xiàn)以時(shí)間為主線的史書(shū)內(nèi)容重組,結(jié)果示例如圖5所示。
圖5 《史記》歷史事件時(shí)間軸自動(dòng)生成示例
本紀(jì)、世家、列傳、書(shū)所涉及的111卷《史記》語(yǔ)料共有31130個(gè)句子,共識(shí)別非模糊型時(shí)間表達(dá)式3564個(gè),歷史事件時(shí)間軸自動(dòng)生成系統(tǒng)共為19868個(gè)事件句分配了時(shí)間信息,最終有16902個(gè)事件句定位于公元時(shí)間軸上。隨機(jī)抽取本紀(jì)、世家、列傳部分各一卷進(jìn)行人工核驗(yàn),顯示其準(zhǔn)確率均達(dá)到89%以上。
基于本課題組前期開(kāi)發(fā)的三元組知識(shí)抽取模型以及觸發(fā)詞抽取模型獲得了《史記》中的三元組知識(shí)及對(duì)應(yīng)的觸發(fā)詞。共獲得句內(nèi)三元組實(shí)例17709個(gè),具體示例如圖6所示,其中70%的三元組實(shí)例包含觸發(fā)詞。此外,人工補(bǔ)充跨句子的三元組知識(shí)589個(gè)。在此基礎(chǔ)上與事件句以及前序?yàn)槭录渌峙涞臅r(shí)間信息相結(jié)合,形成SPO-TS知識(shí)實(shí)例,繼而完成實(shí)體與SPO-TS知識(shí)兩個(gè)層面的知識(shí)融合。
圖6 三元組知識(shí)抽取結(jié)果示例
采用上文所描述的知識(shí)融合方法將前序抽取得到的27341例人名進(jìn)行消歧。通過(guò)歧義詞典判定共6267例人名存在歧義,占所有人名的22.92%。通過(guò)上述方法將4421例歧義人名鏈接至其主稱(chēng)謂,例如,將《呂不韋列傳》中的“夏姬”鏈接至夏太后,將《襄侯列傳》中的“昭王”鏈接至秦昭襄王。此外,共8304例人名通過(guò)別名詞典鏈接至其主稱(chēng)謂,占全部人名的30.37%。從而完成了SPO-TS實(shí)例層面的合并與去重。
4.1.3 知識(shí)存儲(chǔ)
本研究結(jié)合前期開(kāi)發(fā)的歷史事件時(shí)間軸自動(dòng)生成工具和三元組知識(shí)自動(dòng)抽取工具獲取了《史記》中的多維知識(shí),繼而通過(guò)知識(shí)融合將散落的知識(shí)相連接,最終將獲取的所有知識(shí)存儲(chǔ)于開(kāi)源圖數(shù)據(jù)庫(kù)Neo4j中,呈現(xiàn)效果如圖7所示。
本研究構(gòu)建了《史記》多維知識(shí)可視化平臺(tái)(http://www.shijigraph.com/),該平臺(tái)支持以《史記》中出現(xiàn)的任意人物、時(shí)間、地點(diǎn)、社會(huì)集團(tuán)、職官為檢索對(duì)象,呈現(xiàn)相關(guān)聯(lián)的歷史知識(shí)和原文,以期緩解讀者多維的信息獲取需求與《史記》以人物為中心展開(kāi)的矛盾,拉近普通讀者與經(jīng)典史籍之間的距離。
用戶(hù)在前端輸入字符串,后臺(tái)經(jīng)過(guò)簡(jiǎn)轉(zhuǎn)繁、實(shí)體鏈接、相似度匹配、知識(shí)庫(kù)數(shù)據(jù)獲取與呈現(xiàn)等步驟以可交互圖的方式返回檢索結(jié)果。同時(shí),本研究根據(jù)實(shí)體知識(shí)特點(diǎn)的共性與差異性,設(shè)計(jì)了不同的呈現(xiàn)方案。
4.2.1 以人物、地點(diǎn)、職官、社會(huì)集團(tuán)等實(shí)體為中心的兩種呈現(xiàn)方式
由于人物、地點(diǎn)、職官、社會(huì)集團(tuán)等實(shí)體,一方面與其他實(shí)體產(chǎn)生多類(lèi)型語(yǔ)義關(guān)聯(lián),另一方面,許多關(guān)聯(lián)如態(tài)度傾向等具有隨時(shí)間動(dòng)態(tài)變化的特點(diǎn)。因此,本研究設(shè)計(jì)了中心視圖和時(shí)間軸視圖兩種呈現(xiàn)方式。下文將以人物為例,展示并說(shuō)明兩種視圖的機(jī)制和相關(guān)功能。
(1)中心視圖:中心視圖是以人物、地點(diǎn)、社會(huì)團(tuán)體、職官等實(shí)體為中心呈現(xiàn)實(shí)體相關(guān)知識(shí)。圖8以春秋時(shí)期吳國(guó)延陵季子為例,其事跡記載于《吳太公世家》《鄭世家》《晉世家》《趙世家》等不同卷冊(cè)之中。所涉及的知識(shí)類(lèi)型包含人物關(guān)系、地理軌跡、官職變遷以及關(guān)聯(lián)集團(tuán)等。中心視圖以某一具體實(shí)體為中心,從頂級(jí)關(guān)系類(lèi)型開(kāi)始層層細(xì)分,直至關(guān)系類(lèi)型的最小單位,引導(dǎo)用戶(hù)由粗至細(xì)地了解實(shí)體相關(guān)知識(shí)。
考慮到呈現(xiàn)結(jié)果的密集度,每種關(guān)系類(lèi)型僅呈現(xiàn)1~2條知識(shí),點(diǎn)擊關(guān)系類(lèi)型節(jié)點(diǎn)如“親屬”,將在彈框中呈現(xiàn)延陵季子的所有親屬。同時(shí),將指針移向關(guān)系連接線,將顯示該條知識(shí)的具體出處,從而與史書(shū)原文相關(guān)聯(lián)。
(2)時(shí)間軸視圖:時(shí)間軸視圖呈現(xiàn)《史記》中任意人物、社會(huì)集團(tuán)等實(shí)體隨時(shí)間的動(dòng)態(tài)變化。圖9以時(shí)間軸的形式呈現(xiàn)了記載于《史記》多卷冊(cè)當(dāng)中的延陵季子(季札)的生平信息,時(shí)間軸最上側(cè)是其父母兄弟等不具有時(shí)間屬性的知識(shí)如親屬,之后則按年份依次呈現(xiàn)人物發(fā)生的事件,直觀地展現(xiàn)實(shí)體隨時(shí)間的動(dòng)態(tài)變化。同時(shí),兩側(cè)展現(xiàn)了知識(shí)來(lái)源,從而與《史記》原文相關(guān)聯(lián)。
圖9 時(shí)間軸視圖示例(延陵季子檢索結(jié)果部分截圖)
4.2.2 時(shí)間知識(shí)的呈現(xiàn)
對(duì)于時(shí)間的檢索,平臺(tái)支持以公元時(shí)間為檢索式,以關(guān)聯(lián)視圖的形式返回與該時(shí)間點(diǎn)相關(guān)聯(lián)的所有歷史以及對(duì)應(yīng)的原文片段,便于讀者概覽該年份的重要人物與事件。例如,由延陵季子的時(shí)間軸視圖(圖9)可知,其于公元前548年封于延陵,圖10是在系統(tǒng)中輸入公元前548年,所展現(xiàn)出的記載于《齊太公世家》《晉世家》等各卷中的當(dāng)年事件,可以幫助用戶(hù)了解當(dāng)年各個(gè)諸侯國(guó)的動(dòng)態(tài),從而更加全面地看待歷史。同樣地,鼠標(biāo)移至實(shí)體間連線可以查看知識(shí)出處。
本研究創(chuàng)新性地采用知識(shí)組織、古籍智能處理等理論、方法和技術(shù)解決中國(guó)古代史籍的信息獲取問(wèn)題,理論意義和現(xiàn)實(shí)意義主要體現(xiàn)在以下兩方面:一方面,本研究從史書(shū)體裁維度出發(fā)構(gòu)建史書(shū)知識(shí)模型,有助于實(shí)現(xiàn)不同史書(shū)知識(shí)以人物、時(shí)間、地點(diǎn)、國(guó)家、職官等維度為中心互聯(lián),有效彌補(bǔ)了史書(shū)體裁主線限制所帶來(lái)的信息獲取問(wèn)題,打破史書(shū)體裁限制所導(dǎo)致的信息獲取壁壘;另一方面,本研究將晦澀的古漢語(yǔ)句子轉(zhuǎn)化為更容易被人和機(jī)器所理解的結(jié)構(gòu)化知識(shí),并針對(duì)不同類(lèi)型的實(shí)體提出可視化方案,從而呈現(xiàn)史書(shū)中的歷史知識(shí),并特別注重于史書(shū)原文的關(guān)聯(lián),有助于拉近普通讀者與經(jīng)典史籍之間的距離,促進(jìn)對(duì)中國(guó)古代經(jīng)典史籍的利用。
針對(duì)當(dāng)前相關(guān)研究的痛點(diǎn)和難點(diǎn),本研究提出史書(shū)多維知識(shí)重組與可視化系統(tǒng),并將其應(yīng)用于我國(guó)第一部紀(jì)傳體史書(shū)《史記》。該系統(tǒng)包含三個(gè)主要部分:①基于SPO-TS知識(shí)表示模型完成史書(shū)多維知識(shí)建模,從而更好地表示史書(shū)中的動(dòng)態(tài)知識(shí);②基于古籍智能處理技術(shù)完成史書(shū)多維知識(shí)庫(kù)構(gòu)建,提高了自動(dòng)化程度;③考慮與史書(shū)原文的關(guān)聯(lián)完成多維知識(shí)可視化,從而拉近用戶(hù)與史書(shū)原文之間的距離。
本研究提出了史書(shū)多維知識(shí)重組與可視化系統(tǒng),并應(yīng)用于《史記》。但仍有以下工作需要進(jìn)一步探究:本研究以《史記》為例展開(kāi)實(shí)踐,多維知識(shí)建模主要考慮了紀(jì)傳體、編年體等五種史書(shū)體裁的主線,未來(lái)將考慮紀(jì)事本末體以及典章體中軍事、文化等多個(gè)維度的建模;數(shù)據(jù)獲取主要考慮了《史記》單本史書(shū),后續(xù)將擴(kuò)大史書(shū)規(guī)模,并探究維基百科、百度百科等數(shù)據(jù)庫(kù)中歷史領(lǐng)域結(jié)構(gòu)化數(shù)據(jù)與本研究所構(gòu)建知識(shí)庫(kù)的融合。