蔡翟源, 陳 杰, 奚雪峰,3*, 崔志明, 盛勝利
(1.蘇州科技大學(xué)電子與信息工程學(xué)院,江蘇 蘇州 215009;2.蘇州虛擬現(xiàn)實(shí)智能交互及應(yīng)用技術(shù)重點(diǎn)實(shí)驗(yàn)室,江蘇 蘇州 215009;3.蘇州智慧城市研究院,江蘇 蘇州 215009;4.德州理工大學(xué),得克薩斯州 拉伯克市 79401)
自然語言處理(Natural Language Processing,NLP)是人工智能領(lǐng)域的一個(gè)重要分支,其中命名實(shí)體識別(Named Entity Recognition,NER)是NLP 領(lǐng)域的最基礎(chǔ)、最重要的任務(wù)之一。 命名實(shí)體識別的一般目標(biāo)是對包括3 大類以及7 小類的文本段進(jìn)行命名實(shí)體的抽取,將文本從非結(jié)構(gòu)化的數(shù)據(jù)形式轉(zhuǎn)化為結(jié)構(gòu)化數(shù)據(jù)形式,方便存儲以及后續(xù)對文本的處理應(yīng)用,在信息抽取、機(jī)器問答等自然語言處理任務(wù)中有較為廣泛的應(yīng)用。
目前隨著生物醫(yī)學(xué)技術(shù)的發(fā)展,醫(yī)療領(lǐng)域的文獻(xiàn)以及資料數(shù)目已經(jīng)成幾何級增長,運(yùn)用NER 技術(shù)實(shí)現(xiàn)醫(yī)療文本的實(shí)體識別可以大大提高醫(yī)療效率。 特別是目前新型冠狀病毒的爆發(fā),更加引起人們對健康的關(guān)注,并且有力帶動(dòng)醫(yī)療技術(shù)的快速進(jìn)步。 在醫(yī)療領(lǐng)域,醫(yī)務(wù)工作者通過醫(yī)療管理系統(tǒng),直接將患者的基本信息和病況信息錄入系統(tǒng),存儲在服務(wù)器中,生成電子醫(yī)療數(shù)據(jù),其中電子病歷是最為常見的一種電子醫(yī)療文本。 對電子病歷文本進(jìn)行實(shí)體識別,將繁雜的醫(yī)療文本以結(jié)構(gòu)化的數(shù)據(jù)形式存儲起來,給醫(yī)學(xué)工作者在后續(xù)的分析數(shù)據(jù)工作中節(jié)省了很多時(shí)間,并為醫(yī)學(xué)工作提供更加高效的分析、研究和決策。
電子病歷實(shí)體識別主要關(guān)注于臨床病歷中的疾病癥狀、檢查、手術(shù)、藥物等專有詞語,相較于通用領(lǐng)域?qū)嶓w識別,電子病歷實(shí)體識別的詞語更傾向于短語結(jié)構(gòu),例如,在病歷記錄中,記錄患者“無靜脈曲張”包含疾病詞“靜脈曲張”和“患者未患有”兩種信息。 目前國內(nèi)公開的電子病歷實(shí)體識別數(shù)據(jù)集——醫(yī)渡云數(shù)據(jù)集,在疾病實(shí)體標(biāo)記時(shí),只標(biāo)記出與疾病相關(guān)的專有名詞,而沒有將疾病與患者關(guān)聯(lián)起來,例如“無靜脈曲張”,醫(yī)渡云數(shù)據(jù)集將“靜脈曲張”標(biāo)記為疾病實(shí)體,但是事實(shí)上,患者并未患有該病。 假如需要統(tǒng)計(jì)患有靜脈曲張的病人數(shù),僅識別出靜脈曲張將會導(dǎo)致統(tǒng)計(jì)錯(cuò)誤。
電子病歷的命名實(shí)體識別主要實(shí)現(xiàn)方案可以分為四大類:基于字典的方法、基于規(guī)則的方法、基于傳統(tǒng)機(jī)器學(xué)習(xí)的方法以及基于深度學(xué)習(xí)的方法。早期基于字典的方法提取實(shí)體雖然在結(jié)構(gòu)上有易于實(shí)現(xiàn)的優(yōu)點(diǎn),但是無法解決一詞多義等問題,需要人工維護(hù)詞典,并且召回率也比較低;后來出現(xiàn)了基于規(guī)則的方法,例如,李瑩[1]對家族史病歷,通過人工學(xué)習(xí)和發(fā)現(xiàn)的辦法學(xué)習(xí)了一套淺層句法分析器,實(shí)現(xiàn)了家族病史實(shí)體提取。 這種基于規(guī)則的方法,需要手工制作符合數(shù)據(jù)集的特征集,在不滿足提取規(guī)則的文本上無法正確提取結(jié)果。 以上兩種方法均不能成功應(yīng)用于未訓(xùn)練過的的實(shí)體識別,而醫(yī)療領(lǐng)域出現(xiàn)了新的病癥名、藥物名等詞匯是較為常見的。
后來,基于統(tǒng)計(jì)的機(jī)器學(xué)習(xí)方法被應(yīng)用于命名實(shí)體識別,包括隱馬科夫模型(HMM)、最大熵馬爾科夫模型(MEMM)、條件隨機(jī)場模型(CRF)。 在醫(yī)療領(lǐng)域使用最多的就是條件隨機(jī)場模型(CRF),劉凱等人[2]將CRF模型應(yīng)用在中醫(yī)電子病歷實(shí)體識別中, 通過結(jié)合特征模板MT3 糖尿病病癥的實(shí)體提取結(jié)果F1可以達(dá)到80%;栗偉等人[3]使用CRF 與規(guī)則相結(jié)合方法,先用CRF 進(jìn)行病歷實(shí)體的初始識別,然后基于規(guī)則進(jìn)行病歷實(shí)體識別結(jié)果優(yōu)化,最后實(shí)體識別最高F1值可以達(dá)到87.26%。
隨著計(jì)算機(jī)算力的大幅提升,基于深度學(xué)習(xí)的命名實(shí)體識別方法也應(yīng)運(yùn)而生,并且在命名實(shí)體領(lǐng)域取得了很好的結(jié)果。 基于深度學(xué)習(xí)的方法可以解決采用傳統(tǒng)方法帶來的過于依靠人工特征提取,提高了效率,因此成為近來的研究熱點(diǎn)。 曹依依等人[4]構(gòu)建了卷積神經(jīng)網(wǎng)絡(luò)CNN 與條件隨機(jī)場CRF 的融合模型框架,F(xiàn)1值達(dá)到了90.31%。 陳德鑫等人[5]構(gòu)建了基于CNN+BiLSTM 模型的在線醫(yī)療實(shí)體抽取研究,最后疾病和醫(yī)院實(shí)體抽取F1值可以達(dá)到97%,其余的多種實(shí)體也都可以達(dá)到91%以上。 張華麗等人[6]使用結(jié)合注意力機(jī)制的BiLSTM-CRF 融合模型進(jìn)行中文電子病歷命名實(shí)體識別,通過注意力機(jī)制獲取字符間的依賴關(guān)系,從而優(yōu)化實(shí)體識別準(zhǔn)確率。 2018 年,Devlin 等人[7]首次提出了BERT 預(yù)訓(xùn)練模型,此后BERT 被應(yīng)用于實(shí)體識別領(lǐng)域,BERT 模型相比于傳統(tǒng)的嵌入模型,可以更好的學(xué)習(xí)上下文語義信息。 陳琛等人[8]將BERT 預(yù)訓(xùn)練模型應(yīng)用到醫(yī)療命名實(shí)體識別中,構(gòu)建了BERT-BiLSTM-CRF 模型,其結(jié)果對比于Baseline 的F1值提高了1.1%。
醫(yī)渡云數(shù)據(jù)集包括1 500 標(biāo)注文本,1 000 條非標(biāo)注文本。其中標(biāo)注的實(shí)體類別6 種,標(biāo)注的醫(yī)療實(shí)體詞表6 292 個(gè),總共標(biāo)注了26 414 個(gè)實(shí)體數(shù)據(jù)。 標(biāo)注數(shù)據(jù)集統(tǒng)計(jì)如圖1 所示。
圖1 實(shí)體類別統(tǒng)計(jì)
對于醫(yī)渡云數(shù)據(jù)集實(shí)體類別的基本釋義見表1。醫(yī)渡云數(shù)據(jù)集采用的標(biāo)注策略為BIO 標(biāo)注模式,也就是將實(shí)體的開頭字標(biāo)記為B-X(其中X 為實(shí)體類別),實(shí)體的中間字標(biāo)記為I-X,其余字符定義為無關(guān)字符,標(biāo)記為O。
表1 醫(yī)渡云數(shù)據(jù)類別描述
舉例說明:“患者腹疼痛加重”。 這句話中“患者”、“加重”都是無關(guān)字符,標(biāo)簽定義為O,“腹疼痛”為醫(yī)療實(shí)體中的疾病類,具體細(xì)分“腹”為實(shí)體“腹疼痛”的開始,標(biāo)簽標(biāo)記為B-疾病,“疼痛”為“腹疼痛”的內(nèi)部,對“疼痛”分別標(biāo)記為I。 該數(shù)據(jù)集對醫(yī)療領(lǐng)域的疾病專有名詞做出標(biāo)注,采用的標(biāo)簽為單語義標(biāo)簽,一個(gè)標(biāo)簽只包含名詞類別,無法涵蓋該名詞與患者的關(guān)系,在很多場合,需要判斷患者現(xiàn)在是否存在腹疼痛,或者是以往出現(xiàn)過腹疼痛的情況,因此,單標(biāo)簽無法包含相應(yīng)的語義信息。
在電子病歷的文本信息挖掘任務(wù)中,除了醫(yī)療名詞信息識別之外,名詞實(shí)體與患者之間的關(guān)系信息識別也是其他任務(wù)展開的基礎(chǔ),這種關(guān)系信息的識別任務(wù)也是其他諸多工作的基礎(chǔ)[9]。 關(guān)系信息主要反映疾病或癥狀在病歷文本中存在的狀態(tài),這種狀態(tài)主要體現(xiàn)在疾病或癥狀是否發(fā)生在患者本人身上,或已發(fā)生的疾病或癥狀與患者本人之間的程度,如是否當(dāng)下發(fā)生的疾病或癥狀。 參照衛(wèi)生部發(fā)布的電子病歷數(shù)據(jù)組與數(shù)據(jù)元標(biāo)準(zhǔn)[9]以及I2B2 2010 評測任務(wù)提出的關(guān)系信息類別,并且對醫(yī)渡云數(shù)據(jù)集進(jìn)行觀察分析,最終將“疾病與診斷”類和患者的關(guān)系分為四類:“當(dāng)前的”“可能的”“既往的”“否認(rèn)的”。表2 對這四類關(guān)系做出進(jìn)一步描述。
表2 疾病與患者關(guān)系類別描述
由于需要在標(biāo)簽中包含關(guān)系信息,原來的醫(yī)渡云標(biāo)注方案無法做到,因此,文中引入多標(biāo)簽標(biāo)注方案,例如,醫(yī)渡云數(shù)據(jù)集里:“2014-11-20 復(fù)查MRI 提示右附件區(qū)囊實(shí)性腫塊,考慮卵巢癌。 ”該句話中將“卵”標(biāo)注為B-疾病,“巢癌”分別標(biāo)記為I-疾病,但在此句話中“卵巢癌”僅僅是醫(yī)生推測患者可能存在的疾病,并非實(shí)質(zhì)性確定為患者患有的疾病,在文中定義的標(biāo)簽中,沿用原數(shù)據(jù)集的BIO 標(biāo)注模式,并結(jié)合上下文語義,將其標(biāo)簽做出調(diào)整。上例中調(diào)整后,“卵”:B-疾病-可能的;“巢癌”:I-疾病-可能的。經(jīng)過這樣的轉(zhuǎn)換,將僅包含名詞實(shí)體信息的標(biāo)簽轉(zhuǎn)換為帶有關(guān)系的實(shí)體標(biāo)簽。 標(biāo)注實(shí)例如圖2 所示。
圖2 多標(biāo)簽標(biāo)注實(shí)例
相對于專業(yè)名詞標(biāo)注,疾病與患者的關(guān)系語義不需要專業(yè)知識也可以進(jìn)行標(biāo)注。 筆者在醫(yī)渡云數(shù)據(jù)集標(biāo)注的基礎(chǔ)上進(jìn)行疾病關(guān)系標(biāo)注,該數(shù)據(jù)集并未完全將所有的疾病或者癥狀標(biāo)注出來,因此,文中也不會對原來未標(biāo)注的專有名詞進(jìn)行標(biāo)注。 原數(shù)據(jù)集不僅提供了原文以及標(biāo)簽數(shù)據(jù),還提供了已經(jīng)標(biāo)注的名詞的詞表,這便利了研究者的標(biāo)注工作。 根據(jù)詞表中的疾病與診斷類對應(yīng)的專有名詞筆者定位到原文中,通過閱讀上下文,將標(biāo)注為疾病類別的實(shí)體加入以上四類關(guān)系語義,形成多標(biāo)簽標(biāo)注數(shù)據(jù)集。
文中提出的用于實(shí)體識別的模型基于端到端的結(jié)構(gòu)[10]。 主要由四部分組成:ALBERT 預(yù)訓(xùn)練模型、BiLSTM 編碼層、Attention 機(jī)制、CRF 解碼層。 將電子病歷文本輸入ALBERT 模型中,輸出接BiLSTM 的輸入層,通過Attention 機(jī)制獲得強(qiáng)關(guān)注信息,最后將Attention 向量輸入到CRF 層進(jìn)行序列解碼,得到每個(gè)字的標(biāo)注類型,模型的結(jié)構(gòu)圖如圖3 所示。
圖3 模型結(jié)構(gòu)圖
3.1.1 BERT 模型
語言模型在自然語言處理中是一個(gè)很重要的概念,BERT 模型是谷歌在2018 年提出的大型語料庫預(yù)訓(xùn)練模型, 該模型推出后, 就在自然語言處理任務(wù)中被廣泛應(yīng)用, 并且在很多方面取得了超越人類的能力。BERT 模型解決了傳統(tǒng)語言模型單向編碼以及無法融合文本語義信息的缺陷, 因而也可以通過上下文關(guān)聯(lián)解決一詞多義的問題。BERT 模型結(jié)構(gòu)圖4 所示。BRERT 模型參照了GPT[11]模型與ELMO[12]模型的優(yōu)點(diǎn),采用了雙向Transformer[13]結(jié)構(gòu)作為編碼器,使用Transformer 替代LSTM,使得模型可以更好地表達(dá)語義信息。Transformer 是一種基于注意力機(jī)制的編碼單元。通過Transformer 結(jié)構(gòu),可以將文字內(nèi)部聯(lián)系關(guān)聯(lián)起來。模型的結(jié)構(gòu)圖如圖5 所示。
圖4 BERT 預(yù)訓(xùn)練語言模型
圖5 Transformer 編碼結(jié)構(gòu)
圖6 LSTM 內(nèi)部結(jié)構(gòu)
BERT 在訓(xùn)練時(shí)增加Masked 和下文預(yù)測兩種任務(wù)。 使得模型可以更好地獲取詞語間信息和整體表達(dá)。
3.1.2 ALBERT 模型
ALBERT 模型是Lan 等[14]在2019 年提出的輕量級BERT,在3 個(gè)方面對BERT 模型進(jìn)行了改進(jìn):(1)對嵌入的因式分解;(2)跨層參數(shù)共享;(3)句間連貫性損失。 將ALBERT 預(yù)訓(xùn)練模型直接用于電子病歷詞表征會存在不準(zhǔn)確的問題,因?yàn)殡娮硬v的文字表述并不是與公共語料庫描述方式相似,其中的詞語與句子也是專業(yè)術(shù)語,因此,必須使用ABERT 針對醫(yī)療領(lǐng)域語料庫進(jìn)行預(yù)訓(xùn)練,文中利用ALBERT 模型對電子病歷文本進(jìn)行預(yù)訓(xùn)練學(xué)習(xí)文字表示。
臨床電子病歷信息數(shù)據(jù)通常具有復(fù)雜的上下文關(guān)系以及復(fù)雜的醫(yī)學(xué)用語, 單向LSTM 無法處理上下文信息,所以本文利用BiLSTM 計(jì)算捕捉文本的雙向語義依賴關(guān)系[15]。 BiLSTM(長短期記憶神經(jīng)網(wǎng)絡(luò))是一種特殊的RNN網(wǎng)絡(luò),解決了普通神經(jīng)網(wǎng)絡(luò)在長序列時(shí)出現(xiàn)的梯度爆炸以及梯度消失的問題。 LSTM 結(jié)構(gòu)有兩個(gè)狀態(tài): 一個(gè)ct(cell state);另一個(gè)ht(hidden state)。 RNN 中的ht相當(dāng)于LSTM中的ct,對于傳遞下去的ct改變的很慢,通常輸出的ct是上一個(gè)狀態(tài)傳過來的ct-1加上一些數(shù)值。
經(jīng)過BiLSTM 后,雖然模型學(xué)習(xí)了豐富的上下文信息,但是每一個(gè)特征的權(quán)重都是一樣的,沒有突出不同詞的重要程度。 例如, “患者于5 天前出現(xiàn)腹部疼痛”,“患者”該詞對癥狀“腹部疼痛”的識別沒有影響,模型將患者和其他詞匯以同等的權(quán)重進(jìn)行特征提取,無法突出關(guān)注更加有用的信息,因此,文中在基礎(chǔ)的實(shí)體識別模型中加入Attention 機(jī)制,使得模型可以學(xué)習(xí)到每一個(gè)元素的重要程度,從而提高識別精度。 Attention將BiLSTM 輸出隱層進(jìn)行加權(quán)[16]。
模型的最后一層用于標(biāo)簽的預(yù)測,一般的實(shí)體標(biāo)簽預(yù)測的方法都是將預(yù)測的標(biāo)簽當(dāng)做是相互獨(dú)立的,但事實(shí)上每個(gè)標(biāo)簽都是有聯(lián)系的。例如,疾病實(shí)體“慢性支氣管炎”,經(jīng)過標(biāo)注的結(jié)果為{B,I,I,I,I,I },在這個(gè)標(biāo)注的結(jié)果中,不能出現(xiàn)類似{B,O,I,I,I,I}這種O 在I 之前的情況。
所以在進(jìn)行標(biāo)簽預(yù)測的時(shí)候還要對標(biāo)簽序列進(jìn)行合理性約束,CRF 通過特征約束捕捉序列標(biāo)簽的關(guān)系,輸出序列預(yù)測類型。 CRF 約束標(biāo)簽的依賴關(guān)系,避免出現(xiàn)無效的序列標(biāo)簽輸出。 將通過Attention 層的權(quán)重向量經(jīng)過CRF 層解碼,最終輸出預(yù)測的標(biāo)簽結(jié)果。
文中構(gòu)建的多語義電子病歷數(shù)據(jù)集是在醫(yī)渡云數(shù)據(jù)集基礎(chǔ)進(jìn)行人工標(biāo)注形成,針對原數(shù)據(jù)集疾病與診斷實(shí)體類,額外增加了四類關(guān)系信息,將單標(biāo)簽數(shù)據(jù)變?yōu)槎鄻?biāo)簽數(shù)據(jù)。 在標(biāo)注數(shù)據(jù)時(shí)發(fā)現(xiàn)原數(shù)據(jù)集某些標(biāo)簽存在偏移的現(xiàn)象,即一段病歷描述中標(biāo)簽的起始和結(jié)束序列位置都與原文存在一定偏差,筆者對這些標(biāo)簽進(jìn)行了校正。 原數(shù)據(jù)集總共6 211 個(gè)疾病與診斷實(shí)體,經(jīng)過標(biāo)注后,“當(dāng)前的”疾病總共4 293 個(gè),“否認(rèn)的”疾病總共418 個(gè),“可能的”疾病共1 235 個(gè),“既往的”疾病共265 個(gè)。文中將數(shù)據(jù)集大致按照8∶1∶1 的比例進(jìn)行分配為訓(xùn)練疾病和診斷-可能的集、驗(yàn)證集、測試集。 各類實(shí)體分布見表3。
表3 關(guān)系語義實(shí)體數(shù)量分布
該實(shí)驗(yàn)采用的評價(jià)指標(biāo)主要是精確率(Precision)、召回率(Recall)和F1-Score。
精確率代表在被所有測試集中預(yù)測為正的樣本中實(shí)際為正樣本的概率,表達(dá)式為
其中,TP代表預(yù)測為正,實(shí)際為正,預(yù)測正確;FP代表預(yù)測為正,實(shí)際為負(fù),預(yù)測錯(cuò)誤。
召回率是針對原測試集而言的,其含義是在實(shí)際為正的樣本中被預(yù)測為正樣本的概率,表達(dá)式為
其中,F(xiàn)N代表預(yù)測為負(fù),實(shí)際為正,預(yù)測錯(cuò)誤;TP代表預(yù)測為正,實(shí)際為正,預(yù)測正確。
F1-Score 同時(shí)考慮精確率和召回率,讓兩者同時(shí)達(dá)到最高,取得平衡。F1分?jǐn)?shù)表達(dá)式為
該實(shí)驗(yàn)的環(huán)境配置:操作系統(tǒng)(Ubuntu 14.0),CPU(i7-9850H@2.60GHz),GPU(GTX 2080Ti*4),Python(3.7.3),Tensorflow(1.15.2),內(nèi)存(16GB DDR4)。
該論文實(shí)驗(yàn)基于TensorFlow-Gpu1.15.2 深度學(xué)習(xí)框架和keras、numpy、seqeval 等第三方庫, 使用1.8 M大小的ALBERT _TINY 模型;使用四塊2080Ti 顯卡進(jìn)行訓(xùn)練。
4.4.1 模型有效性分析
為了驗(yàn)證模型的有效性,先使用文中的模型在醫(yī)渡云原始數(shù)據(jù)集上進(jìn)行測試,并對比上文所述的幾種典型模型。包括CNN-CRF 模型、BiLSTM-CRF 模型、BERT-BiLSTM-CRF 模型以及文中模型。實(shí)驗(yàn)結(jié)果對比見表4。
表4 典型模型實(shí)驗(yàn)對比
將文中的實(shí)驗(yàn)結(jié)果與CNN-CRF、BiLSTM -CRF、BERT-BiLSTM-CRF 三種模型的實(shí)驗(yàn)結(jié)果對比,根據(jù)F1指標(biāo)可以發(fā)現(xiàn),檢驗(yàn)實(shí)體識別可以達(dá)到最高96.3%的好效果,大多數(shù)實(shí)體的精確率、召回率均有所提升,不僅如此采用ALBERT 預(yù)訓(xùn)練模型的訓(xùn)練速度也要提升不少。 為了更加直觀地展現(xiàn)提升情況,文中又構(gòu)建了如圖7 所示的F1-Score 對比圖(其中疾病類代表疾病與診斷),從圖中可以清晰的看到ALBERT-BiLSTM-CRF模型(粗實(shí)線)的描繪圖面積最大,這說明在所有醫(yī)療實(shí)體識別類別中,該模型的效果好過其余典型模型。 該模型F1-Score 均好于其他模型。 由于BERT 參數(shù)量眾多(文中采用的BERT 模型參數(shù)達(dá)到了334 M),相較于BERT 模型,文中采用的同樣隱層量的ALBERT 模型,參數(shù)量僅為18 M,如此巨大的參數(shù)縮減,極大降低了模型訓(xùn)練的成本,提高了模型運(yùn)行的速度,并且得到了比BERT 模型更好的結(jié)果。
圖7 4 個(gè)模型在6 種實(shí)體類別中的F1-Score 表現(xiàn)雷達(dá)圖
將對比模型與文中實(shí)驗(yàn)?zāi)P瓦M(jìn)行消融實(shí)驗(yàn),用于研究模型每個(gè)組件對實(shí)體識別結(jié)果的貢獻(xiàn)度。 為了便于分析結(jié)果,該消融實(shí)驗(yàn)所得到的評價(jià)指標(biāo)數(shù)值均為所有實(shí)體類別的平均值。 表5 中的衡量指標(biāo)表明了模型的各個(gè)部分被單獨(dú)分割之后,模型的性能會出現(xiàn)降低。當(dāng)去掉CRF 解碼層后,觀察到三個(gè)基線模型和文中模型都出現(xiàn)了性能上的大幅降低,降低幅度大概在10%,因此,表明CRF 層對于此任務(wù)至關(guān)重;當(dāng)BiLSTMCRF、BERT-BiLSTM-CRF、ALBERT-BiLSTM-Attention-CRF 這三個(gè)模型結(jié)構(gòu)簡化成單向版本, 性能也出現(xiàn)了不同幅度的降低,降低幅度分別為5.32%、3.70%、3.20%,可以看出文中的模型相對于其他模型在魯棒性上有所提升;該模型中的Attention 層被去除后,模型的性能下降了2.2%。 通過這些實(shí)驗(yàn),可以發(fā)現(xiàn)文中的模型具有更好的實(shí)驗(yàn)結(jié)果。
表5 消融實(shí)驗(yàn)
4.4.2 多標(biāo)簽數(shù)據(jù)集實(shí)驗(yàn)
上述實(shí)驗(yàn)證明了該模型的優(yōu)越性,將該模型應(yīng)用于標(biāo)注的關(guān)系語義數(shù)據(jù)集,為了得到較為優(yōu)秀的實(shí)驗(yàn)結(jié)果,對Dropout(丟棄率)進(jìn)行調(diào)整實(shí)驗(yàn),使用不同的Dropout 分別進(jìn)行實(shí)驗(yàn),結(jié)果見表6。
表6 不同Dropout 對實(shí)驗(yàn)結(jié)果的影響
從表6 可以看出,Dropout 從0.1 到0.5 變化過程中,結(jié)果存在波動(dòng),但Dropout 為0.1 時(shí)整體效果最好,因此,選用Dropout 為0.1。 最終得到關(guān)于精確率、召回率、F1-Score 三個(gè)評價(jià)指標(biāo)的實(shí)驗(yàn)結(jié)果,見表7。
表7 實(shí)體識別結(jié)果
觀察實(shí)驗(yàn)數(shù)據(jù), 四類帶有修飾信息的類別總體F1-Score 達(dá)到了74.1%, 其中疾病和診斷-當(dāng)前的類F1-Score 達(dá)到了80.3%的實(shí)驗(yàn)結(jié)果,相較于原數(shù)據(jù)集疾病和診斷類別81.5%的結(jié)果,最高分?jǐn)?shù)的實(shí)體類實(shí)驗(yàn)結(jié)果下降了1.2%,這是由于將原疾病和診斷類別進(jìn)行拆分后造成的。根據(jù)F1-Score 可以發(fā)現(xiàn),當(dāng)前的疾病診斷類的指標(biāo)表現(xiàn)最好達(dá)到了80.3%,既往的疾病診斷類最差只有65.4%。 這四類實(shí)體識別的精確率差距較大,推測原因主要是疾病和診斷-當(dāng)前的類訓(xùn)練數(shù)據(jù)最多,疾病和診斷-既往的數(shù)據(jù)量最少,較少的數(shù)據(jù)量導(dǎo)致模型沒有很好地學(xué)習(xí)到既往的類別的上下文語義特征。 疾病和診斷-否認(rèn)的類別和疾病和診斷-既往的類別訓(xùn)練數(shù)據(jù)都相對較少,但是疾病和診斷-既往的的語義信息較為復(fù)雜,識別結(jié)果比疾病和診斷-否認(rèn)的類別效果差很大。
針對醫(yī)療領(lǐng)域?qū)嶓w數(shù)據(jù)集,筆者提出了ALBERT-BiLSTM-Attention-CRF 模型,在上游采用ALBERT 進(jìn)行預(yù)訓(xùn)練模型,學(xué)習(xí)詞表示,使用BiLSTM 融合上下文表征,通過Attention 進(jìn)行關(guān)注表征,最后通過CRF 約束標(biāo)簽預(yù)測。 發(fā)揮了ALBERT 模型的學(xué)習(xí)文本信息的優(yōu)勢,也融合了語義依賴表征,在極大削弱了BERT 的參數(shù)的情況下,顯著減少了訓(xùn)練時(shí)間,最后還取得了突破傳統(tǒng)醫(yī)療實(shí)體識別方法的效果。 并且針對醫(yī)渡云數(shù)據(jù)集標(biāo)注不完善,缺少語義信息的問題,提出一種多標(biāo)簽的標(biāo)注法,進(jìn)行再標(biāo)注。 實(shí)驗(yàn)表明,再標(biāo)注后的數(shù)據(jù)集識別效果良好,既可以識別出疾病診斷類,又可以識別疾病與患者的關(guān)系,為醫(yī)療實(shí)體數(shù)據(jù)集標(biāo)注提出了一種新的標(biāo)注策略。
仍需要改進(jìn)的地方:(1)標(biāo)注的數(shù)據(jù)集數(shù)量過少,不利模型學(xué)習(xí)到足夠特征,后續(xù)可以通過數(shù)據(jù)增強(qiáng)等技術(shù)擴(kuò)大數(shù)據(jù)量。 (2)文中僅針對疾病與診斷類進(jìn)行語義關(guān)系標(biāo)注,除此之外,手術(shù)、藥物也存在相應(yīng)的語義關(guān)系(手術(shù)藥物均有既往的與當(dāng)前的等語義信息),但由于醫(yī)渡云數(shù)據(jù)選用的電子病歷描述的手術(shù)、藥物實(shí)體往往都是當(dāng)前發(fā)生的實(shí)體,既往的或者其他語義的實(shí)體過少,不適合進(jìn)行二次標(biāo)注。 后續(xù)筆者會在新的數(shù)據(jù)集上應(yīng)用文中的方法進(jìn)行實(shí)驗(yàn)驗(yàn)證。 (3)模型可以進(jìn)一步考慮電子病歷的特征,融入漢字偏旁等字形特征,提高識別精度。