论文解读:Are Noisy Sentences Useless for Distant Supervised Relation Extraction?
論文解讀:Are Noisy Sentences Useless for Distant Supervised Relation Extraction?
注:本文章初次編輯為2020年9月2日,最新編輯為2020年12月30日
??遠程監督關系抽取普遍遭受噪聲的影響,先前的工作一直關注如何降低噪聲對分類產生的錯誤影響,例如通過多示例學習以及句子級別的注意力機制,或者使用強化學習、對抗學習直接過濾噪聲等。本文則完全從新的角度出發——是否可以將那些可能是噪聲的標簽糾正,這樣即不會降低語料的數量,也能直接提升語料的質量。
一、簡要信息
| 1 | 模型名稱 | DCRE |
| 2 | 所屬領域 | 自然語言處理,知識圖譜 |
| 3 | 研究內容 | 遠程監督關系抽取 |
| 4 | 核心內容 | Distant Supervision Relation Extraction, Deep Cluster |
| 5 | GitHub源碼 | |
| 6 | 論文PDF | https://arxiv.org/pdf/1911.09788 |
二、全文摘要翻譯
??錯誤標注問題已經成為遠程監督關系抽取中的主要問題之一,現有的方法通常認為這些噪聲時沒有價值的,對模型的性能沒有好處。因此他們緩解噪聲主要通過降低噪聲對分類的影響,例如應用注意力機制對包進行表征。然而, 嘈雜標簽問題的根本原因不是缺少有用的信息,而是缺少關系標簽。憑直覺,如果我們為這些噪聲分類可信的標簽,那么它們將會由噪聲轉變為有用的訓練數據,并有助于提升模型的性能。因此,本文我們提出一種新的方法用于遠程監督關系抽取,其利用非監督的深度聚類算法為噪聲數據生成可靠的標簽。具體地,我們的方法包含三個模塊,一個句子編碼器,一個噪聲識別器和一個標簽生成器。句子編碼器用于獲得特征表征,噪聲識別器用于對包內的句子篩選出噪聲,標簽生成器則用于對噪聲生成高置信度的關系標簽。擴展實驗結果表明我們的模型超越了最優的基線模型,并可以在實質上緩解噪聲問題。
??現如今遠程監督關系抽取基于一個較強的假設:如果知識庫中存在一個三元組 ( h , r , t ) (h,r,t) (h,r,t), 其中 h , t h,t h,t 分別表示頭實體和尾實體, r r r 表示關系,則真實世界中任意一個文本只要包含這兩個實體,該文本都表達對應的關系。顯然這個假設會引入一些噪聲。例如如圖所示:
??先前的工作通常使用多示例學習,通過對每個句子分配權重來降低噪聲對分類的影響;另外也有基于強化學習或對抗學習在關系分類之前先將噪聲過濾掉。但是作者認為:
The underlying cause of the noisy labeling problem is not the lack of useful information, but the missing relation labels
導致噪聲問題的并不是缺乏有用的信息,而是缺失正確的標簽
??因此作者本文提出一種新的方法,基于深度聚類的關系抽取模型(Deep Clustering based Relation Extraction, DCRE)。
三、方法
??本文提出的方法包括三個結構:
- Sentence Encoder:用于對句子進行編碼;
- Noise Detector:用于檢測哪些句子是噪聲;
- Label Generator:用于對噪聲的句子生成正確的標簽;
整體架構如圖所示:
3.1 Sentence Encoder
??采用PCNN用于對句子進行編碼,設輸入的句子為 X = x 1 , . . . , x n l \mathbf{X} = \mathbf{x}_1, ..., \mathbf{x}_{nl} X=x1?,...,xnl? 。先使用卷積神經網絡進行編碼,每個卷積核的運算為:
m i = W T x i ? w + 1 : i \mathbf{m}_i = \mathbf{W}^{T}\mathbf{x}_{i-w+1:i} mi?=WTxi?w+1:i?
其中 W \mathbf{W} W 表示可學習的權重, w w w 表示窗口的大小。在最大池化層,PCNN的做法是根據句子中的兩個實體的位置,將文本劃分為三個部分,每部分進行最大池化,即:
h = [ p i 1 , p i 2 , p i 3 ] \mathbf{h} = [\mathbf{p}_{i1}, \mathbf{p}_{i2}, \mathbf{p}_{i3}] h=[pi1?,pi2?,pi3?]
其中 p i k = m a x ( M i k ) \mathbf{p}_{ik} = max(\mathbf{M}_{ik}) pik?=max(Mik?)。
3.2 Noise Detector
??對噪聲進行選擇,本文的做法是通過簡單的權重并通過閾值進行選擇。假設一個包內的句子通過句子編碼層編碼為一組向量,表示為 H b = { h 1 , h 2 , . . . , h b } \mathbf{H}_b = \{\mathbf{h}_1, \mathbf{h}_2, ..., \mathbf{h}_b\} Hb?={h1?,h2?,...,hb?},設有 k k k 個關系標簽,每個標簽對應一個預訓練的向量 l i \mathbf{l}_i li? 。因此可以對每個句子計算其屬于各個關系的權重,記做:
a i = e x p ( h i l j T ) ∑ b e x p ( h i l j T ) a_i = \frac{exp(\mathbf{h}_i\mathbf{l}_j^{T})}{\sum_exp(\mathbf{h}_i\mathbf{l}_j^{T})} ai?=∑b?exp(hi?ljT?)exp(hi?ljT?)?
當權重低于設定的閾值 ? \phi ? 時,則選擇其作為噪聲。
??事實上,我們無法簡單的根據閾值判斷是否是噪聲,因為即便權重很大也有可能是噪聲,因此我們基于一兩個簡單的考慮:
- 如果權重最大的句子對應的標簽是正確的,因此當前的包滿足at-least-once假設;
- 如果權重最大的句子是噪聲,那么所有句子都是噪聲,即當前的包是噪聲。
3.3 Label Generator
??假設所有的句子經過句子編碼后得到的向量記為 H b = { h 1 , h 2 , . . . , h n } \mathbf{H}_b = \{\mathbf{h}_1, \mathbf{h}_2, ..., \mathbf{h}_n\} Hb?={h1?,h2?,...,hn?},預訓練的關系矩陣 L = { l 1 , l 2 , . . . , l k } \mathbf{L} = \{\mathbf{l}_1, \mathbf{l}_2, ..., \mathbf{l}_k\} L={l1?,l2?,...,lk?}, 則有:
C = H L T + b \mathbf{C} = \mathbf{HL}^T + \mathbf C=HLT+b
該計算相當于將每個句子投影到所有關系的空間中,相當于每個句子與每個關系進行了權重計算,并可以用于獲得relation-ware sentence representations。其次,將 C \mathbf{C} C 喂入到深度聚類層。設一共有 n c n_c nc? 個簇, 每個簇的中心點(相當于高維度空間的一個向量)記做 { μ i } i = 1 n c \{\mathbf{\mu}_i\}_{i=1}^{n_c} {μi?}i=1nc??,因此學習的目標是計算每個句子 c i \mathbf{c}_i ci? 與每個簇 μ j \mathbf{\mu}_j μj? 之間的相似度:
q i j = ( 1 + ∣ ∣ c i ? μ j ∣ ∣ 2 ) ? 1 ∑ j ( 1 + ∣ ∣ c j ? μ j ∣ ∣ 2 ) ? 1 q_{ij} = \frac{(1 + ||\mathbf{c}_i - \mathbf{\mu}_j||^2)^{-1}}{\sum_j(1 + ||\mathbf{c}_j - \mathbf{\mu}_j||^2)^{-1}} qij?=∑j?(1+∣∣cj??μj?∣∣2)?1(1+∣∣ci??μj?∣∣2)?1?
每個簇可以認為是對應的一個關系標簽。該公式來源于 Student’s t-distribution (論文《Visualizing data using t-sne》)。損失函數則是使用KL散度:
L = K L ( P ∣ ∣ Q ) = ∑ i ∑ j p i j l o g p i j q i j \mathcal{L} = KL(P||Q) = \sum_i\sum_jp_{ij}log\frac{p_{ij}}{q_{ij}} L=KL(P∣∣Q)=i∑?j∑?pij?logqij?pij??
其中 P P P 表示原始數據集的分布,例如NYT數據集是一個長尾分布,如圖所示:
因此 p i j p_{ij} pij? 的定義為:
p i j = q i j 2 / ∑ i q i j ∑ j ( q i j 2 / ∑ i q i j ) p_{ij} = \frac{q_{ij}^2/\sum_i q_{ij}}{\sum_j(q^{2}_{ij}/\sum_iq_{ij})} pij?=∑j?(qij2?/∑i?qij?)qij2?/∑i?qij??
這個公式是對上圖的一個模擬,分母表示的是歸一化層。 ∑ i q i j \sum_iq_{ij} ∑i?qij? 表示某一個句子對所有聚類中心的相似度的和, 因此當某一個句子越接近與某一個聚類中心時,分子表示的值會越大,整體的式子也會變大。
該模塊最終選擇相似度最大的一個簇作為生成的新標簽。但是我們并不能保證生成的標簽一定是正確的,因此作者提出一種scaled loss function:
作者分別對soft method和hard method方法上進行了對比,其中soft method指使用注意力的方法來降噪,hard method指使用直接過濾噪聲或強化學習的方法,本文模型記做DCRE,對比結果如下所示:
在不同的迭代次數(epoch)下,深度聚類模塊對樣本的聚類效果(使用t-SNE工具)如下所示:
總結
以上是生活随笔為你收集整理的论文解读:Are Noisy Sentences Useless for Distant Supervised Relation Extraction?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言编程实验室机房设备管理,c语言编程
- 下一篇: 关于数学学习的思考(一)为什么牛顿会研究