鐘昕妤 李燕 徐麗娜 陳月月 帥亞琦



摘? 要: 針灸古籍中含有大量通假字、歧義詞和專業術語。基于深度學習的分詞方法,因靜態字向量固有表示和大規模且高質量語料缺乏等問題,限制了分詞性能。為緩解上述問題,提出引入預訓練策略,在ALBERT模型基礎上,利用大量中醫古籍再訓練得到CmabBERT模型,并構建CmabBERT-BILSTM-CRF融合模型運用于針灸古籍分詞任務。實驗結果表明,在小樣本語料基礎下,對比Jieba分詞器、BILSTM-CRF和ALBERT-BILSTM-CRF模型,該融合模型展現了更優越的分詞性能。
關鍵詞: 針灸古籍; 分詞; 序列標注; 預訓練
中圖分類號:TP391.1? ? ? ? ? 文獻標識碼:A? ? ?文章編號:1006-8228(2023)04-11-05
Abstract: Acupuncture ancient books contain a large number of false words, ambiguous words and professional terms. The word segmentation method based on deep learning is limited by the inherent representation of static word vectors and the lack of large-scale and high-quality corpus. In order to alleviate the above problems, a pre-training strategy is proposed. Based on the ALBERT model, a large number of ancient Chinese medicine books are retrained to obtain the CmabBERT model, and the CmabBERT-BILSTM-CRF fusion model is constructed and applied to the word segmentation task of acupuncture ancient books. The experimental results show that compared with the Jieba word segmentation, BILSTM-CRF and ALBERT-BILSTM-CRF models, this fusion model exhibits superior word separation performance on the basis of small sample corpus.
Key words: acupuncture ancient books; word segmentation; sequence tagging; pre-training
0 引言
計算機技術應用于中醫領域,可利用知識發現方法總結已有知識體系,挖掘新的知識規律。針灸作為我國中醫學的重要組成部分,因其特殊的治療效用而被廣泛使用,現已成為世界上應用最廣泛的傳統與替代醫學[1]。古籍作為針灸傳承發展的重要載體,蘊藏著豐富的針灸理論知識和實踐經驗,是中醫學愛好者的一大寶庫。隨著古籍數字化工作的推進,越來越多針灸古籍被轉化為非格式化文本數據,亟待學者們對其進行處理,挖掘其中的寶貴知識。
分詞通過界定字間界限,劃分出具有意義的詞匯,這是實現計算機處理針灸古籍的基礎任務,亦是實體識別、關系抽取等自然語言處理(Natural Language Processing,NLP)任務的基礎。而當前針灸古籍分詞存在以下三個問題。
⑴ 存有較多通假字、歧義字。最新方法[2]的字向量表示為靜態,無法很好地區分多義字,限制了分詞性能。
⑵ 知識面涉及較廣。除針灸和中醫知識外,還囊括古漢語、古哲學等內容,存在未登錄詞識別難題。
⑶ 大規模且高質量的標注語料尚為缺乏[3,4],其對標注人員要求較高,耗時較長。此外,由于還沒有統一標注規范,現有語料還存在質量不齊問題。
為了緩解上述問題,本文將預訓練策略引入到針灸古籍分詞任務中,利用大量中醫古籍,對ALBERT模型再訓練以學習上下文特征,最終得到CmabBERT模型,該模型更為符合針灸古籍語境的動態字向量表示輸出,聯合該模型進一步構建CmabBERT-BILSTM-CRF融合模型應用于針灸古籍分詞任務,實現性能提升。
1 相關研究
近年中醫古籍分詞研究已取得一定成果,其主要基于詞典規則、概率統計和深度學習三大類方法。
在研究初期,主要是采用詞典和概率的方法。2015年,張帆等[5]結合中醫領域詞典與CHMM實現中醫醫案文獻分詞,緩解未登錄詞和歧義問題。2019年,Xianjun Fu等[6]基于HMM模型開發了中醫藥古籍分詞系統并構建了中醫藥術語詞庫。同期,Qi Jia等[4]提出一種基于分支熵法的無監督方法,利用中醫領域詞典計算優度閾值,構建分詞器并在中醫藥文本上驗證了有效性。后來學者們嘗試將深度學習方法引入研究中。語料作為深度學習方法的基礎需要預先構建。2018年,付璐等[3]通過人工標注構建了一個小型的清代醫籍分詞語料庫,并據此探討了中醫古籍的分詞規范。在此基礎上,Si Li等[7]針對CNN的缺陷,將膠囊結構引入分詞的序列標注任務,由此構建中醫古籍分詞器并達到了可接受的性能。2020年,王莉軍等學者[2]通過構建BILSTM和BILSTM-CRF模型對中醫古籍進行分詞,并在各類別上驗證了模型的分詞性能和魯棒性。深度學習方法在中醫古籍分詞中展現了優越性能,然而由于靜態字向量固有表示和語料缺乏且質量不齊的問題,限制了其性能的進一步提升。此外,當前研究主要集中于中醫醫案與中醫藥古籍,對針灸古籍的分詞研究較為缺乏。
據此,本文提出將預訓練策略引入針灸古籍分詞任務,通過利用大量中醫古籍再訓練模型,以自主學習中醫古籍的上下文特征,從而輸出更符合針灸古籍語境的動態字向量表示,以期在小樣本語料訓練下實現更優分詞。經實驗證明,對比其他已有方法,本文構建的CmabBERT-BILSTM-CRF融合模型,在各項分詞指標上都獲得了一定提升。
2 基本原理
目前中醫領域中未有公開的預訓練模型(Pre-Trained Model,PTM),且在中醫古籍處理中亦未引入PTM進行分詞實驗。本文聯合PTM再訓練后更符合針灸古籍語境的動態字向量表示輸出,構建CmabBERT-BILSTM-CRF融合模型,應用于針灸古籍分詞任務,進一步克服針灸古籍分詞難題。
如圖1所示,本文提出的模型框架整體分為三大模塊:CmabBERT字向量表示層、BILSTM特征提取層和CRF序列標注層。其中,CmabBERT模型是由ALBERT模型經過中醫古籍語料再訓練得到。
2.1 ALBERT
2019年,Zhenzhong Lan等[8]提出更為輕量級的ALBERT模型,通過參數減少方法降低內存消耗并提高訓練速度,緩解BERT、ROBERTA模型在擴大規模以提升性能的時候遇到的內存耗盡問題,并以更少量參數更優越性能拿下13項NLP任務。
在字向量表示中,ALBERT模型能動態地將文本中字符經雙向Transformer層轉換為對應的向量表示。同BERT、ROBERTA等模型一樣,ALBERT模型基于Transformer[9]的Encoder層,通過大量運用多頭注意力機制,獲取范圍內的長、短距離依賴關系,防止模型在編碼當前位置時過度關注于自身,從而更好地獲取文本的上下文特征。
在ALBERT模型的預訓練任務中,主要通過掩碼語言模型(Masked Language Model,MLM)和句子連續預測(Next Sentence Predict,SOP)實現文本上下文特征的自監督學習。
⑴ MLM,為更好地訓練模型獲取字符雙向深度表示的能力,Jacob Devlin等學者[10]在BERT模型預訓練中采用MLM,通過預測輸入字符串中一定比例的隨機掩蓋字符訓練模型,并為減輕微調階段沒有掩碼而與預訓練不匹配的問題,將掩碼時間劃分為80%時間的正常掩蓋,10%時間的隨機字符替換和10%時間的不變字符。
⑵ SOP,在BERT模型預訓練中,由于下一句預測使用的負樣本選自不同文本,混肴了主題預測與連貫性預測,造成推理不可靠問題。為消除這一問題,Zhenzhong Lan等學者[8]提出將連續句子以順序交換的方式作為負樣本進行模型訓練。
除SOP外,ALBERT通過嵌入參數分解的方式大幅減少模型參數,從而能進一步擴大模型深度和廣度,提升模型性能。如式⑴所示,自然語言處理通常需要尺寸為V的詞匯量。不同于其他預訓練模型直接將熱向量投射到隱藏層,使得嵌入層隨隱藏層參數H擴增時存有大量閑置參數。ALBERT模型先將詞嵌入映射到尺寸E的低維空間上,再由低維空間投射至隱藏層。由此,當H>>E時,參數降低效果極為顯著。
2.2 BILSTM
BILSTM由前向和后向LSTM組成。LSTM在RNN的基礎上引入門機制,通過記憶門、遺忘門、輸出門控制特征信息的傳遞,能有效防止信息特征在長距離計算中被覆蓋,從而能更好地在數據中查找和利用遠距離依賴[11]。
LSTM由一系列單元組成,以單元狀態Ci的鏈式傳遞為核心。如圖2所示,t時刻的單元狀態[Ct]由兩部分組成:①前一時刻向后傳播的單元狀態[Ct-1]聯合遺忘門輸出[ft];②t時刻的單元更新值[Ct]聯合輸入門輸出[it]。其整體結構可由式⑵~式⑺表示:
其中,[σ]表示sigmoid激活函數,[tanh]表示tanh激活函數,[ot]表示記憶單元,而三門機制的輸出皆經由前一時刻隱藏層[ht-1]和輸入數據[xt]計算得出。
單個LSTM層只能傳播單向信息,對文本而言,其理解需要結合上下文語境,單向語境會限制文本特征信息獲取的準確性。BILSTM則通過前后雙向的信息傳遞實現更優文本特征選擇,一度成為NLP領域模型研究中應用最為廣泛的基礎結構。
2.3 CRF
CRF是一種基于馬爾科夫性的概率無向圖,在seq2seq類任務中具有良好表現,常被應用于NLP中,判斷序列標注的最優結果。線性鏈CRF對于給定的線性隨機觀測序列[W={W1,W2,…,Wn}],任意[Wi]的對應狀態[Li]滿足[PLi|W,L1,L2,…,Ln=P(Li|W,Li-1,Li+1)],即狀態[Li]不僅與前一時刻狀態[Li-1]有關,還與整個觀測序列[W]和后一時刻狀態[Li+1]有關。CRF將整個[W]作為全局條件,對[P(L|W)]進行建模。
本文在分詞任務中,采用BMES標注方法,詞匯的開頭、中間、結尾分別由“B”、“M”、“E”符號標記,單字和符號則由“S”標記。如圖3所示,CRF最終輸出的狀態序列[L]取決于整個觀測序列[W]的聯合概率分布,是全局最優解。
3 實驗與分析
3.1 實驗設置
本文實驗環境配置如下:操作系統Ubuntu 18.04,CUDA 10.0,cuDNN 7.6,tensorflow-gpu 1.13.1,Keras 2.2,使用NVIDIA GeForce RTX 2080 Ti。為保障PTM在各類針灸古籍語境中的魯棒性,選用了《黃帝內經》《針灸甲乙經》《本草綱目》《傷寒雜病論》等810本中醫古籍,共208MB作為原始語料,經掩碼標注處理獲得自監督訓練語料約2.29GB。而由于服務器顯存限制等問題,本文僅選用小規模的ALBERT模型作為再訓練的基礎模型。
此外,因目前未有統一的中醫古籍分詞規范,本文參考付璐等學者[3]對清代醫籍的分詞標準研究成果,選用《靈樞》針灸古籍,經Jieba分詞器聯合人工標注的方式獲得較高質量的小樣本精加工語料,作為各類模型的訓練、評估和測試數據。
3.2 實驗流程
本文構建CmabBERT-BILSTM-CRF模型應用于小樣本語料的針灸古籍分詞任務。關鍵流程如下:數據準備→PTM再訓練→融合模型訓練→獲得分詞結果→方法對比分析。
在數據準備階段,除小樣本語料標注外,本文以不同古籍的不同段為劃分,區分不同內容,再以句號為劃分,分割同內容的上下句,最后通過15%概率的隨機MASK方式構建再訓練語料。
在PTM再訓練階段,本文將訓練批量設置為256,訓練步數設置為125000,學習率設置為0.00176,并采用LAMB優化器進行優化迭代。訓練時,模型將自主整合語料中的各項信息,實現掩碼位置對應字符預測及上下句判斷,并不斷調整自身參數實現更優,從而學習到語料中豐富的上下文特征。
在融合模型訓練階段,本文將基于再訓練得到的CmabBERT模型的動態字向量表示輸出,聯合BILSTM+CRF模型構建融合模型,其中BILSTM層包含前后向各256個神經元,批量大小為128,學習率為0.001,優化器為ADAM,并設置了0.5的丟棄概率指數,以防止模型過擬合。
在方法對比分析階段,除本文研究的CmabBERT-BILSTM-CRF模型外,還選用了Jieba分詞器、BILSTM-CRF模型、ALBERT-BILSTM-CRF模型作為對比。其中,BILSTM-CRF模型以Word2Vec靜態詞向量作為輸入。
3.3 實驗結果
3.3.1 模型預訓練評估結果
模型預訓練評價將訓練前后的ALBERT和CmabBERT模型分別在MLM任務和SOP任務上的準確率進行對比。其中,MLM準確率為模型正確預測掩碼位置原字符數量與所有預測掩碼數量的比值,SOP準確率為模型正確判斷上下句數量與所有預測句子數量的比值。表1展示了預訓練模型在經大量中醫古籍的自監督訓練前后,在預測掩碼和判斷上下句上的性能表現。從表1可以看出,經再訓練后,CmabBERT在MLM任務和SOP任務準確率皆有較多提升,表明CmabBERT模型在再訓練中較好地學習到了中醫古籍的上下文特征,從而能更好地運用于針灸古籍中,輸出更符合語境的動態字向量表示。
3.3.2 分詞方法結果評價
基于評價指標——準確率P、召回率R和F1值,將模型分詞序列標注結果與經人工標注校正的分詞結果進行對比。其中,P值是模型標注正確量與模型總標注量的比值;R值是模型標注正確量和人工總標注量的比值;F1值為綜合性評價指標,是兩倍的P、R積和P、R合的比值,由P和R共同決定。
表2展示了各類分詞方法在小樣本數據集上的分詞性能表現。分析表2可以得出以下結論:在無額外輔助信息下,①基于深度學習的三種分詞方法明顯優于通用領域的Jieba分詞器;②基于動態字向量表示的兩種分詞方法在各項評估指標上皆高于基于靜態字向量表示的分詞方法;③經再訓練的CmabBERT預訓練模型輸出的動態字向量表示比基礎ALBERT模型更適合于針灸古籍分詞任務。
如表3所示,為進一步對比各類方法的分詞表現,本文選取部分分詞結果進行對比分析,并為展示方便,將序列標注結果進行轉化。其中,在“腹中常鳴”癥狀術語分詞中,BILSTM-CRF和CmabBERT-BILSTM-CRF實現了準確標注;在“氣上沖胸”分詞中,ALBERT-BILSTM-CRF和CmabBERT-BILSTM-CRF實現了準確標注;在“巨虛上廉”穴位術語分詞中,僅有CmabBERT-BILSTM-CRF實現了準確標注;而在“刺肓之原”分詞中,幾種分詞方法皆未能成功標注“盲之原”穴位術語。上述結果表明,經再訓練學習到中醫古籍上下文特征的CmabBERT模型能更好地動態表示針灸古籍語境下的字向量,而在此基礎上進一步構建的CmabBERT-BILSTM-CRF模型則能更好地適用于小樣本語料的針灸古籍分詞任務中,獲得更為準確的分詞結果,從一定程度上緩解靜態字向量固有表示和語料缺乏造成的分詞性能限制問題。
4 結束語
本文為緩解靜態字向量固有表示和中醫領域大規模且高質量語料缺乏的問題,引入預訓練策略,基于大量中醫古籍對ALBERT模型再訓練,以學習古籍的上下文特征,最終得到CmabBERT模型,從而獲得更符合針灸古籍語境的動態字向量表示輸出。在此基礎上,本文構建了CmabBERT-BILSTM-CRF模型,最終通過實驗驗證了該模型在小樣本語料下的針灸古籍分詞性能提升。在無其他輔助信息增強下,本文模型各項評估值均優于當前主流模型。分詞性能的提升,能為后續針灸實體關系抽取、知識圖譜構建等工作提供質量保障。
本研究僅在小規模ALBERT模型基礎上再訓練得到CmabBERT模型。而越大規模的PTM對于下游NLP任務的提升效果越為顯著。在未來的工作中,將進一步通過剪枝等方法訓練更少參數更大規模的中醫領域預訓練模型,以更好地服務于中醫領域各項NLP任務,助力于中醫智慧服務的發展。
參考文獻(References):
[1] 張夢雪.中國針灸學會發布推進針灸高質量發展“十四五”規劃綱要[J].中醫藥管理雜志,2022,30(4):89
[2] 王莉軍,周越,桂婕,等.基于BiLSTM-CRF的中醫文言文文獻分詞模型研究[J].計算機應用研究,2020,37(11):3359-3362,3367
[3] 付璐,李思,李明正,等.以清代醫籍為例探討中醫古籍分詞規范標準[J].中華中醫藥雜志,2018,33(10):4700-4705
[4] Jia Q, Xie Y, Xu C, et al. Unsupervised traditional Chinese medicine text segmentation combined with domain dictionary[A].International Conference on Artificial Intelligence and Security[C]. New York: Springer,Cham,2019:304-314
[5] 張帆,劉曉峰,孫燕.中醫醫案文獻自動分詞研究[J].中國中醫藥信息雜志,2015,22(2):38-41
[6] Fu X, Yuan T, Li X, et al. Research on the method and system of word segmentation and POS tagging for ancient Chinese medicine literature[A].2019 IEEE International Conference on Bioinformatics and Biomedicine (BIBM)[C]. San Diego:IEEE,2019:2493-2498
[7] Li S, Li M, Xu Y, et al. Capsules based Chinese word segmentation for ancient Chinese medical books[J].IEEE Access,2018,6:70874-70883
[8] Lan Z, Chen M, Goodman S, et al. Albert: A lite bert for self-supervised learning of language representations[J].arXiv preprint arXiv,1909.11942,2019
[9] VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need[A].Proceedings of the 31st International Conference on Neural Information Processing Systems[C].California:ACM,2017:6000-6010
[10] DEVLIN J, CHANG M W, Lee K, et al. BERT: pre-training of deep bidirectional transformers for language understanding[A]. Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies[C]. Minneapolis: ACL,2019: 4171-4186
[11] HUANG Z, XU W, YU K. Bidirectional LSTM-CRF models for sequence tagging[J].arXiv preprint arXiv: 1508.01991,2015
*基金項目:基于AI深度學習的中醫知識圖譜構建(2021LDA09002); 甘肅中醫藥大學研究生創新基金項目(2022CX137)
作者簡介:鐘昕妤(1996-),女,浙江人,碩士研究生,主要研究方向:古籍知識圖譜、數據挖掘。
通訊作者:李燕(1976-),女,甘肅人,碩士,教授,碩士生導師,主要研究方向:中醫藥數據挖掘、醫學信息學及信息技術在醫學中的應用。