匡海波 譚昕
摘 要:北京大學(xué)出版社出版的《基于注疏文獻(xiàn)的〈孟子〉信息處理研究》一書是對《孟子》及其注疏進(jìn)行信息處理的研究。本文從文獻(xiàn)自身、橫向比較、利用注疏三個層面來分析梁著的基本框架、研究思路和研究價值,并介紹該書如何創(chuàng)新地借用中文信息處理方法進(jìn)行古文獻(xiàn)信息處理。
關(guān)鍵詞:注釋文獻(xiàn) 中文信息處理 古文獻(xiàn)信息處理
古文獻(xiàn)信息處理作為數(shù)字人文的重要研究領(lǐng)域之一,近年來尤為引人注目。古文獻(xiàn)信息處理對于我國古代典籍整理傳承和古代歷史語言文化研究,其重要性不言而喻。如何利用現(xiàn)代化的計算機方法,拓寬古文獻(xiàn)研究思路,則同樣是古漢語學(xué)界、語言學(xué)學(xué)界以及計算機學(xué)界都非常關(guān)心的研究課題。
二十世紀(jì)七八十年代,古文獻(xiàn)信息處理起步于古文獻(xiàn)電子化[1],經(jīng)過三四十年的發(fā)展已經(jīng)有了眾多研究成果,但仍存在不小的進(jìn)步空間[2-3],主要表現(xiàn)在大量傳世及出土文獻(xiàn)沒有進(jìn)行數(shù)字化,經(jīng)過信息處理的文獻(xiàn)只能說“九牛一毛”。另外,目前的古文獻(xiàn)數(shù)字化往往只是淺層處理,尚不能為古漢語研究提供更深層次的數(shù)據(jù)支撐?;谟嬎阏Z言學(xué)方法的古漢語語法、語義、語用研究還比較少見。實際上,如果只是對古籍進(jìn)行單純數(shù)字化,則大有“暴殄天物”
之嫌。
就先秦傳世經(jīng)典的信息處理而言,這些經(jīng)典的注疏文獻(xiàn)實際上是最好的語言材料。所謂“注疏文獻(xiàn)”,其實是后人由于去古已遠(yuǎn),無法對古文獻(xiàn)進(jìn)行直接閱讀,而所作的隨文注釋。“注疏”包羅萬象,包含文字、音韻、訓(xùn)詁等各方面內(nèi)容。基于注疏文獻(xiàn)的古文獻(xiàn)信息處理是學(xué)者對于古文獻(xiàn)注疏的一種延續(xù)和繼承,只是我們有了現(xiàn)代化的信息處理手段,理應(yīng)做得比前人更細(xì)更好。而基于注疏文獻(xiàn)進(jìn)行信息處理的主要難點在于,如何從非結(jié)構(gòu)化的注疏文獻(xiàn)中抽取并識別我們想要的語言知識。
梁社會博士撰寫的《基于注疏文獻(xiàn)的〈孟子〉信息處理研究》(北京大學(xué)出版社2021年出版,以下稱“梁書”)分為五章[4],屬于利用注疏對古文獻(xiàn)專書進(jìn)行信息處理的研究。我們將從文獻(xiàn)自身、橫向比較、利用注疏三個層面來分析梁著的基本框架、研究思路和研究價值,并介紹梁書如何創(chuàng)新地借用中文信息處理方法進(jìn)行古文獻(xiàn)信息處理,以期為后續(xù)工作者提供思考。
一、文獻(xiàn)自身軸:《孟子》深層次信息處理
上文有所表述,大量古文獻(xiàn)沒有進(jìn)行信息處理,但急于對大規(guī)??鐣r代古文獻(xiàn)進(jìn)行批量處理,難免“眉毛胡子一把抓”。同時,古文獻(xiàn)信息處理的研究范式本身就尚未形成,不同時代文獻(xiàn)的處理方法是否具有遷移性,還需要深入研究。因此,針對某一部斷代專書進(jìn)行研究,理所應(yīng)當(dāng)。
梁書選取了《孟子》作為信息處理對象。據(jù)其介紹,其大致理由有三:一是《孟子》及其注疏在十三經(jīng)注疏中篇幅較長(《孟子》約4萬字,《孟子注疏》約27萬字,《孟子集注》約12.1萬字,《孟子正義》約33.3萬字),相較于大多數(shù)十三經(jīng)文獻(xiàn)便于統(tǒng)計和機器學(xué)習(xí);二是針對《孟子》的自動分詞、詞性標(biāo)注、詞義消歧研究尚屬空白,亟待進(jìn)行拓荒;三是《孟子》流傳甚廣,語言風(fēng)格明顯,修辭使用廣泛,專于邏輯說理,便于進(jìn)行語言風(fēng)格計算。這三條理由是完全站得住腳的。
梁書中對《孟子》的處理流程包括自動分詞,詞性標(biāo)注,語義消歧,風(fēng)格計算等。經(jīng)過這一系列的縱向處理,所得到的《孟子》語料屬于“熟語料”,具有了相當(dāng)?shù)难芯績r值,不僅便于一般用戶進(jìn)行理解閱讀、智能化搜索等,同時也可以協(xié)助古漢語專家進(jìn)行詞匯、語法等研究,或?qū)Α睹献印芳捌渌?jīng)進(jìn)行橫向比較。
自動分詞是古文獻(xiàn)信息處理的基礎(chǔ)性工作之一。梁書利用規(guī)則方法、統(tǒng)計模型以及注疏文獻(xiàn)三種方法對《孟子》進(jìn)行了自動分詞實驗。根據(jù)梁書報告,規(guī)則方法分詞結(jié)果F值最高達(dá)0.946。統(tǒng)計模型(采用條件隨機場模型)分詞結(jié)果F值最高達(dá)0.982。其中,統(tǒng)計模型特別考慮了將漢字的聲韻調(diào)及部首信息加入學(xué)習(xí)模板進(jìn)行對比實驗,具有很強的針對性。實驗表明,漢字的聲母信息對分詞結(jié)果有所提高,但再加入韻母、聲調(diào)、部首信息反而造成了分詞結(jié)果的精度失落。另外,利用《孟子》傳世注疏對孟子進(jìn)行分詞是本書的一大特色(第4節(jié)詳述),其分詞結(jié)果F值最高可達(dá)0.928,實驗結(jié)果相比其余兩種方法并沒有較大差距。
先秦文獻(xiàn)所使用的語言屬于上古漢語,與現(xiàn)代漢語在詞類分布方面有所不同。梁書根據(jù)《孟子》及其他先秦文獻(xiàn)的語言詞匯特點,設(shè)計了13大類43小類的詞性類別,同時特別強調(diào),先秦漢語較現(xiàn)代漢語普遍存在詞語兼類和活用現(xiàn)象[5],應(yīng)當(dāng)是詞性標(biāo)注實驗的重點難點。梁書拋開詞語兼類與活用的區(qū)分不論,據(jù)其統(tǒng)計,《孟子》全文詞語兼類及活用比例一共高達(dá)22.24%。梁書采用條件隨機場模型進(jìn)行詞性標(biāo)注實驗,詞語F值最高達(dá)0.941。同時,梁書對標(biāo)注錯誤進(jìn)行了統(tǒng)計分析,發(fā)現(xiàn)名詞動詞混淆是《孟子》詞性標(biāo)注錯誤的主要來源,占比達(dá)45.58%。這個結(jié)果也佐證了我們對于上古漢語的大致印象,即名詞動詞的活用比較普遍且寬泛。此外,梁書還創(chuàng)造性地使用注疏信息對詞性標(biāo)注結(jié)果進(jìn)行校正,具體情況見第4節(jié)。
在分詞和詞性標(biāo)注的基礎(chǔ)上,梁書對《孟子》中最常見的10個多義詞,即“之”“而”“以”“有”等進(jìn)行了詞義消歧。與現(xiàn)代漢語相比,這些多義單字詞詞頻占比更高,義項也更為豐富(多則12項,少則4項),因此,數(shù)據(jù)量更小更稀疏,消歧難度更大,但也是理解先秦文獻(xiàn)的關(guān)鍵之一。梁書分別采用了條件隨機場模型,詞義消歧樹兩種算法進(jìn)行詞義消歧實驗。在窗口長度為2,且綜合考慮詞語詞性、讀音等語言特征的情形下,封閉測試正確率平均為86.36%與87.95%,開放測試正確率平均為84.76%與85.54%,消歧效果尚佳且兩種算法結(jié)果基本接近。
上文介紹,先秦文獻(xiàn)數(shù)量眾多,體裁豐富,據(jù)李零[6]介紹,大致有八大類別。其中,不同體裁的先秦文獻(xiàn)語言風(fēng)格存在差異,即便是同一體裁,不同文獻(xiàn)之間也或多或少存在著差異。相較于其他先秦文獻(xiàn)而言,人們總的感覺是《孟子》修辭使用廣泛,專于邏輯說理。根據(jù)這一特點,梁書首先對《孟子》的文本特征進(jìn)行了大規(guī)模的細(xì)致統(tǒng)計,統(tǒng)計內(nèi)容十分豐富,包括篇幅,用字頻率,用字熵值,用詞頻率,平均詞長,句型分布等,從各層面對《孟子》的語言風(fēng)格進(jìn)行了系統(tǒng)統(tǒng)計,并與其他先秦文獻(xiàn)做了比較,具體情況見第3節(jié)。另外,梁書分析《孟子》說理磅礴,其原因之一是大量使用排比句,因此對《孟子》進(jìn)行了排比句這樣的修辭格識別實驗。其識別算法融合了最長公共子序列求解,相似度計算、句珠遍歷等算法,封測測試和開放測試的F值達(dá)0.61與0.59,這項研究為古漢語修辭格自動識別進(jìn)行了拓荒。
二、橫向比較軸:《孟子》與其他先秦文獻(xiàn)信息處理的比較
以十三經(jīng)為代表的先秦文獻(xiàn),其篇幅長短及語言風(fēng)格是具有差異的。即便是同樣的體裁,例如《孟子》和《論語》,也存在著語言風(fēng)格差異。梁書介紹,《孟子》語言風(fēng)格特點“喻體廣泛,方式多樣”,這是文獻(xiàn)學(xué)和古漢語研究已有的確論。但文獻(xiàn)差異是否體現(xiàn)為語言計算結(jié)果的不同,這種差異對于信息處理的方法遷移又具有多大影響,哪些文獻(xiàn)具有獨特的處理方法,這都是極具價值的文獻(xiàn)橫向研究課題。
基于上述考慮,梁書牢牢抓住《孟子》的語言特點,在與其他先秦文獻(xiàn)的信息處理結(jié)果比對中,展開研究。
梁書采用《漢語大詞典》《孟子譯注附錄詞表》《論語詞表》《左傳詞表》四種詞表對《孟子》進(jìn)行了機械分詞,分詞結(jié)果F值分別為0.863,0.935,0.946,0.909,得出了《孟子譯注附錄詞表》效果最佳,《論語詞表》比《左傳詞表》效果更好的結(jié)論。統(tǒng)計分詞方法方面,梁書用《左傳》訓(xùn)練,測試《孟子》,其分詞結(jié)果F值最高達(dá)0.609,《論語》作為訓(xùn)練語料,F(xiàn)值最高則為0.699,而《孟子》自我訓(xùn)練則達(dá)到了0.956,可見統(tǒng)計方法對于不同文獻(xiàn)的遷移,其精度失落還是比較大的。
詞性標(biāo)注方面,梁書用《孟子》自我訓(xùn)練,F(xiàn)值封閉測試最高達(dá)0.941,開放測試平均為0.897。而用《左傳》作為訓(xùn)練語料,F(xiàn)值為0.845,用《論語》作為訓(xùn)練語料,F(xiàn)值則為0.869。就詞性標(biāo)注錯誤而言,梁書指出,用《左傳》《論語》訓(xùn)練,人名地名標(biāo)記出現(xiàn)了較大的精度失落。且《左傳》比《孟子》錯誤率更高一些。但名詞動詞活用方面,使用了《左傳》《論語》語料,反倒比單純使用《孟子》語料有了一定提升,這似乎說明了就詞性標(biāo)注試驗而言,不同文獻(xiàn)的數(shù)據(jù)也有可遷移的一面。
梁書在對《孟子》的文本特征進(jìn)行統(tǒng)計的基礎(chǔ)上,展開了與《左傳》《論語》的比較。結(jié)果顯示,《左傳》用字最為繁復(fù),數(shù)量大約是《孟子》的1.74倍和5.08倍。就具體用字而言,《孟子》中含有大量的“不”字,梁書分析這是因為孟子在辯論時,習(xí)慣于提出假設(shè),從而增強辯說的效力。梁書繼而分析,《孟子》中出現(xiàn)的“王”“則”等字在《論語》中未曾出現(xiàn),這體現(xiàn)了《孟子》的敘述內(nèi)容和語言風(fēng)格。同時,梁書計算了《孟子》與《左傳》《論語》的文本相似度,前者為0.4238,后者為0.7411,顯然《孟子》與《論語》用字更接近,這與語言學(xué)本體研究和文章的體裁分類也是基本相符的。
詞型方面,梁書統(tǒng)計,《孟子》《論語》單字詞詞型占比超過半數(shù),但《左傳》雙字詞詞型占比最高。梁書進(jìn)一步對詞語詞性標(biāo)注結(jié)果進(jìn)行統(tǒng)計,發(fā)現(xiàn)經(jīng)過詞性標(biāo)注后,《孟子》的帶標(biāo)記詞型數(shù)目比不帶標(biāo)記詞型數(shù)目增長了33.28%,《論語》為33.87%,而《左傳》只增長了20.25%,由此梁書判斷,《孟子》《論語》的兼類現(xiàn)象較《左傳》更為突出,這與我們的語言感覺基本類似。
梁書還對《孟子》《論語》《左傳》文獻(xiàn)中的陳述句、疑問句、感嘆句、祈使句等句型進(jìn)行了人工標(biāo)注、比對分析。結(jié)果顯示,《孟子》論辯色彩最濃,疑問句占比高達(dá)0.2323,《論語》中的感嘆句占比最高,達(dá)0.0960。顯然,這樣的計量特征讓我們能夠從數(shù)據(jù)方面領(lǐng)略到先秦文獻(xiàn)的語體差異。
梁書中關(guān)于《孟子》與其他先秦文獻(xiàn)的信息處理橫向比對研究,具有一定的普遍意義,其給我們的啟示在于,不同文獻(xiàn)作為訓(xùn)練語料,其針對某部專書的處理結(jié)果是具有差異的。體裁接近,語言風(fēng)格類似的文獻(xiàn)自然可以取得更好的成績,一味擴大語料,進(jìn)行統(tǒng)計學(xué)習(xí),可能并不有利于古文獻(xiàn)信息處理。但就某一方面而言,利用其他文獻(xiàn)也可能提高處理效果。因此,這種遷移學(xué)習(xí)的適應(yīng)領(lǐng)域和效果優(yōu)劣值得學(xué)界進(jìn)行深究。
三、利用注疏軸:基于《孟子》及其注疏的信息處理
梁書的一大創(chuàng)新之處在于利用《孟子注疏》《孟子集注》《孟子正義》等注疏語料,結(jié)合《孟子》原文進(jìn)行信息處理。上文介紹注疏文獻(xiàn)是古文獻(xiàn)信息處理的最好材料,并指出注疏處理的問題在于如何從非結(jié)構(gòu)化的注疏文獻(xiàn)中抽取注疏,并識別出結(jié)構(gòu)化或半結(jié)構(gòu)化的語言知識。因此,梁書的第一章開宗明義地介紹如何進(jìn)行注疏對齊這樣的必要先期工作。
據(jù)梁書介紹,注疏對齊分為句子對齊和注釋對齊兩個部分。所謂“句子對齊”,即將“夾引夾議”的注疏文獻(xiàn)重組為“引議平行”的結(jié)構(gòu)模式。參考平行語料庫的制作方法[7],梁書設(shè)計了基于范圍檢查以及基于字符串相似度等算法,對孟子及其注疏進(jìn)行句子對齊。三本注疏的實驗結(jié)果基本都在98%以上,略加人工修正,即可以形成完善的句子對齊注疏語料。
所謂“注釋對齊”,即將已經(jīng)完成句子對齊的語料中,關(guān)于具體字詞的解釋,錨定到原文的字詞位置。注疏中的字詞解釋,對于自動分詞、詞性標(biāo)注,乃至理解原文自然極有幫助。同時,不同時期的注疏還可以進(jìn)行相互比對,分析孰優(yōu)孰劣,起到明辨源流的作用。但注疏對齊的工作量也是不言而喻的,目前詞語級別的注疏對齊結(jié)果尚屬少見。因此,梁書設(shè)計了基于正則表達(dá)式匹配的對齊方法,利用“反切法”“訓(xùn)詁術(shù)語”等53種固定格式從《孟子》注疏中抽取注音及訓(xùn)詁注釋。實驗結(jié)果表明,就字詞短語三種語言單位的注釋而言,注釋對齊F值平均為0.887。基于這些工作,梁書構(gòu)建了一個合并注疏數(shù)目772條的數(shù)據(jù)庫,以便后期綜合考察利用。
利用《孟子》傳世注疏對孟子進(jìn)行分詞是本書的一大特色。注疏分詞的優(yōu)點在于,一是無須事先準(zhǔn)備詞表;二是能抽取到通用詞表中未出現(xiàn)的大量未登錄詞;三是能改造為帶有增強學(xué)習(xí)性質(zhì)的深度學(xué)習(xí)分詞方法。梁書利用詞語注釋對齊結(jié)果,制作了《孟子》分詞詞表(其中,《孟子注疏》收詞1828個,《孟子集注》收詞1136個,《孟子正義》收詞1952個),而后采用規(guī)則方法進(jìn)行分詞,F(xiàn)值最高可達(dá)0.928,實驗結(jié)果相比傳統(tǒng)方法基本接近,但與主流的統(tǒng)計方法相比,算法的時間復(fù)雜度大為下降。
利用注疏信息進(jìn)行詞性校正,是梁書的又一大創(chuàng)新。梁書介紹,詞性概念起源于西方,注疏文獻(xiàn)中自然也就沒有關(guān)于詞語詞性的內(nèi)容,但注疏中至少有三種對詞性標(biāo)注極有價值的信息:詞語是否為語助辭,人名地名以及反切聲調(diào)等。梁書從規(guī)模和規(guī)律性的角度出發(fā),利用反切聲調(diào)信息中的去聲信息來進(jìn)行詞性自動校正,實驗的校正精度超過80%,初步證明了聲韻信息對于詞性校正的可操作性,以及注疏信息的待挖掘使用空間。
另外,梁書首次對《孟子注疏》《孟子集注》《孟子正義》進(jìn)行了文本特征統(tǒng)計分析,側(cè)面反映了不同時代學(xué)者對《孟子》作注的語言風(fēng)貌。梁書發(fā)現(xiàn),盡管上述三本注疏成書年代跨越千年,但用字?jǐn)?shù)目卻相差不大,可見一本注疏的字型是比較趨同的。句型分類方面,梁書考察了《孟子》三部注疏的句型占比。結(jié)果顯示,《孟子集注》專于作注,因此疑問句,感嘆句占比相對較少。這也是用計算機進(jìn)行大規(guī)模自動挖掘才能發(fā)現(xiàn)的文本特征之一。
四、結(jié)語
通過上述三個層面的分析,我們對梁書的研究思路、研究成果和研究價值進(jìn)行了梳理。我們從書中充分認(rèn)識到,古文獻(xiàn)信息處理不免借用中文信息處理的方法,但又不能生搬硬套,否則效果自然不佳,因此如何借用改造中文信息處理方法,是古文獻(xiàn)信息處理的核心課題之一。
顯然,梁書中借用了大量中文信息處理的方法,比如雙語對齊算法、正則表達(dá)式、分詞詞性標(biāo)注方法等。實驗結(jié)果也的確顯示,這些方法對于古文獻(xiàn)信息處理基本適用。同時,梁書也針對上述中文信息處理方法進(jìn)行了諸如匹配對齊,古漢語特征學(xué)習(xí)等相關(guān)改進(jìn),這為我們遷移到其他古文獻(xiàn)提供了實驗參考。梁書充分利用先秦文獻(xiàn)獨有的注疏資源,設(shè)計了若干從注疏材料中挖掘語言知識的方法,對自動分詞、詞性標(biāo)注等相關(guān)信息處理提供了新的思路。另外,梁書在不同文獻(xiàn)比對研究的過程中所得到的一些結(jié)論對現(xiàn)代漢語信息處理也是具備參考價值的,比如跨領(lǐng)域非平衡語料之間的學(xué)習(xí)遷移、多源學(xué)習(xí)與領(lǐng)域自適應(yīng)、排比修辭格的識別等。
參考文獻(xiàn):
[1] 曹書杰. 古籍整理與電子計算機應(yīng)用研究的思考[J]. 古籍整理研究學(xué)刊,1988(1):44-49.
[2] 毛建軍. 古籍?dāng)?shù)字化研究的回顧與思考[J]. 國家圖書館學(xué)刊,2007(3):62-65.
[3] 周迪,宋登漢. 中文古籍?dāng)?shù)字化開發(fā)研究綜述[J]. 圖書情報知識,2010(6):40-49.
[4] 梁社會. 基于注疏文獻(xiàn)的《孟子》信息處理研究[M]. 北京:北京大學(xué)出版社,2021.
[5] 羅竹蓮. 詞類活用與詞的兼類論析[J]. 南華大學(xué)學(xué)報(社會科學(xué)版),2005(2):96-99.
[6] 李零. 簡帛古書與學(xué)術(shù)源流[M]. 北京:生活·讀書·新知三聯(lián)書店,2004.
[7] 李維剛,劉挺,張宇,等. 基于長度和位置信息的雙語句子對齊方法[J]. 哈爾濱工業(yè)大學(xué)學(xué)報,2006(5):689-692.
[8] 陳小荷,馮敏萱,徐潤華. 先秦文獻(xiàn)信息處理[M]. 北京:世界圖書出版公司北京公司,2013.