夏鶴瓏 嚴丹丹
摘要:使用傳統(tǒng)深度學習方法來進行信息抽取時,存在長距離依賴問題或者梯度彌散問題。針對以上問題,提出基于多頭注意力機制的神經(jīng)網(wǎng)絡模型的關系抽取方法,利用文本向量和位置編碼得到局部特征,將得到的局部特征作為輸入導入到多頭注意力機制的神經(jīng)網(wǎng)絡模型中,得到全局特征,最后使用分類器進行分類。通過該模型在中文語料庫上進行人物關系抽取,并與多個模型進行對比實驗,結果表明:基于多頭注意力機制的神經(jīng)網(wǎng)絡模型在效果上有所提高。
關鍵詞:信息抽取,注意力機制,深度學習,自然語言處理,神經(jīng)網(wǎng)絡
中圖分類號:TP391?文獻標志碼:A?文章編號:2095-5383(2020)01-0032-05
Abstract:Information extraction is an important part of knowledge mapping,it mainly extracts entities,relationships and other structured information from text information.?At present,traditional deep learning methods are widely used for information extraction,but it also has the problem of long distance dependence or gradients diffusion.?In response to the above problems,a relationship extraction method based on the neural network model of Multiple Attention mechanism was proposed,it used text vector and position coding to obtain local features,and the obtained local features were input into the neural network model of Multiple Attention mechanism to obtain global feature.?Finally,the classifier was applied for classification.?The model was used to extract character relationships from Chinese corpus and compared with multiple models.?The results show that the neural network model based on Multi-Head Attention mechanism is more effective.
Keywords:information extraction,attention mechanism,deep learning,natural language processing,neural network
信息的爆炸式增長是互聯(lián)網(wǎng)快速發(fā)展的必然結果,有用的和無用的信息混雜在一起。無論是學術角度還是商業(yè)角度,如何從中提取有效信息都是一個重要課題。信息抽取技術[1]是通過計算機從非結構化的文本中抽取結構化信息,主要分為實體抽取、實體關系抽取和事件抽取。關系抽取是對于給定的兩個或多個實體,從劃分好的關系類型表中找到合適的關系類型。目前關系抽取方法主要分為傳統(tǒng)的基于統(tǒng)計的機器學習方法和近些年來熱門的深度學習方法。林壓平等[2]利用馬爾科夫模型對文本進行信息抽取,周晶等[3]使用條件隨機場進行文本信息抽取,均取得不錯的成績。但隨著信息的增多,傳統(tǒng)的基于統(tǒng)計的機器學習方法開始逐漸顯現(xiàn)弊端,人們必須對要信息文本中所述的領域非常了解才能制定出合適特征。深度學習的興起,使信息抽取技術有了更好的發(fā)展。Socher等[4]利用遞歸神經(jīng)網(wǎng)絡(recursive neural network)的方法進行信息抽取,但其并未考慮多個實體之間的位置關系。區(qū)別于傳統(tǒng)的機器學習方法,深度學習一般需要大量數(shù)據(jù)集,能夠利用標記好的數(shù)據(jù)集實現(xiàn)對特征權重的調(diào)整,從而實現(xiàn)自動選取特征。本文以關系抽取技術為例,提出以注意力機制為整體架構的神經(jīng)網(wǎng)絡模型,對給定的文本通過位置關系獲得其位置向量與對應的詞向量作為該文本的輸入特征,應用注意力機制提取輸入特征作為輸出特征,最后對提取后的特征進行分類。
1?基于Multi-Head Attention機制的人物關系抽取模型
Attention機制實質(zhì)是學習一種概率分布,能夠聯(lián)系上下文,從而學習到更多的文本特征。Multi-Head Attention機制是Attention機制的一種變種[5],是在Attention機制的基礎上增加了多個head,每個head能從不同的表征空間學習到不同的信息,從而捕捉到輸入與輸出之間的依賴性。本文模型框架如圖1所示,主要包括兩部分:1)詞向量和位置編碼。利用分詞工具對中文語料庫進行分詞,再用Skip-gram模型進行Word2Vec訓練[6],得到詞向量。其后利用分詞后的句子中每個單詞與所要判斷的2個人名的首位置的距離關系得到位置編碼,詞向量與位置編碼作為輸入向量進行訓練。2)構建Multi-Head Attention神經(jīng)網(wǎng)絡模型。利用Multi-Head Attention機制對輸入向量計算概率分布,根據(jù)計算得到的概率分布與輸入向量進行加權計算從而獲得文本特征,因為其有多個head能從不同表征空間學習到不同的信息,所以有多個特征向量,將多個特征向量進行拼接后再進行線性變換,以此作為最后的輸出特征,導入到分類器,進行分類。
2?模型求解
2.1?詞向量的生成
由于計算機程序不能直接處理文本數(shù)據(jù),因此需要將文本數(shù)據(jù)轉換成數(shù)字數(shù)據(jù)。對于給定的一個文本S,其中包含單詞集,n為文本S中的單詞數(shù)。
2.2?位置編碼
位置編碼能反映句中所要判斷關系的2個詞語的距離關系。對于文本S,有:
將得到的Eword,EPos1,EPos2的各個詞向量進行拼接,得到Econcat∈Rn×3m。
2.3?Multi-Head Attention層
Multi-Head Attention機制是Attention機制的一個變種,在原來Attention機制的基礎上,增加了多個head,使其能在不同表征空間并行地獲取不同文本信息,增加了對文本信息特征的提取能力。Multi-Head Attention層結構如圖2所示,以下以一個head為例。
2.3.1?線性變換
對于給定矩陣Q,V,K,因為使用Self-Attention機制,所以令Q=V=K=X。其中X為上文詞向量拼接后所得到的Econcat。進行線性變換:
表示參數(shù)W所屬于headi。得到的Qi,Ki,Vi∈Rn×r,經(jīng)過線性變換的矩陣保持著維度一致,以方便后面計算。
2.3.2?縮放點積模型
縮放點積操作是使用點積進行相似度計算,主要是被用于計算概率分布。其步驟是利用Q對K進行相似度計算,再利用Soft max函數(shù)得到K關于Q的注意力分布,最后把其與V進行加權求和。
其中:
Q,K,V均是X進行不同線性變換后所得到的矩陣,r為K的維度,除以r是為了把數(shù)值縮放在合適范圍,不至于太大。將得到的多個head進行拼接,得到文本全局特征。Soft max是歸一化函數(shù),其公式為:
2.3.3?層標準化(Layer Normalization)
Layer Normalization是一種橫向規(guī)范化,是針對同一層的隱藏單元進行計算,同層的輸入擁有相同的方差與均值,不同的訓練樣本則是不同的方差和均值。它能夠改良數(shù)據(jù)的分布,加速訓練損失的收斂。
2.3.4?損失函數(shù)
關系抽取可以看作是多分類問題,本文使用交叉熵損失函數(shù)對分類結果進行損失(Loss)計算,并在訓練過程中以Adam優(yōu)化算法降低損失。交叉熵損失函數(shù)為:
2.3.5?關于梯度彌散
隨著網(wǎng)絡層數(shù)的加深反向傳播時鏈式求導項會變得越長,同時選取不當?shù)募せ詈瘮?shù)都可能會造成梯度趨近于0的問題[7]。而本文模型能在一定程度緩解梯度彌散問題是因為模型網(wǎng)絡層簡單,并不會使反向傳播鏈很長,并且選用relu激活函數(shù),在x正區(qū)間不飽和,緩解了此問題,同時還引入了Layer Normalization層標準化,能把輸入的數(shù)據(jù)拉入relu激活函數(shù)的非飽和區(qū),同樣能在一定程度上緩解梯度彌散。
3?實驗部分
3.1?實驗環(huán)境
本實驗在Ubuntu系統(tǒng)下進行的,實驗所使用的CPU為i7-7 700 k,內(nèi)存32 GB,顯存8 GB,所使用編
程語言為Python 3.5版本,開發(fā)工具為Jupyter Notebook。使用的深度學習框架為Tensorflow 1.9。
3.2?實驗數(shù)據(jù)
本實驗人物關系數(shù)據(jù)集總共89 183條,劃分的訓練集、驗證集、測試集數(shù)量分別為71 346條、8 918條、8 919條。其中包含11類人物關系,如父母、師生、合作、好友等,如表1所示。樣本的示例如表2所示。
3.3?評判指標
本實驗采用精準率(precision),召回率(recall),F(xiàn)1值作為實驗結果的評判標準,其中精準率P、召回率R、F1值公式為:
其中:TP為預測正確的個數(shù),F(xiàn)P是實際為負但預測為正的錯誤個數(shù),F(xiàn)N是實際為正但預測為負的錯誤個數(shù)。P值反應的是在預測為正的樣本中有多少預測正確,R值反應的是在所有正例中有多少被預測出來。
3.4?實驗設計
本文利用中文分詞工具Jieba對數(shù)據(jù)集進行中文分詞,得到分詞后的數(shù)據(jù)集。然后使用Skip-gram模型對位置編碼和分詞后的數(shù)據(jù)集訓練其詞向量,將3個詞向量拼接后作為模型的輸入。經(jīng)過多次訓練,觀察Loss值的迭代,記錄每次的參數(shù)和性能指標,最后從中選取性能最好的一組作為最終數(shù)據(jù)。
3.5?實驗結果
選取實驗數(shù)據(jù)中的訓練集作為訓練數(shù)據(jù),以測試集作為最終模型結果的評判數(shù)據(jù),其實驗結果如圖3、表3所示。
可以看出關系類型“夫妻”的精準率、召回率、F1值均優(yōu)于其他關系類型,關系類型“親戚”的精準率、召回率、F1值相較于其他關系類型更低。這主要是由于數(shù)據(jù)集樣本的分布不平衡所造成,關系類型為“夫妻”的數(shù)據(jù)量占了整個數(shù)據(jù)集總量的32%,但關系類型為“親戚”的數(shù)據(jù)量只占有數(shù)據(jù)集總量的1.5%,數(shù)據(jù)量的大小很大程度決定了模型的性能。其次關系類型為夫妻的大部分句子中包含特征鮮明的詞,如“嫁”“娶”“丈夫”等,多頭注意力機制能分配更多的注意力在類似詞語上。
3.6?模型對比
應用在自然語言處理的神經(jīng)網(wǎng)絡模型有很多,本實驗利用基于多頭注意力機制的神經(jīng)網(wǎng)絡模型與傳統(tǒng)的深度學習模型在相同數(shù)據(jù)集上進行對比,如表4所示。
由表4可知,基于Multi-Head Attention的神經(jīng)網(wǎng)絡模型在性能上優(yōu)于其他3種傳統(tǒng)神經(jīng)網(wǎng)絡模型,其原因是傳統(tǒng)的GRU、LSTM模型無法捕捉到長序列之間的依賴關系,而Multi-Head Attention機制能夠緩解長距離依賴問題,多個head能獲得文本不同表征空間的更多特征。
4?結束語
關系抽取作為信息抽取的其中的一部分,利用傳統(tǒng)的深度學習模型不能有效地捕捉到長距離關系。針對所述問題,本文提出了基于多頭注意力的神經(jīng)網(wǎng)絡模型,該模型的優(yōu)點在于多個head能提取得到更加全面的文本特征,同時也能夠考慮到輸入與輸出之間的關系,所以在相同數(shù)據(jù)集的實驗中獲得了相比較而言更好的效果。但其只能應用在傳統(tǒng)的信息抽取上,對于開放式實體關系抽取,將來會做進一步研究。
參考文獻:
[1]李楓林,柯佳.基于深度學習框架的實體關系抽取研究進展[J].情報科學,2018,36(3):169-176.
[2]周晶,吳軍華,陳佳,等.基于條件隨機域CRF模型的文本信息抽取[J].計算機工程與設計,2008,29(23):6094-6097.
[3]林亞平,劉云中,周順先,等.基于最大熵的隱馬爾可夫模型文本信息抽取[J].電子學報,2005(2):236-240.
[4]SOCHER R,HUVAL B,MANNING C D,et al.?Semantic compositionality through recursive Matrix-vector spaces[C]// Proceedings of the 2012
Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning,2012.
[5]劉峰,高賽,于碧輝,等.基于Multi-head Attention和Bi-LSTM的實體關系分類[J].?計算機系統(tǒng)應用,2019,28(6):118-124. http://www.c-s-a.org.cn/1003-3254/6944.html.
[6]MIKOLOV T,CHEN K,CORRADO G,et al.?Efficient estimation of word representations in vector space[J].?Computer Science,2013.?https://www.researchgate.net/publication/234131319_Efficient_Estimation_of_Word_Representations_in_Vector_Space.
[7]HE K,ZHANG X,REN S,et al.?Deep residual learning for image recognition[C]// 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).?IEEE Computer Society,2016.