?

中文電子病歷信息提取方法研究綜述

2024-02-28 01:26吉旭瑞魏德健張俊忠
計算機工程與科學 2024年2期
關鍵詞:詞典病歷實體

吉旭瑞,魏德健,張俊忠,張 帥,曹 慧

(山東中醫藥大學智能與信息工程學院,山東 濟南 250355)

1 引言

近年來,人工智能和大數據的普及帶動了各個行業的發展。在與人們健康息息相關的醫療行業中,每天都會產生大量的醫療數據。在這些數據中,電子病歷EMR(Electronic Medical Record)的重要性不言而喻。同時,作為智慧醫療建設的重要一環,電子病歷已逐漸被各大醫院所使用。電子病歷以病人為主體,記錄著患者的個人基本信息、就診時間、發病時間、癥狀、診斷結果以及患者的治療情況。相比于傳統的紙質病歷,電子病歷依托計算機相關技術處理患者的這些信息,從而形成結構化的病例報告,便于醫生對患者進行更準確的診斷治療。因此,如何從電子病歷中提取出跟患者病情相關的信息,也就成為了現如今電子病歷數據挖掘的重要研究方向[1]。

在提取電子病歷信息的任務中,最為關鍵的2個內容就是中文電子病歷命名實體識別和實體關系抽取。其中,中文電子病歷命名實體識別是提取電子病歷中醫療信息的第一步,實體關系抽取則是構建醫療知識數據庫的基礎[2]。隨著深度學習在其他領域的廣泛應用,很多研究人員嘗試使用深度學習技術提取電子病歷中的信息,也都取得了不錯的效果[3,4]。

本文從國內外中文電子病歷的研究現狀入手,針對電子病歷中的信息提取部分,分析現階段中文電子病歷在命名實體識別和實體關系抽取2方面的研究進展,討論更加合適的應用技術,為更進一步的探索提供參考。

2 中文電子病歷信息提取研究現狀

電子病歷是我國醫療信息化中不可缺少的部分,因此國內對于電子病歷的相關研究在近年來得到了廣泛關注。國外的許多發達國家在信息化建設的道路上開始較早,他們建立電子病歷檔案至今已經有五十多年的歷史了。在政府的大力支持下,國外電子病歷的規模逐漸壯大,形成了一套較為完整的醫療信息體系。國外研究人員在處理電子病歷數據時,主要是在命名實體識別和實體關系抽取2個方面進行,這一點跟國內對電子病歷的研究類似。不過,中文跟英文不同,它有著許多英文所不具備的特點[5]。例如,英文會用空格將2個單詞隔開,這在處理時能夠很好地找到實體的邊界,但中文則只能以單個漢字為最小的單位來進行命名實體識別和實體關系抽取。這無疑給中文電子病歷數據的信息提取帶來了不小的挑戰?,F如今在處理中文電子病歷數據時,還存在以下問題:(1)不論進行命名實體識別任務還是進行實體關系抽取任務,所使用的數據集都需要專業人員手工標注,標注的工程龐大且繁瑣,這也給電子病歷的信息抽取設置了無形的障礙。(2)各大醫院電子病歷的標準化程度不同,這樣很難將訓練好的模型適用于不同醫院的電子病歷信息提取任務中。因此,需要一些政策的指引來不斷完善電子病歷的標準化程度。

中文電子病歷的信息提取可以將病歷文本中的核心信息快速地提取出來,并且將這些知識以形式化和結構化的方式表示出來[6],從而讓醫生能夠更加清晰地了解患者的病情,利用已經抽取好的醫療數據對病人的病情進行分析。對于中文電子病歷的信息抽取流程如圖1所示。

Figure 1 Process of Chinese electronic medical record information extraction圖1 中文電子病歷信息提取流程

其中,中文電子病歷信息抽取過程中的核心任務為命名實體識別、實體修飾識別和實體關系抽取[7]。本文接下來將會探討研究人員在處理命名實體識別和實體關系抽取2大任務時所構建的模型,詳細闡述常用的各種研究方法;然后系統分析中文電子病歷所面臨的一些障礙并提出相應的解決方案;最后再對本文研究內容進行總結,展望中文電子病歷信息抽取今后的發展趨勢。

3 中文電子病歷命名實體識別

命名實體識別NER(Named Entity Recognition)是對中文電子病歷中的醫療信息進行抽取的第一步,它是實體關系抽取任務的基礎,影響著接下來任務的進行。NER的主要目的是識別出與醫療信息相關的專業名詞,例如識別出電子病歷中存在的疾病名稱、藥品名稱、癥狀、醫療器械名稱和患者的身體部位等[8]。它可以將具有相同屬性的名詞歸為一類,使得醫生在處理病人病歷時能夠更高效。

對于中文電子病歷的NER任務,國內外所采用的方法一共可分為3類[9]:基于規則與詞典的方法、基于機器學習的方法和基于深度學習的方法。這3種方法也代表了NER技術發展的路線,但現如今研究人員大多選擇將不同的方法融合在一起來處理NER任務[10-13],并取得了非常不錯的效果,這也給未來NER任務研究提供了參考。

3.1 電子病歷命名實體識別評價指標

中文電子病歷命名實體識別常用的評價指標包括精確率P(Precision)、召回率R(Recall)和F-Measure。這3種指標都是通過真陽性TP(True Positive)、假陽性FP(False Positive)以及假陰性FN(False Negative)3個參數計算得出的。具體的計算如式(1)~式(3)所示:

(1)

(2)

(3)

其中,TP表示模型識別出正確實體的樣本數;FP表示模型能夠識別出實體,但識別結果不正確的樣本數;FN表示沒有被成功識別的樣本數;α是用于平衡精確率和召回率的參數。特別地,當α=1時,評價指標可表示為F1-Measure。F1-Measure的值越高表示模型的效果越好。

3.2 電子病歷命名實體識別常用方法

3.2.1 基于規則與詞典的方法

基于規則與詞典的方法是研究人員早期所采用的方法。該方法實際上是一種模式匹配范式?;谝巹t的專業詞典是模式匹配的基礎,詞典和規則都需要人工編寫。在構建詞典的過程中,需要專業人員將醫療領域中的專業名詞和術語等收集在一起,再進行相應的整理,最后構建出專業詞典作為模式匹配的模板。在構建好詞典后,再結合實體構造規則,提取出相應的實體。另外,相應的實體規則還能夠彌補文本中缺少專有名詞的缺陷?;谝巹t與詞典的方法通過建立詞典、制定規則,能有效地識別出相應的命名實體,同時詞典的完備性和規則的可行性也直接決定著命名實體識別最終的效果。顯然,這種方法實行起來難度不大,只要有專業的詞典以及相應的規則作為基礎,就能完成命名實體識別的任務。但是,由于國內外開展自然語言處理NLP(Natural Language Processing)的時間不同,詞典的建立也存在著很大的差距。

在國外,UMLS(Unified Medical Language System)[14]和ICD-10(International Classification of Diseases 10)[15]等都是具有權威性的醫療詞典,國外許多研究人員以這些權威性詞典為基礎,早期開發出了一些實體識別工具。Savova等[16]開發了臨床文本分析和知識提取系統CTAKES(Clinical Text Analysis and Knowledge Extraction System)。該系統基于UMLS實現NER并對其結果進行評估,最終得到的最佳成績中精確匹配的F-Measure為71.5%,重疊匹配的F-Measure為82.4%。Scott等[17]從轉錄的醫生筆記中使用正則表達式提取出藥物、劑量等命名實體。Yang等[18]使用縮寫定義識別算法擴展了生物實體名稱字典,提高了詞典識別實體的性能,最終F-Measure達到了68.80%。在國內,楊錦鋒等[19]制定了命名實體和實體關系的標注規范并構建了命名實體和實體關系標注語料庫,這也為中文電子病歷研究提供了一個良好的開端;蘇嘉等[20]針對心血管疾病領域制定了專門的標注語料庫。但是,由于對NLP的研究起步較晚,國內并沒有建立像國外如此完善的醫療詞典庫及相關規則。建立詞典需要很多專家且要花費大量的時間,成本較高,需要定期維護。因此,基于規則與詞典的方法在處理中文電子病歷的NER任務時使用起來較為困難。不過,一旦建造出專業性強、完備性好的詞典,基于規則與詞典的方法也將會為NER任務提供很大的便利。

3.2.2 基于機器學習的方法

基于規則與詞典方法的缺點注定使其不能夠長期被人們所用,機器學習的快速發展讓研究人員更多地使用機器學習方法來處理NER任務。NER任務也轉化為給每個實體賦予相應的標記?;跈C器學習的NER方法主要是基于分類的方法和基于序列標注的方法[7]。相比于基于規則和詞典的方法,基于機器學習的方法需要的人力更少,成本較低[21]。因此,近年來有很多研究人員使用不同的機器學習模型來進行中文電子病歷的命名實體識別。

隱馬爾可夫模型HMM(Hidden Markov Model)是NER任務研究初期使用較為廣泛的機器學習模型,是一種序列標注方法。通過給定的輸入序列,計算出概率最大的標記序列,再通過Viterbi算法得出命名實體識別序列標注的最優解。Zhang等[22]使用基于HMM的級聯識別方法訓練出了基于HMM的命名實體識別模型,并在GENIA V3.02 和 V1.1語料庫上進行了測試,分別得到了66.5%和62.5% 的F-Measure值。但是,HMM只考慮了當前所觀察的對象,這就要求文本語句上下文具有很高的獨立性。電子病歷的上下文聯系緊密,難以實現這種獨立性,因此HMM僅適用于篇幅較短的NER任務。

支持向量機SVM(Support Vector Machine)也是一種使用較為廣泛的機器學習方法,是一種分類算法,早期更多地被應用于模式識別上[23,24]。由于NER可以被視為是一種分類任務,因此SVM也被應用到了此任務中。研究人員通常將其與條件隨機場CRF(Conditional Random Field)模型進行比較。Lei等[25]使用自己手動創建的中文醫療文本數據集,來對CRF和SVM等機器學習模型進行評估,其中CRF模型在實驗中得到了93.52%的F-Measure值,而SVM得到了90.54%的F-Measure值。通過實驗也證明了基于CRF的方法在NER任務中要優于基于SVM的方法。與HMM相比,由于CRF沒有特別嚴格的約束條件,對上下文文本可以進行靈活的歸納,從而克服了HMM無法獲取長距離文本特征、缺乏多特征融合能力等缺點。因此,基于CRF的方法逐漸成為了NER任務中最受歡迎的機器學習方法。

近幾年,作為對SVM的改進,結構化支持向量機SSVM(Structured SVM)在NER任務中呈現出不錯的識別效果[26,27]。SSVM擴展了SVM的功能,結合了SVM和CRF的優點,能夠處理有關結構化的問題。Lei等[25]在其實驗中比較了SSVM和CRF在NER任務中的表現,最終SSVM得到了93.53%的F-Measure值,SSVM在命名實體識別任務中略優于CRF,證明了SSVM是機器學習方法中處理中文NER任務效果最好的。Zhang等[28]還將SSVM用于化學領域的命名實體識別并取得了不錯的效果。Tang等[29]開發了基于SSVM的NER系統,比較SSVM和CRF在NER任務上的評估結果,SSVM得到了85.82%的F-Measure值,CRF得到了85.68%的F-Measure值,并且在不同實體類型識別中SSVM比CRF更好。表1對上述方法進行了總結。此外,對于連續標簽問題,SSVM也有著很好的處理能力,這也說明SSVM在中文電子病歷NER任務研究中有著較好的發展潛力。并且SSVM和CRF組合起來也會是NER任務中一個較好的研究方向。

Table 1 Applications of rule-based methods and machine learning based methods in named entity recognition

3.2.3 基于深度學習的方法

近年來,深度學習逐漸成為人工智能領域主要的研究內容,并且在很多應用中都取得了不錯的成果,也在一定程度上推動了人工智能領域的發展。在自然語言處理中,能夠運用在中文NER任務上的深度學習模型包括長短時記憶LSTM(Long-Short Term Memory)網絡、卷積神經網絡CNN(Convolutional Neural Networks)、雙向長短時記憶Bi-LSTM(Bi-directional LSTM)網絡、Transformer模型以及BERT(Bidirectional Encoder Representation from Transformers)模型。以下分別對這4種模型進行介紹:

(1)長短時記憶網絡。

長短時記憶網絡是最先被廣泛應用于NER任務[30,31]的深度學習模型。這種模型是循環神經網絡的一種特殊類型,擁有2個傳輸狀態cell state和hidden state,能夠有效控制特征的流通和損失。同時,長短時記憶網絡也是解決長距離依賴問題行之有效的模型,因此也被廣泛地用于處理文本數據。LSTM+CRF模型是當時比較流行的組合模型。Dong等[32]針對中文命名實體識別任務,采用LSTM+CRF網絡加強了每個字的部首偏旁,從而加強字的表示來捕捉其象形詞根特征,在中文NER任務中獲得了很好的性能,這也是針對中文NER任務第一個使用基于字符的LSTM+CRF模型,在SIGHAN Bakeoff-3中文語料庫上最終得到了90.95%的F1-Measure值。在這個基礎上,Zhao等[33]進行了創新,提出了一種基于對抗訓練的網格LSTM-CRF模型AT-Lattice LSTM-CRF(Adversarial Training-Lattice LSTM CRF),得到了89.64%的F1-Measure值。在實驗中,對抗訓練AT不僅提高了模型的性能,還保證了神經網絡方法的穩健性。

在中文電子病歷的NER任務中,一個詞要想被命名為一個實體,與文本的上下文通常有一定的聯系。LSTM模型盡管能夠處理長距離的文本信息,但是它不能夠對反向的文本數據進行操作。于是,Schuster等[34]于1997年提出了雙向長短時記憶(Bi-LSTM)網絡。這種模型能夠捕捉每個狀態的上下文,使用從左到右和從右到左的2個獨立隱藏狀態,同時捕獲過去和未來的信息,以更好地捕捉上下文的語句依賴信息。在Bi-LSTM模型被用來處理中文電子病歷NER任務后,它逐漸替代了具有一定局限性的LSTM模型。

雙向長短時記憶網絡克服了LSTM的劣勢,成為了近年來處理各個領域NER任務時使用較為廣泛的模型[35,36]。與LSTM類似,研究人員發現在Bi-LSTM后面接CRF層作為輸出也是一個不錯的處理方法,其模型結構如圖2所示。由于CRF層能夠考慮標簽之間的順序問題,因此在接收到Bi-LSTM處理完的輸入后,能夠計算出更加精確的標簽,使得提取的精度進一步提高。

Figure 2 Basic structure of Bi-LSTM+CRF model圖2 Bi-LSTM+CRF模型基本結構

Xu等[37]使用Bi-LSTM+CRF模型在公開的NCBI(National Center for Biotechnology Information)語料庫上進行評估,最終得到了80.22%的F1-Measure值,其結果相對于其他廣泛使用的方法要更好。還有一些使用Bi-LSTM+CRF模型的研究[38,39]在命名實體識別任務中也獲得了不錯的效果。Yin等[40]提出了基于字符偏旁等級和自注意力(Self-attention)機制的Bi-LSTM+CRF模型,在實驗中使用CNN來提取字符偏旁的特征,得到字詞之間內部的相關性,使用自注意力機制是為了捕捉上下文文本之間的依賴性。將訓練得到的模型在CCKS-2017(China Conference on Knowledge graph and Semantic computing 2017)數據集上進行評估,得到了93.00%的F1-Measure值。在TP-CNER(TP-Clinical Named Entity Recognition)數據集上得到了86.34%的F1-Measure值,其結果要好于原始Bi-LSTM+CRF模型的,也證明了基于字符偏旁等級的自注意力機制在處理中文醫療NER任務中的有效性。

(2)卷積神經網絡模型。

卷積神經網絡近年來在計算機視覺領域取得了顯著的成果,被大量應用到圖像處理中[41-44],并且取得了很多突破性的進展。在NLP領域中,CNN能夠在訓練過程中充分利用GPU(Graphics Processing Unit)實現數據處理的并行化,這使CNN在并行計算過程中擁有很高的自由度。

CNN在處理長距離文本信息時表現一般,只能通過不斷增加卷積層的個數來處理更多的輸入信息,但這會導致卷積層越來越深,參數越來越多,整個模型將會變得非常龐大不易訓練?;诖?Yu等[45]提出了擴張卷積神經網絡(Dilate CNN),為過濾器增加了一個dilation width,但過濾器本身的大小保持不變,這樣可以讓過濾器獲得更多輸入數據,隨著卷積層數的不斷增加,參數的數量只以線性增加,而感受域呈指數增加,使得感受域更快地覆蓋到全部的輸入數據,從而解決了CNN在NER任務中的缺陷。Strubell等[46]又在上述工作的基礎上提出了迭代擴張卷積神經網絡ID-CNN(Iterated Dilated CNN),并且在實驗中將ID-CNN同CRF融合起來,把CRF接在ID-CNN后面,在CoNLL-2003數據集上ID-CNN-CRF模型得到了90.54%的F1-Measure值,略優于NER任務中主流的深度學習模型Bi-LSTM+CRF的,并且ID-CNN-CRF在模型訓練的速度上也要快于Bi-LSTM+CRF。但是不論LSTM還是CNN,它們在處理中文電子病歷NER任務時都存在局限性,LSTM在處理數據時不能實現并行化操作,CNN是不能處理序列化的文本信息。而將這2個模型一起配合訓練可以發揮出它們的優勢,同時彌補彼此的不足,這種融合方式在未來也不失是一種較好的處理NER任務的方法。

(3)Transformer模型。

只使用注意力機制的模型是2017年由Vaswani等[47]提出來的,也是近兩年來NLP領域主流的模型,并且還拓展到了其他的領域。這種模型緩解了循環神經網絡訓練慢的問題,使用完全基于注意力機制的方式,將自注意力機制作為編碼器和解碼器的核心,獲得了很好的學習效果。后來的BERT模型在NLP任務中能取得良好成績一個關鍵因素就是Transformer模型。

李博等[48]針對中文電子病歷的NER任務,提出了一種Transformer-CRF的模型,使用Transformer來提取上下文的文本特征,并增加CRF層作為分類器進行聯合解碼。在實驗中,通過中文電子病歷數據自建數據集對比了包括Transformer-CRF在內的8種模型,在身體部位的實體識別中Transformer-CRF得到了最高的F1-Measure值 95.05%。但是,Transformer模型也存在著一定的問題,其局部特征捕捉能力相比于循環神經網絡RNN(Recurrent Neural Network)略顯不足。在文獻[48]中,對于醫療檢查和檢查類的實體,由于其包含大量的英文縮寫,在識別過程中文本特征較為復雜不易提取,導致模型的識別效果不佳,不過在其他醫療實體的識別中這種模型的識別效果都要好于其他模型的。盡管Transformer模型存在著一定的缺點,但它這種完全基于注意力機制的方式很大程度上促進了NLP領域的發展,也為后來BERT模型的出現打下了基礎。

(4)BERT模型。

BERT模型是Google在2018年開發出來的一種用于語言表示的模型,它的內部采用全新的MLM(Masked Language Model)模型,對雙向的Transformers進行預訓練,這樣能快速生成深度的雙向語言表征。此外,微調(Fine-tune)BERT模型也能在很多下游NLP任務中獲得非常好的表現。

近年來,BERT模型也逐漸被用于科學領域和生物醫學領域,以提高這些領域中NLP任務的性能。不過,在中文電子病歷NER任務中,僅使用BERT模型并不能夠獲得很好的效果。但是,通過對BERT模型進行預訓練或與其他模型相結合,都能獲得很多模型達不到的效果。Li等[49]使用網上爬取的中文醫療文本數據對BERT模型進行預訓練,并在BERT模型上添加不同的層(包括CRF、Bi-LSTM層等)來比較各種模型的性能,還在模型中添加了字典功能以及偏旁功能,最終的模型結構為BERT+Bi-LSTM+CRF,在CCKS-CNER 2017與CCKS-CNER 2018數據集上分別進行了模型評估。在實驗中,Li等[49]將BERT模型又進行了微調,微調的BERT模型要明顯優于原始的BERT模型,在CCKS 2018數據集上基于FT-BERT+BiLSTM+CRF的模型得到了89.32%的F1-Measure值,該結果要優于其他先進方法的,并且集成模型獲得了更高的F1-Measure值89.56%。在CCKS2017數據集上,基于FT-BERT+BiLSTM+CRF的模型得到了91.60%的F1-Measure值。在整個實驗中,微調的BERT很明顯提高了模型的性能,并且字符偏旁部首的嵌入以及基于字典的后處理方式也在中文NER任務中十分有效。在Li等[49]的實驗中,他最開始對BERT模型進行預訓練。參照這個方法,胡婕等[50]從百科知識庫CN-DBPedia(ChiNa-DisamBiguation Pedia)中抽取實體來構建詞典,隨后利用構建的詞典來對BERT進行預訓練。這種方法可以免去網絡爬蟲所帶來的數據不規范等問題,為后續中文電子病歷NER的研究也提供了一種思路。

ALBERT(A Lite BERT)模型是Google在2019年開發的一種更加精簡的模型[51],是BERT模型的改進版。ALBERT的參數量要遠遠小于之前的BERT模型的,解決了BERT模型過大、訓練困難的問題。李軍懷等[52]利用ALBERT模型進行預訓練,提出了基于ALBERT+BGRU+CRF的模型用于中文NER任務。在這個模型中,使用ALBERT模型處理相應的文本,得到動態詞的向量表示作為下一層的輸入,雙向門控循環單元BGRU(Bidirectional Gated Recurrent Unit)用來捕捉上下文的語義信息,并通過在CRF層中加入約束來控制錯誤標簽的輸出。此外,在MSRA(MicroSoft Research Asia)數據集上此模型得到了94.81%的F1-Measure值,要好于BERT- IDCNN-CRF模型的94.41%。ALBERT模型還能與IDCNN+CRF相結合,也能在NER任務中取得不錯的效果。表2對上述命名實體識別方法進行了總結。

Table 2 Summary of methods based on deep learning

深度學習模型的廣泛應用帶動了中文電子病歷NER任務的研究。圖3展示了近兩年中文電子病歷NER技術的發展路線。目前,研究人員主要采用基于多種模型相結合的方式來進行命名實體識別。例如,Dong等[32]在模型中加入了字符;Li等[49]對BERT模型進行了微調并將其加入到了原有的模型中,還嵌入了偏旁部首。這些研究人員都利用多種模型在NER任務中取得了非常不錯的效果,因此在未來的研究中,多模型組合將是中文電子病歷NER任務的一個重要研究方向。表3比較了中文電子病歷命名實體識別任務中所采用的各類方法及其基本思想、優點和缺點。

Table 3 Comparison of typical methods for named entity recognition

Figure 3 Development route of Chinese EMR NER technology圖3 中文電子病歷NER技術發展路線

4 中文電子病歷實體關系抽取

實體關系抽取(Entity Relation Extraction)是NLP任務中重要的一步,是在命名實體識別任務的基礎上,進一步提取出2類實體之間存在的關系。這項任務也是醫療健康知識庫建立維護的基礎。在電子病歷中,大部分的實體之間存在著一定的關系。關系抽取任務不僅要抽取出它們之間的關系,更重要的是要識別出這些關系是屬于哪種類型[53],很大程度上會影響后續電子病歷處理任務。

對于醫療關系,Uzuner等[54]率先展開了研究,將醫療實體關系分為6大類:當前的疾病-治療、可能的疾病-治療、當前的癥狀-治療、可能的癥狀-治療、疾病-檢查和疾病-癥狀。根據中文電子病歷的特點,可以將醫療關系解釋為更加通俗易懂的說法。例如,將疾病-癥狀關系類型解釋為疾病導致了這種癥狀,疾病-檢查關系類型解釋為通過檢查找出了這種疾病,疾病-治療關系解釋為這種疾病通過這種方式進行治療。抽取出這些關系類型能輔助醫生更加全面地了解患者的病情,對患者的下一步治療有更加明確的方向。

目前,中文電子病歷的實體關系抽取研究尚在起步階段。綜合近年來研究人員所采用的各類方法[55,56],可以大致分為3種:有監督學習的方法、半監督學習的方法和無監督學習的方法。這3種方法各有優劣,在不同的時期都發揮出了不同的作用。如今,半監督學習的方法也逐漸被廣泛應用于實體關系抽取的任務中,成為了一大熱門的研究方向。無監督學習的方法目前還處于探索階段,還未出現有效的實體關系抽取方法,本文不作詳細介紹。接下來本文將會對有監督學習、半監督學習近年來的研究進展進行詳細介紹。

4.1 有監督學習的方法

有監督學習的方法是電子病歷實體關系抽取任務早期廣泛使用的方法,大多是采用機器學習和深度學習的方法來完成實體關系的抽取。在傳統的機器學習方法中,使用到的方法主要是基于規則的方法和SVM等。在深度學習的方法中,主要使用深度神經網絡來處理實體關系抽取的任務。這些方法在大量已標注數據集為前提的情況下能夠獲得較好的分類效果。

Xu等[57]提出了一種由數據驅動的模型,同時基于規則和SVM,并且在實驗中創新性地使用SVM估計醫療事件之間的相關性,以更好地對各類醫療實體進行抽取,最終在中文電子病歷數據集上得到了84.6%的F1-Measure值。Tao等[58]提出了一種KeMRE(Knowledge-enhanced Medical Relation Extraction)的醫學關系抽取深度模型,所建造的模型共被分為4大塊。首先是基于BERT-CNN-LSTM的文本建模;之后是基于 CNN-LSTM 的實體建模,用來捕捉各個實體之間的相關性;第3是建立了知識嵌入,以代表實體之間潛在的關系;最后使用MLP(Multi-Layer Perceptron)網絡從實體的表示和知識嵌入中預測實體之間的關系。上述模型在自主構建的數據集上的F1-Measure要明顯好于LSTM模型、CNN模型等的。隨著深度學習的快速發展,有監督學習的方式也能在實體抽取中取得十分不錯的效果。但是,繁重的標注工作是這類方法的一大缺陷,一旦缺少已標注的數據,模型性能會快速下降。因此,在之后的中文電子病歷研究中,如何使用較少的標注數據來進行關系抽取成為了研究人員著重關注的地方。

4.2 半監督學習的方法

半監督學習的方法能夠解決有標注數據集稀缺的問題。有標注的數據集難以獲取,而無標注的數據集又不能夠很好地訓練模型,因此半監督學習的方法成為了近年來較為熱門的研究方向。這種學習方法只需要少量有標注的數據集和大量無標注的數據集,就可以獲得很好的效果。半監督學習關系抽取基本框架如圖4所示。

Figure 4 Basic framework of semi-supervised learning relation extraction圖4 半監督學習關系抽取基本框架

在中文電子病歷的研究中,標注數據集的問題尤為突出,因此半監督學習方法也逐漸被應用起來。陳立瑋等[59]在解決雙語關系抽取問題時提出了n-gram的模型特征來增強模型的魯棒性,還提出了基于Bootstrapping思想的協同訓練在中文知識庫上進行半監督學習來強化模型,以解決數據標注的相關問題,最終在中文和英文的關系提取中這個模型能適應不同語言的需求。肖丹[60]采用了半監督學習的方法來對中文電子病歷進行實體關系抽取,提出了一種基于殘差網絡的半監督方法。該方法結合殘差網絡和BiGRU(Bi-Gated Recurrent Unit)2種神經網絡的優勢,還融入了注意力機制,構建了ResGRU-Att(Residual Gated Recurrent Unit Attention)混合神經網絡模型,并在訓練過程中使用Bootstrapping半監督學習算法對沒有被標記的數據集不斷迭代,擴展數據集。此外,該方法還針對關系抽取任務改進了Bootstrapping算法。結果表明,多層卷積的ResNet(deep Residual Network)模型效果要明顯好于單一的CNN模型的,當ResNet模型增加注意力機制以及GRU模型后獲得了更好的效果,F1-Measure值達89.78%。

作為半監督學習的一種方法,遠程監督也能夠解決標注語料少的問題。隨著人工智能的發展,遠程監督通過機器學習得到了進一步的發展。在關系抽取任務中,為了避免使用到龐大的標注數據集,無監督學習的方法被應用到了關系抽取的任務中。無監督學習的方法不需要使用帶標簽的數據,通過聚類算法來自動歸納關系的類型,從而達到關系抽取的目的。不過,這種方法所抽取出來的關系在一定程度上規范化程度很差,而且會影響其他的關系屬性。因此,Mintz等[61]在2009年第1次提出了遠程監督的概念來解決上述問題,并將文本與大規模知識圖譜進行對齊。遠程監督既能夠解決有監督學習中缺少有標簽數據集的問題,又能夠彌補無監督學習中關系的規范化問題。車金立等[62]基于遠程監督方法提出了一種基于雙重注意力機制的關系抽取模型,使用網絡爬蟲來篩選實驗數據,再通過遠程監督得到有標注的關系數據。但是,遠程監督有可能會帶來一部分的噪聲數據。為了解決這個問題,該模型通過BI-GRU網絡獲取上下文語義信息,并使用字符級注意力機制來關注語義特征,利用實例級注意力機制來計算實例和對應關系之間的相關性。上述模型結合了雙重注意力機制的優勢,有效地處理了噪聲數據,在關系抽取的任務中得到了更高的準確率。王斌等[63]提出了基于遠程監督的領域實體屬性關系抽取的混合方法,使用隱含狄利克雷分布LDA(Latent Dirichlet Allocation)主題模型來進行數據去噪,并且將各項特征融合用于關系抽取,實驗結果表明,去噪后的訓練數據更加具有代表性,上述模型訓練后取得了91%的F1-Measure值。表4對上述方法進行了總結。遠程監督在關系抽取任務中主要是為深度學習模型處理無標簽數據,它較依賴各個領域的專業知識庫。近年來,國內各科研機構已初步建立了幾個中文開放百科類知識圖譜的鏈接,包括Zhishi.me(狗尾草科技、東南大學)、CN-DBPedia(復旦大學)、XLore(清華大學)、Belief-Engine(中科院自動化所)和PKUPie(北京大學)等。這些知識圖譜都已經通過OpenKG提供了開放的Dump或開放訪問API。這些中文知識圖譜的建立為遠程監督方法在中文電子病歷關系抽取上的應用提供了良好的基礎。

Table 4 Typical methods for entity relationship extraction 表4 實體關系抽取常用方法

5 問題分析

5.1 數據集

目前,不論是在國內還是在國外,對于電子病歷的研究都需要非常龐大的醫療數據集作為基礎。國外對電子病歷的研究起步較早,到目前為止,已經形成了以I2B2為代表的醫療評測任務及相應醫療語料庫,這在很大程度上促進了國外對于電子病歷的命名實體識別和關系抽取方面的研究。并且這些數據集以及語料庫還在不斷地改良和完善。

在國內,由于對電子病歷信息抽取方面的研究起步較晚,因此并沒有形成完善的醫療語料庫。為了推動中文電子病歷命名實體識別研究的發展,中國知識圖譜與語義計算大會CCKS(China Conference on Knowledge graph and Semantic computing)從2017年起,連續幾年推出了中文電子病歷命名實體識別評測任務[64,65],所用的數據集都經過了專業人員的標注,這也使得近年來國內中文電子病歷的NER任務得到了突飛猛進的發展,取得了很多顯著的進展。

在實體關系抽取任務上,國內的大多數研究都是使用人工標注的電子病歷數據集,但標注過程中的工作量巨大且特別耗時。為了促進中文醫學NLP的發展,阿里云天池實驗室在近年來發布了中文醫學文本實體關系抽取CMeIE(Chinese Medical Information Extraction)評測任務,并提供了評測任務所需要的數據集[66]。國外的I2B2評測任務為國內研究電子病歷的NER以及關系抽取任務指明方向,發起和組織與電子病歷相關的評測任務是解決現如今中文電子病歷語料庫缺乏的有效途徑[67]。

在中文電子病歷語料庫的構建上,楊錦鋒等[19]利用賓州中文樹庫 PCTB(Penn Chinese TreeBank) 標注規范[68,69]作為語料庫構建的基礎規范,制定了適用于中文電子病歷的標注規范,并且構建了分詞和詞性標注的語料庫,為構建中文電子病歷語料庫做出了杰出的貢獻。隨著研究的不斷深入,相信在未來也會形成如同國外一樣龐大的中文電子病歷語料庫。

5.2 模型性能

盡管深度學習近年來在中文電子病歷信息提取任務中取得了較大的進步,但組合經典的模型處理相關任務也使性能達到了瓶頸。轉換思路設計更合適的模型可以顯著提高模型的性能。Li等[70]創新性地將NER視為機器閱讀理解MRC(Machine Reading Comprehension)任務,而不是經典的序列標記問題,提出了一種MRC框架,獲得了顯著的效果。因此,如何將此模型推廣到中文電子病歷信息提取的任務中,也成了今后研究的方向之一。

此外,深度學習模型對于實體的邊界不太敏感,尤其是醫療領域,實體的邊界具有很高的專業性。將基于規則的詞典信息引入深度學習模型是一種不錯的方法,但龐大的詞典使模型運行速度過慢,因此如何在保證識別準確率的基礎上提高運行效率也是今后的研究方向之一。

5.3 嵌套實體的識別與提取

嵌套實體是指一個實體嵌套在另外一個實體中,例如在中文電子病歷中經常會出現“肺結節”“胃潰瘍”“腎結石”等嵌套實體,實體“肺、胃、腎”都被嵌套在了相應的疾病實體中。這些問題也是今后的模型需要解決的。

6 結束語

本文闡述了近年來中文電子病歷命名實體識別和關系抽取方面的研究進展,選取了國內外在這些方面的典型論文,重點介紹了中文電子病歷信息提取所采用的方法、建立的模型、使用的相關數據集、數據標注情況以及這些模型最終所取得的效果。

近年來,深度學習在各個領域都取得了十分顯著的進展,也被應用于中文電子病歷的命名實體識別和關系抽取的任務中,是諸多方法中效果最好的方法,也促進了中文電子病歷信息提取領域的發展。在有關電子病歷的任務中,比較常見的深度學習模型包括LSTM模型和CNN模型。近幾年,多種模型融合的方式也逐漸成為了研究人員主要的研究方向。Transformer模型和BERT模型的快速應用也在NLP領域展現出了很高的性能,也推動了中文電子病歷NER任務的發展。另外,圖神經網絡、數據增強在NLP領域中的應用等都處于前期的發展階段,如何將它們與現有的模型進行融合也將會成為今后的研究方向。

猜你喜歡
詞典病歷實體
強迫癥病歷簿
“大數的認識”的診斷病歷
米沃什詞典
前海自貿區:金融服務實體
評《現代漢語詞典》(第6版)
實體的可感部分與實體——兼論亞里士多德分析實體的兩種模式
詞典例證翻譯標準探索
兩會進行時:緊扣實體經濟“釘釘子”
振興實體經濟地方如何“釘釘子”
為何要公開全部病歷?
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合