關(guān)鍵詞:電子病歷;命名實(shí)體識(shí)別;條件隨機(jī)場(chǎng);雙向長(zhǎng)短期記憶網(wǎng)絡(luò)
中圖分類號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2024)28-0017-03
0 引言
隨著醫(yī)療領(lǐng)域信息化的迅速發(fā)展,電子病歷已成為現(xiàn)代醫(yī)療系統(tǒng)中的重要組成部分。電子病歷記錄了患者的詳細(xì)醫(yī)療信息病史、診斷、治療方案和隨訪記錄等,為醫(yī)療決策、個(gè)性化治療、臨床研究、患者管理等提供了豐富的信息[1-2]。電子病歷通常以非結(jié)構(gòu)化形式文本存在,拼寫錯(cuò)誤、不規(guī)范用語(yǔ),導(dǎo)致信息提取和利用困難[3]。因此,高效、準(zhǔn)確地從電子病歷提取有價(jià)值的醫(yī)學(xué)信息,成為當(dāng)前重要的研究課題。
命名實(shí)體識(shí)別(NER) 作為自然語(yǔ)言處理中的關(guān)鍵技術(shù),旨在自動(dòng)識(shí)別并分類文本中的實(shí)體。傳統(tǒng)的NER方法主要依賴于規(guī)則和詞典,過(guò)于簡(jiǎn)單魯棒性差[4]?;诮y(tǒng)計(jì)學(xué)習(xí)的方法,如條件隨機(jī)場(chǎng),通過(guò)標(biāo)注大量訓(xùn)練數(shù)據(jù)來(lái)學(xué)習(xí)實(shí)體邊界和類型,這些方法雖然相較于基于規(guī)則的方法有所提升,但在面對(duì)復(fù)雜的語(yǔ)言現(xiàn)象和上下文依賴時(shí),仍存在一定局限性[5]。
本文結(jié)合了雙向長(zhǎng)短期記憶網(wǎng)絡(luò)和條件隨機(jī)場(chǎng)的混合模型BiLSTM-CRF,用于從電子病歷中自動(dòng)提取醫(yī)學(xué)實(shí)體。通過(guò)雙向長(zhǎng)短期記憶網(wǎng)絡(luò)捕捉文本的上下文信息,并結(jié)合CRF進(jìn)行標(biāo)簽序列優(yōu)化,以提高實(shí)體識(shí)別的準(zhǔn)確性和魯棒性,在處理序列標(biāo)注問(wèn)題上具有優(yōu)越的性能。
1 實(shí)驗(yàn)方法
1.1 序列標(biāo)注
數(shù)據(jù)來(lái)源于CCKS2017任務(wù)二:面向電子病歷的命名實(shí)體識(shí)別。在本次命名實(shí)體識(shí)別任務(wù)中,目標(biāo)是從中文電子病歷中自動(dòng)識(shí)別出醫(yī)學(xué)相關(guān)的命名實(shí)體,具體包括以下幾類實(shí)體:癥狀和體征,檢查和檢驗(yàn),治療,疾病和診斷,身體部位。
本研究使用了BIOES標(biāo)注方法是一種詳細(xì)的序列標(biāo)注方法,通過(guò)將每個(gè)元素標(biāo)記為“B”(開(kāi)頭)、“I”(中間)、“O”(外部)、“E”(結(jié)尾)或“S”(單獨(dú)實(shí)體)來(lái)明確區(qū)分實(shí)體的邊界和類型。具體來(lái)說(shuō),“B-X”表示實(shí)體的開(kāi)頭,“I-X”表示實(shí)體的中間部分,“E-X”表示實(shí)體的結(jié)尾,而“S-X”用于表示一個(gè)單獨(dú)的實(shí)體,“O”表示不屬于任何實(shí)體。這種方法有助于提高命名實(shí)體識(shí)別的精度和準(zhǔn)確性。
研究處理了原始數(shù)據(jù)后使用Python 編程語(yǔ)言,JieBa分詞進(jìn)行標(biāo)注,同時(shí)將中文標(biāo)簽,“癥狀和體征”“檢查和檢驗(yàn)”“治療”“疾病和診斷”“身體部位”分別對(duì)應(yīng)為“SYMPTOM”“CHECK”“TREATMENT”“DISEASE”“BODY”,最終序列標(biāo)注后的臨床電子病歷,“身體”如上表1所示,分別進(jìn)行“字粒度”和“詞粒度”的提取,“疾病與診斷”詞標(biāo)注如表2所示。
1.2 條件隨機(jī)場(chǎng)
條件隨機(jī)場(chǎng)廣(CRF) 泛應(yīng)用于中文分詞、命名實(shí)體識(shí)別和詞性標(biāo)注等任務(wù)中,通常使用“線性鏈條件隨機(jī)場(chǎng)”來(lái)簡(jiǎn)稱條件隨機(jī)場(chǎng)。在模型中,隨機(jī)變量X和Y 具有相同的線性序列結(jié)構(gòu),這與文本的自然順序相匹配,體現(xiàn)了線性特性。兩種DTmwFuPoqfZseC7fpj+iFPfpNFsEsqF/jnLv3zoO954=主要的線性條件隨機(jī)場(chǎng)是最大團(tuán)是相鄰3個(gè)頂點(diǎn)的集合以及最大團(tuán)是相鄰2個(gè)頂點(diǎn)的集合。
條件隨機(jī)場(chǎng)通過(guò)定義全局特征函數(shù)來(lái)直接建模給定輸入序列條件下的輸出標(biāo)注序列的條件概率。給定輸入序列X = {x,x,...,x } 和對(duì)應(yīng)的輸出標(biāo)注序列Y = {y,y,...,y } ,在條件概率P (Y|X )上,通過(guò)特征函數(shù)fk = { y ,y,x, }來(lái)描述標(biāo)注之間以及標(biāo)注和輸入之間的相互關(guān)系,并通過(guò)特征函數(shù)的權(quán)重λ 進(jìn)行參數(shù)化,通過(guò)前向后向算法等動(dòng)態(tài)規(guī)劃算法高效地進(jìn)行訓(xùn)練和推斷。
1.3 雙向長(zhǎng)短期記憶網(wǎng)絡(luò)BiLSTMLSTM
(Long Short-Term Memory) 是一種循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN) 的變種。RNN在處理序列數(shù)據(jù)時(shí)表現(xiàn)出顯著效果,能夠挖掘時(shí)序信息和語(yǔ)義信息。對(duì)于中文文本序列而言,RNN可以結(jié)合上下文信息進(jìn)行模型訓(xùn)練,而不僅僅是單個(gè)詞語(yǔ)的標(biāo)簽訓(xùn)練。通過(guò)引入三個(gè)門控機(jī)制來(lái)實(shí)現(xiàn)長(zhǎng)期記憶和遺忘,包括遺忘門(forgetgate) 、輸入門(input gate) 和輸出門(output gate) 。這些門控制著信息的流動(dòng),允許網(wǎng)絡(luò)選擇性地記住或忘記輸入數(shù)據(jù)中的信息。
雙向長(zhǎng)短期記憶網(wǎng)絡(luò)(Bidirectional Long Short-Term Memory, BiLSTM) 是一種常用于序列建模的深度學(xué)習(xí)模型,它結(jié)合了正向和反向兩個(gè)方向的信息來(lái)捕捉序列數(shù)據(jù)中的上下文信息。BiLSTM通過(guò)在輸入序列的兩個(gè)方向上分別運(yùn)行兩個(gè)獨(dú)立的LSTM網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)這一目的。具體來(lái)說(shuō),BiLSTM的輸入序列首先通過(guò)一個(gè)正向LSTM 網(wǎng)絡(luò)進(jìn)行處理,然后通過(guò)一個(gè)反向LSTM網(wǎng)絡(luò)進(jìn)行處理。正向LSTM按照輸入序列的順序逐步讀取數(shù)據(jù),而反向LSTM則按照相反的順序讀取數(shù)據(jù)。每個(gè)LSTM網(wǎng)絡(luò)都包含一個(gè)記憶單元和三個(gè)門(遺忘門、輸入門和輸出門),用于捕捉序列中的長(zhǎng)期依賴關(guān)系。 雙向長(zhǎng)短期記憶網(wǎng)絡(luò)模型結(jié)構(gòu),如圖3所示。
1.4 序列標(biāo)注模型BiLSTM-CRF
雖然通過(guò)BiLSTM模型可以獲取每個(gè)字的向量表示并得到各個(gè)實(shí)體類別的分?jǐn)?shù),然后選擇分?jǐn)?shù)最高的類別作為命名實(shí)體識(shí)別的預(yù)測(cè)結(jié)果,但這種方法在實(shí)際應(yīng)用中的效果并不十分準(zhǔn)確。為了提高準(zhǔn)確性,文本結(jié)合了BiLSTM和CRF的神經(jīng)網(wǎng)絡(luò)方法,在這種方法中,仍然使用BiLSTM模型來(lái)提取訓(xùn)練集的特征,但在最后的輸出層使用CRF來(lái)替代簡(jiǎn)單的Softmax函數(shù)進(jìn)行分策。CRF模型中的轉(zhuǎn)移特征考慮了輸出標(biāo)注之間的關(guān)聯(lián)性和合理性,從而提高了命名實(shí)體識(shí)別的準(zhǔn)確性。
2 實(shí)驗(yàn)與分析
任務(wù)的輸入是一組臨床病歷電子文檔,記錄了病人在醫(yī)院診斷治療的全過(guò)程。任務(wù)的輸出要求提供文檔中與醫(yī)學(xué)相關(guān)的命名實(shí)體的字符串邊界,以及每個(gè)實(shí)體對(duì)應(yīng)的類別。共定義了5 類命名實(shí)體:“SYMPTOM”“CHECK”“TREATMENT”“DISEASE”“BODY”。數(shù)據(jù)為CCKS2017中Task2提供的電子病歷,包含患者的信息體征、體查、治療等非結(jié)構(gòu)化信息。
數(shù)據(jù)集包含100份患者病史,將1~80份當(dāng)作訓(xùn)練集、81~100當(dāng)作測(cè)試集合,模型結(jié)合“詞粒度”與“字粒度”,兩種維度進(jìn)行訓(xùn)練。使用序列標(biāo)注模型BiLSTM-CRF進(jìn)行電子病歷的實(shí)體提取同時(shí)對(duì)比CRF 模型,分別進(jìn)行以單字符和詞組的訓(xùn)練進(jìn)行對(duì)比以模型的精確率、召回率、F1分?jǐn)?shù)評(píng)價(jià)模型效果。
表3為BiLSTM-CRF模型字粒度結(jié)果,在字粒度模型上,疾病和診斷類型的精確率最高為0.95,檢查和檢驗(yàn)的精確率最低為0.52,召回率最高的為疾病和診斷為0.96,召回率最低的為檢查和檢驗(yàn)為0.51,F(xiàn)1分?jǐn)?shù)最高的為身體部位為0.94,最低的為檢查和檢驗(yàn)為0.51。
表4為BiLSTM-CRF模型詞粒度結(jié)果,在詞粒度模型上,疾病和診斷類型的精確率最高為0.95,檢查和檢驗(yàn)的精確率最低為0.38,召回率最高的為身體部位為0.94,召回率最低的為檢查和檢驗(yàn)為0.62,F(xiàn)1分?jǐn)?shù)最高的為身體部位為0.93,最低的為檢查和檢驗(yàn)為0.47,對(duì)比字粒度模型,檢查和檢驗(yàn)的召回率有著明顯的提升。
表5為CFR、BiLSTM-CRF在不同粒度上面的對(duì)比。
從表5可以得出,BiLSTM-CRF在詞模型和字模型上面均優(yōu)于CRF模型。文本使用的BiLSTM-CRF模型在捕捉序列特征和建模標(biāo)簽依賴關(guān)系方面表現(xiàn)出色,能夠有效提高命名實(shí)體識(shí)別的準(zhǔn)確性
3結(jié)束語(yǔ)
在這項(xiàng)工作中,本研究本文結(jié)合了雙向長(zhǎng)短期記憶網(wǎng)絡(luò)和條件隨機(jī)場(chǎng)的混合模型對(duì)電子病歷中的命名實(shí)體識(shí)別進(jìn)行了研究與應(yīng)用。實(shí)驗(yàn)結(jié)果表明,模型在捕捉序列特征和建模標(biāo)簽依賴關(guān)系方面表現(xiàn)出色,能夠有效提高命名實(shí)體識(shí)別的準(zhǔn)確性。通過(guò)CCKS2017任務(wù)二的數(shù)據(jù)集進(jìn)行測(cè)試,模型在五類命名實(shí)體(身體部位、癥狀體征、檢查檢驗(yàn)、疾病診斷和治療)的識(shí)別中取得了良好的效果。
本文為電子病歷的命名實(shí)體識(shí)別提供了一種有效的方法,為醫(yī)療信息的自動(dòng)化處理和分析奠定了基礎(chǔ),具有重要的實(shí)際應(yīng)用價(jià)值。未來(lái)的工作可以進(jìn)一步優(yōu)化模型結(jié)構(gòu),結(jié)合更多的上下文信息和外部知識(shí),以進(jìn)一步提升識(shí)別性能。