999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于遷移學習和集成學習的醫學短文本分類

2021-01-09 13:27:10張博孫逸李孟穎鄭馥琦張益嘉王健林鴻飛楊志豪
山西大學學報(自然科學版) 2020年4期
關鍵詞:分類文本語言

張博,孫逸,李孟穎,鄭馥琦,張益嘉,王健,林鴻飛,楊志豪

(大連理工大學 計算機科學與技術學院,遼寧 大連 116024)

0 引言

隨著現代生物醫學的快速發展,大量的臨床醫學數據呈現指數增長,且大多為非結構化文本。為構建臨床試驗篩選結構化文本,通過自然語言處理和機器學習的方法對臨床試驗篩選標準自動解析,并以此構建自動化篩選病人的系統是一個很有前景的研究熱點,具有很大的實際應用前景和醫學臨床價值。臨床試驗是指通過人體志愿者也稱為受試者進行的科學研究,篩選標準是臨床試驗負責人擬定的鑒定受試者是否滿足某項臨床試驗的主要指標,分為入組標準和排出標準,一般為無規則的自由文本形式。臨床試驗的受試者招募一般是通過人工比較病歷記錄表和臨床試驗篩選標準完成,這種方式費時費力且效率低下。因此通過現有的深度學習等一些自然語言處理技術來實現臨床試驗篩選標準短文本分類系統具有重要意義。

本文旨在解決醫學短文本分類問題,實驗數據集選擇的是中國健康信息處理會議(CHIP2019)評測數據,如圖1所示,輸入為一系列中文臨床試驗篩選標準的描述句子,輸出為根據每一條臨床試驗數據返回篩選標準的具體類別。

圖1 數據示例Fig.1 An example of data

傳統的文本分類方法主要基于特征工程等機器學習方法,該方法需要大量的人工介入,需耗費大量的時間和精力,近年來,深度學習技術逐漸取代傳統的機器學習技術成為文本分類領域的主流方法[1]。基于深度學習的自然語言處理技術主要有2013年Mikolov等人[2]提出基于神經網絡的語言模型CBOW和Skip-gram并提出分布式詞向量的概念。2014年Sutskever等人[3]提出Seq2Seq模型,通過一些深度神經網絡模型構建編碼器和解碼器,常用的神經網絡主要是長短時記憶網絡。2017年Vaswani等人[4]提出transformer機制,其中的編碼器和解碼器是由基本的前饋神經網絡和注意力機制堆疊形成。2018年Jacob等人[5]提出預訓練語言模型BERT。2019年Facebook團隊在BERT基礎上進行優化提出Roberta預訓練語言模型[6]。

本文提出的臨床試驗篩選標準短文本分類方法主要分為三個階段,一是微調預訓練語言模型,在此階段使用的語言模型是BERT[5]和Roberta[6];二是微調分類模型,面向醫學短文本分類任務將第一階段得到的語言模型與神經網絡模型進行結合構建醫學分類模型,微調過程是針對結合后的整體模型即包含語言模型和神經網絡模型,上述兩個階段的微調使用的數據集均為無監督領域相關的外部資源數據集;三是利用集成學習的知識來實現最終的醫學文本分類,將第二階段得到的多個分類器進行集成學習,通過投票方式和beam search ensemble算法選擇出最佳的模型組合并將其作為醫學文本分類系統的最終分類模型。實驗結果表明本文方法的有效性,在CHIP2019評測三臨床試驗篩選標準短文本分類任務測試集上其F1值達到0.811 1。

文本分類任務是自然語言處理領域經典任務之一,有著廣泛的應用。醫學文本分類技術可輔助醫療,構建結構化電子病例等醫學數據,具有重要意義。近年來,一些經典的文本分類方法主要是基于深度學習模型,如Kim等人[7]提出多尺度并行的單層卷積神經網絡(CNN)結合預訓練詞向量實現句子級別的文本分類,Hochreiter等人[8]為了解決原始循環神經網絡(RNN)在訓練時存在梯度消失和梯度爆炸問題提出長短時記憶神經網絡(LSTM)進行文本分類。Yang等人[9]提出基于分層注意力機制的神經網絡模型實現文檔分類。上述方法在通用領域文本分類任務中起到了很大的作用,但在生物醫學領域中的短文本分類任務中存在一定的局限性。主要原因有臨床試驗電子病歷文本中含有大量的醫學專業詞匯;病歷文本中存在的字符形式較多,包含中文、英文縮寫,阿拉伯數字、科學計數法等;病歷文本中在不同類別的短文本存在一定程度的重疊。因此,為解決上述問題本文提出一種基于遷移學習和深度學習的方法,采用微調技術,使在通用領域上表現好的模型在生物醫學領域上也有較好的性能。

遷移學習對計算機視覺領域產生了很大的影響。應用在計算機視覺領域的模型大多是利用已有模型進行微調,很少從頭開始訓練,即在ImageNet, MS-COCO等大數據上得到預訓練模型[10-13]。雖然深度學習模型在許多自然語言處理領域任務上達到了很好的效果,但是這些模型都是從頭開始訓練,需要花費大量時間和精力收集大型數據集和訓練模型。目前應用到自然語言處理領域的遷移學習,主要是針對模型的第一層,通過微調預訓練的數據,雖是一種簡單的遷移學習技術,但是在實際應用中有很大的價值和影響,并可應用到各種深度學習模型中,但該方法仍需要從頭訓練主要任務模型,并將預訓練詞嵌入視為固定參數,限制了遷移學習方案的有效性。

圖2 模型框架Fig.2 Framework of model

目前的研究成果表明,預訓練語言模型能夠提升自然語言推斷、語義相似度計算、命名實體識別、情感分析、檢索式問答匹配等多個自然語言處理任務的性能。因此,針對上述問題,我們利用預訓練模型,采用遷移學習技術來完成臨床試驗篩選標準短文本分類任務。根據自然語言處理領域最新研究,遷移學習較為有效的方案是進行模型微調,其中通用語言模型微調(ULMFiT)[14]在多個分類任務中表現出優越的性能,因此我們采用ULMFiT中的一些方法,如傾斜的三角學習率,逐層解凍等來提高醫學文本分類系統性能和訓練效率。

1 方法

1.1 模型框架

本文搭建的模型框架如圖2所示,先對數據進行簡單地預處理,得到中文臨床試驗篩選標準短文本描述,將其作為輸入,按照字級別輸入到預訓練語言模型中,然后將語言模型中最后一層transformer的輸出作為下游神經網絡層的輸入,再經過一些深度學習網絡層學習文本特征,最后通過softmax函數得到分類結果。

本文的研究方案主要分為三個階段:第一個階段是使用預訓練語言模型,并對語言模型進行微調;第二個階段是將第一階段得到的語言模型與神經網絡模型進行拼接得到醫學短文本分類模型,并對分類模型進行微調;第三階段是將第二階段得到的多個分類模型進行集成學習來提高總體的分類結果。

1.2 語言模型

1.2.1 預訓練語言模型選擇

本文使用的兩個預訓練語言模型均基于BERT模型方法,分別為Google發布的中文版 BERT-base, Chinese[5]和哈工大訊飛聯合實驗室發布的RoBERTa-wwm-ext, Chinese[15]。

1.2.2 語言模型微調

雖然Google訓練BERT模型時使用的通用領域數據集是非常多樣的,但是相對臨床試驗篩選標準短文本分類任務的數據仍有很多不同的分布。

因此,本文受遷移學習思想啟發對上述兩個預訓練模型進行微調得到適用于生物醫學領域的語言模型。微調過程中使用的數據集是通過相關爬蟲程序爬取的213,154條關于臨床試驗篩選標準短文本數據,并選取CHIP2019評測任務三官方發布的數據集(包含訓練集和驗證集)做微調結果驗證。

為了使BERT和Roberta兩個語言模型參數適應醫學文本分類任務,我們采用傾斜的三角學習率方法進行微調使模型在訓練開始時快速收斂到參數空間的合適區域,再細化其參數。傾斜的三角學習率是指先線性地增加學習率,再根據公式(1)(2)(3)更新時間表形成線性衰減,如圖3所示。

圖3 傾斜三角學習率Fig.3 Slanted triangular learning rates

(1)

(2)

(3)

其中T是訓練的總迭代次數;cut-frac 是增加學習率的迭代次數比例;cut 是學習率從增加到減少的臨界迭代次數;p是一個分段函數,分別表示遞增和遞減的迭代次數比例;ratio 表示學習率最小時與最大學習率的比值,就是學習率的衰減比例;ηt表示迭代次數為t時的學習率。實驗過程將cut-frac設定為0.1,ratio設定為32,ηmax設定為0.01。在使用該方法微調語言模型后,分類結果會有顯著提升,在文中實驗部分會具體論述。

1.3 分類模型

針對臨床試驗篩選標準短文本分類任務,我們使用了當前主流的四種神經網絡分類模型來實現醫學文本分類,使用的模型主要有卷積神經網絡(CNN)[7],新型卷積神經網絡(DPCNN)[16],長短時記憶神經網絡(LSTM)[8]以及自注意力機制(self-attention)[4],將其與上述BERT和Roberta語言模型進行拼接最終形成的模型分類器有以下9種:bert-base, bert+bilstm+attention, bert+cnn, bert+dpcnn, roberta-base, roberta+attention, roberta+bilstm+attention,roberta+cnn, roberta+dpcnn,其中,“+” 表示把預訓練模型最后一個transformer層的輸出結果輸入到分類模型的對應層中。base表示用預訓練模型最后一個transformer的第一個token的值(即CLS)作為一個全連接層的輸入直接進行分類得到的結果。

為了使上述分類模型適用于臨床試驗篩選標準文本分類任務,我們使用逐層解凍策略來對模型分類器進行微調。該策略最先提出用于ULMFiT模型[14]最后的分類器微調階段。簡單來說,該策略是指模型訓練時不是一次微調所有層而是從最后一層開始逐漸解凍模型。逐層微調解決了因一次性微調所有層導致的致災難性遺忘問題。研究表明最后一層會包括最通用的特征,因此,在訓練時,先解凍最后一層(凍住其他層),在一個Epoch內微調所有未凍結的層,而不是所有層一起訓練。然后在第二個Epoch內,再解凍倒數第二層來訓練,以此類推。即,每個Epoch向下解凍一層,直至所有層都微調完畢,直到最后一次迭代收斂。

基于上述策略思想,我們將前50%個Epoch按照比例依次解凍,后50%個Epoch將所有權重一起訓練。實驗過程中設置了Epoch=10, Roberta語言模型有12個transformer層和1個詞嵌入層,因此在我們的模型訓練過程中,不是每個Epoch內解凍一層,而是5個Epoch內依次解凍13層,即5/13個Epoch解凍一層。在本文后續的實驗部分會進行消融實驗分析來論證該策略的有效性。

1.4 集成學習

考慮到不同分類模型會學習到不同的文本特征,因此本文采用投票機制和集成學習來提高整個醫學文本分類系統的性能。針對上述9種分類模型進行集成學習得到相應的模型組合,模型之間進行內部投票得到最終的分類結果。在集成學習過程中我們提出了一種模型集成算法beam search ensemble。

隨著模型數量的增多,從所有模型組合中選取最優結果所耗費的時間呈指數級增長,且無法對模型合理分配投票權重。因此我們提出一種beam search ensemble算法,即將beam search算法應用到融合模型中并對其進行了一些改進,具體算法如圖4所示。該算法有效減少了時間復雜度,可使單個模型重復投票,充分考慮了性能好的模型的優勢,以及降低性能差的模型所帶來的偏差,有效更新了投票權重,并且在泛化能力上優于全部的模型融合,在文中實驗部分有具體對比。

在實驗過程中我們將beam search ensemble算法中的beam size參數設為3,得到最佳組合模型為bert-base,bert+dpcnn, bert+lstm+attention, roberta+attention, roberta+cnn * 2, roberta+dpcnn, roberta+lstm+attention,即這7個模型之間進行投票得到的集成模型效果最佳,F1值達到0.811 1。

2 實驗結果與分析

2.1 數據集及任務

基于遷移學習和深度學習的臨床試驗篩選標準短文本分類研究任務來源是中國健康信息處理會議(CHIP2019)評測三任務,具體任務為根據官方給定事先定義好的44種篩選標準類別和一系列中文臨床試驗篩選的標準描述句子,結果返回每一條篩選標準的具體類別,示例如表1所示。

本文使用的數據集有CHIP2019評測三任務發布的數據集和通過爬蟲方式獲得的領域相關外部資源數據集。其中,官方發布的數據集包含訓練集,驗證集和測試集,按照大約3∶1∶1的比例劃分,訓練集和驗證集包含人工標注的句子類別標簽,屬于有監督數據。我們獲取的領域相關的外部資源數據集屬于無監督數據,即不含有句子類別標簽。數據集數量統計如表2所示。實驗過程中先對所有數據集進行簡單地去重等預處理,無監督數據集主要用于模型微調,有監督數據集用于模型的訓練和驗證。

表1 任務示例

表2 數據統計

2.2 評價指標

本任務的評價指標包括宏觀準確率(Macro Precision),宏觀召回率(Macro Recall),AverageF1值。最終排名以AverageF1值為基準。假設我們有n個類別,C1,…,Ci,…,Cn,則準確率Pi、召回率Ri和AverageF1值的計算公式(4)(5)(6)如下:

(4)

(5)

(6)

其中TP(Ci)表示正確預測為類別Ci的樣本個數,P(Ci)預測為Ci的樣本個數,T(Ci)為真實的Ci的樣本個數。

2.3 實驗設置

2.3.1 超參數設置

我們模型訓練的輪數設置為10輪,輸入序列長度設置為128,衰減權重設置為0.001,學習率設置為0.000 05,每一輪保存一次模型,隨機種子設為914,優化器選擇為Adam[17]。分類模型中一些神經網絡層參數超參數設置如表3所示。

2.3.2 損失函數

因臨床試驗篩選標準短文本數據中含有44種類別,存在嚴重的樣本類別不均衡的問題,例如在訓練集中“bedtime”類別只存在14個樣本數據,而“disease”類別存在5 127個樣本數據。此外,該任務還存在其他簡單與復雜樣本問題,例如“age”類別樣本存在較為明顯的關鍵字且訓練集數量較多,較為容易區分,為簡單樣本,但有一些樣本如“體檢發現有任何顯著的臨床疾病癥狀者”存在多重含義和多個關鍵字等問題,較難區分它為“Symptom”類別還是“Laboratory Examinations”類別。為解決樣本不平衡以及區分簡單與復雜樣本問題,我們使用He Kaiming和RBG提出的焦點損失函數focal loss[18]。Focalloss函數首次提出后被應用在圖像領域的目標檢測任務中,它是在標準交叉熵損失的基礎上修改得到的。Focal loss函數通過減少易分類樣本的權重來使得模型在訓練時更專注于難分類的樣本,如公式(7)所示。

表3 神經網絡參數設置

FL(Pt)=-αt(1-Pt)γlog(Pt),

(7)

其中,αt表示每個類別的權重系數,Ct表示訓練集中第t個類別的個數,γ為調制系數,實驗時設置γ=2。由公式可以看出,當一個樣本被分錯時,Pt非常小,因此調制系數γ就趨于1,即相比原來的損失基本沒有改變。當Pt趨于1的時候(此時分類正確而且是易分類樣本),調制系數趨于0,也就是對于總的損失貢獻很小。當γ=0的時候,focal loss就是傳統的交叉熵損失,當γ增加的時候,調制系數也會增加。其核心思想是用一個合適的函數去度量難分類和易分類樣本對總的損失的貢獻,這樣既能調整正負樣本的權重,又能控制難易分類樣本的權重。

為了解決臨床試驗篩選標準文本數據集44種類別中的少類別問題,同時又要避免過度關注,αt參數選取如公式(8)所示。

αt= 2max(log Ct)-log Ct。

(8)

2.4 結果與分析

最終使用了9種神經網絡模型來進行文本分類,對不同的具體模型分別使用5折交叉驗證,所得模型對測試集進行預測,取5個預測結果的加權平均值作為最終預測結果,每個模型分配的權重值為其在交叉驗證時得到的F1值。最后通過投票法對上述的9個模型做最后的模型融合,選取最佳模型組合。9種模型單獨進行臨床試驗篩選標準分類結果如表4所示,其中,bert-base表示用最后一個transformer的第一個token的值(即CLS)做為一個全連接層的輸入得到的分類結果。bert-lstm-att表示用bert的最后一個transformer層的輸出作為LSTM的輸入并加入注意力機制得到的實驗結果,其他模型結果記錄方式同上。

表4 實驗結果

從表4中可以看出,在語言模型后拼接神經網絡模型組成分類器在一定程度上可以提高分類結果。不同的神經網絡模型得到的分類結果不盡相同,但總體差別不大,具體實驗結果還與語言模型有關系。在BERT預訓練語言模型中,拼接LSTM與注意力機制模型效果最優,在Roberta預訓練語言模型中,拼接CNN模型效果最好。因最初考慮到可能會出現上述實驗結果,即不同的預訓練模型與不同的深度學習神經網絡模型進行拼接會得到不同的實驗結果,每個單個模型從臨床試驗篩選標準短文本數據集中學習到的知識特征是不同的,這樣集成之后的模型之間可以結果互補使整個分類系統的性能得以提升。9個模型全部集成學習得到分類結果的F1值為0.809 9,比單個模型(roberta-cnn)最優結果高出0.36%,比單個BERT模型結果高出1.35%,證明模型集成的有效性。用我們提出的beam search ensemble算法進行模型集成時得到的最佳模型組合為bert-base,bert+dpcnn, bert+lstm+attention, roberta+attention, roberta+cnn * 2, roberta+dpcnn, roberta+lstm+attention這7個模型。這7個模型被分配了不同的投票權重后集成得到的結果比所有模型共同集成結果高出0.12%,充分論證了beam search ensemble算法的有效性。

2.5 微調有效性分析

為了驗證微調模型以及微調方案的有效性,我們進行了消融對比實驗。實驗結果如表5所示。

表5 消融實驗結果

roberta-fine表示只對預訓練語言模型進行微調,通過與不進行微調的實驗結果(0.785 0)對比可知,微調語言模型可使分類結果提高1.27%,充分說明了微調模型的有效性。roberta-fine-gu表示在微調分類器模型時,采用逐層解凍方案來實現模型的快速收斂。通過與不進行任何微調的單個roberta模型相比,分類結果提高了1.40%,與只進行語言模型微調的roberta-fine相比提高了0.13%,因而證明了模型微調(包括語言模型微調和分類器模型微調)的有效性。

2.6 與其他模型集成對比分析

本文集成模型與評測比賽中其他模型實驗結果比較如表6所示。

表6 其他模型實驗結果

評測第一名采用的方案是基于BERT與模型融合的短文本分類方法。該方法采用了BERT模型和一些當前主流的深度學習模型進行集成。評測第二名采用的方案是一種基于預訓練模型的醫學短文本分類方法。該方法與本文大體相同,不同的地方是其最終沒有用到改進的beam search ensemble算法來尋找最佳的模型組合。評測第三名采用的方案是基于BERT融合多特征的臨床試驗篩選標準短文本分類。該方法是通過采用BERT等一系列預訓練語言模型集成和抽取一些文本特征來提高分類結果,融合的特征主要有句法特征、詞性標注特征和關鍵詞特征等。通過以上實驗結果分析可知本文方法得到模型的有效性。

3 結論

本文提出一種基于遷移學習和集成學習的醫學短文本分類方案,利用相關領域外部資源數據對語言模型和分類模型進行微調,在微調過程中利用了斜三角學習率和逐層解凍的微調方法,最后用模型集成學習來提高醫學文本分類系統的性能,在模型集成過程中提出了改進的beam search ensemble 算法,該算法可以選出最佳分類模型組合從而可以提高了分類結果,其F1值達到0.811 1。

未來將繼續利用遷移學習的一些知識,并嘗試在神經網絡分類模型算法上有所改進,進一步提升醫學文本分類系統的性能。

猜你喜歡
分類文本語言
分類算一算
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
在808DA上文本顯示的改善
分類討論求坐標
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
數據分析中的分類討論
讓語言描寫搖曳多姿
教你一招:數的分類
累積動態分析下的同聲傳譯語言壓縮
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學隱喻
主站蜘蛛池模板: www.亚洲一区| 国产a v无码专区亚洲av| 91久久精品日日躁夜夜躁欧美| 8090成人午夜精品| 精品国产免费观看一区| 国产在线观看第二页| 国产91视频免费| 影音先锋丝袜制服| 国产迷奸在线看| 日韩高清一区 | 99久久无色码中文字幕| 成人亚洲天堂| 四虎AV麻豆| 成人国产一区二区三区| 欧美三级日韩三级| 日本免费精品| 中国毛片网| 亚洲欧美日韩高清综合678| 国产99热| 中国一级特黄大片在线观看| 欧美h在线观看| 伊人AV天堂| 欧美一级高清片欧美国产欧美| 亚洲人成网站观看在线观看| 亚洲视频在线网| 欧美一级夜夜爽www| 欧洲极品无码一区二区三区| 成人国产精品一级毛片天堂| 91一级片| 在线播放精品一区二区啪视频| 国产成人免费高清AⅤ| 亚洲aⅴ天堂| 99在线观看国产| 亚洲久悠悠色悠在线播放| 国产丰满成熟女性性满足视频| 免费jjzz在在线播放国产| 国产精品视频999| 91精品国产一区| 国产一级毛片在线| 国产精品白浆无码流出在线看| 亚洲区视频在线观看| 秋霞午夜国产精品成人片| 久久五月视频| 国产视频a| 国产精品亚洲va在线观看| 亚洲成人黄色网址| 国产欧美精品一区aⅴ影院| 欧美国产日韩在线| 91视频首页| 免费不卡视频| 国产成人免费视频精品一区二区| 日韩无码白| 在线看免费无码av天堂的| 国产一级视频在线观看网站| 欧美精品另类| 久久久波多野结衣av一区二区| 乱码国产乱码精品精在线播放| 亚洲午夜18| 国产免费自拍视频| 日本国产一区在线观看| 久青草免费在线视频| 国产免费人成视频网| 亚洲av无码片一区二区三区| 精品伊人久久久久7777人| 国产色网站| 色精品视频| 亚洲国产天堂久久九九九| 欧美国产在线看| 国产69精品久久久久妇女| 国产在线八区| 国产一级毛片在线| 婷婷亚洲最大| 韩国福利一区| 国产一区二区三区在线观看视频 | 国产欧美日韩18| 欧美精品导航| 日本免费新一区视频| av一区二区无码在线| 广东一级毛片| 国模私拍一区二区| 免费无遮挡AV| 幺女国产一级毛片|