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

?

基于RoBERTa-WWM的中文電子病歷命名實(shí)體識(shí)別

2021-02-27 01:29巖,張利,王
關(guān)鍵詞:掩碼命名病歷

朱 巖,張 利,王 煜

(1.蚌埠醫(yī)學(xué)院護(hù)理學(xué)院,安徽 蚌埠 233030; 2.中國(guó)科學(xué)技術(shù)大學(xué)科學(xué)島分院,安徽 合肥 230001)

0 引 言

隨著“互聯(lián)網(wǎng)+”醫(yī)療體系的興起,產(chǎn)生了大量的電子病歷。這些非結(jié)構(gòu)化的文本中包含著關(guān)于患者診療過(guò)程的關(guān)鍵信息,例如臨床癥狀、診斷結(jié)果和用藥表現(xiàn)[1]。從電子病歷(Electronic Medical Records, EMR)中抽取這些醫(yī)學(xué)信息可以更好地幫助研究人員理解某類疾病的病因、病理表現(xiàn)和治療手段。此外,研究人員還可以利用所抽取的信息構(gòu)建醫(yī)療決策支持系統(tǒng)(Decision Support System, DSS)[2]或醫(yī)學(xué)知識(shí)圖譜(Knowledge Graph, KG)[3]。然而,從電子病歷中手動(dòng)抽取這些信息是耗時(shí)費(fèi)力的,因此,人們嘗試使用自然語(yǔ)言處理(Natural Language Processing, NLP)技術(shù)來(lái)解決這一問(wèn)題。

命名實(shí)體識(shí)別(Named Entity Recognition, NER)是NLP的一項(xiàng)基本任務(wù),其目的在于從非結(jié)構(gòu)化文本中識(shí)別出結(jié)構(gòu)化的命名實(shí)體。如圖1所示,即為從電子病歷中抽取關(guān)鍵信息,并讓計(jì)算機(jī)理解語(yǔ)義知識(shí)的關(guān)鍵步驟[4]。早期的命名實(shí)體識(shí)別方法包括基于規(guī)則(Rule-based)的方法和基于字典(Dictionary-based)的方法[5-6]。但是這些方法只能識(shí)別預(yù)先定義或存儲(chǔ)于字典中的實(shí)體,缺少泛化性。傳統(tǒng)的機(jī)器學(xué)習(xí)方法也被用于命名實(shí)體識(shí)別,例如隱馬爾可夫模型(Hidden Markov Model, HMM)[7]。但是這些方法需要人工選擇特征。隨著深度學(xué)習(xí)的興起,人們也使用深度學(xué)習(xí)的方法進(jìn)行命名實(shí)體識(shí)別任務(wù)。其中使用最廣泛的是可以捕獲序列信息的循環(huán)神經(jīng)網(wǎng)路(Recurrent Neural Network, RNN)以及其變種,如雙向長(zhǎng)短時(shí)記憶(Bidirectional Long Short-Term Memory, BiLSTM)網(wǎng)絡(luò)[8]。但是深度學(xué)習(xí)方法的效果仍受限于訓(xùn)練集的質(zhì)量。

圖1 從中文電子病歷中識(shí)別命名實(shí)體

因此,人們開(kāi)始關(guān)注如何從大量無(wú)標(biāo)簽文本中獲取先驗(yàn)語(yǔ)義知識(shí)來(lái)增強(qiáng)語(yǔ)義表示,并提出了基于Transformer的預(yù)訓(xùn)練模型[9],例如BERT(Bidirectional Encoder Representations from Transformers)模型[10]。BERT通過(guò)2種預(yù)訓(xùn)練任務(wù),即掩碼語(yǔ)言模型(Masked Language Model, MLM)和預(yù)測(cè)下一個(gè)句子(Next Sentence Prediction, NSP),從無(wú)標(biāo)簽文本中獲得先驗(yàn)語(yǔ)義知識(shí),并通過(guò)微調(diào)(Fine-tuning)將蘊(yùn)含這些知識(shí)的增強(qiáng)語(yǔ)義表示應(yīng)用于下游自然語(yǔ)言處理任務(wù)中,如識(shí)別中文電子病歷中的命名實(shí)體。但是中文的詞之間并沒(méi)有分隔符,因此BERT在使用中文語(yǔ)料進(jìn)行預(yù)訓(xùn)練時(shí)只能掩蓋字,而不是掩蓋詞。這樣,通過(guò)預(yù)訓(xùn)練產(chǎn)生的語(yǔ)義表示僅僅是字級(jí)別的,并不能獲得詞級(jí)別的語(yǔ)義表示,即無(wú)法在預(yù)訓(xùn)練過(guò)程中獲取詞的信息。而RoBERTa-WWM(A Robustly Optimized BERT Pre-training Approach-Whole Word Masking)模型在預(yù)訓(xùn)練時(shí),首先將語(yǔ)料進(jìn)行分詞,然后隨機(jī)遮掩一部分詞并進(jìn)行預(yù)測(cè)[11]。這樣,該預(yù)訓(xùn)練模型所生成的語(yǔ)義表示便含有詞的信息,更適用于中文命名實(shí)體識(shí)別任務(wù)。同時(shí),RoBERTa-WWM也對(duì)預(yù)訓(xùn)練過(guò)程進(jìn)行了優(yōu)化,提出了動(dòng)態(tài)掩碼模型(Dynamic Masking Language Model)并刪除了NSP任務(wù)。

本文提出一種基于RoBERTa-WWM的中文電子病歷命名實(shí)體識(shí)別方法。其主要工作如下:

1)該方法使用RoBERTa-WWM而不是BERT獲取語(yǔ)義表示。該語(yǔ)義表示更適用于中文命名實(shí)體識(shí)別任務(wù)。

2)獲取語(yǔ)義表示后,利用BiLSTM網(wǎng)絡(luò)捕獲序列信息,再使用條件隨機(jī)場(chǎng)(Conditional Random Field, CRF)限制標(biāo)簽間的序列關(guān)系。

3)在真實(shí)的電子病歷語(yǔ)料上驗(yàn)證模型的效果。該數(shù)據(jù)集由“2019全國(guó)知識(shí)圖譜與語(yǔ)義計(jì)算大會(huì)(China Conference on Knowledge Graph and Semantic Computing 2019, CCKS 2019)”提供。實(shí)驗(yàn)結(jié)果表明,該方法可以有效提升中文電子病歷中命名實(shí)體的識(shí)別效果。

1 相關(guān)工作

1.1 命名實(shí)體識(shí)別

命名實(shí)體識(shí)別旨在從非結(jié)構(gòu)化的文檔中抽取結(jié)構(gòu)化的命名實(shí)體,例如電子病歷中的疾病名稱、藥物名稱等?;谝?guī)則和字典的方法曾經(jīng)占據(jù)重要的地位。例如Song等人[12]提出了一種基于字典的方法識(shí)別生物命名實(shí)體。但是基于規(guī)則和字典的方法缺乏泛化性,針對(duì)某一特定實(shí)體識(shí)別任務(wù)設(shè)計(jì)的規(guī)則或字典很難用于其他實(shí)體識(shí)別任務(wù)。也有研究人員使用傳統(tǒng)的機(jī)器學(xué)習(xí)方法來(lái)識(shí)別電子病歷中的命名實(shí)體,例如Liang等人[13]提出了一種將支持向量機(jī)(Support Vector Machine, SVM)和CRF結(jié)合的級(jí)聯(lián)型方法。雖然這些方法相較于基于規(guī)則和基于字典的方法具有更好的泛化性,但是需要手動(dòng)選擇特征。近年來(lái),隨著深度學(xué)習(xí)的發(fā)展,RNN及其變種被應(yīng)用于命名實(shí)體識(shí)別。深度學(xué)習(xí)方法可以自主學(xué)習(xí)特征,并且更深的模型結(jié)構(gòu)可以抽取出更抽象的特征。例如Li等人[14]設(shè)計(jì)了一種特殊的詞向量并使用BiLSTM-CRF模型提升了識(shí)別效果。Xia等人[15]提出了一種基于自訓(xùn)練的BiLSTM-CRF模型來(lái)處理中文NER任務(wù)。也有研究人員使用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)來(lái)識(shí)別實(shí)體,例如Zhu等人[16]使用CNN來(lái)編碼中文字符。雖然深度學(xué)習(xí)的方法優(yōu)于傳統(tǒng)的機(jī)器學(xué)習(xí)方法,但是它們的表現(xiàn)均受限于訓(xùn)練集的規(guī)模和質(zhì)量。因此,人們考慮是否可以從大規(guī)模的無(wú)標(biāo)簽語(yǔ)料中學(xué)習(xí)先驗(yàn)知識(shí),并將其應(yīng)用到各種NLP任務(wù)中,例如命名實(shí)體識(shí)別。

1.2 預(yù)訓(xùn)練模型

預(yù)訓(xùn)練模型可以從語(yǔ)料庫(kù)中學(xué)習(xí)含有先驗(yàn)語(yǔ)義的字向量。Peters等人[17]首先提出了ELMo(Embeddings from Language Models)模型。該模型通過(guò)BiLSTM對(duì)上下文信息進(jìn)行建模,獲得包含上下文信息的字向量。但是BiLSTM的信息抽取能力弱于Transformer。同時(shí),由于BiLSTM的序列特性,其并不能進(jìn)行并行計(jì)算。Devlin等人[10]于2018年首次提出了BERT。BERT由12層的Transformer組成,并通過(guò)2種預(yù)訓(xùn)練任務(wù)MLM和NSP從無(wú)標(biāo)簽的非結(jié)構(gòu)化文檔中學(xué)習(xí)先驗(yàn)語(yǔ)義知識(shí)。這些先驗(yàn)語(yǔ)義知識(shí)通過(guò)微調(diào)被應(yīng)用到各種下游NLP任務(wù)中,包括命名實(shí)體識(shí)別。但是,對(duì)于中文語(yǔ)料而言,BERT在進(jìn)行預(yù)訓(xùn)練任務(wù)MLM時(shí)會(huì)隨機(jī)掩蓋字,而不是詞,如圖2所示。

圖2 BERT的掩碼過(guò)程

BERT通過(guò)預(yù)測(cè)這些被掩蓋的字學(xué)到含有先驗(yàn)語(yǔ)義知識(shí)的語(yǔ)義表示。但是這些語(yǔ)義表示僅僅是字級(jí)別的,其中并不含有詞級(jí)別的信息。與之相反,RoBERTa-WWM在進(jìn)行中文預(yù)訓(xùn)練時(shí)會(huì)首先對(duì)句子進(jìn)行分詞,然后隨機(jī)遮掩一部分詞并進(jìn)行預(yù)測(cè),如圖3所示。通過(guò)這種方式,RoBERTa-WWM可以在預(yù)訓(xùn)練時(shí)學(xué)到詞級(jí)別的語(yǔ)義表示,更有助于提升中文NLP任務(wù)的效果。

圖3 RoBERTa-WWM的掩碼過(guò)程

2 本文方法

本章介紹基于RoBERTa-WWM的中文電子病歷命名實(shí)體識(shí)別方法,該方法包括RoBERTa-WWM模塊、BiLSTM模塊和CRF模塊。

2.1 RoBERTa-WWM模塊

RoBERTa-WWM由12層Transformer組成,如圖4所示。每個(gè)Transformer都包含多頭自注意力[9]。假設(shè)輸入是T={t1,t2,t3,…,tn},輸出是H={h1,h2,h3,…,hn},并且該輸出含有RoBERTa-WWM在預(yù)訓(xùn)練階段獲得的先驗(yàn)語(yǔ)義知識(shí)。RoBERTa-WWM的參數(shù)在訓(xùn)練時(shí)會(huì)根據(jù)訓(xùn)練集進(jìn)行微調(diào),其數(shù)值會(huì)被更新,以便學(xué)習(xí)訓(xùn)練集中的語(yǔ)義知識(shí)。

圖4 RoBERTa-WWM模塊

2.2 BiLSTM模塊

RNN可以通過(guò)傳遞隱藏層參數(shù)來(lái)捕獲序列信息,然而,這樣也可能造成梯度爆炸或梯度消失。作為RNN的變種,LSTM通過(guò)引入門控單元來(lái)解決上述問(wèn)題[18]。LSTM基本單元的計(jì)算公式如下所示:

(1)

(2)

ht=ot⊙tanh(ct)

(3)

對(duì)于命名實(shí)體識(shí)別任務(wù),句子前向和后向的信息均十分重要,但是LSTM僅能捕獲單方向的信息。因此,本文使用雙向長(zhǎng)短時(shí)記憶BiLSTM來(lái)捕獲句子前向和后向的信息,如圖5所示。該模塊的輸入即為RoBERTa-WWM模塊的輸出。

圖5 BiLSTM模塊

2.3 CRF模塊

在命名實(shí)體識(shí)別任務(wù)中,臨近的標(biāo)簽間有順序關(guān)系。例如,I-Drug標(biāo)簽必須出現(xiàn)在B-Drug標(biāo)簽之后。本文引入條件隨機(jī)場(chǎng)來(lái)確保這一順序關(guān)系[19-20]。具體地,將T視為轉(zhuǎn)移矩陣,P視為分?jǐn)?shù)向量。對(duì)于某一可能的輸出序列Y={y1,y2,…,yn},其分?jǐn)?shù)為:

(4)

其中H={h1,h2,h3,…,hn}即為BiLSTM的輸出,同時(shí)也是CRF模塊的輸入。當(dāng)進(jìn)行解碼時(shí),使用維特比算法[21]尋找所有Y中得分最高的Yr,即:

Yr=arg maxy∈Ys(H,Y)

(5)

其中yi表示所有可能的序列。

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

本章介紹實(shí)驗(yàn)所使用的數(shù)據(jù)集并展示實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)基于深度學(xué)習(xí)框架飛槳(Paddlepaddle)。硬件方面,使用4塊CPU以及1塊NIVIDA V100 GPU。

3.1 數(shù)據(jù)集

本文實(shí)驗(yàn)的數(shù)據(jù)集源自2019年全國(guó)知識(shí)圖譜與語(yǔ)義計(jì)算大會(huì)(CCKS 2019)。其中包含真實(shí)的電子病歷數(shù)據(jù),這些電子病歷數(shù)據(jù)由專業(yè)醫(yī)學(xué)團(tuán)隊(duì)進(jìn)行標(biāo)注,表1展示了該數(shù)據(jù)集中各種類型的實(shí)體的分布。

表1 CCKS 2019數(shù)據(jù)集的實(shí)體分布

3.2 超參數(shù)設(shè)置

本文使用試錯(cuò)法尋找最優(yōu)的超參數(shù)。表2列出了本文所使用的超參數(shù)值。

表2 超參數(shù)

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

表3列出了在數(shù)據(jù)集上進(jìn)行不同實(shí)驗(yàn)時(shí)所獲得的結(jié)果,對(duì)比了不同的預(yù)訓(xùn)練模型以及不同的下游模型結(jié)構(gòu)對(duì)于識(shí)別效果的影響。使用精確率(Precision)、召回率(Recall)和F1值[22]作為本次實(shí)驗(yàn)的評(píng)價(jià)指標(biāo)。其中,精確率指所預(yù)測(cè)實(shí)體中正確實(shí)體的比例;召回率指訓(xùn)練集中被預(yù)測(cè)出的實(shí)體的比例;F1值根據(jù)下式進(jìn)行計(jì)算:

F1=(2×Precision×Recall)/(Precision+Recall)

(6)

表3 不同模型的實(shí)驗(yàn)結(jié)果

從表3可以看出,使用RoBERTa-WWM可以獲得相較于BERT有更好的識(shí)別效果,F(xiàn)1值可以提升0.69。對(duì)于不同的下游模型結(jié)構(gòu),使用BiLSTM和CRF可以獲得最好的效果,其F1值為0.8341。

4 討 論

4.1 BERT與RoBERTa-WWM

正如1.2節(jié)所述,BERT和RoBERTa-WWM均可以從大規(guī)模的無(wú)標(biāo)簽語(yǔ)料中學(xué)得先驗(yàn)語(yǔ)義知識(shí),并提升下游任務(wù)的效果,例如識(shí)別電子病歷中的命名實(shí)體。但是對(duì)于中文預(yù)訓(xùn)練語(yǔ)料來(lái)說(shuō),因?yàn)橹形牡脑~之間沒(méi)有分隔符,因此BERT僅僅能獲得字符級(jí)別的語(yǔ)義知識(shí)[23]。然而,RoBERTa-WWM在預(yù)訓(xùn)練階段會(huì)首先對(duì)句子進(jìn)行分詞,并預(yù)測(cè)被遮掩的詞。通過(guò)這種方式,RoBERTa-WWM可以獲得詞級(jí)別的語(yǔ)義知識(shí)。此外,與BERT在預(yù)訓(xùn)練階段僅僅進(jìn)行靜態(tài)掩碼的策略不同,RoBERTa-WWM會(huì)進(jìn)行動(dòng)態(tài)掩碼策略,即每一個(gè)Epoch中遮掩的詞是不一致的,這樣可以獲得相較于靜態(tài)掩碼策略更豐富的語(yǔ)義知識(shí)。最后,RoBERTa-WWM與BERT相比并沒(méi)有進(jìn)行預(yù)訓(xùn)練任務(wù)NSP。顯然,對(duì)于NER任務(wù),沒(méi)有必要獲得句子的上下文關(guān)系,因?yàn)檩斎肟偸仟?dú)立的句子,而不是句子對(duì)。綜上所述,對(duì)于識(shí)別電子病歷中的命名實(shí)體,使用RoBERTa-WWM作為預(yù)訓(xùn)練模型可以獲得比BERT更好的效果。

4.2 下游任務(wù)結(jié)構(gòu)

不同的下游任務(wù)模型結(jié)構(gòu)會(huì)對(duì)結(jié)果產(chǎn)生不同的影響。如表3所示,當(dāng)下游模型結(jié)構(gòu)僅僅是一層FC時(shí),其F1值最低。使用CRF作為下游模型結(jié)構(gòu)可以提升F1值,因?yàn)槠淇梢源_保標(biāo)簽間的順序。而添加LSTM層可以捕獲序列關(guān)系。然而,正如2.2節(jié)所述,對(duì)于從電子病歷中識(shí)別命名實(shí)體的任務(wù),句子前后的信息均十分重要,因此(RoBERTa-WWM)-BiLSTM-CRF模型獲得了最高的F1值。其使用RoBERTa-WWM作為預(yù)訓(xùn)練模型,獲得了詞級(jí)別的語(yǔ)義表示,并添加了BiLSTM獲得了雙向的序列信息,同時(shí)使用CRF確保標(biāo)簽間的順序。

5 結(jié)束語(yǔ)

本文提出了一種基于RoBERTa-WWM模型識(shí)別中文電子病歷中命名實(shí)體的方法。相較于BERT僅僅能獲得字級(jí)別的語(yǔ)義表示,RoBERTa-WWM通過(guò)在預(yù)訓(xùn)練時(shí)進(jìn)行全詞掩碼來(lái)獲得詞級(jí)別的語(yǔ)義表示。這種預(yù)訓(xùn)練方法獲得的語(yǔ)義表示更加適用于中文文本。本文使用CCKS2019提供的數(shù)據(jù)集評(píng)估模型的效果,該數(shù)據(jù)集由真實(shí)醫(yī)院的電子病歷組成。實(shí)驗(yàn)結(jié)果表明,使用RoBERTa-WWM作為預(yù)訓(xùn)練模型可以獲得比BERT更好的效果。同時(shí),當(dāng)下游模型結(jié)構(gòu)是BiLSTM和CRF時(shí),可以獲得最好的F1值。在未來(lái)的工作中,筆者將嘗試使用RoBERTa-WWM識(shí)別出中文電子病歷中命名實(shí)體之間的關(guān)系。

猜你喜歡
掩碼命名病歷
強(qiáng)迫癥病歷簿
命名——助力有機(jī)化學(xué)的學(xué)習(xí)
“大數(shù)的認(rèn)識(shí)”的診斷病歷
低面積復(fù)雜度AES低熵掩碼方案的研究
有一種男人以“暖”命名
基于布爾異或掩碼轉(zhuǎn)算術(shù)加法掩碼的安全設(shè)計(jì)*
為一條河命名——在白河源
為何要公開(kāi)全部病歷?
村醫(yī)未寫病歷,誰(shuí)之過(guò)?
基于掩碼的區(qū)域增長(zhǎng)相位解纏方法
永吉县| 德保县| 贵南县| 黄陵县| 项城市| 垣曲县| 班戈县| 台安县| 昭平县| 泸水县| 望谟县| 长武县| 澜沧| 克拉玛依市| 同德县| 得荣县| 永泰县| 温宿县| 靖江市| 大名县| 康马县| 连江县| 察隅县| 泰和县| 朝阳区| 涟源市| 临洮县| 遂昌县| 庄浪县| 海林市| 南通市| 阜宁县| 通榆县| 金寨县| 安泽县| 清苑县| 剑河县| 红河县| 清水河县| 娱乐| 惠安县|