劉 凱,周雪忠,1b,于 劍,1b,張潤順
(1.北京交通大學a.計算機與信息技術(shù)學院;b.交通數(shù)據(jù)分析與挖掘北京市重點實驗室,北京100044; 2.中國中醫(yī)科學院廣安門醫(yī)院,北京100053)
基于條件隨機場的中醫(yī)臨床病歷命名實體抽取
劉 凱1a,周雪忠1a,1b,于 劍1a,1b,張潤順2
(1.北京交通大學a.計算機與信息技術(shù)學院;b.交通數(shù)據(jù)分析與挖掘北京市重點實驗室,北京100044; 2.中國中醫(yī)科學院廣安門醫(yī)院,北京100053)
中醫(yī)臨床病歷是中醫(yī)重要的科研數(shù)據(jù)資源,但目前臨床病歷仍以文本為主要表達形式,對病歷數(shù)據(jù)深入分析的前提是進行結(jié)構(gòu)化信息抽取,而命名實體抽取是其基礎(chǔ)性步驟。針對中醫(yī)臨床病歷的命名實體,如癥狀、疾病和誘因等的抽取問題,通過手工標注的413份病歷數(shù)據(jù)(以中文字為特征)與4類特征模版,將條件隨機場(CRF)、隱馬爾科夫模型(HMM)和最大熵馬爾科夫模型(MEMM)用于中醫(yī)病歷命名實體抽取的實驗,并進行比較分析。結(jié)果表明,結(jié)合合適的特征模版,CRF命名實體抽取方法取得了較好的性能,F1值的癥狀達到0.80,疾病名稱達到0.74,誘因0.74。與HMM和MEMM相比,CRF有最高的準確率和召回率,是一種較為適用的中醫(yī)臨床病歷命名實體抽取方法。
中醫(yī)臨床病歷;命名實體抽取;語料庫標注系統(tǒng);條件隨機場;特征模板
隨著近十年醫(yī)療信息化建設(shè)的進展和臨床數(shù)據(jù)的不斷積累,作為診療實踐主要信息載體的中醫(yī)臨床病歷成為中醫(yī)學和信息學關(guān)注的重要研究資源[1-2]。名老中醫(yī)文本病歷是中醫(yī)臨床診療的重要數(shù)據(jù)資源,它具有非結(jié)構(gòu)化、口語化、專業(yè)化等特點,對其數(shù)據(jù)深度利用的重要前提是對相關(guān)醫(yī)學命名實體術(shù)語的抽取,而命名實體抽取方法正是從自由文本中抽取所需命名實體術(shù)語的基礎(chǔ)技術(shù)。但由于中文自然語言表達的靈活性和中醫(yī)臨床信息內(nèi)容的個體性特點,進行中醫(yī)臨床文本病歷的信息抽取研究是一個難點問題。因此進行中醫(yī)文本病歷的命名實體抽取研究,探索形成相關(guān)的適宜信息抽取方法具有重要價值[3-4]。
中醫(yī)臨床病歷中蘊含著豐富的疾病治療、疾病誘因、疾病癥狀等信息,所以對病歷進行數(shù)據(jù)挖掘,能推動中醫(yī)的發(fā)展。由于大部分中醫(yī)病歷是自由文本,因此在對其進行深度利用前,必須通過命名實體抽取技術(shù)提取病歷中的重要命名實體。
本文首先提出條件隨機場的概念,然后是中醫(yī)臨床病歷標準數(shù)據(jù)集的介紹和特征的選擇。隨后在標準數(shù)據(jù)集上,使用條件隨機場(Conditional Random Field,CRF)在不同特征模板上進行命名實體抽取實驗和分析,并與HMM和MEMM模型進行命名實體抽取對比。
文獻[5]提出了一個基于統(tǒng)計的序列標記和數(shù)據(jù)分割的概率模型——條件隨機場CRF。CRF是一種通過最大化條件概率來訓練模型的無向圖模型,它是一個以全局觀察O為條件的隨機場。在實際中,最常用的CRF是一種線性鏈結(jié)構(gòu),它非常適合于序列標注。序列標注分布的條件屬性,使得CRF可以很好地擬合真實世界的數(shù)據(jù)。而在這些數(shù)據(jù)中,命名實體抽取的條件概率是依賴于觀察序列中非獨立的相互作用的特征,通常通過賦予這些特征不同的權(quán)重來表示該特征的重要程度[6]。圖1是一種最簡單最常用的CRF,稱為線性CRF。
圖1 CRF的概率圖模型
其中,Z0為歸一化因子,它保證所有可能的狀態(tài)序列概率之和為1,即式(2):
其中,fk(st-1,st,O,t)是模型中任意的特征函數(shù),它通常是一個二值函數(shù);λk是特征函數(shù)fk(st-1,st,O,t)在模型中的權(quán)重;λk可以經(jīng)過模型訓練得到。如果λk是值很大的正數(shù),說明特征函數(shù)fk所表示的事件在訓練集中出現(xiàn)的次數(shù)很多。
給定一個由式(1)定義的CRF模型,在已經(jīng)輸入的數(shù)據(jù)序列O的情況下,最可能的標記序列可表示為下式:
對式(3)的計算可以通過維特比算法。
將條件概率公式式(1)代入式(4)中,可得:
為了避免參數(shù)估計時出現(xiàn)的過擬合情況,在進行參數(shù)估計時,采用高斯先驗來調(diào)整模型的參數(shù)計算過程,式(5)變?yōu)?
其中,最后一項是用于進行調(diào)整的高斯先驗值,σ2表示方差。
通過前文的介紹可知CRF的圖模型是無向圖模型。CRF與HMM,MEMM,ME相比,保持了它們的優(yōu)點,避免了它們的不足。不同于MEMM在給定當前的狀態(tài),計算下一個狀態(tài)的狀態(tài)概率分布,CRF是在給定需要標注的觀察序列的條件下,計算整個狀態(tài)序列的聯(lián)合概率分布,求解一個全局的最優(yōu)狀態(tài)序列,因此,CRF避免了標注偏置的問題。
3.1 數(shù)據(jù)集信息
本標準語料集的原始中醫(yī)臨床病歷來源于廣安門醫(yī)院、西苑醫(yī)院、望京醫(yī)院等多所醫(yī)院2009年-2010年采集的冠心病、糖尿病的門診病歷和住院病歷。在原始病歷的篩選時,使用隨機抽樣結(jié)合人工篩選的樣本篩選方式,因此,該原始病歷(樣本)能較好地代表中醫(yī)臨床病歷集。
病歷中包括病人基本信息、主訴、現(xiàn)病史等內(nèi)容??紤]要抽取命名實體在病歷中的分布和最終數(shù)據(jù)集的標準化,選擇主訴、現(xiàn)病史作為數(shù)據(jù)集的源數(shù)據(jù)。
在中醫(yī)臨床病歷標注過程中,首先利用語料庫標注系統(tǒng)對病歷進行粗標注,然后對病歷進行數(shù)次細致的審核,再由中醫(yī)專家對標注病歷進行最后的審核和校對。整個標準語料集的標注過程先后持續(xù)半年之久。
使用語料庫標注系統(tǒng)結(jié)合臨床人員的校對方式,標注了413份病歷。其中冠心病(233)、糖尿病(180)。該標準語料集共有癥狀實體3 623個,誘因?qū)嶓w250個,疾病實體340個。
在構(gòu)造標準數(shù)據(jù)集時,本文沒有對中醫(yī)臨床病歷文本進行分詞,而是直接在單字粒度上對病歷進行標注,這是由于現(xiàn)階段中醫(yī)病歷領(lǐng)域缺乏準確度高、標準統(tǒng)一的詞典。
本文雖然采用以字為單位的標注方式,但為了保持病歷中單字在命名實體中的位置特征,在對單字進行標注的同時,使用符號集(B,E)來保存字在詞中的位置信息。例如在疾病名“糖尿病”中,將它標注為糖(B-D)尿(E-D)病(E-D)。在中醫(yī)病歷標注數(shù)據(jù)中,字特征標注符號的聲明如表1所示。
表1 數(shù)據(jù)符號集
3.2 特征選擇
本節(jié)將分別介紹訓練CRF模型時使用的詞位特征、狀態(tài)轉(zhuǎn)移特征、上下文窗口特征、指示詞特征、詞典特征和構(gòu)詞模式特征。
3.2.1 詞位特征
詞位的選擇有3種方案,分別是2詞位標注集、4詞位標注集和6詞位標注集[7]。本文采用的是2詞位標注集,即對一個漢字按照它是否是詞首字進行劃分,單字成詞或者處于非單字詞的詞首時都劃分為B,其余情況劃分為E。詞位特征能有效地保留實體中字的關(guān)系。例如:“烘熱”標為“烘/B-Z熱/E-Z”。
3.2.2 狀態(tài)轉(zhuǎn)移特征
在CRF中,特征函數(shù)fk(st-1,st,o,t)既能整合觀察序列的特征,也能整合隱藏狀態(tài)轉(zhuǎn)移的特征。
例如,當st-1標記為“癥狀指示詞”,st標記為“癥狀”,并且O中的第1個字在癥狀首字詞典中時,特征函數(shù)的取值為“1”。這樣,CRF模型將狀態(tài)轉(zhuǎn)移st-1→st整合到特征函數(shù)中。
3.2.3 上下文窗口特征
所謂上下文窗口,指的是包括當前字w0及其前后若干個字組成的一個字符串(w-n,w-n+1,…,w0,…,wn)。窗口越大,能利用的上下文越多,但效率會下降,而且還會產(chǎn)生過擬合現(xiàn)象;窗口過小,特征利用得就不夠充分,會因為過于簡單而丟失有用的信息。有統(tǒng)計研究顯示,在中文語料中,99%的詞是由5個或者5個以下的子構(gòu)成[8]。因此,本文使用5字上下文特征。
3.2.4 指示詞特征
通過對中醫(yī)臨床病例中命名實體及其上下文信息進行統(tǒng)計分析后,發(fā)現(xiàn)在特定的指示詞后面,有很大的概率出現(xiàn)癥狀、誘因和疾病實體。因此,選擇實體詞的前面2個或1個字作為實體指示詞特征。指示詞特征的特征函數(shù)為:
其中,P-*代表指示詞(*表示任意一種實體類型),如發(fā)現(xiàn)、由于等。本文中使用的指示詞部分如表2所示。
表2 實體指示詞特征
3.2.5 詞典特征
本文中所使用的實體詞典是在對中醫(yī)病歷的統(tǒng)計分析的前提下,經(jīng)過人工挑選出的命名實體詞,包括癥狀詞典、疾病詞典和誘因詞典,具體情況如表3所示。其中,癥狀詞典中包括853個病歷中常見的癥狀詞;疾病詞典包括108個病歷中常見的疾病詞;誘因詞典包括46個病歷中常見的誘因(冠心病和糖尿病中醫(yī)臨床病歷)。3.2.6 構(gòu)詞模式特征
表3 實體詞典特征
通過對病歷的主訴、現(xiàn)病史的統(tǒng)計分析,發(fā)現(xiàn)癥狀通常由身體部位和基本癥狀詞2個部分組成,例如“雙上頜麻木”,可以拆分為“雙上頜”和“麻木”2個部分。疾病名通常由修飾部分、身體部位和基本疾病名3個部分組成,如“慢性心絞痛”,可以拆分為“慢性”、“心”和“絞痛”3個部分。在本文中,通過人工采集和拆分,共構(gòu)造了3個外部字典,如表4所示。
表4 構(gòu)詞詞典特征
在中醫(yī)臨床病歷標準數(shù)據(jù)集上,首先選擇不同的特征模板訓練CRF對中醫(yī)臨床病歷數(shù)據(jù)集進行命名實體抽取實驗,并對實驗結(jié)果進行分析。然后對CRF和HMM[9-10]、MEMM[11]進行命名實體抽取對照實驗。使用的命名實體工具是MALLET[12]。
4.1 基于CRF的名老中醫(yī)病歷命名實體抽取
選擇不同的特征組成特征模板進行CRF模型的訓練,并對它們進行實驗對比和結(jié)果分析。
在本系列實驗中,將字特征、轉(zhuǎn)移特征和上下文窗口特征作為基本特征,用B來標識,將其他特征作為備選組合特征,通過選擇不同的特征模板分析各個特征對實驗結(jié)果的影響。本文中所使用的特征模板組成如表5所示,分別用T1,T2,T3來標識實體指示詞特征、詞典特征和構(gòu)詞模式特征。
表5 特征模板集
根據(jù)疾病類型的不同,首先將數(shù)據(jù)集中的數(shù)據(jù)分為2個部分,它們分別是糖尿病數(shù)據(jù)(180份)和冠心病數(shù)據(jù)(233份)。選擇基于不同特征模板集的CRF分別在這2個數(shù)據(jù)集上進行十重交叉檢驗。
分別選擇特征模板集MT1,MT2和MT3在2類數(shù)據(jù)集上對CRF模型進行十重交叉驗證,并與基于基本特征模板上的CRF模型進行對比,實驗結(jié)果如表6所示。
表6 不同特征模板的CRF中醫(yī)病歷命名實體抽取比較
對照實驗顯示,相對于基本CRF,使用特征模板集MT1的CRF在對癥狀和誘因抽取時,效果有一定的提高。而在對疾病實體進行抽取時,基本CRF效果更好,這是由于病歷中的癥狀和誘因指示詞比較固定,而疾病的出現(xiàn)較隨機。
相對于模板集MT1,使用特征模板集MT2的CRF命名實體抽取的效果更好(其中,在糖尿病數(shù)據(jù)集上F1值分別達到了0.79,0.78,0.63;在冠心病數(shù)據(jù)集上F1值分別達到了0.77,0.56,0.71)。
使用特征模板集MT3的CRF命名實體抽取的綜合效果比基本CRF有大幅提高(其中,在糖尿病數(shù)據(jù)集上F1值分別達到了0.8,0.74,0.63;在冠心病數(shù)據(jù)集上F1值分別達到了0.77,0.64,0.74)。
以上一系列實驗說明,在對中醫(yī)臨床病歷進行命名實體抽取時,特征模板集MT3具有最好的效果。即除了使用基本特征意外,額外選用實體指示詞特征、詞典特征和構(gòu)詞模式特征。
4.2 CRF與其他模型的比較
分別在冠心病和糖尿病數(shù)據(jù)集上對使用特征模板MT3的CRF和HMM,MEMM進行命名實體抽取對照實驗,實驗結(jié)果如表7所示。
表7 CRF與其他模型的中醫(yī)病歷命名實體抽取比較
實驗顯示,在中醫(yī)臨床病歷標準數(shù)據(jù)集上,CRF命名實體抽取的性能最好,MEMM次之,HMM最差。從實驗結(jié)果可知,HMM未能對疾病和誘因進行有效的抽取。這是因為HMM是一種產(chǎn)生式模型,模型依賴于大規(guī)模數(shù)據(jù)集。而在中醫(yī)病歷中,相對于癥狀實體,疾病實體和誘因出現(xiàn)的次數(shù)很少。除此之外,由于HMM模型是建立在條件獨立假設(shè)和觀察獨立假設(shè)之上的,這些假設(shè)使得HMM不能很好地利用數(shù)據(jù)特征集。MEMM模型對癥狀實體的抽取效果比較好(冠心病F1值達到了0.76;糖尿病F1值達到了0.74),但在對疾病和誘因的抽取上結(jié)果不夠理想。這是因為MEMM模型存在標注偏置問題[5]。CRF是判別式模型且它的概率圖模型是無向圖,所以CRF能充分利用病歷中的特征;另一方面,CRF在所有狀態(tài)上進行全局歸一化,可求得全局的最優(yōu)解,解決了標注偏置問題。所以相對于其他模型,CRF更適合對中醫(yī)臨床病歷的命名實體抽取。
從基于字特征的命名實體抽取實驗研究可見,采用基于CRF的方法對中醫(yī)病歷的主體內(nèi)容,如主訴和現(xiàn)病史進行癥狀、誘因和疾病名稱的自動抽取是可行的。癥狀名稱的抽取由于在標注語料集中具有較多的出現(xiàn)率而達到較好的性能,后續(xù)研究將通過構(gòu)建更大規(guī)模的語料集,擬在CRF的基礎(chǔ)上探索研制一種更加實用高效的中醫(yī)病歷命名實體抽取方法。
[1] 周雪忠.文本挖掘在中醫(yī)藥中的若干應(yīng)用研究[D].杭州:浙江大學,2004.
[2] Zhou Xuezhong,Peng Yonghong,Liu Baoyan.Text Mining for Traditional Chinese Medical Knowledge Discovery:A Survey[J].JournalofBiomedical Informatics,2010,43(4):650-660.
[3] Zhou Xuezhong,Liu Baoyan,Wang Yinghui,et al. Building ClinicalData Warehouse for Traditional Chinese Medicine Knowledge Discovery[C]//Proc.of International Conference on BioMedical Engineering and Informatics.[S.l.]:IEEE Press,2008:615-620.
[4] Zhou Xuezhong,Chen Shibo,Liu Baoyan,etal. Development of Traditional Chinese Medicine Clinical Data Warehouse for Medical Knowledge Discovery and Decision Support[J].Artificial Intelligence in Medicine, 2010,48(2/3):139-152.
[5] Lafferty J D,McCallum A,Pereira F C N.Conditional Random Fields:Probabilistic Models for Segmenting and Labeling Sequence Data[C]//Proc.ofthe 18th International Conference on Machine Learning.[S.l.]: Morgan Kaufmann Publishers Inc.,2001:282-289.
[6] 熊 英.中文自然語言理解中基于條件隨機場理論的詞法分析研究[D].上海:上海交通大學,2009.
[7] Franzén K,Eriksson G,Olsson F,et al.Protein Names and How to Find Them[J].International Journal of medical Informatics,2002,67(1):49-61.
[8] Kim J D,Ohta T,Tsuruoka Y,et al.Introduction to the Bio-Entity Recognition Task at JNLPBA[C]//Proc.of InternationalJointWorkshop on NaturalLanguage Processing in Biomedicine and Its Applications.[S.l.]: IEEE Press,2004:70-75.
[9] 宗成慶.統(tǒng)計自然語言處理[M].北京:清華大學出版社,2008.
[10] Freitag D,McCallum A.Information Extraction with HMM Structures Learned by Stochastic Optimization [C]//Proc.of the National Conference on Artificial Intelligence.[S.l.]:AAAI Press,2000:584-589.
[11] McCallum A,Freitag D,Pereira F.Maximum Entropy Markov Models for Information Extraction and Segmentation[C]//Proc.of the 17th International Conference on Machine Learning.Pittsburgh,USA:[s.n.],2000: 591-598.
[12] McCallum A K.Mallet:A Machine Learning for Language Toolkit[EB/OL].(2002-02-28).http:// mallet.cs.umass.edu.
編輯 顧逸斐
Named Entity Extraction of Traditional Chinese Medicine
Medical Records Based on Conditional Random Field
LIU Kai1a,ZHOU Xue-zhong1a,1b,YU Jian1a,1b,ZHANG Run-shun2
(1a.School of Computer and Information Technology;1b.Beijing Key Lab of Traffic Data Analysis and Mining,Beijing Jiaotong University,Beijing 100044,China;2.Guang'anmen Hospital,China Academy of Chinese Medical Sciences,Beijing 100053,China)
Traditional Chinese Medicine(TCM)medical records are the important data resources of the TCM medical research.The main form of them is still text now,and it is necessary to extract the structured information from the medical records,while named entity extraction is the basic step.It makes 413 copies of manually labeled medical records in Chinese text and four types of feature templates to study about the named entity extraction practice such as symptoms, diseases and incentives.It compares the results of TCM medical records named entity extraction by Conditional Random Field(CRF),Hidden Markov Model(HMM)and Maximum Entropy Markov Model(MEMM).Combined with appropriate feature templates,CRF has well performance of F1:symptoms 0.80,the name of the disease 0.74,incentives 0.74.Compared with HMM and MEMM,CRF has the highest precision and recall rate.This preliminary shows that CRF is an applicable method of the Chinese medical records named entity extraction.
Traditional Chinese Medicine(TCM)medical records;named entity extraction;corpus annotation system; Conditional Random Field(CRF);feature template
1000-3428(2014)09-0312-05
A
TP391
10.3969/j.issn.1000-3428.2014.09.062
國家自然科學基金資助項目(61105055,81230086);國家“863”計劃基金資助項目(2012AA02A609);中央高?;究蒲袠I(yè)務(wù)費專項基金資助項目(K13JB00140)。
劉 凱(1986-),男,碩士,主研方向:文本信息抽取;周雪忠(通訊作者),副教授;于 劍、張潤順,教授。
2013-06-07
2013-08-21E-mail:xzzhou@bjtu.edu.cn