多实例学习PCNN在关系抽取中的应用
參考文獻:Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks
摘要
在遠程監督關系提取中,提出兩個問題。
- 第一,首先,在這種方法中,啟發式地將一個已經存在的知識庫與文本對齊,并將對齊結果作為標記數據處理。但由于錯誤標簽的存在,啟發式的標記是錯誤的。
- 第二,傳統模型進行特征提取過程中產生的噪聲會導致性能下降。
針對以上兩個問題,本論文提出了PCNN(多實例學習的分段卷積神經網絡)。
- 為了解決第一個問題,遠程監督關系抽取被處理為多實例問題。在多實例問題中,訓練集由許多包組成,每個包有許多實例。包的標簽是已知的,但是包中實例的標簽是未知的。在包層我們設計了一個目標函數,學習過程中考慮了實例標簽的不確定性,從而緩解了錯誤標簽的問題。
- 為了解決第二個問題,采用最大池化進行分段卷積,自動學習關系特征。其中最大池化是用于確定最重要的特征。
引言
在關系抽取中的一個難點是訓練集的建立。一般是通過遠程監督來完成的。
 遠距離監督(Mintz et al., 2009),該方法假設,如果兩個實體在一個已知知識庫中有關系,那么所有提到這兩個實體的句子都會以某種方式表達這種關系
 遠程監督策略的缺點:
- 該方法太絕對,容易導致錯誤的標注
- 使用傳統的模型會導致錯誤的傳播和積累,越長句子,錯誤標注導致錯誤傳播的幾率越大。
這個方法是對2014年Zeng et al提出方法的改進,原來的方法雖然已被證明是在文本處理上是有效的,但它過快地縮小了隱藏層的大小,無法捕獲兩個實體之間的結構信息
例如“Steve Jobs was the co-founder and CEO of Apple and formerfy Pixar.”,為了確定“Steve Jobs”與“Apple”的關系,我們需要明確實體,并且抽取實體之間的結構特征。有幾種試圖通過結構信息進行建模的方法。這些方法考慮了句子的內部與外部特征。根據這兩個實體,句子實質可被劃分為三個部分。內部上下文包括兩個實體內部的字符,外部上下文包括兩個實體周圍的字符。顯而易見,簡單的最大池化不能滿足捕捉結構信息的需要。為了捕捉結構信息和其他潛在信息,在此基礎上,我們將卷積結果分為三段,并設計了分段最大池化層代替單一最大池化層。分段最大池程序返回每個片段中的最大值,而不是整個句子中的單個最大值。因此,與傳統的方法相比,該方法有望表現出更好的性能。
本文的貢獻總結如下:
- 我們探討了在不需要手工設計特征的情況下進行遠程監督關系提取的可行性。PCNNS被提出來自動學習特征,而不需要復雜的NLP預處理。
- 為了解決錯誤的標簽問題,我們開發了創新的解決方案,將多實例學習納入到遠程監督關系提取的PCNNS中。
- 在該網絡中,我們設計了分段最大池化層,以捕獲兩個實體之間的結構信息。
相關工作
監督學習是眾多方法中,表現相對好的。但如何得到合適的標記樣本,是一個問題。上面提出的遠程監督的方法,會導致錯誤的標記。為了解決這個問題,多實例遠程監督方法被提出。多實例學習中,標簽的不確定性被考慮,多實例學習的重點是區分bags。
這個方法已經被證明是有效的,但是結果的好壞很大程度上取決于特征。大多數現有的研究都集中在提取特征來識別兩個實體之間的關系。過去的方法主要分為兩類:以特征為基礎的方法和以核(kernel)為基礎的方法。與第一種方法相比,第二種方法不需要進行特征提取。有幾個核已經被提出:the convolution tree kernel、the subsequence kernel、the dependency tree kernel
Zhang和Zhou(2006)成功地將多實例學習納入了傳統的反向傳播(BP)和徑向基函數(RBF)網絡中,并通過最小化平方和誤差函數來優化這些網絡。與他們的方法不同,我們根據交叉熵原理定義目標函數。
方法論
我們提出了創新的解決方案,將多實例學習合并到卷積神經網絡來完成這項任務。提出了一種不需要復雜的NLP預處理的特征自動學習算法。過程包含如下四部分。
 
1、Vector representation
網絡的輸入是原始單詞標記。在使用神經網絡的時候,我們將單詞標記轉化為一個低維的向量。在我們的方法中,每個輸入的單詞標記通過查找預先訓練好的word embeddings被轉換成一個向量。除此之外,我們使用PFs(position features)來指定實體對,并通過查找位置嵌入來將實體對轉換為向量。
1.1、word embeddings
單詞嵌入是單詞的分布表示,它將文本中的每個單詞映射到一個k維實值向量。
1.2、position embedding
在關系抽取中,我們把標簽分配給實體對。PF定義為當前單詞到e1和e2的相對距離的組合(建議得到距離后最好統一除以句子的長度,進行數值歸一)
2、Convolution
在關系抽取中,被標記為包含目標實體的輸入句子只對應于一個關系類型;它不會去預測每個單詞的標簽。因此,利用所有特征進行預測是必須的。這個卷積方法就是一個自然融合所有特征的方法。
卷積是一個權重向量w和輸入序列q直接的操作。權重w被看作是卷積的濾波器。例如Figure3,假設權重向量w的長度為3,q序列的長度為S。一般qi,jq_{i,j}qi,j?指的是序列q的第i個元素到第j個元素。
 如Figure3所示,
- Vector representation->Convolution,該過程設置了3個卷積核(權重矩陣),獲得了c1,c2,c3三個卷積層向量
3、Piecewise Max Pooling(分段最大池化)
輸出矩陣C的大小取決于輸入網絡的句子被分割序列的長度。然而,為了應對接下來的網絡層,必須將卷積層提取的結果統一成一致的尺寸。一般用池化的方式完成該操作,通過捕捉每個窗口中值最高的或者權重最大的特征來解決。(個人認為,這個說法是錯誤的,實質上傳統池化只是用來捕獲重要特征,濾掉不重要特征,降低計算維度,而沒有將卷積輸入統一的任務。在圖像處理中,一般是入模型之前通過resize函數統一圖片尺寸,在自然語言處理模型中,將輸入長度統一的任務是在入模型之前就完成的,一般通過句子直接截取的方式完成)傳統的池化操作,不能滿足關系提取的需求。正如上面部分所描述的那樣,傳統的最大池化降低卷積層輸出維度的速度過快,對關系提取特征的捕捉太粗糙。除此之外,傳統池化方法也不能滿足對兩實體結構信息捕捉的需要。在關系提取任務中,一個輸入句子基于輸入實體能夠被劃分成三部分。正如Figure3所示,卷積層的每層輸出也會被對應分為三部{ci1,ci1,ci1}\{c_{i1},c_{i1},c_{i1}\}{ci1?,ci1?,ci1?}
- Convolution->Piecewise max pooling pooling,該過程首先,是將卷積層每層輸出映射成一個三維向量;然后,將三個三維向量拉直成1個9維向量;最后經過非線性激活函數tanh(雙曲正切)將值映射至-1到1上
4、Softmax Output
該層通過輸入上層的9維向量g,可以輸出該句子對每種關系的置信度或者類似于每種關系的概率。
- Piecewise max pooling->Softmax classifier,以9維向量為輸入進行softmax處理
5、多實例學習
為了緩解錯誤標簽的問題,我們對PCNN網絡使用多實例訓練。
- 將網絡的輸入看成T個bags,袋中為{M1,M2,…,MT}
- 第i個bag中包含qi個元素,分別為{m(i,1),m(i,2),…m(i,qi)}
從客觀上講,多實例學習是去預測不可見bags的標簽。在本文中,認為一個bag中的所有樣本都是獨立的。每給出一個m(i,j),網絡就會有一個o向量被輸出。這里o值對應的第r個元素就是對應第r個關系的概率。
 具體的學習算法如下
- 初始化參數
- 分割樣本集為多個實例個數相同的mini_bags
- 在每個mini_bag中找到在當前參數條件下被判別為bag標簽概率最大的樣本,即在該參數下最符合該bag標簽的樣本。以此樣本的損失來更新參數。
從以上算法可以看出,傳統的反向傳播依靠的是所有實例,而多實例學習的反向傳播是基于bags的。因此,我們的方法抓住了遠程監督關系提取的本質,就是其中許多訓練實例不可避免的會被標錯。當使用訓練好的PCNN進行預測時,當且僅當網絡在其至少一個實例上的輸出被賦予正標簽時,bag才被賦正標簽。
試驗
我們的試驗就是想證明基于多實例訓練的方式使用PCNN網絡進行自動特征學習將會有一個更好的表現。我們首先選擇數據集與評估矩陣。接著通過交叉驗證的方式確定我們的參數。然后將我們的方法與一些傳統的方法進行比較。最后我們評估分段最大池化和多實例學習的效果。
1、數據集和評估矩陣
- 數據集:該數據集是通過將Freebase關系與NYT語料庫對齊而生成的 - 訓練集是2005-2006年的語料
- 測試集是2007年語料
 
- 評估: - 查全率/查準率曲線
- 人工評估,新發現了不少不在Freebase中的關系
 
2、實驗設置
2.1、預訓練詞向量
在本文中,我們使用Skip-gram去訓練基于NYT的詞向量。Word2vec算法首先從訓練文本數據中構建一個詞匯表,然后學習詞的向量表示。最終選擇50的詞向量。
2.2、參數設置
主要調優參數為卷積窗口大小w、特征映射數量n
 調試策略:三折交叉驗證、網格搜索
3、與傳統方法比較——held-out比較與人工評估
傳統模型選擇:
- Mintz,是一個傳統的基于遠程監督的模型,該模型是在2009年由Mintz提出的。
- MultiR,是一個多實例學習模型,該模型是在2011年由Hoffmannet提出
- MIML,是一個多實例多標簽模型,該模型是在2012年由Surdeanu提出
 
分段最大池化與多實例學習的影響
 本文開發了一種關系抽取方法,該方法包含分段最大池化、基于遠程監督的多實例學習兩部分。兩部分的效果如圖5
- CNNs,是使用傳統最大池化的卷積神經網絡;
- PCNNs,是分段卷積神經網絡;
結果可以看出分段卷積網絡結果優于單純的卷積神經網絡。同時,與CNNs+MIL比較,PCNNs在召回率高于0.08時擁有更高的精確度。
總結
以上是生活随笔為你收集整理的多实例学习PCNN在关系抽取中的应用的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: qq表情包html插件,基于jQuery
- 下一篇: 二代支付系统
