摘 要: [目的/ 意義] 關(guān)系抽取是電子病歷處理的核心組成部分, 對于提高電子病歷處理的準(zhǔn)確性和效率至關(guān)重要。為解決中文電子病歷關(guān)系抽取中實體冗余、實體詞嵌套和實體重疊問題, 提高醫(yī)療信息抽取效率, 提出了一種新型的中文病歷關(guān)系抽取模型。[方法/ 過程] 將關(guān)系抽取任務(wù)分解為關(guān)系優(yōu)先解碼器、全局實體提取和主體—客體對齊三部分。首先通過解碼器預(yù)測和過濾關(guān)系, 并基于預(yù)測的關(guān)系限制實體提??; 其次采用關(guān)系特定的注意機制和全局指針網(wǎng)絡(luò), 有效處理信息重疊和主體/ 客體嵌套問題; 最后引入實體對應(yīng)矩陣將主體、客體及其關(guān)系對齊為三元組。[結(jié)果/ 結(jié)論] 分別在CMeIE 中文病歷數(shù)據(jù)集和DiaKG 真實糖尿病中文數(shù)據(jù)集上進行綜合實驗并與6 種常用模型進行了對比分析, 發(fā)現(xiàn)本文模型在數(shù)據(jù)集CMeIE 和DiaKG 上的F1 值較主流模型CasRel分別提升了6. 6%和5. 8%。研究結(jié)果表明, 本文模型可有效解決中文病歷復(fù)雜性帶來的實體嵌套和實體重疊問題, 對醫(yī)療信息提取和數(shù)據(jù)處理流程具有良好價值。
關(guān)鍵詞: 關(guān)系抽??; 中文病例; 電子病例; 實體嵌套; 實體重疊; 注意力機制; 全局指針; 糖尿病
DOI:10.3969 / j.issn.1008-0821.2025.05.004
〔中圖分類號〕G203 〔文獻標(biāo)識碼〕A 〔文章編號〕1008-0821 (2025) 05-0024-10
在國家大力推進醫(yī)療信息化建設(shè)的過程中, 電子病歷系統(tǒng)在其中發(fā)揮著重要作用, 其涵蓋了患者的診斷、治療過程、檢查結(jié)果、醫(yī)生建議、手術(shù)記錄以及護理信息等信息, 為智能醫(yī)療、智能醫(yī)學(xué)診斷和醫(yī)學(xué)咨詢等應(yīng)用提供了重要支持[1] 。電子病歷中的文本數(shù)據(jù)是構(gòu)建醫(yī)學(xué)知識圖譜的基礎(chǔ)資源, 為相關(guān)臨床應(yīng)用提供支撐服務(wù)[2-3] 。實體關(guān)系抽取可以識別電子病歷中具有獨立概念的醫(yī)學(xué)實體之間的關(guān)系, 進而將大量的非結(jié)構(gòu)化數(shù)據(jù)[4] 轉(zhuǎn)為結(jié)構(gòu)化的醫(yī)學(xué)知識, 如何從文本中提取醫(yī)學(xué)實體及其之間的關(guān)系是學(xué)術(shù)界廣泛關(guān)注的重點[5-7] 。
中文電子病歷實體關(guān)系抽取是病情信息提取和構(gòu)建醫(yī)學(xué)知識組織的關(guān)鍵環(huán)節(jié), 指在非結(jié)構(gòu)化的醫(yī)學(xué)文本中抽取患者病情信息、臨床癥狀、用藥情況等相關(guān)實體之間的潛在關(guān)系, 但用于開放領(lǐng)域的自然語言處理技術(shù)[8] 應(yīng)用于中文電子病歷文本上的效果不佳。一方面, 中文病歷中包括了大量的醫(yī)學(xué)術(shù)語和特殊符號, 病歷描述中縮略語較多且病歷書寫者的書寫習(xí)慣不同, 使得其較一般文本更具有復(fù)雜性和多樣性[9] ; 另一方面, 大多數(shù)醫(yī)學(xué)術(shù)語來源于英文術(shù)語翻譯, 目前對中文電子病歷的標(biāo)注較為缺乏, 導(dǎo)致各類中文醫(yī)療實體結(jié)構(gòu)嵌套、邊界模糊。這些問題導(dǎo)致面向中文電子病歷關(guān)系抽取的難度遠(yuǎn)大于一般領(lǐng)域的文本關(guān)系實體抽取, 尤其是對電子病例中上下文實體之間的語義關(guān)系準(zhǔn)確識別與分類,從中提取實體和關(guān)系更具挑戰(zhàn)性[10] , 亟需面向中文電子病歷關(guān)系抽取開展研究。
基于此, 本文提出了一種專用于中文電子病歷的關(guān)系抽取模型。首先使用關(guān)系優(yōu)先解碼器濾除不相關(guān)關(guān)系, 利用相關(guān)關(guān)系來提取實體, 實現(xiàn)更低的計算復(fù)雜度和更好的性能; 然后將關(guān)系特定的注意力機制與全局指針網(wǎng)絡(luò)相結(jié)合, 高效提取重疊實體和嵌套實體; 最后使用關(guān)系獨立的實體對應(yīng)矩陣來高效地找到正確的實體對。該模型不僅可以提升中文電子病歷實體關(guān)系提取的效果, 挖掘各類實體關(guān)系,同時對中文電子病歷語料庫的智能化構(gòu)建、推動電子醫(yī)療知識庫的智慧化發(fā)展具有良好的實踐意義。
1 相關(guān)研究
中文電子病歷中充滿了專業(yè)術(shù)語、醫(yī)學(xué)知識和復(fù)雜的關(guān)系結(jié)構(gòu), 其關(guān)系提取任務(wù)不僅需要考慮實體之間的關(guān)聯(lián), 還需要理解醫(yī)學(xué)術(shù)語的上下文語境,以準(zhǔn)確捕捉醫(yī)療實體之間的關(guān)系, 是醫(yī)學(xué)領(lǐng)域自然語言處理的關(guān)鍵挑戰(zhàn)之一[11] 。中文電子病歷中具有大量關(guān)于醫(yī)療實體及其關(guān)系的描述, 在同一段文本中可能會包含多個相同實體的關(guān)系三元組。如在文本“2 型糖尿病患者胰島β 細(xì)胞功能隨病程進展逐漸惡化, 為取得血糖最佳控制, 大部分2 型糖尿病患者似乎最終均需胰島素治療” 中包含4 個關(guān)系三元組{2 型糖尿病, 病例分型, 糖尿?。?、{胰島素β 細(xì)胞功能惡化, 癥狀, 2 型糖尿病}、{血糖,檢查, 2 型糖尿?。?、{胰島素, 藥物治療, 2 型糖尿?。?, 這4 個三元組擁有同一個實體: “2 型糖尿病” 這種多個三元組包含相同實體的情況稱為實體重疊[12-13] 。而在{2 型糖尿病, 病例分型, 糖尿?。小埃?型糖尿病” 和“糖尿病” 都包含“糖尿病”實體, 這種情況稱為實體嵌套[14-15] 。
傳統(tǒng)的關(guān)系提取方法通?;谑止ぴO(shè)計的特征來進行[16-17] , 但依賴人工進行特征工程。近年來的方法主要傾向于使用神經(jīng)網(wǎng)絡(luò), 大致可分為表填充方法[18-20] 、標(biāo)記方法[21-24] 和Seq2Seq[25-27] 方法。這些方法一定程度上解決了實體重疊的問題, 但應(yīng)用于中文電子病歷上卻存在局限性。仲雨樂等[28]提出了一種基于異構(gòu)圖注意力網(wǎng)絡(luò)的藥物不良反應(yīng)實體關(guān)系聯(lián)合抽取模型, 通過異構(gòu)圖注意力網(wǎng)絡(luò)融合字符與關(guān)系節(jié)點語義, 在節(jié)點表示更新后抽取藥物不良反應(yīng)實體關(guān)系, 可有效解決藥物不良反應(yīng)實體關(guān)系重疊問題, 但該模型局限于藥物不良反應(yīng)實體關(guān)系抽取而不能泛化至中文電子病歷文本。韓普等[29] 在深度學(xué)習(xí)模型BiLSTM-CRF 基礎(chǔ)上, 引入語言模型BERT 和迭代膨脹卷積神經(jīng)網(wǎng)絡(luò), 并引入自注意力機制捕獲全局上下文重要信息, 顯著提高了糖尿病醫(yī)學(xué)實體抽取的性能。Zeng X 等[30] 提出了復(fù)制機制生成實體關(guān)系的三元組, 雖然緩解了實體間關(guān)系重疊的問題, 但僅考慮了實體間的單一關(guān)系, 忽略了多種關(guān)系的重疊。Wei Z 等[31] 基于BERT模型提出了二進制標(biāo)注框架, 但在關(guān)系抽取時忽略了實體間上下文聯(lián)系導(dǎo)致結(jié)構(gòu)特征丟失, 無法穩(wěn)定實現(xiàn)實體識別。
實體嵌套識別是實體關(guān)系抽取研究中的一個關(guān)鍵問題, 但當(dāng)前大多數(shù)研究[32-35] 都沒有考慮醫(yī)療文本領(lǐng)域中實體之間的嵌套存在著不同的類別限制。一些基于跨度提取實體的模型[36] 通過將關(guān)系映射到每個潛在實體對來進行關(guān)系分類會導(dǎo)致大量冗余和不正確的三元組[10] 。此外, 基于跨度的提取僅關(guān)注實體的起始和結(jié)束位置, 無法處理實體嵌套問題[6] 。衡紅軍等[37] 提出了一種融合語義和句法圖神經(jīng)網(wǎng)絡(luò)的二元標(biāo)記實體關(guān)系聯(lián)合抽取模型, 對語義信息和語法信息進行融合實現(xiàn)信息互補, 但模型的時間復(fù)雜度和空間復(fù)雜度較大。Wang Y 等[38] 提出的TPLinker 方法通過令牌到實體的鏈接方案來方便實體提取, 并根據(jù)給定的關(guān)系將主題實體與對象實體對齊。然而, TPLinker 仍存在冗余的關(guān)系判斷, 同時其主客體對齊過程過于復(fù)雜, 限制了關(guān)系提取的效率。Bai T 等[39] 設(shè)計了面向中醫(yī)藥文本的關(guān)系抽取模型, 基于卷積神經(jīng)網(wǎng)絡(luò)與片段注意力機制提取文本的局部語義特征并對關(guān)系分類, 但該模型依賴大量的標(biāo)注數(shù)據(jù), 迭代訓(xùn)練成本較高。
總體而言, 中文電子病歷需要處理復(fù)雜的實體結(jié)構(gòu)和關(guān)系, 需要進一步研究更高效、準(zhǔn)確的關(guān)系抽取模型處理實體重疊和實體嵌套問題, 以提高關(guān)系抽取的性能和魯棒性。與現(xiàn)有研究不同, 本文采用了特定關(guān)系注意力機制和全局指針網(wǎng)絡(luò), 以有效處理實體的重疊和嵌套情況, 同時提出了上下文關(guān)系觸發(fā)的實體對齊機制, 以更有效地生成關(guān)系三元組, 從而有效提升中文電子病歷中的關(guān)系抽取效果。
2 面向中文醫(yī)學(xué)電子病歷的關(guān)系抽取模型
2. 1 模型構(gòu)建
本文構(gòu)建了針對中文醫(yī)療電子病歷的關(guān)系抽取模型, 架構(gòu)如圖1 所示, 主要由詞嵌入編碼器模塊、關(guān)系優(yōu)先級解碼器模塊、全局實體提取模塊和主客體對齊模塊組成。首先利用文本中所有潛在關(guān)系,先完成關(guān)系預(yù)測, 減少多種關(guān)系的搜索空間, 提高關(guān)系對應(yīng)效率; 其次利用特定關(guān)系注意力機制, 表示文本句子信息, 從而得到更多的實體關(guān)系信息,然后結(jié)合全局指針網(wǎng)絡(luò), 識別并提取醫(yī)療實體; 最后采用實體對應(yīng)矩陣來實現(xiàn)實體—客體的對齊, 通過計算所有潛在主體和客體之間的對應(yīng)分?jǐn)?shù), 高效并準(zhǔn)確地找出正確的三元組。
對于關(guān)系三重提取任務(wù), 輸入是一個句子X =(x1,x2,…,xn ), 它包含句子的n 個標(biāo)記和一個特殊的[CLS]標(biāo)記xcls 。設(shè)R 為預(yù)定義關(guān)系類型的集合。本文提出的模型用于確定所有可能的三元組T(X)= (ei ,rij ,ej ), 其中ei 、ej 分別是表示主體和客體的標(biāo)記序列, 而rij ∈R 是ei 和ej 之間的關(guān)系。整個過程被分解為3 個步驟:
1) 與以往對每個關(guān)系冗余地執(zhí)行實體提取不同, 首先預(yù)測句子中候選關(guān)系的子集, 然后根據(jù)這些目標(biāo)關(guān)系提取實體。該模塊首先預(yù)測與非自回歸解碼器的潛在關(guān)系, 然后使用二元分類器排除不相關(guān)的關(guān)系。對于給定的句子S, 此任務(wù)的輸出是Yr(S)= {r1,…,rm | ri ∈R}, 其中m 是潛在關(guān)系子集的大小。
2) 對于給定的句子S 和預(yù)測的潛在關(guān)系ri , 使用特定關(guān)系注意力機制衡量每個字符對特定關(guān)系的重要性, 得到特定關(guān)系下的句子表示Sr , 然后利用全局指針生成網(wǎng)絡(luò)將句子表示中的實體首尾視為一個整體去進行判別, 得到實體對表示。對于句子表示Sr , 此任務(wù)的輸出是Yr(Sr )= {(e1,e2 ),…,(ei ,ej )}, 其中(e1,e2)、(ei ,ej )是潛在的實體對。
3) 對于給定的句子, 計算預(yù)測主體和客體的起始標(biāo)記之間的對應(yīng)分?jǐn)?shù), 這意味著只有真正三元組的起始得分較高。設(shè)M 表示全局對應(yīng)矩陣。此任務(wù)的輸出為Ys(S)= M∈Rn×n 。
2. 2 詞嵌入編碼器模塊
預(yù)訓(xùn)練模型BERT[40] 在命名實體識別、關(guān)系抽取中都呈現(xiàn)出了很好的效果, 但主要適用于英文文本。本文基于BERT-base-Chinese 預(yù)訓(xùn)練語言模型構(gòu)建了詞嵌入編碼器模塊, 專用于在中文醫(yī)學(xué)電子病歷文本中提取文本特征信息, 并將提取到的文本特征信息輸入到解碼模塊中進行解碼。由于關(guān)系抽取任務(wù)的輸入不是句子對而是單個句子, 所以在BERT-base-Chinese 中只使用句子的字符嵌入和位置嵌入作為輸入向量, 沒有使用句子分割嵌入。本文提出的模型可以很容易地通過迭代來處理帶有多個句子的電子病歷。本文使用多級Transformer 編碼結(jié)構(gòu), 從輸入向量中來獲取句子的深層語義表示,Transformer 模塊表示為Trans(x), 其中x 表示輸入向量。編碼后的句子狀態(tài)向量可表示為h0, 計算方式如式(1)、(2) 所示:
h0 =SWs +wp (1)
hα =Trans(hα-1), α∈(1,N) (2)
其中, S 是輸入句子的one-hot 向量的矩陣, 其代表著句子注意力掩碼; Ws 是字符嵌入矩陣, wp是位置嵌入矩陣, hα 表示隱藏層的狀態(tài)向量, 采用BERT-base-Chinese 的最后一層隱藏層的狀態(tài)向量表示, 作為句子的最終語義表示。
2. 3 關(guān)系優(yōu)先級解碼器模塊
傳統(tǒng)關(guān)系抽取往往是先識別實體對再進行關(guān)系分類, 由于沒有任何關(guān)系信息介入導(dǎo)致很多抽取出大量多余的不匹配實體。為了解決實體冗余問題,本文設(shè)計了關(guān)系優(yōu)先解碼模塊, 先根據(jù)句子的語義表示信息預(yù)測出句子中的目標(biāo)潛在關(guān)系集合, 將關(guān)系信息融入到句子中再提取相關(guān)醫(yī)療實體, 可顯著減少冗余實體數(shù)量。如圖1 所示, 關(guān)系優(yōu)先級解碼器模塊中黃色虛線區(qū)域是關(guān)系優(yōu)先級解碼器模塊的整體結(jié)構(gòu)。其中{p1,p2,…,pn }是所有潛在關(guān)系集合,使用非自回歸解碼器對潛在關(guān)系進行預(yù)測, 并使用二元分類器來消除不相關(guān)的關(guān)系, 獲取目標(biāo)關(guān)系。
本文采用基于Transformer 的非自回歸解碼器預(yù)測潛在關(guān)系, 解碼器的輸入由nq 的可學(xué)習(xí)嵌入Q∈Rnq×d初始化, 其中nq 設(shè)置為句子中的最大關(guān)系數(shù)。給定具有n 個標(biāo)記的句子嵌入hα∈Rnq×d , 給定輸出嵌入Hr∈Rnq×d , 預(yù)測的關(guān)系由式(3)、(4) 獲得:
Havgα =Avgpool(hα ) (3)
pi =Softmax(Wr havgr +br ) (4)
其中, Avgpool 是平均池化操作, Wr ∈R|R |×d ,br∈R|R | 是可學(xué)習(xí)的參數(shù)并且R 是關(guān)系類型的總數(shù)。{r1,r2,…,rn }是獲取的目標(biāo)潛在關(guān)系集合。
本文模型過濾掉了不相關(guān)的潛在關(guān)系, 更高效地生成了候選關(guān)系集合。根據(jù)非自回歸解碼器的輸出表示矩陣Hr 和[CLS]的嵌入, 使用二元分類器來預(yù)測布爾掩碼向量M, 以指導(dǎo)候選關(guān)系集的篩選如式(5) 所示:
M =σ(Ws [Hr ;xcls ]+bs ) (5)
其中Ws 是可訓(xùn)練權(quán)重, bs 是偏差, σ 是sig?moid 激活函數(shù)。激活函數(shù)得到的值越高代表關(guān)系在句子中被包含的置信度就越高。本文將其建模為多標(biāo)簽二元分類任務(wù), 如果概率超過閾值λ1, 則將為相應(yīng)的關(guān)系分配標(biāo)簽1, 否則將分配標(biāo)簽0。在此步驟中, 過濾掉每個句子中無用的關(guān)系, 并預(yù)測一個子集Rn ={r1,r2,…,rn }∈R 來丟棄大多數(shù)負(fù)樣本。
2. 4 全局實體提取模塊
本文模型的核心是全局實體提取模塊, 結(jié)合了關(guān)系特定注意力機制和全局指針網(wǎng)絡(luò)來分別解決實體重疊和實體嵌套問題。該模塊中的關(guān)系特定注意力機制首先篩選出每條數(shù)據(jù)中可能存在的關(guān)系, 然后依次根據(jù)每個關(guān)系對該數(shù)據(jù)進行注意力計算, 得到包含關(guān)系語義的句子, 避免了實體重疊帶來的影響。特定關(guān)系注意力機制根據(jù)不同的關(guān)系和上下文信息給每個漢字分配不同的權(quán)重。計算公式如式(6)、(7) 所示:
其中rk 是第k 個關(guān)系的可訓(xùn)練嵌入, 其中V,Wr ,Wα ,Wx∈R|R |×d是可訓(xùn)練參數(shù)。hα 代表句子的全局表示。得到的注意力分?jǐn)?shù)不僅可以衡量每個漢字與特定關(guān)系之間的重要性, 還可以衡量每個漢字與整個句子的關(guān)聯(lián)性。最后, 使用醫(yī)療句子中的每個漢字的加權(quán)和與特定關(guān)系類型rk 來計算句子表示sk , 如式(8) 所示:
圖2 是本模型使用全局指針網(wǎng)絡(luò)的一個示例,可以發(fā)現(xiàn)當(dāng)需要在一條醫(yī)療句子中識別出4 個醫(yī)療實體: {疾?。?糖尿?。?、{疾?。?2 型糖尿?。?、{檢查: 血糖}、{藥物: 胰島素}時, 由于雙指針無法解決實體嵌套問題, 很容易將句中實體識別為3 個實體: {疾病: 2 型糖尿?。ⅲ麢z查: 血糖}、{藥物: 胰島素}。
本文模型采用了基于全局指針網(wǎng)絡(luò)的解碼方式來解決實體嵌套問題, 將實體首尾作為一個整體進行識別, 而不是先識別頭實體再識別尾實體。根據(jù)實體不同屬性, 生成不同屬性的矩陣。矩陣中位置為1 的代表該位置有實體, 矩陣中行代表實體開始位置, 矩陣列為實體結(jié)束位置, 全局指針網(wǎng)絡(luò)通過提取和分類兩個步驟實現(xiàn)實體識別, 提取是指提取實體跨度, 而分類是指確定每個實體的類型。為了簡單起見, 本文采用單一實體類型識別策略, 并迭代處理多個實體類型。采用點積注意力機制和相對位置編碼(RoPE)來生成圖2 所示的評分矩陣。引入RoPE 相對位置可以提高對實體長度和跨度的敏感性, 從而更好地區(qū)分嵌套實體。具體來說, 設(shè)句子表示長度為n, 實體屬性集合為E = {疾病、藥物、測試、癥狀…}。假設(shè)特定關(guān)系類型的句子向量序列為{s1,s2,…,sn }, 則解碼向量qi,α和ki,α表達式如式(9)、(10) 所示:
qi,α =Wq αhi +bq α (9)
ki,α =Wk αhi +bk α (10)
其中i 表示為經(jīng)過線性變換后句子中第i 個詞位置, α 表示為屬性集合中第α 種屬性, bq α 和bk α 是可訓(xùn)練的參數(shù)。由上可以得到兩個解碼向量qα =[q1,α ,q2,α ,…,qn,α ]和kα =[k1,α ,k2,α ,…,kn,α ],最后采用雙線性變換法(Bilinear)對第α 個矩陣中第i 行j 列的位置進行打分, 如式(11) 所示:
sα(i,j)= qTiα kiα (11)
其中sα(i,j)表示為句子中以i 開始到j 結(jié)束的連續(xù)片段的實體的屬性是α 的分?jǐn)?shù), 如果這個分?jǐn)?shù)大于1, 就說明提取出來的實體對是潛在的正確實體對。
2. 5 主客體對齊模塊
經(jīng)過全局實體提取模塊處理后, 本文模型獲取了與句子關(guān)系有關(guān)的所有可能的主體和客體, 然后使用主客體對應(yīng)模塊來進一步確定正確的實體對。主客體對應(yīng)模塊可以將頭尾實體對齊, 以較低的復(fù)雜度組合成三元組。該模塊先識別出頭尾實體并放入置信度矩陣, 根據(jù)矩陣中頭尾實體的置信度進一步確定全局實體抽取模塊得到的實體對的正確性。因為模型中提出的全局對應(yīng)矩陣與實體關(guān)系無關(guān),可以與潛在的關(guān)系優(yōu)先級解碼器模塊中的關(guān)系預(yù)測任務(wù)同時學(xué)習(xí)。首先枚舉所有可能的主客體實體對;然后在全局矩陣中檢查每個實體對的相應(yīng)分?jǐn)?shù), 如果值超過某個閾值λ2 則保留, 否則將其過濾掉。
如圖1 中的綠色矩陣M 所示, 給定一個帶有n個標(biāo)記的句子, 全局對應(yīng)矩陣的形狀將為n×n。該矩陣中的每個條目都是關(guān)于成對的主體和客體的起始位置, 它代表了主客體對的置信水平, 計算的值越高, 則表示該主客體對屬于一組三元組的置信水平就越高。例如, 如果第1 行第1 列中有關(guān)“糖尿病” 和“二型糖尿病” 的值很高, 說明它們位于正確的三元組中, 屬于{2 型糖尿病, 病例分型,糖尿病}。矩陣中每個元素的值由式(12) 獲得:
Pisub,jobj =σ(Wg [hsubi ;hobjj ]+bg ) (12)
其中hsubi ,hobjj ∈Rd×l是輸入句子中第i 個標(biāo)記和第j 個標(biāo)記的編碼代表, 形成一對潛在的主體和客體。Wg∈R2d×l 是可訓(xùn)練的權(quán)重, σ 是sigmoid 激活函數(shù)。
3 實驗流程與結(jié)果分析
3. 1 數(shù)據(jù)標(biāo)注與保存
對醫(yī)療文本, 包括診斷信息、出院小結(jié)—入院時情況、出院小結(jié)—住院經(jīng)過、醫(yī)囑、醫(yī)療文獻等進行標(biāo)注, 在注釋階段, 每個醫(yī)療文本都由3~5 名領(lǐng)域?qū)<疫M行注釋, 并采用獲得多數(shù)票的注釋。
關(guān)系提取是指對主體和客體之間關(guān)系的識別,涉及實體標(biāo)注和實體之間關(guān)系標(biāo)注。實體類型主要包括: 疾病、其他治療、手術(shù)治療、檢查、流行病學(xué)、癥狀、社會學(xué)、藥物、部位、預(yù)后、其他, 共計11 種實體。設(shè)定疾病實體為主體, 其余實體為客體, 對兩兩間的關(guān)系進行標(biāo)注, 共計44 種關(guān)系,如圖3 所示。
為了方便模型訓(xùn)練, 將標(biāo)注文本以JSON 格式保存。以句子為單位進行分割, 為每個句子建立1個或多個三元組。三元組由主體及其實體類型、客體及其實體類型、主客體間的關(guān)系組成。每個句子的JSON 保存形式如圖4 所示。
3. 2 實驗設(shè)計與分析
為驗證本文方法的先進性, 選?。?個用于實體關(guān)系抽取的基準(zhǔn)模型與本文模型進行對比:
1) ETL-Span 通過區(qū)分所有的頭實體, 利用片段標(biāo)記來識別對應(yīng)的尾實體和關(guān)系[18] 。
2) RSAN 采用基于關(guān)系的注意網(wǎng)絡(luò), 采用了關(guān)系感知的注意機制, 隨后進行序列標(biāo)記, 相應(yīng)地提取頭實體和尾實體[20] 。
3) CasRel 是將句子中的關(guān)系建模為將主語映射到賓語的函數(shù)[21] 。
4) TPLinker 是一種單階段的聯(lián)合實體抽取模型, 將聯(lián)合抽取制定為一個鏈接標(biāo)記對的問題, 引入了新的握手標(biāo)記方案, 用于對實體對的邊界標(biāo)記進行對齊, 以減輕曝光偏差[38] 。
5) PRGC 具有預(yù)指示潛在關(guān)系的組件, 然后應(yīng)用關(guān)系特定的序列標(biāo)記組合來處理主語和賓語之間的重疊概率[22] 。
6) OneRel 是一種新的聯(lián)合關(guān)系抽取模型, 引入了一個細(xì)粒度的三元組分類問題作為聯(lián)合抽取的轉(zhuǎn)換[19] 。
表1 展示了各個模型在數(shù)據(jù)集CMeIE 上的關(guān)系抽取效果, 由表1 可知, 本文模型在精確率P 值、召回率R 值和F1 值上均優(yōu)于其他6 個模型。從F1值上來看, 本文模型比ETL-Span 高14. 3%, 比RSAN 高7. 6%, 比CasRel 高6. 6%, 比TPLinker 高5. 3%, 比PRGC 高5. 0%, 比OneRel 高4. 1%。
表2 展示了各個模型在數(shù)據(jù)集DiaKG 上的關(guān)系抽取效果, 由表2 可知, 本文模型在P 值、R 值、F1 值上均優(yōu)于其他6 個模型。從F1 值上來看, 本文模型比ETL-Span 高10%, 比RSAN 高7."4%, 比CasRel 高5. 8%, 比TPLinker 高5. 2%, 比PRGC 高4. 2%, 比OneRel 高3. 6%。因此, 表1、表2 的數(shù)據(jù)均可證明, 本文的模型更適合中文醫(yī)療關(guān)系抽取。
為了全面評估本文模型解決實體重疊/ 嵌套問題能力, 本文根據(jù)實體特征將兩個數(shù)據(jù)集分成了特定的子集。本文模型和其他模型在兩個數(shù)據(jù)集上的F1 得分列在表3 中。
比較結(jié)果表明, 本文模型在處理Normal、SEO和EPO 方面表現(xiàn)出色, 表明模型能夠有效處理復(fù)雜句子中的復(fù)雜關(guān)系。從表3 的實驗結(jié)果中可以看出, 在CMeIE 數(shù)據(jù)集上, 本文模型在Normal、SEO和EPO 類型中分別取得了75. 1%、79. 6%和77. 6%的F1 得分。在DiaKG 數(shù)據(jù)集上, 本文模型在Nor?mal、SEO 和EPO 類型中分別取得了65. 2%、69. 2%和66. 6%的F1 得分, 均大于其他6 個模型。實驗再次證明本文模型在實體提取之前融入了關(guān)系注意力機制來整合關(guān)系信息, 并利用全局指針來提取實體, 這兩者都有助于有效處理復(fù)雜場景。具體而言,本文模型在解決SEO 問題方面表現(xiàn)最佳, 其次是EPO 和Normal。
為研究各功能模塊在本文模型中的貢獻度, 本文對CMeIE 和DiaKG 的兩個數(shù)據(jù)集進行了消融實驗, 結(jié)果如表4 所示。
首先, 從模型中移除了關(guān)系優(yōu)先解碼器組件,并使用兩個數(shù)據(jù)集中的每個關(guān)系進行實體提取。結(jié)果顯示, 在CMeIE 數(shù)據(jù)集上, 本文模型的精確度下降了6%, 召回率下降了0. 7%, F1 得分下降了3%。在DiaKG 數(shù)據(jù)集上, 本文模型的精確度、召回率和F1 得分分別下降了4. 8%、1%和3%。這是由于在大型關(guān)系集數(shù)據(jù)集中, 使用單獨的關(guān)系預(yù)測實體會引入重復(fù)的實體和關(guān)系, 導(dǎo)致模型性能下降。該實驗證明了關(guān)系優(yōu)先解碼器模塊在整體模型中的有效性, 提高了精確度。
其次, 通過移除關(guān)系特定的注意機制模塊, 不再構(gòu)建特定關(guān)系的句子表示。相反, 直接使用關(guān)系嵌入來引導(dǎo)實體提取過程。結(jié)果顯示, 在CMeIE 數(shù)據(jù)集上, 本文模型的精確度下降了23. 7%, 召回率下降了1%, F1 得分下降了13."8%。在DiaKG 數(shù)據(jù)集上, 本文模型的精確度、召回率和F1 得分分別下降了20. 3%、0. 7%和11. 5%。這是因為關(guān)系嵌入僅學(xué)習(xí)三元組的淺層共現(xiàn)關(guān)系, 導(dǎo)致更多的三元組預(yù)測精確度較低。相比之下, 關(guān)系特定注意機制可以捕捉句子中的細(xì)粒度語義特征, 為后續(xù)模塊提供基于特定關(guān)系的全局指針, 增強實體提取性能。
第三, 通過移除全局指針模塊, 并采用雙指針方法使用指針標(biāo)簽檢測實體的起始和結(jié)束位置時,結(jié)果顯示在CMeIE 數(shù)據(jù)集上, 本文模型的精確度下降了16. 2%, 召回率下降了2%, F1 得分下降了9. 6%。在DiaKG 數(shù)據(jù)集上, 本文模型的精確度、召回率和F1 得分分別下降了11.7%、3.4%和7.7%。這是因為基于指針的方法只關(guān)注實體的起始和結(jié)束位置, 對實體的長度和跨度不敏感。然而, 全局指針模塊考慮了每個實體的長度, 將起始和結(jié)束位置視為單個位置標(biāo)簽。這種方法可以提高精確度, 并有效處理嵌套實體。
最后, 通過移除全局對應(yīng)矩陣模塊, 使用啟發(fā)式的最近鄰原則將主語和賓語組合起來時, 結(jié)果顯示在CMeIE 數(shù)據(jù)集上, 本文模型的精確度下降了10. 2%, 召回率下降了1%, F1 得分下降了6%。在DiaKG 數(shù)據(jù)集上, 本文模型的精確度、召回率和F1得分分別下降了6. 7%、0. 9%和3. 8%。這是因為沒有了實體矩陣模塊, 模型預(yù)測了更多的三元組,由于許多不匹配的實體對影響了模型的性能, 失去了矩陣所施加的約束。
4 結(jié)束語
本文提出了一種面向中文病歷的關(guān)系抽取模型,解決了傳統(tǒng)抽取方法中實體冗余、實體詞嵌套和實體重疊問題, 顯著提高了中文醫(yī)學(xué)關(guān)系抽取的性能。該模型通過解碼器預(yù)測和關(guān)系過濾, 使用過濾后的實體關(guān)系限制實體提取, 通過關(guān)系特定的注意機制和全局指針網(wǎng)絡(luò)提取全局實體, 最后通過實體對應(yīng)矩陣將主體、客體及其關(guān)系對齊為三元組。與基準(zhǔn)方法相比, 本文提出的模型可有效解決中文病歷中信息重疊和主體/ 客體嵌套問題, 幫助醫(yī)療專業(yè)人員更有效地訪問和利用電子病歷中的關(guān)鍵信息, 從而提高診斷的準(zhǔn)確性和治療的效率。后續(xù)研究將著眼于設(shè)計基于全局指針標(biāo)記策略的低復(fù)雜度標(biāo)記方法, 并探索將強化學(xué)習(xí)與解決重疊關(guān)系抽取任務(wù)相結(jié)合, 進一步增強對各類實體的標(biāo)記效率, 進而提升關(guān)系抽取效率。
參考文獻
[1] 王晗, 馬捷, 易曾, 等. 面向特定病癥的中醫(yī)醫(yī)案語料庫構(gòu)建———以睡眠障礙病癥為例[J]. 情報科學(xué), 2024, 42 (2): 97-108.
[2] 韓普, 葉東宇, 陳文祺, 等. 面向多模態(tài)醫(yī)療健康數(shù)據(jù)的知識組織模式研究[J]. 現(xiàn)代情報, 2023, 43 (10): 27-34, 151.
[3] 李肖俊, 邵必林. 多源異構(gòu)數(shù)據(jù)情境中學(xué)術(shù)知識圖譜模型構(gòu)建研究[J]. 現(xiàn)代情報, 2020, 40 (6): 88-97.
[4] 琚沅紅, 牟冬梅, 王書童, 等. 少樣本高質(zhì)量醫(yī)學(xué)知識的命名實體識別研究———以肺癌診療規(guī)范為例[J]. 現(xiàn)代情報, 2023,43 (2): 9-19.
[5] 李子昊, 陳漠沙, 馬鎮(zhèn)新, 等. 中文醫(yī)療因果關(guān)系抽取數(shù)據(jù)集CMedCausal [J]. 醫(yī)學(xué)信息學(xué)雜志, 2022, 8 (12): 23-27, 31.
[6] 汪詩蕊, 解博涵, 丁玲, 等. 知識與句法融合的因果關(guān)系抽取網(wǎng)絡(luò)[J]. 大數(shù)據(jù), 2024, 10 (3): 82-92.
[7] Lin Y, Ji H, Huang F, et al. A Joint Neural Model for InformationExtraction with Global Features [C] / / Proceedings of the 58th An?nual Meeting of the Association for Computational Linguistics, 2020:7999-8009.
[8] Li Z, Fu L, Wang X, et al. RFBFN: A Relation-First BlankFilling Network for Joint Relational Triple Extraction [ C] / / Pro?ceedings of the 60th Annual Meeting of the Association for Computa?tional Linguistics: Student Research Workshop, 2022: 10-20.
[9] 李綱, 潘榮清, 毛進, 等. 整合BiLSTM-CRF 網(wǎng)絡(luò)和詞典資源的中文電子病歷實體識別[J]. 現(xiàn)代情報, 2020, 40 (4):3-12, 58.
[10 ] Diana S, Francisco M. Biomedical Relation Extraction withKnowledge Graph-based Recommendations [ J]. IEEE Journal ofBiomedical and Health Informatics, 2022, 26 (8): 4207-4217.
[11] 牟冬梅, 彭浩, 華樹成, 等. 電子病歷數(shù)據(jù)勢能模型研究[J].現(xiàn)代情報, 2023, 43 (5): 3-13, 22.
[12] 黃曉芳, 陳劍秋, 周祖宏, 等. 基于BERT 的電子病歷實體關(guān)系聯(lián)合抽取研究[J]. 醫(yī)學(xué)信息學(xué)雜志, 2023, 9 (2): 28-34.
[13] 董美, 常志軍. 一種面向中醫(yī)領(lǐng)域科技文獻的實體關(guān)系抽取方法[J]. 圖書情報工作, 2022, 66 (18): 105-113.
[14] 周佳倫, 李琳宇, 馬洪彬, 等. MRC-PBM: 一種中文電子病歷嵌套命名實體識別方法[ J]. 國外電子測量技術(shù), 2024,43 (1): 159-165.
[15] 陳鵬, 馬洪彬, 周佳倫, 等. FCG-NNER: 一種融合字形信息的中文嵌套命名實體識別方法[J]. 重慶理工大學(xué)學(xué)報(自然科學(xué)), 2023, 37 (12): 222-231.
[16] Li Q, Ji H. Incremental Joint Extraction of Entity Mentions and Relations [C] / / Proceedings of the 52nd Annual Meeting of theAssociation for Computational Linguistics, 2014: 402-412.
[17] Xing W, Qi J, Yuan X, et al. A Gene-phenotype RelationshipExtraction Pipeline From the Biomedical Literature Using a Represen?tation Learning Approach [ J]. Bioinformatics, 2018, 34 ( 13):i386-i394.
[18] Riedel S, Yao L, McCallum A. Modeling Relations and TheirMentions Without Labeled Text [ C ] / / Machine Learning andKnowledge Discovery in Databases: European Conference, ECMLPKDD 2010, Barcelona, Spain, September 20 - 24, 2010, Pro?ceedings, Part Ⅲ 21. Springer Berlin Heidelberg, 2010: 148-163.
[19] Shang Y M, Huang H Y, Mao X L. OneRel: Joint Entity andRelation Extraction With One Module in One Step [ J]. Proceed?ings of the AAAI Conference on Artificial Intelligence, 2022, 36(10): 11285-11293.
[20] Ren F, Zhang L, Yin S, et al. A Novel Global Feature-orientedRelational Triple Extraction Model Based on Table Filling [ C] / /Proceedings of the 2021 Conference on Empirical Methods in Natu?ral Language Processing, 2021: 2646-2656.
[21] Miwa M, Sasaki Y. Modeling Joint Entity and Relation Extractionwith Table Representation [C] / / Proceedings of the 2014 Confer?ence on Empirical Methods in Natural Language Processing( EMN?LP), 2014: 1858-1869.
[22] Wei Z, Su J, Wang Y, et al. A Novel Cascade Binary TaggingFramework for Relational Triple Extraction [ C] / / Proceedings ofthe 58th Annual Meeting of the Association for Computational Lin?guistics, 2020: 1476-1488.
[23] Li G, Chen X, Wang P, et al. FastRE: Towards Fast RelationExtraction with Convolutional Encoder and Improved Cascade BinaryTagging Framework [C] / / Proceedings of the Thirty-First Inter?national Joint Conference on Artificial Intelligence, 2022: 4201-4208.
[24] Zhao Y, Li X. A Subject-aware Attention Hierarchical Tagger forJoint Entity and Relation Extraction [ C] / / Advanced InformationSystems Engineering: 34th International Conference, CAiSE 2022,Leuven, Belgium, June 6-10, 2022, Proceedings, 2022: 270-284.
[25] Zeng D, Liu K, Lai S, et al. Relation Classification via Convolu?tional Deep Neural Network [C] / / Proceedings of COLING 2014,the 25th International Conference on Computational Linguistics:Technical Papers, 2014: 2335-2344.
[26] John G, Gary D, Wang B. A Sequence-to-Sequence Approachfor Document-level Relation Extraction [ C] / / Proceedings of the21st Workshop on Biomedical Language Processing, 2022: 270-284.
[27] Pere-Lluís H C, Roberto N. REBEL: Relation Extraction byEnd-to-End Language Generation [C] / / Findings of the Associa?tion for Computational Linguistics: EMNLP 2021, 2021: 2370-2381.
[28] 仲雨樂, 韓普, 許鑫. 基于異構(gòu)圖注意力網(wǎng)絡(luò)的藥物不良反應(yīng)實體關(guān)系聯(lián)合抽取研究[J]. 現(xiàn)代情報, 2024, 44 (9): 71-81.
[29] 韓普, 顧亮. 基于混合深度學(xué)習(xí)的中文醫(yī)學(xué)實體抽取研究[J].圖書情報工作, 2022, 66 (14): 119-127.
[30] Zeng X, Zeng D, He S, et al. Extracting Relational Factsby anEnd-to-End Neural Model with Copy Mechanism [C] / / Proceed?ings of the 56th Annual Meeting of the Association for ComputationalLinguistics (Volume 1: Long Papers), 2018: 506 -514.
[31] Wei Z, Su J, Wang Y, et al. A Novel Cascade Binary TaggingFramework for Relational Triple Extraction [ C] / / Proceedings ofthe 58th Annual Meeting of the Association for Computational Lin?guistics, 2020: 1476-1488.
[32] Ju M Z, Miwa M, Ananiadou S. A Neural Layered Model forNested Named Entity Recognition [C] / / Proc. of the 2018 Conf.of the North American Chapter of the Association for ComputationalLinguistics: Human Language Technologies, Vol 1 ( Long Pa?pers). New Orleans: ACL, 2018: 1446-1459.
[33] Wang J, Shou L D, Chen K, et al. Pyramid: A Layered Modelfor Nested Named Entity Recognition [C] / / Proc. of the 58th An?nual Meeting of the Association for Computational Linguistics. ACL,2020: 5918-5928.
[34] Zheng C M, Cai Y, Xu J Y, et al. A Boundary-aware NeuralModel for Nested Named Entity Recognition [ C] / / Proc. of the2019 Conf. on Empirical Methods in Natural Language Processingand the 9th Intl Joint Conf. on Natural Language Processing. HongKong: ACL, 2019: 357-366.
[35] Su J, Murtadha A, Pan S, et al. Global Pointer: Novel EfficientSpan-based Approach for Named Entity Recognition [EB/ OL]. ht?tps:/ / arxiv.org/ abs/2208.03054.2024.
[36] Li Z, Fu L Y, Wang X B, et al. RFBFN: A Relation -firstBlank Filling Network for Joint Relational Triple Extraction [C] / /Proceedings of the 60th Annual Meeting of the Association for Com?putational Linguistics: Student Research Workshop, 2022: 10-20.
[37] 衡紅軍, 苗菁. 融合語義和句法圖神經(jīng)網(wǎng)絡(luò)的實體關(guān)系聯(lián)合抽?。郏剩荩?計算機科學(xué), 2023, 50 (9): 295-302.
[38] Wang Y, Yu B, Zhang Y, et al. TPLinker: Single-stage JointExtraction of Entities and Relations Through Token Pair Linking[C] / / Proceedings of the 28th International Conference on Compu?tational Linguistics, 2020: 1572-1582.
[39] Bai T, Guan H T, Wang S, et al. Traditional Chinese MedicineEntity Relation Extraction Based on CNN with Segment Attention[J]. Neural Computing and Applications, 2022, 34 (4): 2739-2748.
[40] Devlin J, Chang M W, Lee K, et al. Bert: Pre-training of DeepBidirectional Transformers for Language Under -standing [ C] / /Proceedings of NaacL.. -HLT, 2019: 4171-4186.
(責(zé)任編輯: 楊豐僑)
基金項目: 國家重點研發(fā)計劃“主動健康服務(wù)數(shù)治化技術(shù)區(qū)域綜合應(yīng)用示范” ( 項目編號: 2023YFC3605800); 國家社會科學(xué)基金重大課題“新時代我國文獻信息資源保障體系重構(gòu)研究” (項目編號: 19ZDA346); 江蘇省前沿引領(lǐng)技術(shù)基礎(chǔ)研究專項“ 人機物深度融合高可信網(wǎng)構(gòu)軟件技術(shù)、理論與方法” (項目編號: BK20202001)。