李綱 潘榮清 毛進 操玉杰
摘?要:[目的/意義]通過整合BiLSTM-CRF神經(jīng)網(wǎng)絡和具有先驗領(lǐng)域知識的詞典資源,提高中文電子病歷領(lǐng)域中的實體識別效果。[方法/過程]采用BiLSTM-CRF神經(jīng)網(wǎng)絡模型,以CCKS-2017測評任務提供的脫敏中文電子病歷數(shù)據(jù)為實驗數(shù)據(jù)集,結(jié)合Word2Vec和外部詞典構(gòu)造神經(jīng)網(wǎng)絡的詞嵌入輸入改進實體識別模型。[結(jié)果/結(jié)論]與傳統(tǒng)的CRF和單純的BiLSTM-CRF模型相比,引入先驗知識的詞典資源可以取得更好的實體識別效果,F(xiàn)1值達到最高的90.41%。深度學習模型BiLSTM-CRF能夠顯著提升傳統(tǒng)CRF方法的實體識別效果,同時先驗的詞典知識能進一步增強神經(jīng)網(wǎng)絡的性能。
關(guān)鍵詞:實體識別;長短期記憶網(wǎng)絡;條件隨機場;電子病歷;詞典資源;深度學習;BiLSTM-CRF神經(jīng)網(wǎng)絡模型
DOI:10.3969/j.issn.1008-0821.2020.04.001
〔中圖分類號〕TP391?〔文獻標識碼〕A?〔文章編號〕1008-0821(2020)04-0003-10
Entity Recognition of Chinese Electronic Medical Records Based on
BiLSTM-CRF Network and Dictionary Resources
Li Gang?Pan Rongqing?Mao Jin?Cao Yujie
(The Center for the Studies of Information Resources,Wuhan University,Wuhan 430072,China)
Abstract:[Purpose/Significance]This paper aimed to improve the performance of entity recognition from Chinese electronic medical records by integrating BiLSTM-CRF neural network and dictionary resources with prior knowledge of the field.[Methods/Process]The BiLSTM-CRF neural network model was used and experimented on the desensitized Chinese medical record data provided by CCKS-2017 evaluation task.The Word2Vec word embedding was combined with external dictionary in the neural network to improve the performance of entity recognition.[Results/Conclusions]The results showed that compared with the traditional CRF and the pure BiLSTM-CRF model,adding dictionary resources with prior knowledge could achieve better performance of entity recognition,with the highest F1 of 90.41%.BiLSTM-CRF could improve the performance of entity recognition over CRF,and prior dictionary knowledge could further enhance the performance of neural networks.
Key words:entity recognition;long short-term memory networks;conditional random field;electronic medical record;dictionary resources;deep learning;BiLSTM-CRF neural network model
電子病歷是醫(yī)療系統(tǒng)信息化的產(chǎn)物,是醫(yī)務人員在其醫(yī)療活動過程中,使用醫(yī)療機構(gòu)信息系統(tǒng)生成的關(guān)于病患的文字、符號、圖標、圖形、數(shù)據(jù)、影像等數(shù)字化信息,并能實現(xiàn)存儲、管理、傳輸和重現(xiàn)的醫(yī)療記錄[1]。對電子病歷進行分析處理和數(shù)據(jù)挖掘,利于促成基礎(chǔ)醫(yī)學研究到臨床治療的轉(zhuǎn)化研究,為此嵌入人工智能,發(fā)揮其在智能分診導診、輔助診療決策支持等方面的作用,提高醫(yī)務人員工作效率,保障醫(yī)療質(zhì)量與安全,有助于早日實現(xiàn)“智慧醫(yī)療”與“智能診斷”。但是,當前電子病歷大多處于非結(jié)構(gòu)化狀態(tài),嚴重制約了其開發(fā)利用[2]。
命名實體識別(Named Entity Recognition,NER)任務是自然語言處理的一個重要分支。命名實體識別的任務是發(fā)現(xiàn)和識別自然文本中的專有名詞和有意義的詞語并將其歸類到預定義的類別中。許多研究人員在各領(lǐng)域開展了實體識別的研究。邱奇志等[3]建立了多條規(guī)則和多個詞表來實現(xiàn)突發(fā)事件各表達要素的提取。張琳等[4]使用條件隨機場探索司法文本中的實體的自動識別。目前的研究和方法已經(jīng)取得一定的成果,但依然存在一些可提升空間。從特征方面來看,條件隨機場多利用上下文窗口之內(nèi)的局部特征,對于全局特征捕獲有限。基于規(guī)則和詞表的方法需要投入大量人力,雖然有著優(yōu)越的性能,但泛化能力不強。楊婭等[5]利用相關(guān)領(lǐng)域的語料生成了詞典,作為文本特征的補充,使用條件隨機場模型進行實體識別,驗證了詞典資源能夠提升機器學習模型的識別效果。王東波等[6]利用深度學習自動獲取全局特征實現(xiàn)了數(shù)據(jù)科學招聘信息的實體抽取。深度學習方法依靠計算機強大的計算力,特征捕獲能力優(yōu)于其他方法,但當前研究人員大多考慮在網(wǎng)絡結(jié)構(gòu)上進行改進。鑒于此,本文借鑒上述論文的思想,嘗試捕獲電子病歷文本的上下文全局特征,并根據(jù)任務目標構(gòu)建領(lǐng)域詞典資源作為補充特征,以字粒度對文本標記,實現(xiàn)細粒度的實體識別,降低識別的錯誤率。將實體識別應用到電子病歷領(lǐng)域,能促成電子病歷完成非結(jié)構(gòu)化信息向結(jié)構(gòu)化信息的轉(zhuǎn)變,從而更高效、準確地挖掘電子病歷的內(nèi)在信息和知識,構(gòu)建醫(yī)學知識圖譜用以輔助決策,促進循證醫(yī)學這種數(shù)據(jù)驅(qū)動的醫(yī)療方法的發(fā)展[7]。
1?相關(guān)研究現(xiàn)狀
根據(jù)Harris Z的子語言理論,每個領(lǐng)域的文本有其獨特的結(jié)構(gòu)和規(guī)律性[8],而病歷的撰寫有其自己的規(guī)范與要求,是醫(yī)療工作者的專業(yè)知識輸出,在開放領(lǐng)域取得的研究成果在電子病歷領(lǐng)域難以取得理想的效果[9],因此,許多人專門在電子病歷領(lǐng)域展開了研究。
Bruijn B D等[10]采用半馬爾可夫模型,引入上下文特征和一體化醫(yī)學語言系統(tǒng)(Unified Medical Language System,UMLS)及醫(yī)學文本知識抽取系統(tǒng)(clinical Text Analysis Knowledge Extraction System,cTAKES)完成了實體識別。Jiang M等[11]引入外部特征后,分別采用條件隨機場(Conditional Random Field,CRF)和支持向量機(Support Vector Machine,SVM)模型,結(jié)合手工整理的規(guī)則進行實體抽取,在CRF模型上取得的最佳F1值為84.75%,在SVM模型上取得的最佳F1值為83.26%。但是,自然語言的表達也具有一定的靈活性,規(guī)則并不能窮舉所有情況。Uzuner 等[12]綜述了i2b2 2010測評中各小組實現(xiàn)電子病歷實體抽取的方法,大部分都采用了CRF模型,并結(jié)合UMLS作為知識庫,輔助抽取特征,利用知識庫實現(xiàn)實體的優(yōu)化識別,也有少數(shù)人采用SVM的對比研究。而中文電子病歷實體識別研究的起步較遲。葉楓等[13]采用CRF++這一工具完成了中文電子病歷的“疾病”、“手術(shù)操作”和“臨床癥狀”三大類實體的識別,這是實體識別在中文電子病歷中的首次應用,具有一定的意義,但其語料只包含了現(xiàn)病史和既往史,從目前角度來看,較難完整反映病人的一次完整就診特征。胡佳慧等[14]利用2017年全國知識圖譜與語義計算大會(China Conference on Knowledge Graph and Semantic Computing,CCKS)任務集的數(shù)據(jù),采用基于CRF的訓練方法和Pipeline的標注方法,在測試集上的總體F1值達到87.72%。至此,馬爾可夫模型、SVM、CRF等方法都在電子病歷領(lǐng)域進行了實體識別的嘗試,識別效果不斷提升,當前以CRF為代表的序列標注方法已成為電子病歷實體識別任務的主流方法之一。上述傳統(tǒng)的機器學習方法需要由人工設(shè)計關(guān)于字或詞的各種內(nèi)部和外在特征,但特征的有效性需要通過實驗進行大量的嘗試和檢驗,既費時又費力,不僅獲取過程較為隨意,且完備性較差。同時,特征的選擇也會在很大程度上影響電子病歷實體識別的準確性。而單獨采用基于規(guī)則和知識庫的方法,系統(tǒng)實現(xiàn)代價較高,也難以適應電子病歷復雜的語言模型。
為了能夠自動捕獲電子病歷文本中的特征,減少人工特征對實體識別能力的影響,研究者們開展了嘗試使用深度學習的模型實現(xiàn)特征的自動提取。Luu T M等[15]融合Word2Vec詞向量和自己構(gòu)建的特征工程應用于循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,RNN)網(wǎng)絡在CLEF2016的數(shù)據(jù)集上取得了優(yōu)于其他模型的結(jié)果。在2012年I2B2的NER任務中,共包括6類實體,Liu Z等[16]用卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)提取詞向量,用長短期記憶網(wǎng)絡(Long Short-Term Memory,LSTM)做實體識別標注,嚴格匹配下取得F1值為87.66%,但這樣的標簽輸出是相互獨立的。Jagannatha A N等[17]將BiLSTM網(wǎng)絡與CRF相結(jié)合應用到了1154份癌癥患者的病歷中,實現(xiàn)了整體82.10%的F1值。Qin Y等[18]、Li L等[19]也應用了相似的網(wǎng)絡模型和不同粒度的特征在不同數(shù)據(jù)集上做了實驗,均取得一定的成就。Wei Q等[20]結(jié)合了雙向長短期記憶網(wǎng)絡(Bidirectional Long-Short-Term Memory,BiLSTM)和CRF的輸出作為SVM的輸入來進行疾病名稱識別。2018年,基于句子級特征的Lattice-LSTM網(wǎng)絡被提出,消除了分詞錯誤的風險,潘璀然等[21]利用此方法在CCKS-2018任務一上進行實驗,其F1值優(yōu)于CCKS-2018任務一的最高結(jié)果。上述研究結(jié)果均表明,深度學習模型可以靈活運用字、詞、句子等不同粒度的上下文特征,在實體抽取方面的效果要優(yōu)于基于機器學習的方法,且深度學習方法可以與機器學習方法靈活組合。但在特定領(lǐng)域內(nèi)的識別任務,尤其是小規(guī)模數(shù)據(jù)的情況下,效果還有提升空間。在深度學習系列方法中,研究者們已經(jīng)開始關(guān)注多個模型的組合運用,實現(xiàn)不同模型的優(yōu)勢互補,卻較少關(guān)注先驗知識對識別效果的輔助作用。本文考慮在BiLSTM-CRF網(wǎng)絡的基礎(chǔ)上,引入外部的補充詞典資源,提升模型的識別效果,既能實現(xiàn)對已知實體的識別,同時對未登錄詞也有一定的發(fā)現(xiàn)能力。
2?中文電子病歷實體識別方法
2.1?電子病歷實體識別任務
電子病歷中,醫(yī)生對患者的診療過程的通用描述模板為:通過檢查手段(做什么檢查)發(fā)現(xiàn)疾病的表現(xiàn)(什么癥狀),給出診療結(jié)論(什么疾?。?,并基于診斷結(jié)論,給出治理措施(如何治療)[23],因此檢查、癥狀、疾病和治療是醫(yī)療活動中的4類重要實體。同時,身體部位也是一類重要實體,醫(yī)生在描述疾病和癥狀時,往往需要精確到身體部位,不同身體部位產(chǎn)生相同癥狀時,所患疾病可能是不同的,檢查和治療手段亦是如此。因此身體部位這一實體類型在電子病歷中占有很大比重,應當也納入考慮范圍內(nèi)。綜合以上目標,本文的電子病歷實體識別任務主要包括表1介紹的幾類目標實體[22]:
2.2?基于BiLSTM-CRF的實體識別模型
為了能夠自動提取文本的潛在語義特征,減少手動提取特征的時間和人工開銷,本文采用深度神經(jīng)網(wǎng)絡模型實現(xiàn)實體識別。深度神經(jīng)網(wǎng)絡模擬人類的思考模式,運用多層的網(wǎng)絡運算,可以有效挖掘潛在有用信息,其層數(shù)越高,數(shù)據(jù)所表達的含義越抽象,對人工難以識別的特征的提取效果越好。具體而言,本文采用BiLSTM-CRF模型,該模型集成了LSTM和CRF的優(yōu)點,既能夠捕獲文本的全文特征,又能夠在輸出預測時考慮到標簽的順序性。同時,本文設(shè)計了字符級的詞典特征,對語義特征進行補充。
2.2.1?LSTM網(wǎng)絡
基礎(chǔ)的RNN網(wǎng)絡實現(xiàn)了對當前時刻的輸入和前一時刻狀態(tài)的抽象表示,在預測狀態(tài)時雖然能考慮到上一時刻的狀態(tài),但是在上下文距離過長情況下,容易產(chǎn)生梯度爆炸或梯度消失的情況,無法進行參數(shù)更新。LSTM網(wǎng)絡改變了RNN網(wǎng)絡細胞元結(jié)構(gòu),通過門控機制,在處理長距離依賴的序列時有著較好的效果,它能夠記憶先前的信息并應用到當前輸出的計算中。在單向的LSTM網(wǎng)絡基礎(chǔ)上,增加一層反向的LSTM網(wǎng)絡可以形成BiLSTM網(wǎng)絡,它能夠有效捕捉某一時刻的前后文信息。
一個LSTM細胞結(jié)構(gòu)如圖1所示,它包括了遺忘門、輸入門、輸出門3個部分,數(shù)據(jù)流經(jīng)過這3個部分的處理,輸出更新后的狀態(tài)。這3個部分的作用機理如下[23]:
遺忘門:
f(t)=sigmoid(Ufx(t)+Wfh(t-1)+bf)(1)
輸入門:
i(t)=sigmoid(Uix(t)+Wih(t-1)+bi)(2)
a(t)=tanh(Uax(t)+Wah(t-1)+ba)(3)
輸出門:
C(t)=C(t-1)Θf(t)+i(t)Θa(t)(4)
o(t)=sigmoid(Uox(t)+Woh(t-1)+bo)(5)
h(t)=o(t)Θtanh(C(t))(6)
2.2.2?CRF模型
CRF模型是給定一組輸入隨機變量條件下給出另一組輸出隨機變量的條件概率分布模型,已有學者把它應用在包括序列標注的不同預測任務上。根據(jù)條件隨機場的思想[24],在一個給定的條件隨機場內(nèi),隨機變量X取值為x的條件下,隨機變量Y取值為y的條件概率由兩部分組成:
P(y|x)∝exp[∑i,kλktk(yi-1,yi,x,i)+∑i,lμlsl(yi,x,i)](7)
其中tk是轉(zhuǎn)移特征函數(shù),描述從前一個標簽到當前標簽的條件概率,sl是狀態(tài)特征函數(shù),依賴于當前位置,λk和μl為對應的權(quán)值。該模型在計算一個觀測狀態(tài)的隱藏狀態(tài)的條件概率最大值時,不僅考慮當前狀態(tài)特征,還考慮先前狀態(tài)特征。
2.2.3?基于BiLSTM-CRF的命名實體識別框架
本文的網(wǎng)絡模型整合了LSTM和CRF用于電子病歷的實體識別任務。如圖2所示,整個神經(jīng)網(wǎng)絡共有4層結(jié)構(gòu):輸入層通過特征構(gòu)建方法輸入句子的特征向量序列;隱藏層為一個雙向的LSTM網(wǎng)絡,前向傳播的LSTM網(wǎng)絡用于獲取上文信息,后向傳播的LSTM網(wǎng)絡用于獲取下文信息,經(jīng)過雙向LSTM網(wǎng)絡的挖掘能夠充分提取過去和未來的信息;輸出層對前后向的LSTM網(wǎng)絡獲得的信息進行拼接整合;在雙向的LSTM網(wǎng)絡上層再疊加一個CRF層,能夠?qū)撕炐畔⒓右岳?。CRF能夠利用轉(zhuǎn)移特征考慮到標簽之間的順序性,獲得全局最優(yōu)的輸出序列[25],因此,該網(wǎng)絡的輸出不再是獨立的標簽序列,而是考慮的順序的最佳序列。
在訓練過程中,給定一個輸入X,對于一個預測序列y,最大化正確標簽序列的似然概率:
log[p(y|X)]=P(X,y)-log∑∈YXeP(X,y)(8)
其中,YX是一個輸入序列X對應的所有的可能的標簽。定義損失函數(shù)loss=-log[p(y|X)],利用Adam優(yōu)化器尋找合適的參數(shù),使整個模型損失最小,以達到優(yōu)化識別模型的目的。
2.3?中文字符層次特征
神經(jīng)網(wǎng)絡模型需要將每一個字符轉(zhuǎn)化成向量的形式輸入。對于一個中文字符,其對應向量的每一維表示該字符的某一特征。機器學習方法過度依賴于人工標注及構(gòu)建的特征,不具備從自然語言文本中自動抽取和組織信息的能力。神經(jīng)網(wǎng)絡模擬了人的認知結(jié)構(gòu),與人類的學習過程更為相似。本文期望通過深度學習實現(xiàn)自動化獲取特征和推理學習。此外,醫(yī)學領(lǐng)域的詞典資源非常豐富,利用這些先驗知識可以強化神經(jīng)網(wǎng)絡對各類實體的認識,以彌補實驗數(shù)據(jù)規(guī)模上的不足。本實驗在構(gòu)建特征向量時考慮融合自動化提取的內(nèi)部語義特征和外部詞典特征兩部分特征共同構(gòu)成神經(jīng)網(wǎng)絡輸入的特征向量。
2.3.1?內(nèi)部語義特征
Word2Vec模型通過深度學習的方法,將一個詞表示成一個固定維度的實數(shù)值型向量,向量的每一維的特征是抽象的,但整個向量包含了一定的潛在語義特征,詞的相似性可以通過向量的相似性來衡量,詞與詞之間也可以進行計算,產(chǎn)生“國王-男+女=女王”這樣的等式。
本文采用數(shù)據(jù)集中經(jīng)過清洗后的所有文本(包含已標注數(shù)據(jù)和未標注數(shù)據(jù))作為語料庫,使用Word2Vec的CBOW模型進行字向量訓練,得到的語義特征向量作為特征的一個重要組成部分。
2.3.2?外部詞典特征
本文的描述的字的外部詞典特征用一個二值化向量表示,設(shè)定一種字ci與詞w的映射關(guān)系:
ciw(9)
其中w=c1c2…ck,1≤i≤k。dict為預先定義的字典,當w∈dict時,有ci∈dict。定義如下詞典特征描述函數(shù),不同的值表示一個字c不同的詞典特征狀態(tài):
bj(c)=0.5,ifc∈dictj
-0.5,else(10)
則字c的詞典向量表示為[b1(c),b2(c),b3(c),b4(c),b5(c)]。
3?實驗過程及結(jié)果
3.1?實驗數(shù)據(jù)及預處理
本文研究采用的數(shù)據(jù)集源自于CCKS-2017的測評任務[26],是真實的經(jīng)過脫敏處理的中文電子病歷數(shù)據(jù)。全部數(shù)據(jù)共含800條(包括300條已標注數(shù)據(jù)和500條未標注數(shù)據(jù))單人單次就診記錄,被組織成4個部分:一般項目、病史特征、診療過程、出院情況。
中文電子病歷領(lǐng)域目前尚缺乏一份權(quán)威且完整的醫(yī)學詞典,本實驗采用了北大開放數(shù)據(jù)平臺提供的一份醫(yī)學分詞詞典[27],共包括疾病、癥狀、檢查、藥物、手術(shù)治療5個類別,其原始來源主要是MeSH(Medical Subject Headings,醫(yī)學主題詞表)、ICD-9(International Classification of Diseases,國際疾病分類),ICD-10等專業(yè)英文醫(yī)學詞典的翻譯和搜狗詞庫中一些網(wǎng)友自發(fā)貢獻的醫(yī)學相關(guān)詞庫。雖然這個詞典的分類與本實驗目標不完全一致,但仍有一定的意義,通過該詞典可以構(gòu)建本文實驗所需要的詞典。將這幾個類別與識別任務中的類別相對應,其中由于藥物是部分科室的疾病的主要治療手段,同時也根據(jù)前文對“治療”的定義,實驗中將北大開放數(shù)據(jù)平臺提供的詞典中的“藥物”和“手術(shù)治療”合并為一類使用。另外,由于網(wǎng)絡上沒有查找到關(guān)于“身體部位”較為全面完整的詞典,本實驗利用訓練集中的已標記的實體組合成一個詞典的方式進行使用。
使用Python對實驗數(shù)據(jù)集進行預處理,清除文本中對于識別工作無意義的HTML標記,然后進行字符粒度的分割。根據(jù)衛(wèi)生部關(guān)于病歷書寫的相關(guān)指引和要求,中文病歷應當盡可能使用中文書寫。中文病歷中,英文字母主要是單位縮寫、體溫和心率等常規(guī)項目記錄,考慮到數(shù)值和英文字母在中文病歷中表征的含義較小,為增強模型的發(fā)現(xiàn)能力,對實驗數(shù)據(jù)集中所有的英文字母和數(shù)字做了統(tǒng)一替換,將英文字母替換為“〈ENG〉”,將數(shù)字替換為“〈NUM〉”。將替換后的文本作為模型輸入在Word2Vec中訓練得到字向量表達。
本文標注對象為單個漢字,而非一個詞語,主要基于以下考慮:1)與英文不同的是,中文詞與詞之間沒有分隔標記,并且中文電子病歷中很多實體為專有名詞,通過目前常用的分詞工具難以準確識別其邊界,尤其是一些新詞;2)本實驗采用的數(shù)據(jù)集樣本較少,基于字的標注相比較基于詞的標注,可以獲得更多的標記數(shù)量,有利于神經(jīng)網(wǎng)絡學習。本文采用“BIESO”格式進行字標注,“B”表示1個字是1個實體詞的開始,“I”表示1個字是1個實體詞的中間部分,“E”表示1個字是1個實體詞的結(jié)束,“S”表示1個實體詞是由該單字構(gòu)成,“O”表示1個字不屬于任何實體。比如,1個字被標注為“I-SIGNS”,表示這個字在一個類別為“癥狀和體征”(SIGNS)的實體中,且處于該實體詞的中間位置。基于以上規(guī)則,將同一類型實體的相關(guān)連續(xù)標記析取為最終的實體詞。
3.2?實體類別基礎(chǔ)信息統(tǒng)計
對已標注的所有數(shù)據(jù)做基礎(chǔ)統(tǒng)計,相關(guān)結(jié)果如表2所示。從數(shù)據(jù)中可以看出,數(shù)據(jù)集中的各類實體數(shù)量存在著不均衡的現(xiàn)象,如“身體部位”的數(shù)量是“疾病與診斷”的14.84倍,表明醫(yī)生在寫病歷時,針對一次就診,可能會需要針對較多的由“身體部位”、“癥狀和體征”以及“檢查和檢驗”所推測的病因做出一次“疾病診斷”。觀察圖3展示的各類實體長度—數(shù)量的分布關(guān)系,各類實體的分布關(guān)系不盡相同,但超長詞匯雖有一定占比,但相對也比較低。不同類別的實體平均長度存在較為明顯的差異,其中“治療”的平均長度是“癥狀和體征”的2.73倍。同類實體的長度分布差異也較大,如“身體部位”,長度最短為1,最長達到了24(例子:“C3/4、C4/5、C5/6、C6/7左側(cè)椎間孔”),有許多限定詞,這表明病歷文本中的詞匯具有很強的專業(yè)性。
3.3?實驗過程
由于數(shù)據(jù)集規(guī)模較小,為了能夠充分利用數(shù)據(jù)集的樣本,本實驗將數(shù)據(jù)集中已經(jīng)被標注的300份數(shù)據(jù)劃分成5份,按照4∶1的比例劃分訓練集和測試集,采用五折交叉檢驗的方式進行實驗,每次均抽取其中一份為測試集,其他4份為訓練集。同時為了驗證BiLSTM-CRF神經(jīng)網(wǎng)絡和外部詞典對于命名實體識別任務的意義,輔以兩組對照實驗,共進行如表3的3組實驗。實驗三的完整流程如圖4所示。
3.4?測評指標
將神經(jīng)網(wǎng)絡的輸出結(jié)果集合記為S={S1,S2…Sm},人工標注的結(jié)果集合記為G={G1,G2…Gn},采用嚴格等價的方式判斷Si∈S與Gj∈G是否一致,即當且僅當一個實體的內(nèi)容、所屬類別、起始下標和終止下表4個要素全部都一致時,才認為該
3.5?實驗結(jié)果分析
3.5.1?模型性能對比
表4統(tǒng)計了3個識別模型在測試集上的準確率、召回率和F1值,所有的數(shù)據(jù)都是五折交叉檢驗求平均后的值,同時計算了整體層面的實驗結(jié)果。
BiLSTM-CRF模型的識別結(jié)果在準確率、召回率和F1值上都超過了CRF,可見BiLSTM-CRF模型優(yōu)于傳統(tǒng)的條件隨機場:整體的F1值由85.05%提高到89.82%,提高了4.77%,提升效果非常明顯,說明BiLSTM網(wǎng)絡提取的句子深層上下文特征有利于實體的識別,可以獲得更佳的性能。BiLSTM-CRF+Dict在BiLSTM-CRF基礎(chǔ)上增加了詞典特征,整體的F1值提高了0.59%,達到了90.41%。由于電子病歷中含有大量的醫(yī)學專用術(shù)語,詞典作為一種已有的先驗知識,在電子病歷領(lǐng)域?qū)嶓w任務識別中是非常重要的資源。單純基于詞典的方法難以適應電子病歷的復雜的語言模型,將詞典引入BiLSTM-CRF神經(jīng)網(wǎng)絡,把它作為神經(jīng)網(wǎng)絡輸入的一個特征,可以增強神經(jīng)網(wǎng)絡對于先驗知識的學習。實驗證明了該方法的有效性。
3.5.2?不同實體識別效果對比
相同模型下,不同類型實體的識別效果存在明顯差異。圖5展示了BiLSTM-CRF+Dict模型對于不同實體的識別效果。
從圖5中可以看出,模型在各類實體識別效果上,P值和R值比較均衡,沒有太大的差異。模型在“癥狀和體征”和“檢查和檢驗”的識別上效果較佳,F(xiàn)1值分別達到了94.88%和94.74%,而識別效果較差的是“疾病和診斷”類和“治療”類實體,F(xiàn)1值分別僅為78.13%和74.78%,說明這兩類實體的識別難度相對較大。由表2可知,5類實體數(shù)量和平均長度存在較為明顯的差異,其中“身體部位”、“檢查和檢驗”、“癥狀和體征”3類實體數(shù)量遠遠多于“疾病和診斷”和“治療”,后者的平均長度也較長。觀察圖3的各類實體長度—數(shù)量分布關(guān)系,“疾病和診斷”及“治療”這兩類實體的長詞也較多??梢酝浦?,針對“身體部位”、“檢查和檢驗”、“癥狀和體征”3類實體,神經(jīng)網(wǎng)絡擁有更多的樣本學習獲得類別特征,且其字間轉(zhuǎn)移特征相對于另外兩類實體會相對簡單,從而表現(xiàn)出更佳的實體識別效果。
進一步對錯誤識別進行分析,得出實體識別錯誤的幾種情形:1)樣本稀疏導致未識別出實體,如“腸粘連”等疾病沒有被識別出;2)非指定實體的詞語被誤識別為實體,如“全部”被識別為身
體部位;3)實體類別識別錯誤:能夠準確識別實體邊界及內(nèi)容但對實體類別判斷錯誤,這類錯誤單獨出現(xiàn)的概率極低;4)實體邊界判斷錯誤,如“左前臂內(nèi)側(cè)皮膚”僅識別出“左前臂”這一身體部位;5)基于上述幾類錯誤的復合結(jié)果:如疾病“心包積液”的識別結(jié)果為身體部位“心包”。
在本文所用數(shù)據(jù)集中,由于數(shù)據(jù)集中超長詞匯占比較少,因此模型針對短詞匯的效果較佳,某些情況下傾向于將長詞匯中的一部分作為識別結(jié)果,造成邊界錯誤。此外,很多除身體部位實體以外的實體在描述時都需要借助于身體部位詞,如“神經(jīng)系統(tǒng)查體”、“心肺查體”、“直腿抬高試驗”、“尿道前列腺激光汽化術(shù)”、“膀胱結(jié)石”等,此實體內(nèi)部存在嵌套關(guān)系,也是產(chǎn)生上文中第五類錯誤的主要原因。因此,雖然“身體部位”實體數(shù)量最多,但其表現(xiàn)并不是很突出,F(xiàn)1值僅為86.80%。
此外,從3.1節(jié)的實體屬性統(tǒng)計、圖3中各實體的長度—數(shù)量分布曲線和觀察實驗的標注結(jié)果可以發(fā)現(xiàn),“治療”類的長度分布最廣,長度在15以上的實體也有一定比例,長度均值達到了5.73。然而,訓練集中的標注結(jié)果存在很多界限分割不一致的情況,比如“軟組織修復藥物及營養(yǎng)腦細胞藥物”一詞,某處會將其標注為一個實體,但另一處標注為“軟組織修復藥物”和“營養(yǎng)腦細胞藥物”兩個實體,訓練集的標注一致性較差,這也導致了測試結(jié)果中常出現(xiàn)這一類錯誤,并間接導致其他類錯誤的產(chǎn)生。
3.6?討?論
為提升中文電子病歷命名實體識別效果,本文將識別任務視為序列標注任務,構(gòu)建BiLSTM-CRF的神經(jīng)網(wǎng)絡模型,利用神經(jīng)網(wǎng)絡提取文本的上下文特征,同時融合從領(lǐng)域知識的詞典資源中獲得的字符級的補充特征,并結(jié)合文本標簽的轉(zhuǎn)移特征,獲得其最大概率得到標簽序列輸出。
從結(jié)果指標上看,相比于傳統(tǒng)的條件隨機場,神經(jīng)網(wǎng)絡的實體識別性能提升顯著。BiLSTM-CRF的神經(jīng)網(wǎng)絡能夠更好地適應長句子內(nèi)部的上下文依賴,捕獲全局上下文信息,獲得更好的實驗結(jié)果。在Word2Vec的詞嵌入基礎(chǔ)上加入先驗的詞典特征,可以進一步增強模型的識別效果。利用深度學習自動提取的特征能夠降低對人工標記特征的依賴,在神經(jīng)網(wǎng)絡模型中也能夠取得更好的效果。在神經(jīng)網(wǎng)絡中引入詞典特征,相當于為模型提供了一些先驗知識,也能在一定程度上提升識別準確率。
從異常結(jié)果來看,一些錯誤的識別結(jié)果都可以在訓練集中發(fā)現(xiàn)相似的情況,因為數(shù)據(jù)集中的錯誤標記會隨著模型訓練過程被帶入到識別結(jié)果中,干擾模型效果,降低識別準確率。因此一個規(guī)范的高質(zhì)量的語料庫對命名實體識別任務至關(guān)重要。另外,由于數(shù)據(jù)集中長實體比例不高,因此,模型在識別短實體的效果更好;數(shù)據(jù)集中不同實體數(shù)量有差異,也導致不同實習識別效果不同,這都是數(shù)據(jù)集內(nèi)部不均衡所造成的影響。
從模型擴展性來看,本文雖然應用于中文電子病歷,但深度學習模型可移植性較強,因此理論上可適用于其他垂直領(lǐng)域。假若其他領(lǐng)域有權(quán)威的受控詞表或者本體,都可以對其進行處理,形成文本的詞典特征。在實體類別方面,也可以根據(jù)自己需求進行定義,挖掘不同的實體。
4?結(jié)?語
本文介紹了一種識別中文電子病歷命名實體的方法,該方法融合過去基于深度學習和基于詞典這兩類方法的優(yōu)勢,能夠識別出電子病歷文本中“癥狀和體征”、“檢查和檢驗”、“疾病和診斷”、“治療”、“身體部位”5類實體,且取得了較好的效果,整體F1值為90.41%。但中文電子病歷命名實體識別的任務還存在著很大的提升空間,在未來的研究工作中,尚有一些可改進之處:1)可以考慮利用純度更高,內(nèi)容更豐富,規(guī)模更大的語料庫來構(gòu)建更高質(zhì)量的詞向量,充分利用詞的潛在抽象特征,同時還要注重數(shù)據(jù)集標注的規(guī)范性;2)考慮引入詞性等更多較簡單但又可以準確標記的特征,并加以利用;3)針對樣本中可能存在的實體類別數(shù)量不均衡的現(xiàn)象,可以采取過采樣或欠采樣的方法,均衡各類別的數(shù)量,以提升效果較差的實體的識別效果;4)隨著實體識別領(lǐng)域的不斷深入,BERT、ELMo、Transformer-XL等預訓練模型不斷產(chǎn)生,在自然語言處理各項任務中也取得了不錯的成績。后續(xù)考慮將這些預訓練模型引入特定領(lǐng)域?qū)嶓w識別任務,以期進一步提升已有的識別效果。
參考文獻
[1]中華人民共和國衛(wèi)生部.衛(wèi)生部關(guān)于印發(fā)《電子病歷基本規(guī)范(試行)》的通知[EB/OL].http://www.gov.cn/zwgk/2010-03/04/content_1547432.htm,2018-10-10.
[2]Wang Y,Wang L,Rastegar-Mojarad M,et al.Clinical Information Extraction Applications:A Literature Review[J].Journal of Biomedical Informatics,2018,77:34-49.
[3]邱奇志,周三三,劉長發(fā),等.基于文體和詞表的突發(fā)事件信息抽取研究[J].中文信息學報,2018,32(9):56-65,74.
[4]張琳,秦策,葉文豪.基于條件隨機場的法言法語實體自動識別模型研究[J].數(shù)據(jù)分析與知識發(fā)現(xiàn),2017,1(11):46-52.
[5]楊婭,楊志豪,林鴻飛,等.MBNER:面向生物醫(yī)學領(lǐng)域的多種實體識別系統(tǒng)[J].中文信息學報,2016,30(1):170-176.
[6]王東波,胡昊天,周鑫,等.基于深度學習的數(shù)據(jù)科學招聘實體自動抽取及分析研究[J].圖書情報工作,2018,62(13):64-73.
[7]Fowler S A,Yaeger L H,Yu F,et al.Electronic Health Record:Integrating Evidence-based Information at the Point of Clinical Decision Making[J].Journal of the Medical Library Association,2014,102(1):52-55.
[8]Harris Z.Grammar on Mathematical Principles[J].Journal of Linguistics,1978,14(1):1-20.
[9]楊錦鋒,于秋濱,關(guān)毅,等.電子病歷命名實體識別和實體關(guān)系抽取研究綜述[J].自動化學報,2014,40(8):1537-1562.
[10]Bruijn B D,Cherry C,Kiritchenko S,et al.Machine-learned Solutions for Three Stages of Clinical Information Extraction:the State of the Art at i2b2 2010[J].Journal of the American Medical Informatics Association,2011,18(5):557-562.
[11]Jiang M,Chen Y,Liu M,et al.A Study of Machine-learning-based Approaches to Extract Clinical Entities and Their Assertions from Discharge Summaries[J].Journal of the American Medical Informatics Association,2011,18(5):601-606.
[12]Uzuner ,South B R,Shen S,et al.2010 i2b2/VA Challenge on Concepts,Assertions,and Relations in Clinical Text[J].Journal of the American Medical Informatics Association,2011,18(5):552-556.
[13]葉楓,陳鶯鶯,周根貴,等.電子病歷中命名實體的智能識別[J].中國生物醫(yī)學工程學報,2011,30(2):256-262.
[14]胡佳慧,方安,趙琬清,等.面向知識發(fā)現(xiàn)的中文電子病歷標注方法研究[J].數(shù)據(jù)分析與知識發(fā)現(xiàn),2019,(7):123-132.
[15]Luu T M,Phan R,Davey R,et al.Clinical Name Entity Recognition Based on Recurrent Neural Networks[C]//2018 18th International Conference on Computational Science and Applications(ICCSA),2018:1-9.
[16]Liu Z,Yang M,Wang X,et al.Entity Recognition from Clinical Texts via Recurrent Neural Network[J].BMC Medical Informatics & Decision Making,2017,17(2):53-61.
[17]Jagannatha A N,Hong Y.Structured Prediction Models for RNN Based Sequence Labeling in Clinical Text[C]//Proceedings of the Conference on Empirical Methods in Natural Language Processing,2016:856-865.(下轉(zhuǎn)第58頁)
[18]Qin Y,Zeng Y.Research of Clinical Named Entity Recognition Based on Bi-LSTM-CRF[J].Journal of Shanghai Jiaotong University,2018,23(3):392-397.
[19]Li L,Jin L,Jiang Y,et al.Recognizing Biomedical Named Entities Based on the Sentence Vector/Twin Word Embeddings Conditioned Bidirectional LSTM[C]//2016 Chinese Computational Linguistics and Natural Language Processing Based on Naturally Annotated Big Data,2016:165-176.
[20]Wei Q,Chen T,Xu R,et al.Disease Named Entity Recognition by Combining Conditional Random Fields and Bidirectional Recurrent Neural Networks[J].Database,2016:1-8.
[21]Luu T M,Phan R,Davey R,et al.A Multilevel NER Framework for Automatic Clinical Name Entity Recognition[C]//IEEE International Conference on Data Mining Workshops,2017:1134-1143.
[22]潘璀然,王青華,湯步洲,等.基于句子級Lattice-長短記憶神經(jīng)網(wǎng)絡的中文電子病歷命名實體識別[J].第二軍醫(yī)大學學報,2019,40(5):497-506.
[23]楊錦鋒,關(guān)毅,何彬,等.中文電子病歷命名實體和實體關(guān)系語料庫構(gòu)建[J].軟件學報,2016,27(11):2725-2746.
[24]Lipton Z C,Berkowitz J,Elkan C.A Critical Review of Recurrent Neural Networks for Sequence Learning[J].arXiv:1506.00019,2015:1-38.
[25]李航.統(tǒng)計學習方法[M].北京:清華大學出版社,2012:191-210.
[26]Ma X,Hovy E.End-to-end Sequence Labeling via Bi-directional LSTM-CNNs-CRF[C]//Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics.USA:Association for Computational Linguistics,2016:1064-1074.
[27]CCKS 2017測評二[DS/OL].https://www.biendata.com/competition/CCKS2017_2/data/,2018-08-10.
[28]趙常煜,王若佳.醫(yī)學分詞詞典[DS/OL].http://opendata.pku.edu.cn/dataset.xhtml?persistentId=doi:10.18170/DVN/SDM9GT,2018-09-20.
[29]Kudo T.CRF++:Yet Another CRF Toolkit[CP/OL].http://chasen.org/taku/software/CRF++/,2018-10-01.
(責任編輯:郭沫含)