国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

中文醫(yī)學(xué)命名實(shí)體識別算法研究*

2022-06-06 09:37李夢蝶李功利
關(guān)鍵詞:命名向量標(biāo)簽

李夢蝶 張 平 李功利 姜 偉

(電子科技大學(xué)生命科學(xué)與技術(shù)學(xué)院 成都 610054) (四川省屏山縣人民醫(yī)院 屏山 645350)

李 科 蔡培強(qiáng)

(電子科技大學(xué)生命科學(xué)與技術(shù)學(xué)院 成都 610054) (四川省屏山縣人民醫(yī)院 屏山 645350)

1 引言

1.1 研究背景與意義

電子病歷(Electronic Medical Records,EMR)是患者就診過程中生成的電子化病歷信息,包括醫(yī)生問診產(chǎn)生的文本數(shù)據(jù),實(shí)驗(yàn)室檢查產(chǎn)生的數(shù)字、圖像、圖表數(shù)據(jù),這些信息為醫(yī)療診斷和醫(yī)學(xué)研究提供重要數(shù)據(jù)支持[1]。大量有用信息存在于敘述性文本中,計(jì)算機(jī)能夠自動利用的結(jié)構(gòu)化數(shù)據(jù)有限,采用自然語言處理技術(shù)進(jìn)行文本結(jié)構(gòu)化成為醫(yī)學(xué)信息學(xué)研究熱點(diǎn)[2]。命名實(shí)體識別(Named Entity Recognition,NER)是自然語言處理中的重要方法,該技術(shù)可識別醫(yī)學(xué)文本中特定的醫(yī)學(xué)實(shí)體,標(biāo)識其蘊(yùn)含信息,加快醫(yī)院信息化進(jìn)程,還可以提供醫(yī)療決策支持,改善醫(yī)療質(zhì)量,提高醫(yī)療人員工作效率,減少臨床決策失誤,促進(jìn)臨床醫(yī)學(xué)研究。

1.2 命名實(shí)體識別研究方法

1.2.1 實(shí)體識別常用的機(jī)器學(xué)習(xí)方法 基于詞典和規(guī)則是最早的命名實(shí)體識別方法。李毅、保鵬飛和薛萬國[3]基于中文電子病歷特點(diǎn),構(gòu)建一套生物醫(yī)學(xué)命名實(shí)體規(guī)則、實(shí)體詞和用于分類的詞表。實(shí)體識別常用的機(jī)器學(xué)習(xí)方法包括隱馬爾科夫模型(Hidden Markov Model,HMM),支持向量機(jī)(Support Vector Machine,SVM),條件隨機(jī)場模型(Conditional Random Fields,CRF)等[4]。Zhang J、Shen D和Zhou G等[5]提出第1個處理級聯(lián)現(xiàn)象的HMM實(shí)體識別系統(tǒng),該系統(tǒng)不僅集合拼寫、形態(tài)學(xué)多種特征,還加入命名實(shí)體縮寫,在GENA3.0語料上F值達(dá)到66.5%。Lee K J、Hwang Y S和Kim S等[6]提出一個基于SVM的蛋白質(zhì)和DNA實(shí)體識別系統(tǒng),該系統(tǒng)在確認(rèn)已知詞性標(biāo)注的實(shí)體邊界后,利用單詞信息和上下文構(gòu)造特征集進(jìn)行實(shí)體識別,在GENA3.0語料上測試F1值達(dá)到74.8%。2016年Bhasuran B、Murugesan G和Abdulkadhar S等[7]以CRF作為基礎(chǔ)分類器,結(jié)合模糊字符串匹配算法識別罕見疾病名稱,該應(yīng)用在 CDR(Chemical Disease Relations)語料庫的訓(xùn)練集上測試F值達(dá)到89.12%。詞典與機(jī)器學(xué)習(xí)相結(jié)合的方法也常用來進(jìn)行實(shí)體識別[8]。

1.2.2 神經(jīng)網(wǎng)絡(luò)算法 逐漸被遷移到自然語言處理中,常用來實(shí)體識別的一般有卷積神經(jīng)網(wǎng)絡(luò)和遞歸神經(jīng)網(wǎng)絡(luò)。Zhao Z、Yang Z和 Luo L等[9]基于多標(biāo)簽的卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行疾病識別,級聯(lián)了字符、單詞、詞典特征,最終模型在美國國家生物技術(shù)信息中心(National Center for Biotechnology Information,NCBI)數(shù)據(jù)集上測試F值達(dá)到85.17%。2019年Cho H和Lee H[10]提出一個基于雙向長短時記憶(Bi-Directional Long Short-Term Memory,BiLSTM)和CRF的生物醫(yī)學(xué)命名實(shí)體識別系統(tǒng),在NCBI和CDR語料庫上都取得不錯的識別效果。

1.2.3 預(yù)訓(xùn)練模型 由于具備可提供初始化參數(shù)等優(yōu)點(diǎn)而常用于醫(yī)學(xué)實(shí)體識別。Zhang X、Zhang Y和Zhang Q等[11]利用Bert(Bidirectional Encoder Representation from Transformers)模型訓(xùn)練詞向量,該模型在其自建的癌癥語料上測試F1值達(dá)到93.53%。羅凌、楊志豪和宋雅文等[12]訓(xùn)練一個基于ELMo(Embeddings from Language Models)語言模型的命名實(shí)體模型,模型中引入包含漢字內(nèi)部結(jié)構(gòu)的筆畫信息,最終在中國知識圖譜與語義計(jì)算大會數(shù)據(jù)集上測試F值達(dá)到91.75%。

1.2.4 融合特征Albert的中文醫(yī)學(xué)命名實(shí)體識別算法 基于規(guī)則和詞典識別效果理想,但建立模板、維護(hù)詞典成本較高,且移植性差。機(jī)器學(xué)習(xí)解決了移植性問題,但其嚴(yán)格特征提取影響實(shí)體識別效果。深度學(xué)習(xí)克服了機(jī)器學(xué)習(xí)中的問題,但神經(jīng)網(wǎng)絡(luò)模型參數(shù)多,醫(yī)學(xué)數(shù)據(jù)集較小,容易過擬合?;谕ㄓ谜Z料訓(xùn)練的預(yù)訓(xùn)練模型提供初始化參數(shù),在下游任務(wù)中微調(diào)即可,具有更好的泛化能力,在小量的醫(yī)學(xué)實(shí)體語料上表現(xiàn)不錯。綜上,本文提出一種融合特征Albert(A Lite Bert,輕量級Bert)的中文醫(yī)學(xué)命名實(shí)體識別算法,該算法旨在訓(xùn)練融合文本短語、語言語義的字向量特征,將融合的字向量特征與句子向量特征相加以提高實(shí)體識別效果。

2 模型結(jié)構(gòu)

2.1 構(gòu)建融合特征Albert+BiLSTM+CRF模型

針對現(xiàn)有研究方法局限性提出一種融合特征Albert的中文醫(yī)學(xué)命名實(shí)體識別算法。其核心在于訓(xùn)練的字向量融合文本短語、語言學(xué)、語義學(xué)特征,然后將融合的字向量特征和句子向量特征相加,最終可以更高效地進(jìn)行命名實(shí)體識別。與其他字向量特征模型相比,本文算法能夠充分學(xué)習(xí)到預(yù)測文本的字信息、詞語信息、語言語義信息、句子信息、語篇級信息。算法流程實(shí)現(xiàn)分為數(shù)據(jù)預(yù)處理、詞嵌入、句子嵌入、命名實(shí)體識別4個階段,見圖1。

2.2 詞嵌入階段

2.2.1 Bert模型 2018年Bert模型被提出[13],旨在解決以往預(yù)訓(xùn)練模型不能學(xué)習(xí)文本上下文特征的問題。模型主要框架是編碼器模型,將完形填空和下一個句子預(yù)測作為訓(xùn)練目標(biāo),基于大規(guī)模數(shù)據(jù)訓(xùn)練詞向量能有效捕捉文本前后文特征,見圖2。

2.2.2 Albert模型 主干結(jié)構(gòu)與Bert相似,在Bert的基礎(chǔ)上主要進(jìn)行3方面改進(jìn),分別是嵌入因式分解參數(shù)化、跨層參數(shù)共享、句子間一致性損失,減少了參數(shù)但是性能有較大提升[14]。嵌入因式分解參數(shù)化在Bert中字嵌入E和隱藏層H是相等的。語言模型建模時,字嵌入和隱藏層分離可以更充分地利用模型參數(shù)。實(shí)際應(yīng)用上訓(xùn)練詞典大小為V,嵌入矩陣為V*E,如果H變大E隨著變大,此時嵌入矩陣V*E將會變大,最終導(dǎo)致訓(xùn)練過程中數(shù)十億參數(shù)僅有少部分更新。而Albert中采用的因式分解是先將one-hot向量映射到低維空間,然后映射到隱藏層中,最終使模型參數(shù)從O(V*H)減少到O(V*E+E*H)。與僅共享前饋神經(jīng)網(wǎng)絡(luò)層參數(shù)和僅共享注意力層參數(shù)不同,Albert選擇共享所有層參數(shù),通過測量L2距離和余弦相似度,表明跨層共享參數(shù)的方法能夠穩(wěn)定網(wǎng)絡(luò)參數(shù)。在Bert模型中以預(yù)測下一個句子為訓(xùn)練目標(biāo)時,屬于下一句來自同一文檔連續(xù)片段,屬于非下一句來自不同文檔片段,這種包含主題預(yù)測和一致性預(yù)測的方法較為簡單。因此Albert提出基于句子順序預(yù)測損失,正例的選取與Bert相同,反例是相同的兩個連續(xù)片段但順序交換。本文發(fā)現(xiàn)Albert算法在低層網(wǎng)絡(luò)中學(xué)習(xí)詞語特征、中層網(wǎng)絡(luò)中學(xué)習(xí)語言學(xué)特征、高層中學(xué)習(xí)語義特征,所以提出融合不同層的訓(xùn)練特征,用來解決單個字向量或詞語向量問題。

2.3 句子嵌入階段

2.3.1 概述 長短期記憶(Long Short-Term Memory,LSTM)是循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)的改進(jìn)版,有效解決了梯度消失和梯度下降問題,而BiLSTM是由前向LSTM和后向LSTM構(gòu)成的算法。

2.3.3 LSTM計(jì)算過程 在確定當(dāng)前時刻的隱藏層狀態(tài)時,先計(jì)算需要被遺忘的信息。遺忘門輸出由當(dāng)前時刻輸入狀態(tài)和上一時刻隱藏層狀態(tài)控制,如公式(2-1)所示,輸出范圍從0到1。

ft=σ(Wf*(ht-1,xt)+bf)

(2-1)

it=σ(Wi*(ht-1,xt)+bi)

(2-2)

(2-3)

丟棄和更新信息確定后,第3步是將上一時刻細(xì)胞狀態(tài)更新為當(dāng)前時刻細(xì)胞狀態(tài)。如公式(2-4)所示。

(2-4)

最后就是單元結(jié)構(gòu)LSTM輸出。輸出門由sigmoid層、當(dāng)前時刻輸入、上一時刻隱藏層狀態(tài)決定,如公式(2-5)所示。當(dāng)前時刻輸出門狀態(tài)乘以通過tanh層變換的當(dāng)前時刻細(xì)胞狀態(tài)即可得到當(dāng)前時刻隱藏層狀態(tài)輸出ht,見式(2-6)。

Ot=σ(WO*(ht-1,xt)+bO)

(2-5)

ht=Ot*tanh(Ct)

(2-6)

2.3.4 BiLSTM算法 上述4步是一個完整單元的LSTM計(jì)算過程,將前向的LSTM和后向的LSTM拼接即本文使用的BiLSTM。對句子“咳嗽伴頭暈”編碼,前向LSTM輸入“咳嗽”“伴”“頭暈“,輸出隱藏層狀態(tài){hL0,hL1,hL2},后向LSTM輸入“頭暈”“伴”“咳嗽”,輸出隱藏層狀態(tài){hR0,hR1,hR2},將前向后向的隱藏層狀態(tài)拼接得到具有上下文特征的隱藏層狀態(tài){[hL0,hR0],[hL1,hR1],[hL2,hR2]},即{h0,h1,h2}。拼接后的hi就是輸入詞對應(yīng)的預(yù)測標(biāo)簽,來自于實(shí)體分類中概率最大的。

2.4 構(gòu)建命名實(shí)體識別模型

為解決BiLSTM的輸出僅在每一時刻選出一個最大的概率標(biāo)簽,而各個時刻輸出之間不存在關(guān)系的問題,設(shè)計(jì)引入具有轉(zhuǎn)移矩陣的CRF,在其中加入約束規(guī)則以保證最終預(yù)測結(jié)果的合法性。假設(shè)給定一個輸入序列X,其預(yù)測標(biāo)簽序列為y,輸入序列的預(yù)測標(biāo)簽概率為p(y|X)。

X=(X1,X2,…,Xn)

(2-7)

y=(y1,y2,…,yn)

(2-8)

(2-9)

(2-10)

其中,Ayi,yi+1為從yi到y(tǒng)i+1的轉(zhuǎn)移矩陣,大小為(n+2)*(n+2),n為所有標(biāo)簽個數(shù),+2是增加了起止位置。Pi,yi為第i個位置softmax輸出為yi的概率,起止位置記為0。在計(jì)算預(yù)測得分s(X,y)中,加上實(shí)體標(biāo)簽之間轉(zhuǎn)移概率,給模型加入約束規(guī)則:句子總是以“B-”或“O”開始,開頭出現(xiàn)“I-”時就是錯誤標(biāo)簽;“I-實(shí)體標(biāo)簽a”出現(xiàn)在“B-實(shí)體標(biāo)簽a”之前時,該標(biāo)簽無效; “B-實(shí)體標(biāo)簽a”“I-實(shí)體標(biāo)簽b”是非法標(biāo)簽。利用最大似然法訓(xùn)練轉(zhuǎn)移矩陣參數(shù),其損失函數(shù)如公式(2-11)所示,待模型訓(xùn)練完畢,采用維特比算法找出最優(yōu)路徑,也就是更合理的輸入序列的預(yù)測標(biāo)簽。

(2-11)

最終構(gòu)建完成本文的醫(yī)學(xué)實(shí)體識別算法,如圖4所示,輸出預(yù)測文本“咳嗽伴頭暈”,在Albert階段,模型學(xué)習(xí)預(yù)測文本內(nèi)的短語、語言語義學(xué)特征,并將融合這些特征的字向量輸出,作為BiLSTM輸入,以進(jìn)一步學(xué)習(xí)預(yù)測文本的上下文特征,然后在CRF層加入實(shí)體名稱約束規(guī)則,最終可輸出較為合理的實(shí)體標(biāo)簽預(yù)測結(jié)果。

3 實(shí)驗(yàn)及結(jié)果分析

3.1 實(shí)驗(yàn)環(huán)境及評價(jià)標(biāo)準(zhǔn)

實(shí)驗(yàn)在Inter core i5-4590 3.3GHz的CPU上運(yùn)行,能夠?yàn)槲闹猩婕懊麑?shí)體識別模型提供硬件支持。所有模型均采用Python語言編寫,版本號為3.6,用Tensorflow搭建神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)框架。使用命名實(shí)體識別領(lǐng)域的3個指標(biāo)作為模型衡量標(biāo)準(zhǔn):準(zhǔn)確率P(Precision)、召回率R(Recall)以及F1值(F-score),TT表示真實(shí)命名實(shí)體是正例,預(yù)測結(jié)果也是正例,F(xiàn)T表示真實(shí)命名實(shí)體是反例,但預(yù)測結(jié)果為正例,TF表示真實(shí)命名實(shí)體是正例,但預(yù)測結(jié)果為反例,F(xiàn)F表示真實(shí)命名實(shí)體是反例,預(yù)測結(jié)果也為反例。

(3-1)

(3-2)

(3-3)

3.2 實(shí)驗(yàn)數(shù)據(jù)

3.2.1 概述 本研究數(shù)據(jù)來自臨床電子病歷并進(jìn)行脫敏處理。最終完成900份輔助檢查、200份體格檢查、5 000份主訴的語料標(biāo)注,分別列作3個實(shí)驗(yàn)項(xiàng)目,輔助檢查項(xiàng)目中實(shí)體數(shù)量最多的是檢查指標(biāo)、最少的是檢查值,體格檢查項(xiàng)目中實(shí)體數(shù)量最多的是結(jié)果、最少的是項(xiàng)目值,主訴項(xiàng)目中實(shí)體數(shù)量最多的是癥狀、最少的是伴隨部位。

3.2.2 標(biāo)注規(guī)則及實(shí)體類別階段 在臨床醫(yī)生指導(dǎo)下制定3個類目的標(biāo)注規(guī)則,分別是輔助檢查、體格檢查、主訴。輔助檢查實(shí)體包括檢查日期、檢查項(xiàng)目、檢查結(jié)果、檢查值、檢查指標(biāo)、指標(biāo)結(jié)果、指標(biāo)值。體格檢查實(shí)體包括部位、查體項(xiàng)目、結(jié)果、狀態(tài)、項(xiàng)目值。主訴實(shí)體包括癥狀、部位、持續(xù)時間、伴隨癥狀、伴隨部位、伴隨時間、既往史。

3.2.3 數(shù)據(jù)標(biāo)注階段 語料庫構(gòu)建采用BIO標(biāo)注體系,標(biāo)注工具是開源doccano軟件。標(biāo)注小組由3人組成,各環(huán)節(jié)有異議的部分討論確定并立即更新標(biāo)注規(guī)則。

3.3 實(shí)驗(yàn)及實(shí)驗(yàn)參數(shù)

為驗(yàn)證本模型的可行性和有效性設(shè)計(jì)3組對比實(shí)驗(yàn),對比模型分別是未融合字向量特征的Albert+BiLSTM+CRF、BiLSTM+CRF和Bert+BiLSTM+CRF。本研究詞嵌入的最大句子長度為300,學(xué)習(xí)率為2e-05,迭代次數(shù)為40,這些參數(shù)已經(jīng)使模型識別效果達(dá)到最佳。

3.4 實(shí)驗(yàn)結(jié)果

3.4.1 與未融合向量模型的識別效果對比 實(shí)驗(yàn)訓(xùn)練集與測試集為7∶3。提出的融合字向量特征與未融合字向量特征相比,在主訴這個語料庫中表現(xiàn)最明顯,精確率P明顯高于2.0%,召回率R明顯高于1.0%,F(xiàn)1值高于2.0%。在輔助檢查的語料庫中表現(xiàn)次之,精確率和F1值明顯高于1.5%,召回率R高于1.4%。在體格檢查語料庫上表現(xiàn)略低,不過F1值高于0.4%,見表1。

表1 本模型與未融合向量模型在3個項(xiàng)目上的識別效果對比(%)

實(shí)驗(yàn)結(jié)果表明本文提出的詞嵌入階段融合字向量特征可以有效提取字的特征信息,與單純詞嵌入相比,提升了命名實(shí)體識別成功率,同時也證明本文提出的融合字向量特征是可行的。

3.4.2 與其他經(jīng)典模型的識別效果對比 與BiLSTM+CRF、Bert+BiLSTM+CRF進(jìn)行對比可以發(fā)現(xiàn)加入Bert的BiLSTM+CRF模型相比于原始模型F1值均提高了2%以上。在BiLSTM+CRF模型中,BiLSTM被用來學(xué)習(xí)文本的句子特征,CRF用來預(yù)測輸出最優(yōu)實(shí)體標(biāo)簽,此模型缺少字向量特征,而Bert可以學(xué)習(xí)到字符級別信息,所以加入Bert的BiLSTM+CRF模型具有更好的識別效果。另外,本文提出的融合字向量特征模型相比于Bert+BiLSTM+CRF模型F1值均有所提高,平均F1值達(dá)到93.53%。雖然Bert和Albert都能學(xué)習(xí)到字符級別的特征,但在Albert進(jìn)行字向量訓(xùn)練時高中低層學(xué)習(xí)到的特征不同,所以將這些特征融合可以有效提高實(shí)體識別能力,見表2。綜合精確率P、召回率R、F1值3個指標(biāo),本文提出的模型效果更好,具有更佳的識別能力。

表2 本模型與其他經(jīng)典模型在3個項(xiàng)目上的識別效果對比(%)

4 結(jié)語

本文提出一種融合Albert不同層訓(xùn)練特征的中文醫(yī)學(xué)命名實(shí)體識別算法。算法結(jié)合中文電子病歷的語言結(jié)構(gòu)特點(diǎn),在詞嵌入階段進(jìn)行優(yōu)化,使之可提取預(yù)測文本中短語、語言學(xué)、語義學(xué)特征,然后融合這些特征并與句子特征相加進(jìn)行實(shí)體識別?;谂R床病歷,利用BIO標(biāo)注體系構(gòu)建輔助檢查、體格檢查、主訴3個語料,利用這些語料訓(xùn)練測試本算法,然后與其他模型進(jìn)行對比,結(jié)果表明本文提出的融合特征模型在3個項(xiàng)目上的F1值都高于其他3個模型,平均F1值達(dá)到93.53%,具有更好的識別效果。本文構(gòu)建的語料庫量還比較小,對模型識別效果有一定影響,未來可引入主動學(xué)習(xí)、眾包標(biāo)注等方法構(gòu)建更大的語料庫;可加入修飾詞的識別,豐富算法識別廣度。

猜你喜歡
命名向量標(biāo)簽
向量的分解
命名——助力有機(jī)化學(xué)的學(xué)習(xí)
聚焦“向量與三角”創(chuàng)新題
無懼標(biāo)簽 Alfa Romeo Giulia 200HP
不害怕撕掉標(biāo)簽的人,都活出了真正的漂亮
有一種男人以“暖”命名
為一條河命名——在白河源
我是我自己的許多孩子〔外一首〕
向量垂直在解析幾何中的應(yīng)用
向量五種“變身” 玩轉(zhuǎn)圓錐曲線
敦煌市| 龙南县| 虹口区| 岳西县| 西乌珠穆沁旗| 会东县| 大安市| 邵东县| 于田县| 花莲市| 出国| 宜兰县| 黄浦区| 固始县| 丰顺县| 东安县| 公安县| 新宁县| 苍南县| 铜陵市| 富阳市| 故城县| 和硕县| 五指山市| 邻水| 高淳县| 合阳县| 临清市| 大化| 庄河市| 宜宾市| 闵行区| 丽江市| 蓬莱市| 望都县| 会昌县| 溆浦县| 沙坪坝区| 玉溪市| 鲁甸县| 灵宝市|