趙連振,張逸勤,劉江峰,王東波,馮敏萱,李 斌
信息技術(shù)對學(xué)術(shù)研究產(chǎn)生切實(shí)影響,在人文學(xué)術(shù)研究方面,信息技術(shù)帶來的方法論和研究范式創(chuàng)新莫過于“數(shù)字人文”概念。數(shù)字人文的目標(biāo)是將現(xiàn)代信息技術(shù)融入傳統(tǒng)的人文研究與教學(xué)過程,從而在根本上改變?nèi)宋闹R(shí)的獲取、標(biāo)注、取樣、闡釋與表現(xiàn)方式王東波[1]。中華典籍是中華文化根基,浩如煙海的中華典籍一直為相關(guān)研究造成困難,數(shù)字人文為典籍整理研究帶來了新機(jī)遇。《中共中央關(guān)于深化文化體制改革推動(dòng)社會(huì)主義文化大發(fā)展大繁榮若干重大問題的決定》要求加強(qiáng)文化典籍整理和出版工作,推進(jìn)文化典籍資源數(shù)字化。文化典籍資源數(shù)字化中的古籍文獻(xiàn)具有結(jié)構(gòu)數(shù)據(jù)特性,需要進(jìn)行標(biāo)點(diǎn)整理和正確標(biāo)引,人工標(biāo)點(diǎn)耗時(shí)耗力,自動(dòng)標(biāo)點(diǎn)研究成為推動(dòng)古籍研究在人文社科領(lǐng)域發(fā)展的關(guān)鍵環(huán)節(jié)。當(dāng)前古文自動(dòng)處理領(lǐng)域已有了長足進(jìn)展,但古籍自動(dòng)斷句標(biāo)點(diǎn)的方法工具研究仍存在擴(kuò)大深度學(xué)習(xí)技術(shù)應(yīng)用范圍的問題。在此背景下,本研究利用基于深度學(xué)習(xí)搭建的SikuBERT模型,探索古文自動(dòng)標(biāo)點(diǎn)模型。
古文自動(dòng)斷句及標(biāo)點(diǎn)是指根據(jù)古代漢語句子特點(diǎn)并結(jié)合現(xiàn)代漢語的標(biāo)點(diǎn)符號用法,讓計(jì)算機(jī)自動(dòng)切割(斷開)連續(xù)的文本字符序列,成為句子,然后添加標(biāo)點(diǎn)[2]。我國漢語古籍自動(dòng)斷句標(biāo)點(diǎn)研究,最早可追溯到20世紀(jì)末。1997年北京大學(xué)計(jì)算語言研究所和古文學(xué)研究所合作開展以《全宋詩》為對象的古詩研究[3],開發(fā)的系統(tǒng)可以自動(dòng)判斷詩作的押韻與韻腳。從20 世紀(jì)末至今,不少學(xué)者利用自然語言處理技術(shù)對古文自動(dòng)斷句和標(biāo)點(diǎn)展開探索,表現(xiàn)出不同程度的方法創(chuàng)新。當(dāng)前古文自動(dòng)標(biāo)點(diǎn)的研究大致分為基于語法規(guī)則方法和基于統(tǒng)計(jì)建模方法兩種類別。
(1)基于語法規(guī)則方法的自動(dòng)標(biāo)點(diǎn)研究。利用古文句讀(即斷句)規(guī)則指導(dǎo)計(jì)算機(jī)開展自動(dòng)標(biāo)點(diǎn)。古文自動(dòng)標(biāo)點(diǎn)建立在掌握句讀知識(shí)基礎(chǔ)上,此類研究最先得到探索和驗(yàn)證。陳天瑩等[4]提出基于前后文n-gram模型,實(shí)現(xiàn)古漢語句子自動(dòng)切分(自動(dòng)加句讀)算法,充分考慮上下文信息預(yù)測切分位置,解決數(shù)據(jù)稀疏問題。黃建年[5]探索古籍計(jì)算機(jī)自動(dòng)斷句標(biāo)點(diǎn)與自動(dòng)分詞標(biāo)引,構(gòu)建古籍計(jì)算機(jī)自動(dòng)整理與開發(fā)集成系統(tǒng),基于規(guī)則匹配模式對農(nóng)業(yè)典籍開展自動(dòng)斷句與自動(dòng)標(biāo)點(diǎn)實(shí)驗(yàn),開發(fā)包括自動(dòng)標(biāo)點(diǎn)等4個(gè)子系統(tǒng)在內(nèi)的農(nóng)業(yè)古籍整理與開發(fā)實(shí)驗(yàn)系統(tǒng),并在《齊民要術(shù)》《氾勝之書》等古農(nóng)書上驗(yàn)證可行性??傮w上,基于語法規(guī)則方法的自動(dòng)標(biāo)點(diǎn)研究側(cè)重采用自動(dòng)化手段對原始古文自動(dòng)斷句和標(biāo)點(diǎn),弊端是不適用于大規(guī)模古籍處理。
(2)基于統(tǒng)計(jì)建模方法的自動(dòng)標(biāo)點(diǎn)研究。中文古籍計(jì)算機(jī)自動(dòng)標(biāo)點(diǎn)近年多采用統(tǒng)計(jì)建模方法。根據(jù)機(jī)器學(xué)習(xí)模型,相關(guān)研究劃分為以條件隨機(jī)場(CRF)為代表的傳統(tǒng)機(jī)器學(xué)習(xí)模型方法和較前沿的Bi-LSTM、BERT等深度學(xué)習(xí)模型方法。
傳統(tǒng)機(jī)器學(xué)習(xí)模型與漢語古籍自動(dòng)標(biāo)點(diǎn)領(lǐng)域,條件隨機(jī)場(CRF)模型[6]應(yīng)用普遍,可解決序列標(biāo)注模型存在的標(biāo)注偏置等問題,可廣泛應(yīng)用在中文自動(dòng)分詞、詞性標(biāo)注、命名體識(shí)別等領(lǐng)域。也有研究者將該模型應(yīng)用于古籍自動(dòng)斷句標(biāo)點(diǎn)。比如,張開旭等[7]提出基于條件隨機(jī)場的古文自動(dòng)斷句標(biāo)點(diǎn)模型,引入互信息和t-測試差兩個(gè)統(tǒng)計(jì)量作為模型的特征,實(shí)現(xiàn)層疊CRF和單層CRF兩類自動(dòng)標(biāo)點(diǎn)處理策略?;趥鹘y(tǒng)機(jī)器學(xué)習(xí)模型的古文自動(dòng)分析存在兩個(gè)問題:為特定類型的古文人工定制特征模板的過程耗時(shí)耗力;實(shí)驗(yàn)使用的數(shù)據(jù)集規(guī)模小,定制的特征模板對不同時(shí)代和體裁的古籍文本的適應(yīng)性較差[8]。因此,需要提高模型的泛化能力。
深度學(xué)習(xí)模型與漢語古籍自動(dòng)標(biāo)點(diǎn)領(lǐng)域,針對傳統(tǒng)機(jī)器模型在古文自動(dòng)標(biāo)點(diǎn)中的不足,探索深度學(xué)習(xí)方法。王博立等[9]提出基于神經(jīng)網(wǎng)絡(luò)語言模型的古文分詞句讀方法,在大規(guī)模古籍語料上的實(shí)驗(yàn)結(jié)果表明該方法的F1值高于傳統(tǒng)方法。還有學(xué)者探索BERT 方法在古文自動(dòng)標(biāo)點(diǎn)和斷句中的應(yīng)用。王倩等[10]針對現(xiàn)有技術(shù)方法暴露的語義理解不足問題,采用BERTLSTM-CRF 模型和多特征LSTM-CRF 模型等,搭建基于深度學(xué)習(xí)層疊模型的句讀自動(dòng)標(biāo)記平臺(tái),能為用戶指定的古漢語句子或文本文件自動(dòng)給出斷句與標(biāo)點(diǎn)的標(biāo)記結(jié)果。以上方法和模型可以根據(jù)訓(xùn)練語料自動(dòng)學(xué)習(xí)斷句特征,避免復(fù)雜的特征工程,表現(xiàn)出比傳統(tǒng)方法更佳的自動(dòng)標(biāo)點(diǎn)效果。
綜上,深度學(xué)習(xí)模型在漢語古籍自動(dòng)標(biāo)點(diǎn)研究中越來越受重視,尤其是以BERT 為代表的文本深度表示模型的應(yīng)用提升了古籍自動(dòng)斷句及標(biāo)點(diǎn)的準(zhǔn)確率。BERT模型高效的上下文信息提取能力和閱讀理解性能,能適應(yīng)漢語典籍文本句式靈活、上下文關(guān)聯(lián)性強(qiáng)以及語法意合等特性。但在古文自動(dòng)斷句標(biāo)點(diǎn)方面應(yīng)用BERT模型的研究尚不多見,原始BERT基線模型在繁體古文智能處理任務(wù)中的性能也需要進(jìn)一步提升。為此,本研究在大規(guī)模繁體字古文文本基礎(chǔ)上,構(gòu)建性能更優(yōu)越的SikuBERT預(yù)訓(xùn)練模型,探索該建模型在古籍自動(dòng)標(biāo)點(diǎn)的有效性。研究構(gòu)建的自動(dòng)標(biāo)點(diǎn)模型將全部免費(fèi)公開給研究者,以推動(dòng)古文自動(dòng)標(biāo)點(diǎn)研究的進(jìn)一步發(fā)展。
實(shí)驗(yàn)數(shù)據(jù)來自“中國哲學(xué)書電子化計(jì)劃”線上開放電子圖書館(古籍?dāng)?shù)據(jù)庫,https://ctext.org/confucianism/zhs)。其收錄逾3萬部中國歷代傳世文獻(xiàn);按照年代分為先秦兩漢和漢代之后兩部分,先秦兩漢依照派別細(xì)分為兵家、道家、法家、名家、墨家、儒家、雜家等13類,漢代之后依照年代細(xì)分為魏晉南北朝、隋唐、宋明、清代與民國5類,內(nèi)容準(zhǔn)確可靠;能根據(jù)學(xué)術(shù)派別、文獻(xiàn)年代、文獻(xiàn)名稱、章節(jié)名稱等字段以及關(guān)鍵詞檢索文獻(xiàn)。本實(shí)驗(yàn)即從其網(wǎng)站爬取《論語》《禮記》《戰(zhàn)國策》《尚書》《道德經(jīng)》《左傳》《孫子兵法》《論衡》《周易》《孝經(jīng)》《揚(yáng)子法言》《商君書》《墨子》《莊子》《孟子》《公孫龍子》等16部先秦典籍?dāng)?shù)據(jù)作為實(shí)驗(yàn)語料。語料為繁體字文本,帶有經(jīng)過校對的句讀和加注的標(biāo)點(diǎn)符號,不包括編纂人、目錄、標(biāo)題等典籍外部特征信息。語料正文部分的文本最小組織單位為段落,規(guī)模共計(jì)222,793kb,包含漢字與標(biāo)點(diǎn)符號總計(jì)25,640,997個(gè)字符。圖1為源自該網(wǎng)站的數(shù)據(jù)摘錄樣例。
本研究實(shí)驗(yàn)工具包括3種:基于Transformer編碼的BERT預(yù)訓(xùn)練模型、基于神經(jīng)網(wǎng)絡(luò)架構(gòu)的層疊式深度學(xué)習(xí)模型LSTM-CRF,以及自建的使用大規(guī)模古籍?dāng)?shù)據(jù)繼續(xù)訓(xùn)練的SikuBERT預(yù)訓(xùn)練模型。
(1)BERT 預(yù)訓(xùn)練模型。BERT(Bidirectional Encoder Representation from Transformers)方法的基礎(chǔ)是Transformer編碼器,它作為雙向的預(yù)訓(xùn)練方法可以實(shí)現(xiàn)對語言的表征。BERT 屬于深層次的雙向訓(xùn)練語言模型,能借助海量編碼層提升字嵌入模型的泛化能力,性能優(yōu)于Word2Vec和ELMo模型。BERT預(yù)訓(xùn)練模型有眾多應(yīng)用場景,本研究僅利用該模型進(jìn)行特征提取。如圖2,利用BERT模型創(chuàng)建語境化的字嵌入,作為后續(xù)模型的輸入。因?yàn)門ransformer具有RNN模型所缺乏的并行化處理功能,而BERT模型在預(yù)訓(xùn)練階段可以利用Transformer的雙向編碼器根據(jù)上下文進(jìn)行雙向轉(zhuǎn)換解碼。Masked Language Model用以遮蓋部分詞語,并在訓(xùn)練中進(jìn)行預(yù)測,實(shí)現(xiàn)實(shí)驗(yàn)過程中的雙向理解。為使模型能學(xué)習(xí)兩個(gè)句子的關(guān)聯(lián),利用Next Sentence Prediction 方法表示句子級別。預(yù)訓(xùn)練完成后,模型在訓(xùn)練語料基礎(chǔ)上做了有監(jiān)督的微調(diào),以便應(yīng)用到各類型的任務(wù)中。區(qū)別于傳統(tǒng)的BERT模型,數(shù)字人文研究需要一定的條件支持,如大規(guī)模語料庫以及可以處理古文的高性能自然語言處理工具。對英文和現(xiàn)代漢語文本,預(yù)訓(xùn)練語言模型已大幅度改善文本挖掘的精度,但當(dāng)下亟需開發(fā)面向古文自動(dòng)處理的預(yù)訓(xùn)練模型。
圖2 BERT模型生成語境化的字嵌入
(2)LSTM- CRF 模型。 循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)把序列信息作為輸入變量,且按照序列的方向遞歸連接。因具有循環(huán)結(jié)構(gòu),循環(huán)神經(jīng)網(wǎng)絡(luò)可以保留前期信息并將其關(guān)聯(lián)到當(dāng)前信息種,從而解決無法保存信息這個(gè)傳統(tǒng)神經(jīng)網(wǎng)絡(luò)難以處理的難題。循環(huán)神經(jīng)網(wǎng)絡(luò)的不足是:當(dāng)序列過長且文本信息上下文間隔過大時(shí),將出現(xiàn)梯度消失,因而不適用于長序列任務(wù)。長短期記憶網(wǎng)絡(luò)(Long Short Term Memory Network,LSTM)解決梯度消失問題,可以應(yīng)用于多個(gè)實(shí)際問題。長短期記憶網(wǎng)絡(luò)的結(jié)構(gòu)不同于門控循環(huán)單元,區(qū)別在于前者的組成要素包括1個(gè)時(shí)間細(xì)胞和3個(gè)門結(jié)構(gòu),即輸入門、遺忘門和輸出門。輸入門決定保存到記憶狀態(tài)細(xì)胞中的是輸入新信息中的何種部分,遺忘門管控歷史記憶細(xì)胞狀態(tài)的相關(guān)信息,輸出門輸出更新后細(xì)胞狀態(tài)的部分。LSTM 模型的局限之處是,無法考慮到當(dāng)前文本上下文所蘊(yùn)含的信息。Bi-LSTM(Bidirectional LSTM)神經(jīng)網(wǎng)絡(luò)是對傳統(tǒng)LSTM的改進(jìn)。該神經(jīng)網(wǎng)絡(luò)借鑒了雙向循環(huán)網(wǎng)絡(luò)的方法,在LSTM上增加前向?qū)雍头聪驅(qū)觾蓚€(gè)并行層,分別從序列的開始處和末尾處進(jìn)行處理,因而使得Bi-LSTM保存兩個(gè)方向的文本信息,解決大文本序列任務(wù)的上下文存儲(chǔ)問題。借助LSTM網(wǎng)絡(luò)能夠產(chǎn)生優(yōu)良的實(shí)體標(biāo)注效果,但輸出標(biāo)簽之間的強(qiáng)烈依賴關(guān)系會(huì)對LSTM模型的性能帶來不良影響,這尤其表現(xiàn)在實(shí)際的序列標(biāo)注任務(wù)中。鑒于神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)對數(shù)據(jù)有很大的依賴性,數(shù)據(jù)量的大小和質(zhì)量會(huì)嚴(yán)重影響模型訓(xùn)練的效果。本研究使用LSTM-CRF模型就是為了解決該問題。如圖3,LSTM-CRF模型輸出的內(nèi)容是最佳的標(biāo)簽序列,而不是相互獨(dú)立的標(biāo)簽。LSTM-CRF模型有兩大優(yōu)勢:保存LSTM同時(shí)兼顧上下文信息的特性;借助CRF層考量輸出獨(dú)立標(biāo)簽前后的相互依賴關(guān)系。
圖3 LSTM-CRF模型框架示意圖
(3)SikuBERT 預(yù)訓(xùn)練模型。由南京農(nóng)業(yè)大學(xué)、南京理工大學(xué)和南京師范大學(xué)聯(lián)合開發(fā)的SikuBERT模型是為漢語古籍文本進(jìn)行智能處理所構(gòu)建的預(yù)訓(xùn)練模型[11]。Siku是“四庫”漢語拼音的縮寫,SikuBERT是在BERT模型的基礎(chǔ)框架下,選擇刪除注釋的繁體漢字無標(biāo)點(diǎn)版《四庫全書》全文作為訓(xùn)練語料而得到的語言模型。由于BERT模型具有雙向Transformer編碼器結(jié)構(gòu)的特性,SikuBERT模型在詞向量的訓(xùn)練中能夠最大程度上保留古籍文本的原始特征,從而規(guī)避實(shí)驗(yàn)受限于訓(xùn)練文本分詞質(zhì)量的缺陷。SikuBERT在預(yù)訓(xùn)練過程中僅使用掩碼語言模型(Mask Language Model,MLM)完成無監(jiān)督學(xué)習(xí)任務(wù),可以綜合上下文內(nèi)容預(yù)測被遮罩的字符。因此,SikuBERT模型可以移除原始模型中對下游任務(wù)性能影響甚微的NSP任務(wù),僅使用MLM損失函數(shù)判斷模型預(yù)訓(xùn)練的完成度。在實(shí)驗(yàn)中該預(yù)訓(xùn)練模型隨機(jī)遮罩15%的詞匯,并通過預(yù)測被遮罩字符的方式完成參數(shù)更新。與原始BERT-base 以及 RoBERTa、GuwenBert 等基線模型相對比,SikuBERT預(yù)訓(xùn)練模型在古文分詞、古文詞性標(biāo)注、古文命名實(shí)體識(shí)別等繁體古文智能處理任務(wù)中的性能均有所提升。
自動(dòng)標(biāo)點(diǎn)問題可視為序列標(biāo)注任務(wù)。具體而言,利用{B,E,I,J,S}分別描述句子各部分的字,使用{D,J,F(xiàn),G,W,M,S,O}區(qū)分具體標(biāo)點(diǎn),將古籍自動(dòng)標(biāo)點(diǎn)問題轉(zhuǎn)換為單句序列標(biāo)注任務(wù)。BERT系列模型中的單句序列標(biāo)注任務(wù)僅需改造BERT模型的輸出層,即在模型所有輸出后增加一個(gè)分類層。分類層由一個(gè)全連接層和一個(gè)softmax層組成,用于輸出最后標(biāo)注類別的概率。SikuBERT系列預(yù)訓(xùn)練模型的結(jié)構(gòu)與BERT-base模型相同,兩者在預(yù)訓(xùn)練過程中所使用的預(yù)訓(xùn)練任務(wù)略有差異。可見,SikuBERT系列預(yù)訓(xùn)練模型應(yīng)用于古籍自動(dòng)標(biāo)點(diǎn)任務(wù)的方法與上述改造BERT模型的方法是相一致的。
本研究選取經(jīng)過句讀校驗(yàn)的“中國哲學(xué)書電子化計(jì)劃”古籍?dāng)?shù)據(jù)庫中的全文語料作為實(shí)驗(yàn)訓(xùn)練集,利用自建SikuBERT預(yù)訓(xùn)練語言模型對先秦典籍文本開展自動(dòng)標(biāo)點(diǎn)研究。
數(shù)據(jù)預(yù)處理階段主要包括兩個(gè)內(nèi)容:規(guī)范標(biāo)注已經(jīng)完成斷句校對的語料;利用句號、問號、感嘆號等句末標(biāo)點(diǎn)符號切分句子。
第一步,對語料進(jìn)行斷句,以{B,E,I,J,S}為標(biāo)記集合。在該集合中B代表句首字,E代表句尾字,I代表句長超過3(字?jǐn)?shù))時(shí)的中間字,J表示當(dāng)句長大于2(字?jǐn)?shù))時(shí)句尾字前面的一個(gè)字,S代表單字成句,標(biāo)簽標(biāo)注示例見表1。
表1 斷句標(biāo)簽摘錄樣例
第二步,在斷句基礎(chǔ)上輸出標(biāo)點(diǎn)標(biāo)記,以{D,J,F(xiàn), G,W, M,S,O}為標(biāo)記集合。各字母含義為:D 表示逗號,J 表示句號,F(xiàn) 表示分號,G表示感嘆號,W表示問號,M表示冒號,S表示書名號,O表示文字后無標(biāo)點(diǎn)符號。針對語料語句“曰:然。諸子之書稱爵祿,非貴也”,標(biāo)簽標(biāo)注示例見表2。通過將語料制成深度學(xué)習(xí)模型可識(shí)別的格式,本實(shí)驗(yàn)獲得總計(jì)約2,600萬行token格式的深度學(xué)習(xí)語料,句長存在不平衡情況。數(shù)據(jù)集進(jìn)一步被隨機(jī)分為10份,其中訓(xùn)練集9份,測試集與驗(yàn)證集1份;訓(xùn)練集數(shù)據(jù)約2,308萬行,測試集與驗(yàn)證集數(shù)據(jù)約255萬行。借助十折交叉驗(yàn)證(10-fold cross-validation)法實(shí)現(xiàn)數(shù)據(jù)增強(qiáng),把10份數(shù)據(jù)中的9份當(dāng)作訓(xùn)練數(shù)據(jù),提高實(shí)驗(yàn)準(zhǔn)確率并降低結(jié)構(gòu)性誤差。
表2 標(biāo)注體系標(biāo)注示例
模型分詞水平有以下常用評價(jià)指標(biāo):準(zhǔn)確率P(Precision)、召回率R(Recall)、調(diào)和平均值F1,計(jì)算算式詳見下列公式。在公式中,M為測試集總句數(shù),N為標(biāo)注出的標(biāo)點(diǎn)符號數(shù),T為標(biāo)注正確的標(biāo)點(diǎn)符號數(shù)。模型分詞的精確度與全面度分別由準(zhǔn)確率和召回率表示,而調(diào)和平均值則綜合了前兩個(gè)指標(biāo)的優(yōu)點(diǎn),可以防止兩者差距擴(kuò)大。因此,調(diào)和平均值指標(biāo)可以更客觀地評價(jià)分詞效果,成為本實(shí)驗(yàn)中最為重要的評價(jià)指標(biāo)。
本研究實(shí)驗(yàn)環(huán)境配置為:CPU,Intel(R)Xeon(R) CPU E5-2650 v4 @ 2.20GHz;GPU,NVIDIA?Tesla?P40;內(nèi)存,512GB;顯存,24GB;操作系統(tǒng),CentOS 3.10.0。全部模型的訓(xùn)練和測試均在Pytorch后端的BERT框架內(nèi)進(jìn)行。表3展示本實(shí)驗(yàn)?zāi)P椭械闹饕瑓?shù)設(shè)置。
表3 本實(shí)驗(yàn)?zāi)P偷闹饕瑓?shù)設(shè)置
通過對十折交叉整體調(diào)和平均值的分析,發(fā)現(xiàn)SikuBERT模型在先秦典籍自動(dòng)標(biāo)點(diǎn)實(shí)驗(yàn)中取得較優(yōu)越的整體效果。選取第三組實(shí)驗(yàn)為例,以深入分析主要標(biāo)點(diǎn)符號的標(biāo)注結(jié)果,見表4。
表4 自動(dòng)標(biāo)點(diǎn)十折交叉實(shí)驗(yàn)的準(zhǔn)確率、召回率與F1值
由表4看出,書名號標(biāo)簽S與冒號標(biāo)簽M總體上的識(shí)別準(zhǔn)確率、召回率與F1 值表現(xiàn)最優(yōu);其次是句號標(biāo)簽J和逗號標(biāo)簽D的識(shí)別準(zhǔn)確率、召回率與F1值表現(xiàn)也不錯(cuò)。問號標(biāo)簽W、分號標(biāo)簽F與感嘆號標(biāo)簽G的識(shí)別準(zhǔn)確率相對較差,三者中又有差異:問號相對較好,除準(zhǔn)確率較低于80%外,召回率和F1值均在80%以上;分號和感嘆號的3種指標(biāo)多在50%以下,有的甚至低于40%,與書名號和冒號有顯著差異。以下分析標(biāo)點(diǎn)實(shí)驗(yàn)現(xiàn)狀的原因。
就書名號與冒號而言,實(shí)驗(yàn)結(jié)果最理想,主要原因在于二者的斷句形式標(biāo)志較明顯。在古籍標(biāo)點(diǎn)中,書名號標(biāo)明的書名、篇章名、樂舞名等作為實(shí)體容易識(shí)別,如本實(shí)驗(yàn)語料中出現(xiàn)的《詩》《書》《訓(xùn)》《帝典》《論語》《史記》。古籍引書還遵循一定模式,如“……云”“……曰”,有助于提高識(shí)別的準(zhǔn)確率。書名號標(biāo)點(diǎn)致誤的主要原因是不明文獻(xiàn)名稱。比如,SikuBERT模型的處理為:“故司馬法曰:賞罰不時(shí),欲使民速見善惡之報(bào)也?!惫偶畼?biāo)點(diǎn)中的引書識(shí)別法之一是“……曰”,但“曰”也可用在人名后表示“說,說道”,因此該句的正確標(biāo)注為:“故《司馬法》曰:賞罰不時(shí),欲使民速見善惡之報(bào)也?!泵疤柾ǔ3霈F(xiàn)在提示性話語之后或總括性話語之前,位置具有較顯著的特征,易被模型學(xué)習(xí)與掌握,因此標(biāo)注準(zhǔn)確率高達(dá)95%以上。部分自動(dòng)標(biāo)點(diǎn)致誤的主要原因在于不明文義,沒有用冒號正確揭示句子內(nèi)部結(jié)構(gòu)。例如,“狄人之所欲者,吾土地也。吾聞之也,君子不以其所以養(yǎng)人者害人?!痹谠摾?,“君子不以其所以養(yǎng)人者害人”屬于句中的解釋或綜括性部分,該部分與句子的提示語之間應(yīng)正確使用冒號,以更好地揭示句子內(nèi)部的邏輯結(jié)構(gòu)。因此,正確的標(biāo)點(diǎn)應(yīng)該是:“狄人之所欲者,吾土地也。吾聞之也:君子不以其所以養(yǎng)人者害人?!?/p>
就句號和逗號而言,句號各項(xiàng)指標(biāo)逾86%,實(shí)驗(yàn)結(jié)果較理想。標(biāo)識(shí)句號和逗號的形式特征較弱,語義特征較強(qiáng),需要進(jìn)行語義層面的判斷,可能出現(xiàn)因理解產(chǎn)生的不一致。句號標(biāo)注出現(xiàn)明顯的偏誤更多是不明文義造成的。例如,“學(xué)猶飾也。器不飾則無以為美觀;人不學(xué)則無以有懿德。”3個(gè)分句語義上關(guān)系較密切,但句號表示明顯的停頓,第一個(gè)分句后使用句號則割裂三者之間的關(guān)聯(lián)。因此,正確標(biāo)注應(yīng)為:“學(xué)猶飾也,器不飾則無以為美觀,人不學(xué)則無以有懿德?!倍禾柷闆r也大致如此,由于詞義不明和句義不明等,模型在自動(dòng)標(biāo)點(diǎn)時(shí)會(huì)出現(xiàn)偏誤。例如,“有懿德故可以經(jīng)人倫,為美觀故可以供神明?!蹦P偷倪@種標(biāo)點(diǎn)顯然是不明漢語句式的成分和結(jié)構(gòu)造成的。正確的標(biāo)點(diǎn)應(yīng)為:“有懿德,故可以經(jīng)人倫;為美觀,故可以供神明?!笨傊?,通過初步比較機(jī)器模型在句號和逗號標(biāo)注中出現(xiàn)的偏誤,發(fā)現(xiàn)在標(biāo)點(diǎn)判斷中語義成為首要考慮因素,因而自動(dòng)標(biāo)注更復(fù)雜,影響實(shí)驗(yàn)準(zhǔn)確率。
就問號、感嘆號和分號而言,問號標(biāo)簽W的準(zhǔn)確率和F1值低,準(zhǔn)確率甚至低于80%。盡管問號的準(zhǔn)確率低于上兩組中的標(biāo)點(diǎn)符號,但在同組中其準(zhǔn)確率卻高于分號和冒號,可以歸因于問號標(biāo)點(diǎn)出現(xiàn)的位置具有較強(qiáng)的特征。句尾語氣詞的多用法特征,是導(dǎo)致模型自動(dòng)標(biāo)注出錯(cuò)的主要原因。比如,模型標(biāo)注為“今日行之,可以知古,可以察今,其此邪?”這里的“邪”應(yīng)是表示感嘆,正確標(biāo)注應(yīng)為“今日行之,可以知古,可以察今,其此邪!”感嘆號準(zhǔn)確率更低,僅約61%,召回率和F1 值低于50%。在所有標(biāo)點(diǎn)中,感嘆號數(shù)量較少、使用頻率較低,可能會(huì)影響統(tǒng)計(jì)數(shù)值,這是感嘆號自動(dòng)標(biāo)點(diǎn)準(zhǔn)確率較低的原因之一。但更重要的是,句末形式標(biāo)記的歧義性和意義語氣判斷的不確定性。從統(tǒng)計(jì)數(shù)據(jù)看,模型自動(dòng)標(biāo)點(diǎn)中感嘆號和問號出現(xiàn)判斷失誤較普遍,這與句尾語氣詞的歧義性有很大關(guān)系。分號準(zhǔn)確率約59%,召回率和F1值均不到50%。統(tǒng)計(jì)數(shù)據(jù)表明,分號準(zhǔn)確率最低,總體實(shí)驗(yàn)結(jié)果不理想。分號標(biāo)注的實(shí)質(zhì)是判定復(fù)句內(nèi)部各分句之間的語義關(guān)系,語義的復(fù)雜性是機(jī)器學(xué)習(xí)最為薄弱環(huán)節(jié),導(dǎo)致分號出現(xiàn)較低準(zhǔn)確率。
為直觀分析自動(dòng)標(biāo)點(diǎn)模型的效果,本研究在測試集上截取部分語料進(jìn)行觀測,結(jié)果見表5。從上述截取結(jié)果可知,模型對逗號的識(shí)別較準(zhǔn)確,而問號及感嘆號的識(shí)別精度較差;句子“猶莫之敢規(guī)也,而況於人君哉!”,末尾“哉”字后應(yīng)為感嘆號,而模型將其標(biāo)為問號。同時(shí),在人工檢查測試集語料后,也發(fā)現(xiàn)多處問號和感嘆號識(shí)別錯(cuò)誤的情況。
表5 標(biāo)注結(jié)果樣例
為對本模型進(jìn)行嚴(yán)謹(jǐn)科學(xué)的評價(jià),借助十折交叉驗(yàn)證法來判斷其性能。表6 展示每組準(zhǔn)確率、召回率和調(diào)和平均值3個(gè)重要指標(biāo)的數(shù)值。本次實(shí)驗(yàn)?zāi)P偷目傮w性能以柱形圖展示,其中橫軸為十折交叉驗(yàn)證的10組實(shí)驗(yàn)組次,縱軸為各組的各項(xiàng)指標(biāo)平均值,結(jié)果見圖4。實(shí)驗(yàn)語料共計(jì)222,793kb,通過對十折交叉整體調(diào)和平均值的比較分析可知,在本文先秦典籍自動(dòng)標(biāo)點(diǎn)實(shí)驗(yàn)中,SikuBERT模型的整體效果均比較優(yōu)越。其中,最優(yōu)為組次3,準(zhǔn)確率達(dá)到87.86%,召回率達(dá)到87.92%,調(diào)和平均值為87.86%。
表6 十折交叉驗(yàn)證實(shí)驗(yàn)的結(jié)果
圖4 十折交叉驗(yàn)證的模型指標(biāo)平均值
根據(jù)最后的評測指標(biāo),模型對不同標(biāo)點(diǎn)的預(yù)測表現(xiàn)出顯著的差異。由于使用位置特征明顯,逗號、冒號、書名號以及句號容易被機(jī)器模型學(xué)習(xí)和掌握,因而表現(xiàn)出良好的預(yù)測結(jié)果。相比之下,模型對分號和感嘆號的預(yù)測仍有較大提升空間。分號表現(xiàn)尤其如此,原因在于該標(biāo)點(diǎn)符合的使用場景復(fù)雜,不確定性高,對模型學(xué)習(xí)與預(yù)測造成一定的難度。人工查錯(cuò)后發(fā)現(xiàn),分號較多地被錯(cuò)誤預(yù)測為逗號,表明這兩種符號的區(qū)分有較大困難,這也符合本文的判斷。感嘆號則大量被誤測為問號和句號,原因在于三者同為句末的句讀標(biāo)記,具有類似的句法功能。加之,句末語氣詞是它們的形式標(biāo)記,語氣詞字形類似,會(huì)給識(shí)別工作帶來困難。另外,感嘆號使用頻率較低,會(huì)造成數(shù)據(jù)稀疏,這也會(huì)影響模型預(yù)測結(jié)果。
基于實(shí)驗(yàn)結(jié)果,借助SikuBERT模型,本研究開發(fā)兼容古文文本自動(dòng)斷句功能的集成型古文智能處理平臺(tái),運(yùn)用Python語言和pyQt5圖形界面編程。單機(jī)版“Sikuaip:面向數(shù)字人文的中國古代典籍智能處理平臺(tái)”(以下簡稱“Sikuaip平臺(tái)”)以可視化方式幫助研究人員實(shí)現(xiàn)任意古文文本的斷句自動(dòng)標(biāo)記。在1.0版中,Sikuaip平臺(tái)提供包含自動(dòng)斷句、自動(dòng)分詞與詞性標(biāo)注、實(shí)體識(shí)別在內(nèi)的多種古文智能處理功能。經(jīng)過代碼整合,實(shí)現(xiàn)3種功能,可處理不同規(guī)模文本,即單句自動(dòng)斷句、單文本文件自動(dòng)斷句以及多文件自動(dòng)斷句。通過pyQt5信號發(fā)送,軟件中的“自動(dòng)斷句”按鈕可連接到作為槽函數(shù)的斷句函數(shù)。表7展示了斷句函數(shù)的參數(shù)。
表7 斷句函數(shù)的參數(shù)及其功能
在表7中,參數(shù)input_path表示接受用戶語料輸入的待處理文件路徑,而參數(shù)output_path表示處理后輸出的文件路徑。每個(gè)序列在輸入文件中的長度不超過512字符;若單個(gè)序列過長,需進(jìn)行截?cái)嗵幚?,將其分為若干子序列。采用CPU與GPU兩種軟件同時(shí)運(yùn)行的方式,保證計(jì)算資源可得到最大程度利用。本研究開發(fā)的Sikuaip平臺(tái)主界面如圖5所示。依據(jù)待處理文本規(guī)模的不同,Sikuaip平臺(tái)可以為用戶提供單文本模式和語料庫模式兩種處理入口。
圖5 智能處理平臺(tái)主界面
用戶根據(jù)需求單擊相應(yīng)按鈕后,可進(jìn)入自動(dòng)斷句功能界面。單文本模式下的自動(dòng)處理界面見圖6。在單文本模式下進(jìn)行自動(dòng)斷句處理,需在左側(cè)文本框內(nèi)輸入繁體中文形式的原始文本,單擊“自動(dòng)標(biāo)點(diǎn)”按鈕,右側(cè)結(jié)果欄即可生成自動(dòng)斷句后的古籍文本。圖6中使用的樣例文本來源于《史記·陳涉世家》。根據(jù)現(xiàn)有較權(quán)威的中華書局修訂版點(diǎn)校本《史記》,該段文本的斷句處理應(yīng)為:“陳勝者,陽城人也,字涉。吳廣者,陽夏人也,字叔。陳涉少時(shí),嘗與人傭耕,輟耕之壟上,悵恨久之,曰:「茍富貴,無相忘。」庸者笑而應(yīng)曰:「若為庸耕,何富貴也?」陳涉太息曰:「嗟乎,燕雀安知鴻鵠之志哉!」”可見,使用Sikuaip平臺(tái)進(jìn)行智能處理,除缺失傳統(tǒng)句讀符號雙引號外,輸出的處理結(jié)果幾乎與權(quán)威句讀完全一致。這表明Sikuaip平臺(tái)的自動(dòng)斷句功能對中文古籍處理有較好的適用性。
圖6 單文本模式自動(dòng)斷句功能
圖7 為語料庫模式自動(dòng)斷句場景示意圖。大規(guī)模文本的自動(dòng)斷句處理可以選用語料庫模式,操作流程如下:單擊“瀏覽”按鈕選擇待處理的文件夾與輸出文件夾,之后點(diǎn)擊“自動(dòng)標(biāo)點(diǎn)”按鈕來調(diào)用Sikuaip自動(dòng)斷句模型,實(shí)現(xiàn)古籍文本大批量自動(dòng)斷句?,F(xiàn)階段開發(fā)較完備的文本智能處理平臺(tái)有北京理工大學(xué)大數(shù)據(jù)搜索與挖掘?qū)嶒?yàn)室開發(fā)的NLPIR-Parser大數(shù)據(jù)語義智能分析平臺(tái)[12],以及針對現(xiàn)代漢語、漢語文言文以及前現(xiàn)代韓文(韓國語)命名實(shí)體自動(dòng)識(shí)別等相關(guān)應(yīng)用的MARKUS 與COMPARATIVUS 文本標(biāo)記平臺(tái)[13]等。NLPIR-Parser大數(shù)據(jù)語義智能分析平臺(tái)主要面向現(xiàn)代漢語;MARKUS主要面向漢文,尤其是文學(xué)領(lǐng)域的漢文與朝鮮文的處理;Sikuaip平臺(tái)應(yīng)用SikuBERT模型,針對性地實(shí)現(xiàn)了中國古代漢語文本自動(dòng)斷句的智能化處理。
圖7 語料庫模式自動(dòng)斷句功能
數(shù)字人文為中華典籍的整理研究帶來了新機(jī)遇。在人文社科領(lǐng)域,古籍自動(dòng)標(biāo)點(diǎn)研究扮演關(guān)鍵角色。近年古籍自動(dòng)標(biāo)點(diǎn)領(lǐng)域取得很好進(jìn)展,但在方法工具方面,機(jī)器深度學(xué)習(xí)技術(shù)的應(yīng)用仍然需要探究。為此,本研究利用SikuBERT 模型,以“中國哲學(xué)書電子化計(jì)劃”古籍?dāng)?shù)據(jù)庫中的先秦兩漢典籍為數(shù)據(jù)源,探索基于深度學(xué)習(xí)技術(shù)的古文自動(dòng)標(biāo)點(diǎn)模型。通過對十折交叉整體調(diào)和平均值的比較分析,發(fā)現(xiàn)SikuBERT模型對先秦兩漢典籍自動(dòng)標(biāo)點(diǎn)的整體效果均比較優(yōu)越,尤其是書名號、冒號、句號以及逗號,預(yù)測表現(xiàn)良好;分號、感嘆號和問號的識(shí)別準(zhǔn)確率相對較差,預(yù)測表現(xiàn)有待提高。后續(xù)研究將考慮在3個(gè)方面進(jìn)行。一是克服自動(dòng)標(biāo)點(diǎn)中形式標(biāo)記的“雙刃劍”屬性影響。古漢語句末語氣詞“也”“邪”等可以表達(dá)多重含義,如陳述、感嘆、疑問。這既為自動(dòng)標(biāo)注帶來方便,也因其多義性造成標(biāo)注的偏誤。二是加強(qiáng)機(jī)器深度學(xué)習(xí)的語義學(xué)習(xí)功能。當(dāng)標(biāo)點(diǎn)的形式特征顯著時(shí),實(shí)驗(yàn)結(jié)果往往較為理想,但涉及到語義和語氣等意義層面的判斷時(shí),準(zhǔn)確率就會(huì)降低,這是機(jī)器自動(dòng)學(xué)習(xí)需要進(jìn)一步完善之處。三是探索其他標(biāo)點(diǎn)的實(shí)驗(yàn)效果。引號、頓號等標(biāo)點(diǎn)在本研究中沒有涉及,今后的研究可以驗(yàn)證這類標(biāo)注的準(zhǔn)確性等指標(biāo)。作為古籍研究與文化傳承中重要的基礎(chǔ)性研究項(xiàng)目,我國古籍自動(dòng)斷句標(biāo)點(diǎn)研究可以豐富數(shù)字人文在古文智能處理方面的內(nèi)涵。未來,伴隨深度學(xué)習(xí)方法的更新,古籍研究將引入更先進(jìn)的自動(dòng)處理模型算法,這對高質(zhì)量古籍知識(shí)教育、古籍內(nèi)涵深度挖掘與優(yōu)秀傳統(tǒng)文化創(chuàng)新應(yīng)用等具有重大意義。