羅曜儒 李智
摘 要:生物醫(yī)學(xué)文本語義消歧研究中,上下文語義表示存在精度不高、忽略語言特性等問題,對此提出一種基于Bi-LSTM的新型語言模型。該模型通過考慮上下文詞序?qū)⒄麄€句義信息以無監(jiān)督學(xué)習(xí)方式嵌入低維連續(xù)空間,并以此生成高質(zhì)量的上下文表示,然后利用該方法構(gòu)建歧義向量,最終計算cosine相似度,完成對歧義詞的分類。實(shí)驗(yàn)表明,相比傳統(tǒng)線性語言模型,基于Bi-LSTM生成的語義向量能更好地表示歧義詞的語義信息,并在不同生物醫(yī)學(xué)文本數(shù)據(jù)集中達(dá)到高準(zhǔn)確度(95.01/91.27)。
關(guān)鍵詞:語義消歧;Bi-LSTM;無監(jiān)督學(xué)習(xí);生物醫(yī)學(xué);上下文表示
DOI:10. 11907/rjdk. 182910
中圖分類號:TP301文獻(xiàn)標(biāo)識碼:A文章編號:1672-7800(2019)004-0057-03
0 引言
生物醫(yī)學(xué)文本中包含大量特定領(lǐng)域知識(如癥狀、治療、疾?。?,從其中自動提取信息可以改善臨床醫(yī)學(xué)研究及應(yīng)用[1]。語義消歧是生物醫(yī)學(xué)領(lǐng)域一個具有挑戰(zhàn)性的自然語言處理任務(wù),其表現(xiàn)在文本中某些詞語可能含有兩種或多種語義信息。例如cold可以指disease或者temperature,但是在“I am taking aspirin for my cold”這句話中具有唯一語義表示,其語義選擇對整個句義具有較大影響,由此可見語義消歧是語義理解中至關(guān)重要的一步。
上下文表示通常由歧義詞鄰近單詞的語義信息組合而成,是語義消歧任務(wù)中的關(guān)鍵步驟[2-4]。常見的上下文表示方法是通過Word2vec生成每個單詞的詞向量表示,然后利用線性合成方法生成整個句子的向量表示。雖然這些方法能夠在一定程度上捕獲句子的語義信息,然而大多數(shù)算法是基于詞袋模型的,并沒有考慮語序、語法等語言特性,使其在表示語義的準(zhǔn)確度上還有較大提升空間。
當(dāng)有了良好的上下文表示向量后,常見的語義消歧算法可以分為3類:監(jiān)督學(xué)習(xí)、無監(jiān)督學(xué)習(xí)和基于外部知識庫的算法。監(jiān)督算法使用標(biāo)記數(shù)據(jù)學(xué)習(xí)潛在分類機(jī)制,然后根據(jù)上下文適當(dāng)?shù)膯卧~意義對模糊詞進(jìn)行分類[5-8]。由于該方法需要大量標(biāo)記數(shù)據(jù),因此在標(biāo)記訓(xùn)練數(shù)據(jù)有限時并不是最佳選擇?;谕獠恐R庫的算法使用外部知識信息作為訓(xùn)練數(shù)據(jù)[9-11]。這些數(shù)據(jù)具有高置信度等特點(diǎn),并由領(lǐng)域?qū)<疫M(jìn)行標(biāo)準(zhǔn)化。無監(jiān)督算法不需要標(biāo)記數(shù)據(jù),具有相似詞義的上下文以無監(jiān)督方式聚類成一類[12-14]。所有這些方法都廣泛用于生物醫(yī)學(xué)語義消歧任務(wù)。
本文使用不同上下文表示作為語義消歧研究中的輸入特征,然后對具有相同標(biāo)簽的句義表示向量求均值以構(gòu)建歧義向量,最后利用cosine計算歧義詞的詞向量與歧義向量間的相似度完成語義消歧。通過比較不同策略生成的上下文嵌入向量可發(fā)現(xiàn),基于雙向長短期記憶網(wǎng)絡(luò)(Bi-LSTM)的表示方法相比傳統(tǒng)線性表示方法有較大提升,其準(zhǔn)確度達(dá)到95.01%。
1 詞向量
詞向量是一種利用低維連續(xù)空間中的向量表示單詞的編碼方法。早期詞向量使用了基于詞袋表示的One-Hot編碼器,該方法將每個單詞表示為一個向量,其維數(shù)等于詞匯表中詞的總數(shù)。向量維度中只有一個可以取值1,其余維度為0。當(dāng)使用One-Hot方法表示文檔時,其向量表示過于稀疏,無法提供單詞之間的內(nèi)在關(guān)系。針對該問題,采用Word2vec預(yù)訓(xùn)練詞向量[15-17]。其中Word2vec包括Skip-Gram與CBOW兩個語言模型,都由一個3層全連接神經(jīng)網(wǎng)絡(luò)組成。Skip-Gram模型通過目標(biāo)單詞對上下文單詞進(jìn)行預(yù)測,CBOW模型則相反,通過上下文單詞對目標(biāo)單詞進(jìn)行預(yù)測。由Word2vec進(jìn)行預(yù)訓(xùn)練后生成的詞向量中,具有相似語義的單詞擁有相近向量表示,并且詞向量之間的幾何距離可以間接反映其語義相似性。本文采用CBOW模型,窗口大小為10,詞向量維度為200。
2 上下文表示
2.1 線性表示法
采用線性組合方式的上下文表示主要包括以下3種方法:
2.2 基于Bi-LSTM的非線性表示法
由線性組合形成的上下文表示方法能在一定程度上對句子語義信息進(jìn)行編碼,然而該類方法忽略了語序等重要語言特征。針對該問題,為了更好地表示歧義詞的上下文語義信息并同時考慮語序等特征,可以采用神經(jīng)網(wǎng)絡(luò)對上下文語義信息進(jìn)行非線性編碼 [18-20] 。
遞歸神經(jīng)網(wǎng)絡(luò)(RNN)廣泛用于自然語言處理,缺點(diǎn)是隨著隱藏層數(shù)量增加,該網(wǎng)絡(luò)存在梯度消失或爆炸等問題。長短期記憶(LSTM)很好地解決了長期依賴性問題,該網(wǎng)絡(luò)基本結(jié)構(gòu)單元包括3個門結(jié)構(gòu):遺忘門[f]、輸入門[i]與輸出門[o],同時擁有一個記憶細(xì)胞[c]。每個門結(jié)構(gòu)由一個sigmoid函數(shù)組成,在時刻[t]中,遺忘門[ft]用于移除[t-1]時刻[ct-1]中部分不相關(guān)的信息量,如式(4)所示。
在對歧義詞進(jìn)行最終分類時,將歧義詞的詞向量[w3]與歧義向量[DE(w3)]進(jìn)行cosine相似度計算,將目標(biāo)單詞分類為相似度最大的語義,完成對生物醫(yī)學(xué)文本的語義消歧。
3 實(shí)驗(yàn)結(jié)果與分析
數(shù)據(jù)集來自生物醫(yī)學(xué)領(lǐng)域MSH dataset和NLM dataset。其中,MSH WSD數(shù)據(jù)集包含203個醫(yī)學(xué)歧義實(shí)體、106個醫(yī)學(xué)歧義縮寫,每個歧義詞最多有100個例句,共計?? 37 888條數(shù)據(jù),NLM dataset包含50個醫(yī)學(xué)歧義實(shí)體,共計552 153條數(shù)據(jù)。
為了驗(yàn)證基于Bi-LSTM生成的上下文語義表示對生物醫(yī)學(xué)文本語義消歧研究的可行性,實(shí)驗(yàn)對比項(xiàng)包括級聯(lián)、求均值、加權(quán)求和3種線性生成方法。實(shí)驗(yàn)結(jié)果評價方式采用Macro和Micro準(zhǔn)確度,同時采用不同詞向量維度驗(yàn)證其對實(shí)驗(yàn)結(jié)果的影響。最終MSH、NLM兩種數(shù)據(jù)集下實(shí)驗(yàn)結(jié)果如表1、表2所示。