佘朝陽,嚴(yán) 馨,徐廣義,陳 瑋,鄧忠瑩
(1.昆明理工大學(xué) 信息工程與自動化學(xué)院,昆明 650504;2.昆明理工大學(xué) 云南省人工智能重點(diǎn)實(shí)驗(yàn)室,昆明 650504;3.云南南天電子信息產(chǎn)業(yè)股份有限公司,昆明 650041)
藥物不良反應(yīng)(Adverse Drug Reaction,ADR)檢測是藥物研究和開發(fā)的重要組成部分。以往的研究數(shù)據(jù)主要來源于藥物不良反應(yīng)報(bào)告[1]、生物醫(yī)學(xué)文獻(xiàn)[2]、臨床筆記[3]或醫(yī)療記錄[4]。目前,醫(yī)療社交媒體例如MedHelp、好大夫、尋醫(yī)問藥、丁香醫(yī)生等均提供了諸如專家問診、論壇討論、電話視頻交流等形式多樣的信息收集手段,形成了具有權(quán)威性、時(shí)效性和全面性的互聯(lián)網(wǎng)醫(yī)療數(shù)據(jù)源,為藥物不良反應(yīng)檢測提供了豐富的語料基礎(chǔ)。
藥物不良反應(yīng)檢測通常被看作涉及ADR的文本二分類問題,即辨別文本是否包含ADR的問題。早期,大多數(shù)研究均基于詞典識別文本中的ADR[5-6],但這類方法無法識別詞典中未包含的非常規(guī)ADR詞匯。后來有些研究人員發(fā)現(xiàn),利用統(tǒng)計(jì)機(jī)器學(xué)習(xí)方法抽取特征能夠有效提高準(zhǔn)確性[7-8]。隨著深度學(xué)習(xí)的不斷發(fā)展和廣泛應(yīng)用,基于深度學(xué)習(xí)方法的ADR 檢測模型大量涌現(xiàn)。LEE等[9]為Twitter中的ADR分類建立了卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)模型,COCOS等[10]開發(fā)了一個(gè)遞歸神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)模型,通過與任務(wù)無關(guān)的預(yù)訓(xùn)練或在ADR檢測訓(xùn)練期間形成詞嵌入向量,并將其作為輸入。HUYNH等[11]提出2種新的神經(jīng)網(wǎng)絡(luò)模型,即將CNN 與RNN 連接起來的卷積遞歸神經(jīng)網(wǎng)絡(luò)(Convolutional Recurrent Neural Network,CRNN)以及在CNN中添加注意力權(quán)重的卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network with Attention,CNNA),針對Twitter數(shù)據(jù)集分別進(jìn)行了ADR分類任務(wù)。PANDEY等[12]分別采用Word2Vec和GloVe模型從多渠道的醫(yī)學(xué)資源中訓(xùn)練臨床詞的詞向量,將無監(jiān)督的詞嵌入表示輸入到雙向長期短期記憶(Bi-directional Long Short-Term Memory,Bi-LSTM)神經(jīng)網(wǎng)絡(luò)中,并使用注意力權(quán)重來優(yōu)化ADR 抽取的效果。
盡管深度學(xué)習(xí)模型往往表現(xiàn)很好,但通常需要基于大量標(biāo)注數(shù)據(jù)進(jìn)行監(jiān)督學(xué)習(xí)。當(dāng)標(biāo)注數(shù)據(jù)過少時(shí),容易出現(xiàn)過擬合現(xiàn)象,嚴(yán)重影響預(yù)測的準(zhǔn)確性。目前,已有大量的研究從英文語料中檢測ADR,但由于缺乏公開可用的中文醫(yī)療社交媒體的數(shù)據(jù)集,目前針對此方面的研究非常有限。
為解決標(biāo)注數(shù)據(jù)不足的問題,本文提出一種基于數(shù)據(jù)增強(qiáng)與半監(jiān)督學(xué)習(xí)(Semi-Supervised Learning,SSL)的藥物不良反應(yīng)檢測方法。通過對未標(biāo)注數(shù)據(jù)進(jìn)行數(shù)據(jù)增強(qiáng),使用分類模型產(chǎn)生低熵標(biāo)簽,以獲得較為準(zhǔn)確的偽標(biāo)簽。此外,將標(biāo)注數(shù)據(jù)、未標(biāo)注數(shù)據(jù)和增強(qiáng)數(shù)據(jù)混合,在文本向量空間中對混合樣本進(jìn)行插值,以擴(kuò)增樣本數(shù)量。
在少樣本場景下采用數(shù)據(jù)增強(qiáng)技術(shù),與同等標(biāo)注量的無增強(qiáng)監(jiān)督學(xué)習(xí)模型相比,其性能會有較大幅度的提升。文本增強(qiáng)技術(shù)如EDA算法[13]、回譯[14]、TF-IDF等通常只針對標(biāo)注數(shù)據(jù)進(jìn)行有監(jiān)督地?cái)?shù)據(jù)增強(qiáng)。XIE等[15]將有監(jiān)督的數(shù)據(jù)增強(qiáng)技術(shù)擴(kuò)展到未標(biāo)注數(shù)據(jù)中,以盡可能地利用未標(biāo)注數(shù)據(jù)。GUO 等[16]針對文本分類任務(wù),提出詞級的wordMixup 和句子級的senMixup這2 種文本增強(qiáng)策略,通過分別對詞嵌入向量和句子向量進(jìn)行線性插值,以產(chǎn)生更多的訓(xùn)練樣本,提升分類性能。
半監(jiān)督學(xué)習(xí)是一種在不需要大量標(biāo)簽的情況下訓(xùn)練大量數(shù)據(jù)模型的方法。監(jiān)督學(xué)習(xí)方法僅在標(biāo)注數(shù)據(jù)上訓(xùn)練分類器而忽略了未標(biāo)注數(shù)據(jù)。SSL 通過利用未標(biāo)注數(shù)據(jù)的方法來減輕對標(biāo)注數(shù)據(jù)的需求。在通常情況下,未標(biāo)注數(shù)據(jù)的獲取要比標(biāo)注數(shù)據(jù)容易得多,因此SSL 所帶來的性能提升通常都是低成本的。SSL 方法主要分為兩類:一類是對一個(gè)輸入添加微小的擾動,輸出應(yīng)該與原樣本保持不變,即一致性正則化;另一類是使用預(yù)測模型或它的某些變體生成偽標(biāo)簽,將帶有偽標(biāo)簽的數(shù)據(jù)和標(biāo)注數(shù)據(jù)進(jìn)行混合,并微調(diào)模型。
將增強(qiáng)技術(shù)與半監(jiān)督學(xué)習(xí)方法整合于一個(gè)框架中的技術(shù)在計(jì)算機(jī)視覺領(lǐng)域已經(jīng)取得成功。例如MixMatch[17]和FixMatch[18]方法均表現(xiàn)出了良好的性能。然而在自然語言處理領(lǐng)域,由于受文本的語法、語義關(guān)系等影響,此類方法的應(yīng)用極少。
基于上述方法,本文將文本增強(qiáng)技術(shù)與半監(jiān)督學(xué)習(xí)方法相結(jié)合,應(yīng)用于面向中文醫(yī)療社交媒體的ADR 檢測任務(wù)。利用回譯對未標(biāo)注數(shù)據(jù)進(jìn)行增強(qiáng),以獲取低熵標(biāo)簽,并將得到的偽標(biāo)簽未標(biāo)注數(shù)據(jù)和標(biāo)注數(shù)據(jù)進(jìn)行Mixup 操作,降低對標(biāo)注數(shù)據(jù)的需求,充分發(fā)揮大量未標(biāo)注數(shù)據(jù)的價(jià)值,提升ADR 檢測模型的準(zhǔn)確性。
給定有限標(biāo)注的數(shù)據(jù)集Xl=和其對應(yīng)的標(biāo)簽Yl=,以及大量的未標(biāo)注數(shù)據(jù)集Xu=,其中n和m是2個(gè)數(shù)據(jù)集中的數(shù)據(jù)量,∈{0,1}C是一個(gè)one-hot 向量,C是類別數(shù)。本文目標(biāo)是能有效利用標(biāo)注數(shù)據(jù)和未標(biāo)注數(shù)據(jù)一起訓(xùn)練模型。為此,本文提出一種標(biāo)簽猜測方法,為未標(biāo)注數(shù)據(jù)生成標(biāo)簽,將未標(biāo)注數(shù)據(jù)視為附加的標(biāo)注數(shù)據(jù),并在標(biāo)注數(shù)據(jù)以及未標(biāo)注數(shù)據(jù)上利用Mixup 方法進(jìn)行半監(jiān)督學(xué)習(xí)。最后,引入了熵最小化損失。本文方法的總體框架如圖1 所示。
圖1 本文方法框架Fig.1 Framework of method in this paper
回譯是一種常見的文本增強(qiáng)技術(shù),用機(jī)器翻譯把一段中文翻譯成另一種語言,然后再翻譯回中文。通過對同一未標(biāo)注數(shù)據(jù)進(jìn)行不同中間語言的回譯,可以得到不同的增強(qiáng)數(shù)據(jù),且能保留原始文本的語義。對于未標(biāo)注數(shù)據(jù)集Xu中的每一個(gè),生成K個(gè)增強(qiáng)數(shù)據(jù),其中k=[1,K],K表 示數(shù)據(jù)增強(qiáng)的次數(shù)。
為了避免加權(quán)過于平均,對預(yù)測結(jié)果使用如式(2)所示的銳化函數(shù)進(jìn)行處理:
其中:‖·‖1是L1 范式;T是給定的超參數(shù),當(dāng)T趨向于0 時(shí),生成的標(biāo)簽是一個(gè)one-hot 向量。
Mixup 是ZHANG 等[19]提出的一種圖像增強(qiáng)方法,Mixup 的主要思想非常簡單,即給定2 個(gè)標(biāo)記數(shù)據(jù)(xi,yi)和(xj,yj),其中x是圖像,而y是標(biāo)簽的onehot 向量,通過線性插值構(gòu)建虛擬訓(xùn)練樣本,如式(3)和式(4)所示:
其中:混合因子λ∈[0,1],由Beta 分布得到:
新的訓(xùn)練樣本將被用于訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型。Mixup 可以看作是一種數(shù)據(jù)增強(qiáng)方法,能夠基于原始訓(xùn)練集創(chuàng)建新的數(shù)據(jù)樣本。同時(shí),Mixup 強(qiáng)制對模型進(jìn)行一致性正則化,使其在訓(xùn)練數(shù)據(jù)之間的標(biāo)簽為線性。作為一種簡單有效的增強(qiáng)方法,Mixup可以提升模型的魯棒性和泛化能力。
受Mixup 在圖像分類領(lǐng)域運(yùn)用的啟發(fā),本文嘗試將其應(yīng)用于文本分類任務(wù)中。通過標(biāo)簽猜測得到未標(biāo)注數(shù)據(jù)的標(biāo)簽后,將標(biāo)注數(shù)據(jù)Xl、未標(biāo)注數(shù)據(jù)Xu和增強(qiáng)數(shù)據(jù)Xa=合并成一個(gè)大型的數(shù)據(jù)集X=Xl∪Xu∪Xa,對應(yīng)的標(biāo)簽為Y=Yl∪Yu∪Ya,其中Ya=,并且定義,即對未標(biāo)注數(shù)據(jù),其所有的增強(qiáng)樣本與原始樣本共享相同的標(biāo)簽。
在訓(xùn)練過程中,本文從數(shù)據(jù)集X中隨機(jī)采樣2 個(gè)樣本x、x′,根據(jù)式(7)和式(8)分別計(jì)算Mixup(x,x′)和mix(y,y′):
其中:f(·)是將文本編碼為向量的神經(jīng)網(wǎng)絡(luò)。
混合樣本通過分類模型獲得預(yù)測值p(Mixup(x,x′)),將預(yù)測結(jié)果和混合標(biāo)簽進(jìn)行一致性正則化,使用兩者的KL 散度作為損失,計(jì)算公式如式(9)所示:
由于x、x′是從數(shù)據(jù)集X中隨機(jī)采樣而來的,因此2 個(gè)樣本的來源有3 種情況:2 個(gè)都是標(biāo)注數(shù)據(jù),各有1 個(gè)標(biāo)注數(shù)據(jù)和1 個(gè)未標(biāo)注數(shù)據(jù),2 個(gè)都是未標(biāo)注數(shù)據(jù)?;谝陨锨闆r,將損失分為2 類:
1)監(jiān)督損失。當(dāng)x∈Xl時(shí),即當(dāng)實(shí)際使用的大部分信息來自于標(biāo)注數(shù)據(jù)時(shí),使用監(jiān)督損失訓(xùn)練模型。
2)一致性損失。當(dāng)樣本來自未標(biāo)注數(shù)據(jù)或增強(qiáng)數(shù)據(jù)時(shí),即x∈Xu∪Xa,大部分信息來自于未標(biāo)注數(shù)據(jù),使用KL 散度作為一致性損失,能夠使混合樣本與原始樣本具有相同的標(biāo)簽。
為使模型能夠基于未標(biāo)注數(shù)據(jù)預(yù)測出置信度更高的標(biāo)簽,本文使用未標(biāo)注數(shù)據(jù)的預(yù)測概率最小熵作為損失函數(shù):
其中:γ是邊界超參數(shù)。
結(jié)合2 種損失,構(gòu)造總損失函數(shù)的表示式如式(11)所示:
本文模型包含編碼層、Mixup 層、分類層共3 層。輸入文本經(jīng)過編碼層得到向量表示,Mixup 層通過隨機(jī)混合的文本向量表示和對應(yīng)的分類標(biāo)簽生成混合樣本和混合標(biāo)簽?;旌蠘颖镜南蛄勘硎窘?jīng)過Mixup 層被送入分類層。分類層通過全連接層和softmax 函數(shù)計(jì)算預(yù)測值,并針對混合樣本的標(biāo)簽和預(yù)測值計(jì)算分類損失。本文模型的結(jié)構(gòu)如圖2所示。
圖2 本文模型結(jié)構(gòu)Fig.2 Structure of model in this paper
編碼層分為ERNIE 層、BiLSTM 層、Attention 層共3 個(gè)子層。
3.1.1 ERNIE 層
傳統(tǒng)的詞向量模型Word2vec 得到的是靜態(tài)詞向量,無法體現(xiàn)1 個(gè)詞在不同語境中的不同含義,而預(yù)訓(xùn)練模型能夠動態(tài)捕捉上下文信息,提高文本表示能力。其 中ERNIE 等[20]提出一種知識掩碼(Knowledge Masking,KM)策略,在訓(xùn)練階段引入外部知識,并隨機(jī)選取字、短語、命名實(shí)體進(jìn)行mask,可以潛在地學(xué)習(xí)到被掩碼的短語和實(shí)體之間的先驗(yàn)知識。此外,新增預(yù)訓(xùn)練任務(wù),使ERNIE 詞向量從訓(xùn)練數(shù)據(jù)中獲取到更可靠的詞法、語法以及語義信息。
中文醫(yī)療文本存在一詞多義的問題,往往需要結(jié)合上下文語境才能獲得精確的語義信息,且藥物不良反應(yīng)檢測通常與外部知識、藥物實(shí)體等密切相關(guān)。因此,本文使用百度開源的ERNIE 中文預(yù)訓(xùn)練模型,并充分利用該模型的外部知識和實(shí)體信息。
ERNIE 采用多層Transformer 作為編碼器,通過自注意力機(jī)制捕獲每個(gè)詞向量在文本序列中的上下文信息,并生成上下文語境表征嵌入。以語料中的一個(gè)文本為例,文本中的詞序列x=[w1,w2,…,wn],其中:n表示文本長度;wi表示文本中的第i個(gè)詞。文本經(jīng)過ERNIE 預(yù)訓(xùn)練模型得到詞序列的向量表示E=[e1,e2,…,en],其中:ei∈Rd表示第i個(gè)詞的詞向量;d表示詞向量的維度。
3.1.2 BiLSTM 層
BiLSTM 層以詞向量表示為輸入,計(jì)算詞語在上下文中的向量表示:
3.1.3 Attention 層
Attention 層將BiLSTM 層的隱藏狀態(tài)作為輸入,通過自注意力權(quán)重分配來計(jì)算文本多個(gè)側(cè)面的向量表示,表達(dá)式如下:
其中:A∈Rr×n表示注意力權(quán)重矩陣,由2 層感知器網(wǎng)絡(luò)計(jì)算得到;分別是2 層注意力層的權(quán)重矩陣;da、r是超參數(shù),da表示注意力層隱藏狀態(tài)的維度,r是注意力機(jī)制的個(gè)數(shù)。
將文本表示矩陣Z∈Rr×2u中的r個(gè)向量拼接得到文本的向量表示z,其維度為2ur。
本文基于Mixup 方法,在文本的向量空間中混合樣本?;旌线^程是先隨機(jī)選取一個(gè)樣本,然后將同批次的樣本隨機(jī)打亂后抽取另一個(gè)樣本,對2 個(gè)樣本(zi,yi)和(zj,yj)進(jìn)行插值。抽取過程均為不放回抽取。樣本混合因子λ由式(5)和式(6)得到:
在訓(xùn)練的過程中,Mixup 層通過隨機(jī)混合批次內(nèi)的文本向量表示得到擴(kuò)增的文本向量表示,其中M表示一個(gè)批次的樣本數(shù)據(jù)量。
混合樣本通過一個(gè)全連接層和softmax 激活函數(shù),得到分類標(biāo)簽的預(yù)估概率值:
其中:W∈RC×2ur和b∈RC分別是權(quán)重矩陣和偏置。
由于目前中文醫(yī)療社交媒體沒有公開可用的藥物不良反應(yīng)檢測數(shù)據(jù)集,因此本文從好大夫網(wǎng)站收集用戶的診療記錄。如圖3 所示,每個(gè)診療記錄包含患者的信息、病情描述、醫(yī)生診療建議等內(nèi)容。
圖3 診療記錄樣例Fig.3 Sample of treatment record
本文選取80 余種常用藥作為研究內(nèi)容,其中包含降壓藥、抗過敏藥、抗生素等,獲取了網(wǎng)站2011 年以后包含相關(guān)藥物的診療記錄,并選擇記錄中的病情描述內(nèi)容作為本文的原始語料。最終共獲得42 800 個(gè)文本,每個(gè)文本都提及了一種或者多種藥物。通過對文本進(jìn)行預(yù)處理,刪除URL、英文字母、特殊字符等并去停用詞。原始語料來源于中文社交媒體,需要對其進(jìn)行分詞。對于醫(yī)療數(shù)據(jù),傳統(tǒng)的jieba 分詞效果并不理想,因此本文使用北京大學(xué)開源分詞工具pkuseg 進(jìn)行分詞,調(diào)用其自帶的medicine 模型將大部分的醫(yī)藥專業(yè)詞匯分詞出來。
為得到標(biāo)注數(shù)據(jù),本文從語料中選取6 000 條數(shù)據(jù)讓5 名藥學(xué)專業(yè)學(xué)生進(jìn)行人工標(biāo)注,設(shè)定分類標(biāo)簽y∈{0,1}。當(dāng)不同人員之間存在爭議,同一數(shù)據(jù)的標(biāo)注結(jié)果不一致時(shí),以多數(shù)人的結(jié)果為準(zhǔn)。標(biāo)注樣例如表1所示。最終得到包含ADR 的數(shù)據(jù)有2 379 條,不包含ADR 的數(shù)據(jù)有3 621 條,并從中隨機(jī)選擇4 800 條作為訓(xùn)練集,1 200 條作為測試集。
表1 標(biāo)注數(shù)據(jù)樣例Table 1 Samples of labeled data
本文采用Pytorch 實(shí)現(xiàn)所提模型和算法,將文本的最大詞序列長度設(shè)為256。ERNIE 預(yù)訓(xùn)練模型包含12 個(gè)Encoder 層,多頭注意力機(jī)制的頭數(shù)為12,隱藏層維度為768。將BiLSTM 層的隱藏狀態(tài)維度u設(shè)為300,Attention 層自注意力機(jī)制的參數(shù)r設(shè)為24,注意力層隱藏狀態(tài)維度da設(shè)為128。未標(biāo)注數(shù)據(jù)的增強(qiáng)次數(shù)K對于偽標(biāo)簽的影響較大,參照文獻(xiàn)[21],設(shè)置K=2,即對于每個(gè)未標(biāo)注數(shù)據(jù)執(zhí)行2 次數(shù)據(jù)增強(qiáng)。將Beta 分布中的α設(shè)置為0.4,當(dāng)α較小時(shí),Beta(α,α)采樣得到的值大部分落在0 或1 附近,使樣本混合因子λ接近1,從而在合成樣本時(shí)偏向某一個(gè)樣本創(chuàng)建出相似的數(shù)據(jù)。
模型采用Adam 梯度下降算法訓(xùn)練,初始學(xué)習(xí)率設(shè)為0.001,β1=0.9,β2=0.999,ε=1×10-8,batchsize=64。訓(xùn)練過程采用提前停止策略,若模型性能在5 個(gè)epoch 后仍然沒有提升,則停止訓(xùn)練。
4.3.1 ADR 檢測模型的對比實(shí)驗(yàn)
本文選擇了如下6 種基于深度學(xué)習(xí)的ADR 檢測模型進(jìn)行對比實(shí)驗(yàn):
1)CNN[11]模型:采用不同尺度的卷積神經(jīng)網(wǎng)絡(luò)構(gòu)建文本分類器。分別設(shè)置濾波器寬度為2、3、4、5,每個(gè)濾波器的大小均為25。
2)CNN+Att[11]模型:在CNN 網(wǎng)絡(luò)最上層加入注意力機(jī)制。
3)BiL+Att[12]模型:采用BiLSTM 作為編碼器,加入注意力機(jī)制。
4)ERNIE[20]模型:采用百度開源的ERNIE 中文預(yù)訓(xùn)練模型作為編碼器,得到文本表示,直接連接一個(gè)全連接層實(shí)現(xiàn)文本分類。
5)ERNIE+BiL+Att 模型:基于BiL+Att 模型,使用ERNIE 模型得到詞向量表示。
6)ERNIE+BiL+Att+S-Mixup模型:在ERNIE+BiL+Att 模型的編碼層之上加Mixup 層。對標(biāo)注數(shù)據(jù)進(jìn)行文本增強(qiáng),即有監(jiān)督的Mixup(Supervised Mixup,S-Mixup)。
選取4 800 條標(biāo)注數(shù)據(jù)訓(xùn)練模型,使用精確率、召回率和F1 值作為評價(jià)指標(biāo)。實(shí)驗(yàn)結(jié)果如表2 所示。
表2 不同ADR 檢測模型的實(shí)驗(yàn)結(jié)果Table 2 Experimental results of different ADR detection models %
由表2 可知,CNN 模型的效果最差,而采用BiLSTM 獲取上下文信息,并引入注意力機(jī)制獲取文本的重要特征,能提高模型效果。對比BiL+Att 和ERNIE+BiL+Att 模型,利用ERNIE 預(yù)訓(xùn)練模型得到的動態(tài)詞向量更符合語義環(huán)境,模型的性能也能得到有效提升。
本文對ERNIE 預(yù)訓(xùn)練模型進(jìn)行微調(diào),實(shí)驗(yàn)效果顯著,說明了預(yù)訓(xùn)練模型在ADR 檢測任務(wù)中能達(dá)到較好的分類效果。然而對比ERNIE 與ERNIE+BiL+Att 模型,后者的實(shí)驗(yàn)效果仍有小幅度提升,體現(xiàn)了ERNIE+BiL+Att 模型的優(yōu)勢。
由表2 還可以看出,ERNIE+BiL+Att+S-Mixup 模型的精確率、召回率和F1 值均優(yōu)于其他模型。這是因?yàn)樯窠?jīng)網(wǎng)絡(luò)的訓(xùn)練通常需要大量的標(biāo)注數(shù)據(jù),而當(dāng)標(biāo)注數(shù)據(jù)有限時(shí),效果往往不太理想。ERNIE+BiL+Att+S-Mixup 模型引入Mixup,通過對標(biāo)注數(shù)據(jù)進(jìn)行文本增強(qiáng),在一定程度上增加了訓(xùn)練樣本的數(shù)量,從而使ADR檢測模型的性能得到明顯的提升。
4.3.2 半監(jiān)督模型的對比實(shí)驗(yàn)
本文選取了如下5 種半監(jiān)督模型進(jìn)行對比實(shí)驗(yàn):
1)ERNIE+BiL+Att+S-Mixup 模型:僅使用標(biāo)注數(shù)據(jù)。
2)Pseudo-Label[22]模型:先使用標(biāo)注數(shù)據(jù)訓(xùn)練模型,將未標(biāo)注數(shù)據(jù)經(jīng)過分類模型后得到的預(yù)測值作為偽標(biāo)簽,使用帶有偽標(biāo)簽的數(shù)據(jù)和標(biāo)注數(shù)據(jù)一起訓(xùn)練模型。
3)Π-Model[23]模型:對于同一數(shù)據(jù)的輸入,使用不同的正則化進(jìn)行2 次預(yù)測,通過減小2 次預(yù)測的差異,提升模型在不同擾動下的一致性。
4)Mean Teachers[24]模型:使用時(shí)序組合模型,對模型參數(shù)進(jìn)行EMA 平均,將平均模型作為teacher預(yù)測人工標(biāo)簽,由當(dāng)前模型預(yù)測。
5)ERNIE+BiL+Att+SS-Mixup 模型:即本文模型。先對未標(biāo)注數(shù)據(jù)進(jìn)行多次增強(qiáng),將預(yù)測值加權(quán)平均作為低熵標(biāo)簽,并共享原始樣本和增強(qiáng)樣本。使用標(biāo)注數(shù)據(jù)、未標(biāo)注數(shù)據(jù)和增強(qiáng)數(shù)據(jù)一起對模型進(jìn)行訓(xùn)練,即半監(jiān)督的Mixup(Semi-Supervised Mixup,SS-Mixup)。
從訓(xùn)練集中選取不同數(shù)量的標(biāo)注數(shù)據(jù)和5 000 條未標(biāo)注數(shù)據(jù)。使用準(zhǔn)確率(Accuracy,Acc)作為評價(jià)指標(biāo),實(shí)驗(yàn)結(jié)果如表3 所示。
表3 不同半監(jiān)督模型的Acc 值對比Table 3 Acc value comparison of different semisupervised models %
由表3可知,與傳統(tǒng)的半監(jiān)督模型相比,本文模型在不同標(biāo)注數(shù)據(jù)量的情況下,準(zhǔn)確率均最高。當(dāng)標(biāo)注數(shù)據(jù)的數(shù)量較少時(shí),準(zhǔn)確率增長幅度尤其突出。隨著標(biāo)注數(shù)據(jù)的增加,本文模型帶來的額外提升效果會逐漸降低。從表3中還可以看出,當(dāng)標(biāo)注數(shù)據(jù)量為1 500條時(shí),本文模型與ERNIE+BiL+Att+S-Mixup模型在2 800條標(biāo)注數(shù)據(jù)時(shí)的表現(xiàn)相近。即通過本文對未標(biāo)注數(shù)據(jù)的半監(jiān)督學(xué)習(xí),相當(dāng)于免費(fèi)獲得了近一倍的額外標(biāo)注數(shù)據(jù)。說明本文模型有效利用了未標(biāo)注數(shù)據(jù)的信息,緩解了標(biāo)注數(shù)據(jù)量不足的影響。同時(shí),本文模型對未標(biāo)注數(shù)據(jù)有較好的標(biāo)簽預(yù)測能力。
4.3.3 不同未標(biāo)注數(shù)據(jù)量的對比實(shí)驗(yàn)
為進(jìn)一步對比未標(biāo)注數(shù)據(jù)量對本文模型的影響,從訓(xùn)練集中挑選了800 條標(biāo)注數(shù)據(jù)和不同數(shù)量的未標(biāo)注數(shù)據(jù)。實(shí)驗(yàn)結(jié)果如表4 所示。
表4 不同未標(biāo)注數(shù)據(jù)量的Acc 結(jié)果Table 4 Acc results of different unmarked data quantities
由表4 可知,當(dāng)標(biāo)注數(shù)據(jù)量一定時(shí),未標(biāo)注數(shù)據(jù)的數(shù)量越多,本文模型的預(yù)測結(jié)果越準(zhǔn)確,表明本文模型能夠有效利用未標(biāo)注數(shù)據(jù)的信息,幫助模型提升性能。
本文面向中文醫(yī)療社交媒體提出一種融合數(shù)據(jù)增強(qiáng)與半監(jiān)督學(xué)習(xí)的ADR 檢測方法。通過利用回譯的文本增強(qiáng)技術(shù)對未標(biāo)注數(shù)據(jù)進(jìn)行多次增強(qiáng),并在模型的編碼層和分類層之間加入Mixup 層,對混合樣本的文本向量采取插值操作以擴(kuò)充樣本數(shù)量。此外,通過半監(jiān)督學(xué)習(xí)訓(xùn)練分類模型,充分利用標(biāo)注數(shù)據(jù)與未標(biāo)注數(shù)據(jù)。實(shí)驗(yàn)結(jié)果表明,本文方法充分利用未標(biāo)注數(shù)據(jù)解決了標(biāo)注數(shù)據(jù)不足的問題。當(dāng)標(biāo)注數(shù)據(jù)量較少時(shí),模型的準(zhǔn)確率提升幅度尤其突出,且隨著未標(biāo)注數(shù)據(jù)量的增加,模型性能得到提升。下一步將研究文本中藥物和不良反應(yīng)的關(guān)系,通過辨別文本中出現(xiàn)的ADR信息是否已知,從而挖掘潛在的ADR 信息,提升本文模型的性能。