本文经授权转载自公众号“开放知识图谱”

目录:

  1. 基于句内去噪和迁移学习的关系抽取
  2. 基于知识库的类型实体和关系的联合抽取
  3. 多内容实体和关系联合抽取的对抗训练

论文推介一

基于句内去噪和迁移学习的关系抽取

作者:刘兵

动机

在远程监督任务中,除了语料的错误标注问题,还存在句内噪声单词过多的问题,即多数句子都存在一些与表达关系无关的词汇,这个问题未有人关注。当前研究的另一个问题是,句子特征抽取器采用随机初始化的方法,存在不健壮的问题。

针对句内噪声的问题,本文采用子树解析的方法,去除与表达关系不相关的词汇;针对关系抽取器不健壮的问题,本文采用迁移学习的方法,用实体分类对模型的参数做预训练。

方法

本文方法包括三个部分:

(1)子树解析。首先对句子做句法解析,然后找到两个实体最近的共有祖先,最后取以该节点为根节点的子树,保留句子中的这部分,其余部分丢弃。

(2)构造含有多个注意力机制的关系抽取器。采用BGRU作为句子语义抽取器,抽取器中添加面向单词的注意力和面向实体的注意力。然后采用面向句子的注意力方法,结合一个实体对对齐的多个句子的信息作为实体对间关系的语义表示,用于后续的关系分类。

(3)参数迁移初始化。将模型部分结构用于实体类型分类任务,训练得到的参数用作关系抽取器相应参数的初始化。

实验

实验进行了 held-out evaluation 和 manual evaluation,结果如下图所示,可见取得了较好的效果。

基于知识库的类型实体和关系的联合抽取

作者:王狄烽

链接:
http://hanj.cs.illinois.edu/pdf/www17_xren.pdf

GitHub项目地址:
https://github.com/INK-USC/DS-RelationExtraction

动机

现有的利用远程监督进行实体关系抽取的方法中存在以下三个问题:

1、依赖事先训练的命名实体识别工具,而这些工具往往只能识别出少量特定类型的实体,从而限制了领域的扩展;

2、现有方法通常将实体识别和关系抽取分开进行,从而容易造成错误的累积。

3、在通过远程监督方式生成的训练数据中,含有大量的噪音数据,因为其在实体和关系的链接过程中均没有考虑到上下文关系。

贡献

该篇论文的主要贡献分为以下四点:

1、提出了一个新的利用远程监督进行实体关系抽取的框架CoType。

2、提出了一种领域无关的文本分割算法,用来进行文本中 entity mentions 的识别。

3、提出了一个联合嵌入目标函数,用来形式化建模mention-type之间的关联、mention-feature之间的共现关系、entity-relation之间的交叉约束关系。

4、在三个公开数据集上取得了state-of-the-art的效果。

问题定义

给定一个POS标注的语料库D,一个知识库Ψ,一个目标实体类型集合,一个目标关系类型集合,联合抽取的目标就是:

  1. 从语料库D中识别出entity mentions M;

  2. 利用知识库Ψ生成训练数据;

  3. 利用和上下文,预测每一个relation mentions的关系类型,以及 entity mentions的实体类型。

方法

模型框架图如下图所示,其方法主要分为四个部分:

1、使用文章中提出的 POS 约束的文本分割算法对POS标注的语料库D进行实体识别,识别出 entity mentions M。

2、从M中生成候选 relation mentions Z,并对每一个 relation mention 进行文本特征抽取,抽取的文本特征见下文。

3、通过联合嵌入,将 entity mentions、relation mentions、文本特征、实体关系类型嵌入到两个空间中去(实体空间以及关系空间),使得在每一个空间中,距离比较近的object拥有比较近的类型。

4、通过学习好之后的嵌入空间,评估测试集中每一个 relation mention 的关系类型以及每一个entity mention m 的实体类型。

1、Entity Mention 抽取

文章提出了一种领域无关的文本分割算法,他的方法是通过计算切片质量函数来衡量这个片段是一个entity mention的概率,该切片质量函数由短语质量和POSpattern质量组成,并利用 D_L 数据来训练该模型的参数。

其工作流程主要分为以下四步:

  1. 从语料库 D 中挖掘频繁共同模板,包括短语模板和词性模板,并通过设置阈值的方式,进行模板的初步筛选。

  2. 从语料级别的一致性和句子级别的词性特征抽取特征训练两个随机森林分类模型,用于评估候选的短语模板和词性模板的分值。

  3. 根据目前的特征权重参数,找到切片质量函数得分最高的片段切割方式。

  4. 计算修正特征,更正参数,不断迭代2-4步,直到收敛。

切片评估函数如下:

2、Relation Mention 抽取

方法如下。对于来自一个句子s的实体对 (m_a,m_b),构建两个候选relation mentionsz_1=(m_a,m_b,s)和z_2=(m_b,m_a,s)。在抽取30%无法链接到KB的relation mentions作为反例(None relationlabel),抽取30%无法链接的entitymentions建模None entity label。然后对relation mention 进行文本特征抽取,文本特征如下:

3、实体和关系的联合嵌入

该部分方法主要包含三个部分:

  1. 通过一个margin-base的loss函数来建模由噪音的mention-type之间的关系。

  2. 通过一个second-order proximity idea来建模mention-feature之间的贡献。

  3. 通过translation based embedding loss思想来建模实体-关系之间的约束关系。

3.1 建模Relation Mentions

假设1:对于两个relation mentions,如果他们共享的文本特征越多,那么他们则更可能具有相似的类别,即在低维空间中比较接近,反之亦然。

形式化的说,文章应用second-orderproximity来建模该假设。

z_i 表示relation mention向量,c_j 表示文本特征向量。p(f_j |z_i) 表示由 z_i 生成 c_j 的概率。w_ij 表示语料库 D 中 (z_i,c_j) 的共现频率。

在基于远程监督生成的训练数据中,一个 relation mention 对应多个候选关系类型,基于假设1,可能会产生不同类型的mention具有相似的低维向量表示。因此需要将relation mention和它候选的标签之间关系是否是真的加入到模型之中,从而提出了假设2。

假设2:一个relation mention在低维空间中应该同它最可能的候选类型比较接近。

形式化定义如下:

Φ(z_i,r' )表示relation 和关系 r' 之间的点积。

最终,建模relation mentions的目标函数如下所示:

3.2 建模Entity Mentions

Entity Mentions 建模过程如 Relation Mentions 几乎相同,其目标函数如下。

3.3 建模Entity和Relation之间的交互

假设3:对于一个relation mention z={m1,m2,s},m1的嵌入向量应该近似于m2的嵌入向量加上z的词嵌入向量。

形式化如下所示:

4、联合优化问题

将上诉三个损失函相加,求他们的最小值。

文章中使用了次梯度方法来求解该联合优化问题,算法如下图所示。

5、模型推断

在进行推断的过程中,对于关系类别,采用最近邻的方式查找,对于实体的类别,采用自顶向下的方式查找。在查找的过程中,利用特征来表示mention,计算mention的嵌入向量同实体类别和关系类别的相似度即可。

实验

作者在NYT、Wiki-KBP、BioInfer三个数据集上,对实体类型识别、关系分类、关系抽取三个任务进行了实验,取得了比较好的结果。

(1)数据集

(2)实验结果

总结

文本提出了一种领域无关的利用知识库通过远程监督方式进行关系抽取的模型框架,包括了一种领域无关的文本分割算法用于识别实体,一个联合嵌入目标函数用来形式化建模 mention-type之间的关联、mention-feature之间的共现关系、entity-relation 之间的交叉约束关系。

论文推介三

多内容实体和关系联合抽取的对抗训练

作者:余海阳

链接: https://arxiv.org/pdf/1808.06876.pdf

动机

Szegedy 在 14 年发现,对于图像分类问题的神经网络,若是在输入中人为的添加很小尺度的扰动,会让已经训练好的神经网络做出错误的判断,并且可能以很高的置信度输出。很多人将这个性质的原因归结为深层神经网络的度线性以及过拟合。Goodfellow则给出了不同的看法。他认为即使是线性模型,也有这种现象。在高维空间中,即使是很小的扰动,也会对最终的输出值产生很大的影响。对于神经络言,很多神经网络为了节省计算上的代价,都被设计成了线性的形式,这使得他们更容易优化,但是这样"廉价"的络也导致了对于对抗扰动的脆弱性。除了生成对抗样本来攻击神经络以外,对抗训练神经网络从有效防对抗样本的攻击也是一个值得考虑的问题。之后大家开始尝试将对抗训练(AT)用于 NLP 领域,如文本分类问题。本文尝试将AT加入到实体识别和关系抽取的联合模型中,观察AT对联合模型的效果。

亮点

文章的亮点主要包括:

(1)提出了命名实体识别和关系抽取的联合模型,可以同时识别实体和实体间的关系,并且对于实体间存在的多关系也可以一次性提取出来;

(2)在训练过程中添加了对抗训练(AT),提升联合模型的鲁棒性和范性。

相关工作

一.实体和关系抽取的联合模型:

最初的联合模型是基于人工提取的特征,用于同时执行命名实体识别和关系提取子任务。这些方法依赖于NLP工具(例如POS标记器)的可用性,或者手工设计的特性,会导致额外的复杂性。之后神经网络的方法用来克服这一特征设计问题,通常涉及到RNNs和CNNs。特别是,Miwa和Bansal以及Li等人将双向树状结构的RNNs应用于不同的上下文以捕获语法信息(使用外部依赖分析器)。Gupta等人则使用各种手工提取的特性应用到RNNs中。Adel提出了解决简单问题的实体分类(EC,假设给出实体边界),与NER不同的是,他们复制实体周围的环境,将实体对喂给关系提取层。Katiyar和Cardie在研究带 attention 的RNNs时,没有考虑到关系标签并不是相互排斥的。最后,Bekoulis等人在联合模型中使用LSTMs一次只提取一个关系,但增加了NER部分的复杂性。

我们的基准模型支持从相同的输入同时提取多组关系。然后,我们使用对抗式训练进一步扩展了这个强大的基线。

二.对抗性训练(AT):

对抗训练(AT)是通过对训练数据产生对抗噪声来规范分类算法的一种手段。它鼓励神经络对未经修改的例子和扰动的例子进正确的分类来实现深层模型,这实际上不仅增强了神经络的鲁棒性,且提高了它的普遍性。Szegedy的章表明将对抗样本和普通样本一起训练模型训练,可使模型稍微正则化。训练对抗样本和平常的训练样本数增加不一样:通常我们通过对数据进变形来增加数据,这样变形后的数据是可能出现在测试集的。对抗样本这种数据通常不可能然地出现在测试集中,但是它们可以揭露出模型的缺陷。

在NLP环境中,针对不同的任务,如文本分类、关系提取和词性标注,AT有几种不同的变体。AT被认为是一种正则化方法。与其他引入随机噪声的正则化方法(dropout,word - dropout)不同,AT产生的扰动是模型容易误分类的样本的变体。

模型

文中设计的联合抽取模型如下:

基本模型从下往上依次为:

  1. 输入层:输入是一个句子的序列 tokens。我们使用character embeddings来隐式捕获形态学特征(例如,前缀和后缀),通过一个vector(embedding)表示每个字符,将character embeddings 嵌入到BiLSTM中,以获得单词的基于字符的表示。另外也使用预训练过的word embeddings。

  2. BiLSTM层:word和character embeddings 连接起来形成最终的token 表示,然后将其输入到BiLSTM层以提取顺序信息。

  3. 实体识别层:对于NER任务,我们采用BIO (Beginning,Inside, Outside) 编码方案。对于实体标记的预测,我们使用:(i) softmax方法进行实体分类(EC)任务(假设给定的实体边界),或 (ii) CRF方法,这样我们同时识别每个实体的类型和边界。在解码过程中,在softmax设置中,我们贪婪地检测token的实体类型。虽然独立的类型分布对于EC任务来说是合理的,但是当相邻标签之间有很强的相关性时就不是这样了。例如,BIO编码方案在NER任务中强加了几个约束(例如,B-PER和I-LOC标记不能连续)。基于这种直觉,我们使用线性链CRF来完成NER任务。在CRF设置中,对于解码,我们使用Viterbi算法。在训练过程中,对于EC (softmax)和NER任务(CRF),我们将交叉熵损失L(NER)最小化。

  4. 关系抽取层:实体标签作为label embeddings输入到关系提取层,与Bi提取的句子表示一起做关系抽取。其中假设实体类型的知识有助于预测相关实体之间的关系。

以上为完整的基本模型。若是在该联合模型的输入层中,针对embedding人为的添加小尺度的扰动η,就可以进行对抗训练(AT)。具体的η计算过程如下。

对于联合模型来说,有实体识别和关系抽取的联合损失函数 Ljoint:

接下来生成一个对抗的输入样本,通过添加最坏扰动ηadv加入到输入的embedding中,来最大化损失函数:

对于ηadv直接在神经网络中求解是比较繁琐复杂,所以一般取其近似值为:

其中ε为定义的超参数,和输入层的 word embedding 的维度相关。如 word embedding 为100时,ε 可以近似取值为 0.01。g 为联合损失函数在 w 方向的梯度,也正是为了说明添加的扰动对于神经网络来说是最坏的情况。

之后训练的输入为原始和对抗样本的混合,所以最终求得的损失函数为:

实验

我们使用 github 代码基中的代码,在四个数据集中评估模型。特别地,我们遵循Miwa 和 Bansal 为 ACE04 数据集定义的 5 倍交叉验证。对于CoNLL04EC任务(假设给定边界),我们使用与 Gupta 等人相同的分割。我们还使用10倍交叉验证对NER任务的模型进行评估,类似于Miwa和Sasaki在同一数据集中使用的模型。对于荷兰房地产分类信息DRECdataset,我们使用了Bekoulis等人的训练测试分割。对于不良药物事件ADE,我们进行了10倍的交叉验证,类似于Li等人。为了获得不受输入嵌入影响的类似结果,我们使用了之前作品的嵌入。我们在所有的实验中都采用了早停的方法。我们使用Adam优化器并修复超参数验证集。选择缩放参数α的范围为{ 5 e2,1e2、1 e3、1 e4 }。更大的α值在我们早期的实验导致一致的性能降低。这可以从一个事实来解释,添加更多的噪音可以改变句子的内容,改变的词向量的语义。

我们使用三种类型的评估,即:

(1)S(trict):如果实体边界和实体类型都是正确的,则我们将实体得分为正确(ACE04,ADE, CoNLL04, DREC);

(2)B(oundaries):如果只有实体边界是正确的,而不考虑实体类型,则我们将实体得分为正确(DREC);

(3)R(elaxed):如果将至少一种正确的类型分配给组成该实体的tokens(假设边界已知),则认为multi-token实体分类是正确的。在所有情况下,当关系类型和参数实体都正确时,关系被认为是正确的。实验结果表明我们的联合模型取得了当前最好的效果。

另外当有AT加入到输入层时,可以让训练更快速度的达到收敛。

总结

本文执行一个大规模的实验研究在这个联合模型任务上,使用了不同的语境和语言的数据集。建立了一个强大的基线,它的性能优于所有以前的模型;而且模型依赖于自动提取的特性,实现了最先进的性能。另外与基线模型相比,在训练过程中应用AT可以让联合抽取的效果持续增加。

编辑:刘杨珂

推荐学习

学习地址:

https://campus.swarma.org/gpac=109

关注集智学园公众号

获取更多更有趣的AI教程吧!

集智AI学园QQ群:426390994

学园网站:campus.swarma.org

商务合作和投稿转载|swarma@swarma.org