張運中 紀 斌 余 杰 劉慧君
1(湖南省電子口岸服務中心 湖南 長沙 410001)2(國防科技大學計算機學院 湖南 長沙 410073)3(中國工程物理研究院計算機應用研究所 四川 綿陽 621999)
隨著電子病歷的迅速普及和醫療大數據時代的到來,自然語言處理(Natural Language Processing, NLP)技術在醫學領域的應用與發展已經成為當前的研究熱點。NLP相關技術,如句子的分詞、實體識別等,可以從臨床醫療記錄中提取有科研價值信息,幫助科研人員進行的學術研究,從而可以支持醫療研究和輔助治療方案決策[1]。
命名實體識別(Named Entity Recognition, NER)是自然語言處理里的一項基礎任務。狹義上,NER是識別出人名、地名和組織機構名這三類命名實體[2]。臨床醫療命名實體識別是醫療信息抽取最基礎的任務,國內諸多有影響力的學術會議將其作為評測任務以推進其研究與發展,如中國知識圖譜與語義計算大會(China Conference on Knowledge Graph and Semantic Computing, CCKS)[3]、中國健康信息處理會議(China Health Information Processing Conference, CHIP)等。這些評測任務既推動了醫療命名實體識別的研究與發展,也為后續的研究提供了一批高質量的數據集。
CHIP2018發布中文電子病歷臨床醫療命名實體識別評測任務[4],此項評測任務來自工業界的真實應用,因此更具有研究價值和挑戰性。此次評測任務的目的是從電子病歷中抽取出三種惡性腫瘤相關的命名實體,并發布了600份人工標注的病歷作為訓練數據,200份無標注的病歷作為測試數據,在本文中分別用CHIP TR和CHIP TE標識。由于這三種實體的復雜性和特殊性質,單一神經網絡模型難以有效地完成本任務。針對此任務,本文提出了一種基于多神經網絡協作的復雜醫療命名實體識別方法,通過多種神經網絡模型協作的方式實現了復雜醫療命名實體有效識別,并且通過句子級別上的模型遷移應用解決了訓練數據集較小及數據分布不一致的問題。本文的貢獻可總結如下:
(1) 對于難以通過單一的神經網絡模型完成的真實復雜醫療命名實體識別任務,深入分析實體特點,挖掘實體間的依賴關系,提出基于多神經網絡協作的復雜醫療命名實體識別方法,有一定的工程實踐價值。
(2) 本文方法相對于其他使用規則的方法有更好的泛化能力,在CHIP 2018評測任務中取得了第二名的成績。
(3) 本文方法的改進版本取得了CCKS2019評測任務一的第一名,為后續的相關研究提供了一個有效的基線成績。
醫學命名實體識別指的是確定醫學領域文本中的專業術語的邊界,然后基于領域信息對它們進行分類[5]。目前醫學命名實體識別的主要方法分為淺層機器學習和深度學習的方法。淺層機器學習方法主要包括HMM、ME、CRF、SVM,以及上述分類模型的改進等[6]。Wang等[7]驗證了基于CRF的Gimli方法,在JNLPBA 2004數據集上取得了72.23%的F1值;于楠等[8]提出了多特征融合的條件隨機場方法,可以準確識別中文電子病歷中疾病和癥狀實體,同時也可準確識別未登錄詞。淺層機器學習方法在很大程度上依賴于人工特征的設計。為減少復雜的人工特征,Tang等[9]采用CRF模型進行生物醫學實體識別,在基本人工特征的基礎上加入不同的詞向量特征,在JNLPBA 2004數據集上取得了71.39%的F1值。Chang等[10]利用少量的人工特征和詞向量結合的方式構建CRF模型并添加后處理,在JNLPBA 2004語料上取得了71.77%的F1值。
在使用深層神經網絡進行醫學命名實體識別的研究中,Yao等[11]首先在無標注的生物醫學文本上利用神經網絡生成詞向量,然后建立多層神經網絡,在JNLPBA 2004數據集上取得了71.01%的F1值。Li等[12]采用BiLSTM模型在BioCreative II GM的數據集上取得了88.6%的F1值,同時在JNLPBA 2004語料上取得了72.76%的F1值。李麗雙等[13]提出了一種基于CNN-BLSTM-CRF神經網絡模型,在Biocreative II GM和JNLPBA 2004數據集上達到了最優的F1值。
此外,基于規則的方法將手工編寫的規則與文本進行匹配來識別命名實體,是一種非常有效地命名實體識別的方法[14]。但基于規則方法需要領域專業知識和專業的人員編寫規則,并且規則跨領域遷移應用能力較差,基本不具有泛化能力。
CHIP2018評測任務中的腫瘤原發部位、原發腫瘤大小、腫瘤轉移部位定義[15-16]如下:
(1) 腫瘤原發部位:腫瘤原發的身體部位,區別于腫瘤轉移部位。通常情況下,腫瘤原發部位的下文為“癌”“惡性腫瘤”“MT”“CA”等。
(2) 原發腫瘤大小:描述原發腫瘤長度、面積或體積的量度,包括,常見度量單位有mm、cm等。
(3) 腫瘤轉移部位:原發腫瘤的轉移部位,理論上除腫瘤原發部位外,腫瘤可向身體任何其他部位轉移。
從上述三種實體的定義中可以得出,作為一種描述腫瘤大小的量度,原發腫瘤大小依賴于腫瘤原發部位。一個基于統計得到的事實是原發腫瘤大小與腫瘤原發部位在電子病歷中是句子級別共存的,也就是說在絕大多數情況下原發腫瘤大小和腫瘤原發部位出現在同一個句子中。
腫瘤原發部位和腫瘤轉移部位都屬于身體部位或組織,在電子病歷中這兩種實體較為稀疏。一般情況下,一份病歷中只有一個腫瘤原發部位,數個腫瘤轉移部位。但電子病歷中包含大量的不屬于兩類實體的身體部位。并且對于腫瘤轉移部位來說,只有“轉移”這一特征描述詞可以用于辨別一個身體部位是否屬于腫瘤轉移部位,但這種辨別能力隨著句子長度的增加而削弱。現在主流的神經網絡模型大多將命名實體識別作為序列標注任務,其基于統計原理的本質決定了當電子病歷中包含了大量的與抽取任務無關的身體部位時,腫瘤轉移部位的抽取不會有優異的性能。
基于上述分析,將CHIP2018評測任務分解為三個子任務:腫瘤原發部位抽取,原發腫瘤大小抽取和腫瘤轉移部位抽取。
圖1為基于神經網絡模型的復雜臨床醫療命名實體抽取方法架構。

圖1 臨床醫療命名實體抽取方法架構
(1) 腫瘤原發部位抽取。腫瘤原發部位的抽取是一個典型的命名實體識別過程,采用經典的BiLSTM-CRF模型抽取腫瘤原發部位,模型框架結構如圖2所示。

圖2 BiLSTM-CRF模型框架結構圖
BiLSTM-CRF模型實現句子級別的命名實體識別。模型的第一層是embedding層,其作用是在將句子輸入到模型之前,將句子轉換為向量表達。從圖2中可以看出,本文中的BiLSTM-CRF模型基于字符embedding。具體來說,就是將句子中的每個字符用字符embedding表示,最后得到關于句子的向量表示序列。假設一個句子X含有n個字,則該句的向量表達可表示為X=(x1,x2,…,xn),其中xi∈Rd,d是字符embedding的維度。

模型的第三層是CRF層,進行句子級的序列標注。CRF層的參數矩陣是一個維度為(k+2)×(k+2)的狀態轉移矩陣A,其中Aij表示從第i個標簽到第j個標簽的轉移得分,因此在為句子的一個字符進行標注的時候可以利用此前已經標注過的標簽信息。假設y=(y1,y2,…,yn)為一個長度等于句子長度的標簽序列,那么模型對于句子X的標簽序列等于y的計算公式如下:
式中:Pi,yi表示將xi標注為yi的概率,由隱狀態Hi計算得到。
模型在預測過程時使用動態規劃的Viterbi算法來求解最優路徑[8]。
BiLSTM-CRF模型的超參數設置如表1所示,用 BiLSTM-CRF-T標識。訓練數據采用BIO[15]的標注模式,依據人工標注信息將CHIP TR處理成適合模型訓練的格式。用B-TU、I-TU代表腫瘤原發部位首字和非首字,用O標注不屬于命名實體的字符。一個數據標注示例如圖3所示。

表1 神經網絡模型的超參數設置

圖3 語料標注示例
(2) 原發腫瘤大小抽取。原發腫瘤大小是由數字、長度單位(mm或cm)、表示乘法的二元符號(*、×、X等)組成按照一定的規則構成的描述原發腫瘤的量度。本文采用了基于規則的方法抽取原發腫瘤大小,其抽取流程如下:
① 預處理電子病歷。將“?”“?”“;”“;”等標點符號替換為“。”,并依據“。”分割電子病歷,得到句子集合。
② 句子篩選。對于第①步得到的句子集合中的每個句子,若其不包含腫瘤原發部位,則將其從句子集合中移除。將句子集合中剩余的句子組合成為短文本。
③ 實體抽取。依據電子病歷中的原發腫瘤大小的度量的符號組成規則,編寫正則表達式(如式(1)所示),并用其抽取第②步獲取的短文本中的度量。
RE=′(d?d?d?.?d?d(([cm][mm]?)|(.?.?[*×
X~].?d?d?d?.?d?))*[cm][mm])′
(1)
原發腫瘤大小的抽取依賴于腫瘤原發部位的抽取結果,因此若腫瘤原發部位的抽取錯誤,則可能會導致原發腫瘤大小抽取錯誤,引起錯誤傳播。
(3) 腫瘤轉移部位抽取。腫瘤轉移部位與其他兩種實體無明顯的內在關系,并且“轉移”作為唯一特征,難以用來抽取長句中的多個腫瘤轉移部位。一種啟發式的抽取方法如下:
① 電子病歷預處理。一個基于統計得到的事實是:包含腫瘤轉移部位的句子中絕大多數包含“轉移”;在包含其他關鍵字的情況下,如“考慮轉移”、“不除外轉移”等,此句的前一句中包含的腫瘤轉移部位,統計得到的關鍵字如下所示。基于關鍵字列表編寫規則篩選包含腫瘤原發部位的句子。
關鍵字列表={考慮轉移,轉移,傾向轉移,傾向為轉移,轉移可能,不除外轉移,轉移不除外,轉移待排,疑轉移,轉移可能,轉移不除外,考慮為轉移,可疑淋巴結轉移,考慮轉移性淋巴結,轉移性可能,轉移瘤可能,考慮多發轉移,轉移征象可能,轉移瘤不除外,轉移不能除外,考慮骨轉移,轉移待除外,考慮為轉移瘤,轉移可能性大,考慮肺轉移,考慮為骨轉移,轉移?,轉移均不除外,均考慮轉移不除外,均為骨轉移改變,均考慮轉移}
② 使用BiLSTM-CRF模型抽取句子中的解剖部位。
③ 處理解剖部位,獲取腫瘤轉移部位實體。后處理包括實體去重、實體特殊格式處理。其中特殊格式實體主要為補全與淋巴結相關的實體,如:“左側腮腺、雙頸、右側鎖骨上區間隙多發淋巴結,考慮轉移”的神經網絡模型識別結果為“左側腮腺”“雙頸”“右側鎖骨上區”“淋巴結”,需要將上述實體補全為“左側腮腺淋巴結”“雙頸淋巴結”“右側鎖骨上區淋巴結”。
CHIP TR和CHIP TE中腫瘤原發部位、原發腫瘤大小、腫瘤轉移部位的數量統計如表2所示。可以看出,兩個數據集中的腫瘤轉移部位的實體較為稀疏,因此從解剖部位數量和種類上來看,基于CHIP TR不足以支撐訓練性能優異的神經網絡模型。在此,引入了CCKS2018評測任務一發布的600份電子病歷數據集,該數據集由清華大學知識工程實驗室和醫渡云(北京)技術有限公司聯合提供。本文用CCKS TR標識該數據集,CCKS TR中有8 542個帶有標注信息的解剖部位,完全可以滿足神經網絡模型的訓練需求。盡管CCKS TR和CHIP數據集應用場景不同,但是二者在解剖部位的表現形式上是一樣的。基于CCKS TR訓練的神經網絡模型遷移應用于篩選的CHIP數據集的句子上既可以消除數據不一致帶來的影響,又解決了CHIP數據集實體稀疏的問題。應用于腫瘤轉移部位的抽取BiLSTM-CRF模型結構與圖2所示的模型結構一致。模型的參數設置如表1所示,用BiLSTM-CRF-M標識。

表2 CHIP2018數據集實體統計
本文共使用兩種評估標準:標準評估和權重評估。
(1) 標準評估。標準準確率(P)、召回率(R)和F1值(F1)作為標準評估的評估指標,分別使用以下三個公式計算:
(2)
(3)
(4)
(2) 權重評估。權重評估由CHIP2018評測任務定義,用于計算帶權重的準確率、召回率和F1值。若用T、S、M分別表示腫瘤原發部位、原發腫瘤大小、腫瘤轉移部位,那么在權重評估標準下TP、FP、FN的計算公式如下:
TP=0.2×TPT+0.3×TPS+0.5×TPM
(5)
FP=0.2×FPT+0.3×FPS+0.5×FPM
(6)
FN=0.2×FNT+0.3×FNS+0.5×FNM
(7)
而標準評估標準下三者的計算公式如下:
TP=TPT+TPS+TPM
(8)
FP=FPT+FPS+FPM
(9)
FN=FNT+FNS+FNM
(10)
本文方法在CHIP TE上的測試結果如表3所示,測試結果由CHIP 2018評測平臺提供。

表3 命名實體識別方法在CHIP TE數據集上的評估結果%
可以看出,本文方法在CHIP TE上獲得了78.38%的權重F1值,在此次評測任務中排名第二。此次評測任務的前四名的成績統計如表4所示。

表4 CHIP2018評測任務一前四名成績 %
可以看出,在排名前四的方法中,本文方法是唯一基于神經網絡的方法。相比于基于規則的方法,本文方法減少了編寫規則的工作量,有更好的泛化能力。
CCKS2019發布了一項與CHIP2018任務形式相同的評測任務,并且提供了900份電子病歷作為訓練數據集。為驗證本文方法的泛化能力,將其遷移應用到CCKS2019數據集上,測試結果如表5所示。

表5 命名實體識別方法在CCKS2019數據集上的評估結果 %
可以看出,本文方法在CCKS2019數據集上取得了帶權重的69.09%的F1值,比在CHIP TE上的評估結果低9.29個百分點。深入研究后發現,兩次評測任務標準的不完全一致是導致本文方法性能下降較大的原因:在CHIP2018評測任務中,腫瘤原發部位的是不帶有方位詞的,但在CCKS2019評測任務中要求帶有方位詞;CCKS2019評測任務不需要對淋巴結相關的實體進行補全。在3.2節給出的例子中,BiLSTM-CRF模型的識別結果就是CCKS2019要求的正確結果。
依據CCKS2019評測任務一的具體任務定義形式對本文方法進行改進,最終在CCKS2019評測任務一中取得了第一名的成績[17]。簡而言之,本文方法的有效性和泛化能力在CCKS2019數據集中得到了驗證。
本文提出一種基于神經網絡的電子病歷命名實體識別方法,探究了融合使用多種神經網絡模型實現復雜的、難以通過單一神經網絡模型完成的醫療命名實體識別,有一定的工程實踐價值。在CHIP2018和CCKS2019評測任務中,本文方法及改進方法分別取得了優異的成績,驗證了本文方法的有效性和泛化能力,為后續相關研究提供了一個有效的基線成績。
未來仍然還需要許多的工作來完善本文方法。首先,本文方法中仍然使用了基于規則的方法抽取原發腫瘤大小和包含腫瘤轉移部位句子,因此未來的工作之一是使用基于神經網絡的方法替換基于規則的方法,以進一步提高本文方法的性能和泛化能力。其次,本文方法中使用的兩個BiLSTM-CRF模型均是基于隨機初始化的字符embeddings,而領域相關的預訓練的字符embeddings可以有效提高命名實體識別性能[18-19],因此未來的第二個工作是預訓練領域相關的字符embeddings,以進一步提高本文方法的性能。