深度之眼Paper带读笔记NLP.13:PCNNATT

文章目录

  • 前言
  • 第一课 论文导读
    • 关系抽取简介
      • 关系抽取研究意义
      • 关系抽取的范式
        • 有监督关系抽取
        • 无监督关系抽取
        • 弱监督关系抽取
        • 开放式关系抽取
      • 关系抽取的发展历史
    • 远程监督关系抽取
      • 多示例学习
      • 远程监督关系抽取的流程
    • 前期知识储备
  • 第二课 论文精读
    • 传统方法
      • 分段卷积网络Piecewise Convolutional Neural Networks (PCNN)
        • 输入层
        • 卷积层
        • 分段最大池化层
        • 输出层
      • 多示例学习
    • 论文提出的模型
      • 论文动机
      • 模型结构
        • 注意力层
        • 选择注意力
        • 输出层
    • 实验和结果
      • 数据集与实验设置
      • 实验结果
        • 探索语句数量的影响
        • 案例分析
    • 讨论和总结
      • 主要贡献
      • 总结
    • 相关论文
  • 代码复现(略)

前言

本课程来自深度之眼deepshare.net,部分截图来自课程视频。
文章标题:Neural Relation Extraction with Selective Attention over Instances
原标题翻译:基于选择注意力机制的文本关系抽取
作者:林衍凯、刘知远、孙茂松
单位:清华大学
发表会议及时间:ACL 2016
在线LaTeX公式编辑器

第一课 论文导读

关系抽取
关系抽取,是从文本中自动获取实体间关系事实的代表任务。该任务目标是,给定一个包含两个实体的句子,从中抽取出这两个实体之间的关系。关系抽取是信息抽取的任务之一,在知识图谱的自动化构建和补全方面发挥着十分重要的作用。
关系抽取的四种范式:
有监督关系抽取
无监督关系抽取
弱监督关系抽取
开放式关系抽取
远程监督关系抽取
远程监督回标关系抽取主要基于以下假设:如果两个实体在知识库中具有一定的关系,那么根据同时包含这两个实体的句子,就都能推断出实体对在知识库中具有的关系。由于语言表达的多样性,远程监督的这种假设往往太过强烈,两个实体出现在同一个句子中并不能表示它们就一定具有某种语义关系。虽然其克服了有监督方法需要人工标注数据的不足,但也带来了新的回标噪声问题。

关系抽取简介

关系抽取,是从文本中自动获取实体间关系事实的代表性任务。该任务目标是,给定一个包含两个实体的句子,从中抽取出这两个实体之间的关系。
关系抽取是信息抽取的任务之一,在知识图谱的自动化构建和补全方面发挥着十分重要的作用。例子:
深度之眼Paper带读笔记NLP.13:PCNNATT_第1张图片

关系抽取研究意义

实体关系作为知识库的重要组成部分是进行语义理解的关键,一直以来都受到工业界与学术界的广泛关注。如何从无结构文本数据中自动获取这些结构化知识是最具挑战的任务,所以,关系抽取任务对构建知识图谱至关重要。例如,搜索刘德华的妻子,返回结果是朱丽倩。

关系抽取的范式

有监督关系抽取
无监督关系抽取
弱监督关系抽取
开放式关系抽取

有监督关系抽取

有监督学习是从标记的训练数据来推断未标注数据类别的机器学习任务。
在使用有监督的方法解决关系抽取问题时,一般将关系抽取看做是一个多分类问题,提取特征向量(获得文本表示)后再使用有监督的分类器进行关系分类,所以关系集合是预先定义的,不能发现新的关系
标注训练样本的表示->->设计分类器训练模型->->利用模型来预测关系
有监督关系抽取按照方法和时间,依次分为基于特征向量的方法、基于核函数的方法、基于神经网络的方法,在目前研究中占据主导地位。

无监督关系抽取

无监督学习是不告诉计算机怎么做,而是让计算机自己去学习怎样做一些事情。
无监督关系抽取方法主要基于分布假设理论,分布假设的核心思想是:如果两个词的用法相似即出现在相同上下文中,那么这两个词就意思相近。相应的,在实体关系抽取中,如果两个实体对具有相似的语境,那么这两个实体对倾向于具有相同的语义关系,基于此理论,无监督关系抽取两个实体的上下文作为表征语义关系的特征。例子:
2012年5月9日,刘德华的妻子朱丽倩生下一个女儿
2017年2月13日,周杰伦宣布妻子昆凌怀二胎
无监督关系抽取方法可以发现新的关系,但其发现的新关系往往是相似模板的聚类,其缺点是得到的关系不具语义信息,难以规则化,很难被用来构建知识库,研究相对较少。

弱监督关系抽取

弱监督学习是有监督学习和无监督学习的折中,训练数据只有部分标注或者标注有噪声。
弱监督关系抽取主要有两种框架:
1.使用半监督学习和主动学习等技术以尽可能少的代价提升抽取效果
2.使用远程监督回标的思想,利用现有知识库中的关系三元组,自动回标三元组中实体所在的文本作为训练数据,由于其训练数据产生过程不需要人工标注,近年来在信息抽取领域得到广泛的应用,同时也是关系抽取的研究热点。
例子:
深度之眼Paper带读笔记NLP.13:PCNNATT_第2张图片

开放式关系抽取

开放式关系抽取是为了处理大量异构网络数据而设计的,其抽取的关系类型不受限制,数量也不定,一般使用句法模板及启发式规则从句子中得到两个概念,并抽取概念间的句子片段作为“关系”,在工业界中的应用较多,学术界的研究工作也在持续进行。
例子:
深度之眼Paper带读笔记NLP.13:PCNNATT_第3张图片
可以从上面信息中得到头实体是刘德华,灰色部分是关系抽取中的谓词(即关系),灰色右边是尾实体。
当前工业界多采用Bootstrapping的框架,该方法首先给定初始种子模板,然后通过多次迭代选取置信度高的抽取结果(此类方法在弱监督关系抽取中也有所涉及)。
在这里插入图片描述

关系抽取的发展历史

趋势:让机器更“准确”地捕获和建模文本中的关键信息,按发展分成三个阶段

基于特征的关系抽取 基于神经网络的关系抽取 融入外部知识的关系抽取
文法特征、句法特征、最短依存路径 CNN、RNN、GCN、Transformer、Pre-trained LM 实体描述信息、实体类型信息、一阶逻辑规则

远程监督关系抽取

远程监督回标数据主要基于以下假设:如果两个实体在知识库中具有一定的关系,那么根据同时包含这两个实体的句子,就都能推断出实体对在知识库中具有的关系。
由于语言表达的多样性,远程监督的这种假设往往太过强烈,两个实体出现在同一个句子中并不能表示它们就一定具有某种语义关系。虽然其克服了有监督方法需要人工标注数据的不足,但也带来了新的回标噪声问题
深度之眼Paper带读笔记NLP.13:PCNNATT_第4张图片
研究远程监督关系抽取的核心问题就是如何降噪。

多示例学习

把训练数据集中每一个数据看做一个包(Bag),每个包由多个示例(instance)构成,每个包有一个可见的标签,而包中的示例没有可见的标签。如果包中至少包含一个标签为正(positive)的示例,则包的标签为正;如果包中所有示例的标签都是负(negative)的,则包的标签为负。多示例学习的过程就是通过模型对包及其包含的多个示例进行分析预测得出包的标签。
深度之眼Paper带读笔记NLP.13:PCNNATT_第5张图片
关系抽取的目标是获得两个实体之间的联系,而不这是狭义地对句子分类。
将远程监督关系抽取看作是一个多示例问题,这样一来,我们就只需要要求在回标出来的所有句子中,至少有一个句子能表示两个实体间的关系。也就是将一个实体对对应的所有句子看作一个包,其中的每一个句子就是包中的一个示例,从而解决回标噪声的问题。回到上面的例子,如果把三个句子看成一个包,那么比尔盖茨 创立 微软公司 这个断言就是正确的。
深度之眼Paper带读笔记NLP.13:PCNNATT_第6张图片

远程监督关系抽取的流程

多示例学习指导下的远程监督关系抽取的核心假设:至少一句表达真实关系
在这里插入图片描述
核心问题:得到句向量和得到包向量
类比句子分类中每个词对整个句子语义贡献度不同的方案,使用句子级别的注意力机制

前期知识储备

关系抽取:了解关系抽取的概念,掌握关系抽取的流程和主要研究方向
远程监督:了解远程监督回标数据的基本工作原理,以及其造成的噪声问题和对应的解决思路
CNN:掌握卷积神经网络的基本原理,有兴趣的同学可以提前了解PCNN的大致思想
注意力机制:了解注意力机制的思想,掌握注意力机制的分类和实现方式

第二课 论文精读

传统方法

分段卷积网络Piecewise Convolutional Neural Networks (PCNN)

深度之眼Paper带读笔记NLP.13:PCNNATT_第7张图片
与传统的CNN做文本分类不一样的是,PCNN在向量表示(Vector representation)部分加入了position位置信息,另外在pooling上用的是Piecewise max pooling。接下来我们分部分来看这个模型的结构:

输入层

关系抽取的任务是给两个实体确定语义关系,位置特征对这一任务特别重要(一般是距离越近越重要),因此在向量化表示时,对句子中每个词相对于实体对的位置进行建模当实体由多个多个词组成时,设定整个实体只占据一个位置。
深度之眼Paper带读笔记NLP.13:PCNNATT_第8张图片
对于son这个单词,距离前一个实体位置距离为3,距离后一个实体距离为2,再用正负号来表示前后关系
在这里插入图片描述
总体的输入维度为:
d = d w + d p ∗ 2 d=d_w+d_p*2 d=dw+dp2
d w d_w dw:词向量维度
d p d_p dp:位置向量维度

卷积层

就是传统的神经网络
深度之眼Paper带读笔记NLP.13:PCNNATT_第9张图片
为了捕获不同的特征,卷积运算时一般使用多个滤波器。假设使用n个滤波器:
( W = { w 1 , w 2 , . . . , w n } ) (W=\{w_1,w_2,...,w_n\}) (W={ w1,w2,...,wn})
卷积操作则为:
c i j = w i q j − w + 1 : j   1 < = i < = n c_{ij}=w_iq_{j-w+1:j} \space 1<=i<=n cij=wiqjw+1:j 1<=i<=n
即当前卷积矩阵 w i w_i wi与当前感受野内的输入进行相乘的过程,上式中的j就是当前感受野的结束位置。这里假设使用了3个滤波器,即n=3。
结果为:
C = { c 1 , c 2 , . . . , c n } ∈ ℜ n × ( s + w − 1 ) C=\{c_1,c_2,...,c_n\}\in\real^{n×(s+w-1)} C={ c1,c2,...,cn}n×(s+w1)

分段最大池化层

对于关系抽取,最大化池化丢失太多信息。而一个句子天然地被给定的两个实体分为了三段,包括两个实体之间的特征以及实体前后的特征,分段池化可以在一定程度上保留句子中的结构化信息。
深度之眼Paper带读笔记NLP.13:PCNNATT_第10张图片
每个卷积滤波器得到的结果分成三段: c i 1 , c i 2 , c i 3 {c_{i1},c_{i2},c_{i3}} ci1ci2ci3
p i j = m a x ( c i j )   1 < = i < = n , 1 < = j < = 3 p_{ij}=max(c_{ij}) \space 1<=i<=n,1<=j<=3 pij=max(cij) 1<=i<=n,1<=j<=3
p i = p i 1 , p i 2 , p i 3 p_i={p_{i1},p_{i2},p_{i3}} pi=pi1pi2pi3
这里得到的向量的长度就是卷积核数量的3倍,和句子长度没有关系了。

输出层

深度之眼Paper带读笔记NLP.13:PCNNATT_第11张图片
输出层
g = t a n h ( p 1 : n ) g=tanh(p_{1:n}) g=tanh(p1:n)
o = W 1 g + b o=W_1g+b o=W1g+b
使用Dropout:
o = W 1 ( g ⋅ r ) + b o=W_1(g\cdot r)+b o=W1(gr)+b

多示例学习

假设一共有T个训练包 { M 1 , M 2 , … , M T } \{M_1,M_2,…,M_T\} { M1,M2,,MT},第i个包中包含q个样例 M i = { m i 1 , m i 2 . … , m i q } M_i=\{m_i^1,m_i^2.…,m_i^q\} Mi={ mi1,mi2.miq},输入的包之间相互独立。包中一个示例作为输入,给定网络参数 θ \theta θ,分段卷积网络输出向量o,其中第r维对应第r种关系,通过softmax计算,置信度可以进一步转换为概率:
p ( r ∣ m i j ; θ ) = e o r ∑ k = 1 n 1 e o k p(r|m_i^j;\theta)=\frac{e^{o_r}}{\sum_{k=1}^{n_1}e^{o_k}} p(rmij;θ)=k=1n1eokeor
多示例学习的最终目的是预测未知包而非示例的标签,因此,假设输入的包为 ( M i , y i ) (M_i,y_i) (Miyi),文章给出了一种定义在包上基于交叉熵的目标函数(基于至少一次假设):
J ( θ ) = ∑ i = 1 T l o g p ( y i ∣ m i j ; θ ) J(\theta)=\sum_{i=1}^Tlogp(y_i|m_i^j;\theta) J(θ)=i=1Tlogp(yimij;θ)
j ∗ = a r g m a x j p ( y i ∣ m i j ; θ )   1 ≤ j ≤ q i (9) j^*=arg\underset{j}{max}p(y_i|m_i^j;\theta)\space 1≤j≤q_i \tag{9} j=argjmaxp(yimij;θ) 1jqi(9)
深度之眼Paper带读笔记NLP.13:PCNNATT_第12张图片

论文提出的模型

论文动机

PCNN+ONE(就是上面提到的模型,由于该模型中训练时每个包只选择一个例子来更新函数)将多示例学习与神经网络相结合,提出了基于远程监督数据的关系抽取模型。该方法假设在所有包含两个实体的句子中,至少有一个句子能够表达这两个实体之间的关系,并且在训练和预测两个阶段仅使用每个实体对所对应的概率最高也就是最有可能正确表达其关系的句子。很明显,这种方法将会丢失大量被忽略句子中丰富的语义信息
为了解决这一问题,本文提出了一种基于句子级别选择性注意力机制的神经网络关系抽取模型,用于构建基于远程监督的关系抽取系统。模型在这些句子向量的基础上构建句子级别的选择注意力机制,从而动态地减少噪音句子所对应的权重,同时提升包含有效信息的句子所对应的权重。最后将注意力机制计算的权重与对应的句子向量加权求和作为特征向量(包向量)来进行关系分类。

模型结构

基于句子级别注意力机制的卷积神经网络关系抽取模型如下图所示。
深度之眼Paper带读笔记NLP.13:PCNNATT_第13张图片
其中 x i x_i xi x i x_i xi(这里为什么两个notation一样???)分别表示其原始输入和它对应的经过卷积神经网络后得到的向量化表示, α i \alpha_i αi是由选择注意力机制模型分配给这个句子的权重,s表示这个实体对所对应的句子集合(包)的向量化表示。
注:句子的编码器使用原生的CNN/PCNN模型,注意和PCNN论文中符号的转变(s是set而不是sentence)。

注意力层

在预测两个实体之间是否存在关系r时,为了充分利用所有句子的信息,我们的模型将集合s表示成一个统一的特征向量来进行预测:
s = ∑ i α i x i s=\sum_i\alpha_ix_i s=iαixi
对此,一个很直接的想法便是通过句子向量 x i x_i xi的加权平均来计算得到s的向量表示:
s = ∑ i 1 n x i s=\sum_i\frac{1}{n}x_i s=in1xi
这样用到了包中所有的例子,但是会带来噪声问题,于是用到了:

选择注意力

将集合s表示成一个统一的特征向量来进行预测:
s = ∑ i α i x i s=\sum_i\alpha_ix_i s=iαixi
α i = e x p ( e i ) ∑ k e x p ( e k ) \alpha_i=\frac{exp(e_i)}{\sum_kexp(e_k)} αi=kexp(ek)exp(ei)
e i e_i ei是一个能量函数,通过该函数我们可以刻画句子 x i x_i xi和想要预测的关系类型r在多大程度上是匹配的。
e i e_i ei越高表示语句 x i x_i xi越能够表述关系r的语义。这里,模型选择了双线性函数来计算 e i e_i ei
e i = x i A r e_i=x_iAr ei=xiAr

输出层

全连接+Dropout:
o = M ( s ⋅ h ) + d o=M(s\cdot h)+d o=M(sh)+d
计算概率:
p ( r ∣ S , θ ) = e x p ( o r ) ∑ k = 1 n r e x p ( o k ) p(r|S,\theta)=\frac{exp(o_r)}{\sum_{k=1}^{n_r}exp(o_k)} p(rS,θ)=k=1nrexp(ok)exp(or)
注:在进行预测的时候,我们将模型输出的包表示向量长度扩展到原本的nr倍(即穷举所有关系,把使用每个关系得到的nr个包向量拼接)

实验和结果

数据集与实验设置

NYT-10
该数据集是通过将Freebase知识图谱中的世界知识与纽约时报语料库(New York Times)中的语料进行对齐而生成的。使用Stanford Named Entity Tagger来进行命名实体标注,并进一步将标注出来的命名实体与Freebase中实体相链接。之后将Freebase中的数据分为两部分:一部分用于训练(2005年到2006年的语料库中的句子),一部分用于测试(2007年后语料库中的句子)。最后,整个数据集合包含53种关系类型,包括一种特殊关系NA类型,表示头实体和尾实体之间没有关系。
评价指标
精度-召回率曲线(P-R Curve)和最高置信度预测精度(P@N)
P-R曲线将Freebase中存在的关系实例当作标准集,可以自动评价。首先将关系抽取模型抽取的结果——关系实例,按照模型所预测的置信度进行排序,并由高到低将抽取的实体关系实例同Freebase中存在的进行对比,然后由高到低计算排序中每一个位置的正确率和召回率。这个指标越高越好。
深度之眼Paper带读笔记NLP.13:PCNNATT_第14张图片

实验结果

选择注意力机制的有效性验证为了证明语句级别选择注意力机制的有效性,文章选择CNN及其变种模型PCNN作为句子编码器。将两种不同类型的卷积神经网络与句子级别注意力机制(ATT),其基线版本(AVE)以及多示例学习(ONE)方法的表现进行比较。
深度之眼Paper带读笔记NLP.13:PCNNATT_第15张图片
从上图可以看出:
1.ONE方法可以使得模型相比于原始的CNN/PCNN具有更好的性能。原因在于原始数据中包含大量的噪音,而噪音数据会损害关系抽取的性能。
2.AVE方法可以使得模型相比于原始的CNN/PCNN具有更好的关系抽取效果。这表明考虑更多的句子有利于关系抽取,因为可以通过信息的互补来减少噪声的负面影响。
3.ATT方法在整个召回范围内实现了最高的精度。它表明,文章所提出的选择性注意力机制是有帮助的。它可以有效地滤除对抽取关系没有意义的句子,有效解决远程监督关系抽取中的噪声问题。

探索语句数量的影响

One:对于每个测试实体对,我们随机选择其对应的句子集合中的一句话,并将这句话用作关系预测。
Two:对于每个测试实体对,我们随机选择其对应的句子集合中的两句话,并将这两句话用作关系预测。
All:对于每个测试实体对,我们使用其对应的句子集合中的所有句子进行关系预测。
使用人工方法分析具有高置信度但分类错误的样本,我们发现这些错误的样本其实是有关系的,只是由于Freebase不完善,不包括这些关系实例,这种现象就是所谓的被误判的负实例(False Negative),从而造成自动评价低估了系统的正确率。这里采用人工评价,首先将抽取结果里已经在Freebase中已经存在的实体三元组移除,然后人工判断抽取的关系实例是否正确,最终按照topN的准确率对抽取效果进行评价。
深度之眼Paper带读笔记NLP.13:PCNNATT_第16张图片
结论:
1.ATT方法在所有测试设置中均达到最佳性能。它表明了句子级选择性注意力机制对于多示例学习的有效性。
2.AVE方法在One测试设置下,效果与ATT方法相当。然而当测试句子数量增加时,AVE方法的性能几乎没有改善。随着句数增加,它甚至在P@100,P@200中逐渐下降。原因在于,由于我们将每个句子同等地看待,那些不表达任何关系的噪音数据对关系抽取会产生负面影响。
3.在ONE测试设置下,AVE和ATT方法相比于ONE方法有5到8个百分点的改进。由于每个实体对在这个测试设置中只有一个句子,这些方法的唯一区别是来自训练。因此,它表明利用所有的句子会带来更多的信息,尽管它也可能带来一些额外的噪音。
4.ATT方法在Two和All测试设置下优于其他两个基线5到9个百分点。它表明,通过考虑更多有用的信息,ATT方法排名较高的关系事实更可靠,有利于关系抽取。

案例分析

第一个例子是与关系“员工”相关的。拥有低注意力权值的句子并没有很好地表达两个实体间的关系,然而高注意力权值对应的句子可以很好地表达“梅尔·卡尔马津”是“天狼星XM卫星广播公司”的首席执行官。
第二个例子是与关系“出生地“相关。拥有低注意力权值的句子事实上在说的是“恩斯特·海弗里格“在哪里去世,而不是像高注意力权值句子那样,真的在表达的他出生在哪里。
深度之眼Paper带读笔记NLP.13:PCNNATT_第17张图片

讨论和总结

主要贡献

(A)与现有神经关系抽取模型相比,本文模型可以充分利用每对实体之间的所有有效信息。
(B)为了解决远程监督中的标签错误问题,文章提出了选择注意力机制来实现句子级的去噪。
(C)在实验中验证了选择注意力有利于提升两种CNN模型在关系抽取任务中效果。

总结

摘要:论文的高度概括,包含作者研究思路。
引言:简述论文背景,定义问题,发现当前解决问题方法弊端,提出改进方案,展示改进方案的实验效果。
实验:充分考虑各种可能性,探讨不同情况下模型的性能,并且对结果展开一系列的可解释性分析。

相关论文

1.曾道建.面向非结构化文本的关系抽取关键技术研究[D].中国科学院大学.2015
2.林衍凯.大规模结构化知识的表示学习、自动获取与计算应用[D].清华大学.2019
3. Daojian Zeng, Kang Liu, Yubo Chen and Jun Zhao. Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks.
In EMNLP.2015…
注意,第二篇就是本文章的作者!!!

代码复现(略)

你可能感兴趣的:(#,NLP)