论文笔记:Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks

背景知识:Distant Supervised Relation Extraction

该方法由 M Mintz 于 ACL2009 上首次提出,与传统预先定义关系类别不同,Distant Supervision通过将知识库与非结构化文本对齐来自动构建大量训练数据,减少模型对人工标注数据的依赖,增强模型跨领域适应能力。

Distant Supervision的提出主要基于以下假设:两个实体如果在知识库中存在某种关系,则包含该两个实体的非结构化句子均能表示出这种关系。例如,"Steve Jobs", "Apple"在 Freebase 中存在 founder 的关系,则包含这两个实体的非结构文本“Steve Jobs was the co-founder and CEO of Apple and formerly Pixar.”可以作为一个训练正例来训练模型。这类数据构造方法的具体实现步骤是:

  1. 从知识库中抽取存在关系的实体对

  2. 从非结构化文本中抽取含有实体对的句子作为训练样例

Distant Supervision的方法虽然从一定程度上减少了模型对人工标注数据的依赖,但该类方法也存在明显的缺点:

  1. 假设过于肯定,难免引入大量的噪声数据。如 "Steven Jobs passed away the daybefore Apple unveiled iPhone 4s in late 2011."这句话中并没有表示出 Steven Jobs 与 Apple 之间存在 founder 的关系。

  2. 数据构造过程依赖于 NER 等 NLP 工具,中间过程出错会造成错误传播问题。针对这些问题,目前主要有四类方法:
    (1)在构造数据集过程中引入先验知识作为限制;
    (2)利用指称与指称间关系用图模型对数据样例打分,滤除置信度较低的句子;
    (3)利用多示例学习方法对测试包打标签;
    (4)采用 attention 机制对不同置信度的句子赋予不同的权值。

论文正文:

这篇论文主要针对数据标注错误问题和传统统计模型特征抽取过程中出现的错误提出解决方法。

  • 针对数据标注错误问题,作者提出采用多示例学习的方式从训练集中抽取取置信度高的训练样例训练模型。

  • 针对第二个问题,作者提出 piece-wise 的卷积神经网络(PCNN)。

传统的关系抽取方法,包含:bootstrap、无监督发现或者有监督分类集中模式。其中有监督的方法是最常使用的,也是性能表现最好的一类,有监督主要是将关系转换成类别标签去考虑。但是,有监督的方法需要大量的数据,如果基于人工去标注每一句话当中的距离,那么明显是不现实的,也因此,这个方法也一直受制于训练数据量不足的问题。为了解决这个问题,才引入了Distant Supervised Relation Extraction,引入外部KB来实现自动化的语料标注。自动标注解决了语料的数量问题,但是其标注质量一般,存在大量的wrong label,于是又引入了multi-instance learning来解决这个问题。与此同时,如何提取特征也是一个很重要的工作,主流的方法有两种,基于特征的,无论基于什么方法,都难以找到高质量的特征。
于是,本文准备使用PCNN进行特征抽取和分类。

PCNN.png

在PCNN部分,其特点在于:

  • 使用了预训练的Word-Embedding

  • 加入了Position Embedding

  • 卷积部分是采用了常见的针对文本的卷积核设计,单向滑动

  • 在池化层,是按照分段进行max pooling的,而PCNN的P就是这个代表,将句子按照两个entity进行分割,分割得到三段,这三段分别进行max pooling

  • 最后使用一个Softmax分类器进行类别判断。

在Multiple instance learning部分,专门针对次修改了优化的方法,来适应使用Multiple Instance Learning来降低Wrong Label。目前的理解是,针对上述PCNN模型,假设需要学习的参数是P,且训练数据一共有T个bags,C种关系,那么在训练时则在bag级别进行训练,损失函数为bag级别的交叉熵,每个袋子预测为关系r的概率为这个袋子里被预测为袋子r关系最大的值,即分类器仍然是在袋子里面的instance级别进行计算,但是在计算损失更新参数的时候,则同时考虑这个袋子里面的所有instance,选择概率最大的那一个作为这个袋子的代表。就这样每轮将Mini-batch里的所有袋子的损失计算出来,用于更新参数P,即bag-level,而不是传统的instance level。

实验部分主要关心:
1、利用Multiple Instance Learning + PCNN能否提升性能
2、测试不同参数的影响。
数据集:使用了一个公开的数据集,KB是Freebase,而metric为precision/recall。
实验Baseline部分包含:传统的Distant Supervision RE Baseline、包含Multiple-Instance改进的,同时包含Multiple-Instance+Multiple Labels改进的。实验显示该方法均高于Baseline模型不少。

https://www.sohu.com/a/131451458_500659
https://blog.csdn.net/MebiuW/article/details/75807674

你可能感兴趣的:(论文笔记:Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks)