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