0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为什么要引入远程监督方法?

深度学习自然语言处理 来源:AI自然语言处理与知识图谱 作者:AI自然语言处理与 2021-04-02 09:59 次阅读

从早期到现在来看关系抽取任务的话,基本的做法包括基于规则匹配、监督学习、半监督学习、无监督学习以及远程监督学习等方法,上篇文章《从头来看关系抽取》已经介绍了监督学习早期的一些开山之作,而今天的主人公是远程监督来做关系抽取,那么为什么要引入远程监督的方法,什么是远程监督的方法,基于远程监督的关系抽取的方法从古至今是怎么演变发展的,带着这些疑问,我们简单了解一下。

为什么要引入远程监督方法?

监督学习

监督学习是利用标注好的训练数据,传统的机器学习模型或者是深度学习算法构建网络模型,老生常谈的问题,这种方法的问题在于虽然能够利用标注质量高的数据获取很好的效果,但是获取高质量的标注数据需要花费昂贵的人力、物力,因此引出很多其他的学习方式,比如半监督、无监督、远程监督、迁移学习等等。

半监督学习

半监督学习是解决获取大量高质量标注数据难问题的一种解决方式,利用少部分高质量标注数据,通过相关算法学习,常用的是Bootstrapping learning 以及远程监督方法。对于关系抽取任务来说,Bootstrapping 算法的输入少量实体关系数据作为种子,找到更多有某种关系的相关数据。但是我们可以想到一个问题就是利用少量的种子数据在大规模数据中搜寻出来的结果,是否是我们真正想要的,会不会存歧义的数据,毕竟利用一点种子就想达到我们的目标,肯定是存在某些问题的,这也是 Bootstraping 算法的语义漂移问题。

远程监督学习

远程监督学习很早之前就被提出来了,但是应用在关系抽取任务上面应该是2009年的一篇论文,作为远程监督学习在关系抽取的开山之作,下面会介绍这个工作。简单来说,远程监督关系抽取是通过将大规模非结构化文本中的语料与知识库对齐,这样便可以获取大量训练数据供模型训练。远程监督关系抽取的工作可以分为两阶段,其中后期以及目前的发展都集中在神经网络提取特征信息结合多实例学习思想。

开山燎原-2009-ACL

论文题目:Distant supervision for relation extraction without labeled data

论文地址:https://www.aclweb.org/anthology/P09-1113.pdf

这篇文章应该是最早的将远程监督学习用于关系抽取,是一篇开山之作。

文中提出了一个强有力的假设:如果两个实体在已知知识库中存在,并且两者有相对应的某种关系,那么当这两个实体在其他非结构化文本中存在的时候也能够表达这种关系。基于这种强有力的假设,远程监督算法可以利用已有的知识库,给外部非结构化文本中的句子标注某种关系标签,相当于自动语料标注,能够获取大量的标注数据供模型训练。

训练阶段

文中所采用的知识库为Freebase,非结构化文本采用的是维基百科等数据。既然是要判定句子中的实体是否在知识库中存在,那么必然要识别出对应的实体,识别实体部分文中依赖NER标注工具。如果句子中的两个实体存在于知识库中且具有某种关系,便从句子中抽取出特征(很多特征),并把具有这种关系的多个句子中特征拼接作为这个关系的某一特征向量,从不同的句子中抽取出的特征拼接,会让后面的分类器获取更多的信息。

特征

训练的分类器需要很多的特征,2009年的时候还在大量的构造特征工程,因此构造的也正也几乎完全是词典或者语法特征,主要包括以下:

Lexical features

1、Thesequenceofwordsbetweenthetwoentities 2、Thepart-of-speechtagsofthesewords 3、Aflagindicatingwhichentitycamefirstinthesentence 4、AwindowofkwordstotheleftofEntity1andtheirpart-of-speechtags 5、AwindowofkwordstotherightofEntity2andtheirpart-of-speechtags

另外还有关系依存句法树以及实体类别特征等。

测试阶段

在测试阶段中,将再次使用NER工具识别实体,句子中一起出现的每一对实体都被认为是一个潜在的关系实例,当这些实体同时出现便从句子中提取特征添加到该实体对的特征向量中。例如在测试集中10个句子中出现了一对实体,每个句子提取3个特征,那么这个实体对将有30个相关特征,对测试语料库中每个句子的每个实体对进行特征提取,分类器根据实体对出现的所有特征为每个实体对预测关系。

问题

1、文中提出的假设太过强横,必然会出现大量的badcase,比如句子中出现的两个实体刻画的并非实体库中对应的关系描述,这样会引入噪音脏数据,影响最终的结果。例如,创始人(乔布斯,苹果)和ceo(乔布斯,苹果)都是正确的。

2、文中依赖于NER工具、以及构造词典语法句法等特征,也会存在错误传播问题。

多实例学习-2011-ACL

论文题目:Knowledge-Based Weak Supervision for Information Extraction of Overlapping Relations

论文地址:https://www.aclweb.org/anthology/P11-1055.pdf

本文针对上篇文章中的强假设导致的badcase,采用多实例学习的思想,减少远程监督噪音数据的影响。提出新的模型MULTIR,引入多实例学习的概率图形模型,从而解决重叠关系抽取问题,重叠关系问题指的是同一对实体之间的存在多种不同类型的关系,同时结合句子级别和文档级别的特征进行关系抽取,MULTIR在计算推理上面具有很高的效率。

多实例学习可以被描述为:假设训练数据集中的每个数据是一个包(Bag),每个包都是一个示例(instance)的集合,每个包都有一个训练标记,而包中的示例是没有标记的;如果包中至少存在一个正标记的示例,则包被赋予正标记;而对于一个有负标记的包,其中所有的示例均为负标记。(这里说包中的示例没有标记,而后面又说包中至少存在一个正标记的示例时包为正标记包,是相对训练而言的,也就是说训练的时候是没有给示例标记的,只是给了包的标记,但是示例的标记是确实存在的,存在正负示例来判断正负类别)。通过定义可以看出,与监督学习相比,多示例学习数据集中的样本示例的标记是未知的,而监督学习的训练样本集中,每个示例都有一个一已知的标记;与非监督学习相比,多示例学习仅仅只有包的标记是已知的,而非监督学习样本所有示例均没有标记。但是多示例学习有个特点就是它广泛存在真实的世界中,潜在的应用前景非常大。from http://blog.csdn.net/tkingreturn/article/details/39959931

经典-2015-EMNLP

论文题目:Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks

论文地址:https://www.aclweb.org/anthology/D15-1203.pdf

上面的几篇文章已经提出了远程监督学习在关系抽取的开山之作,以及后面会通过多实例学习(Multi Instance Learning, MIL)来减少其中的噪音数据,这篇文章也是在前人的基础之上去做的工作,主要有两部分,其中之一是提出piece-wise卷积神经网络自动抽取句子中的特征信息,从而替换之前设计的特征工程;另外和之前一样,采用多实例学习思想来减缓错误的badcase数据,既这篇文章将多实例学习整合到卷积神经网络中来完成关系抽取任务。

ad567324-8e8e-11eb-8b86-12bb97331649.png

Piecewise-CNN

Vector representation

上图是PCNN针对bags中的一个句子编码的情况,主要分为几部分,其中向量表示部分也和之前我们介绍过的几篇一样,采用的预训练的word embedding以及句子中词和两个实体之间的相对距离向量,下图中再对这个解释一下,图中 son 对两个实体的相对距离分为是-2和3,到时候会把这些均转换为向量表示,采用随机初始化的方式。

ad9c5c68-8e8e-11eb-8b86-12bb97331649.png

Convolution

卷积部分从图中便可以看出采用的是多卷积核操作,文中的Zero Padding值为1 , 卷积核的长为向量矩阵的长,宽为3,从上到下,单向滑动。

Piecewise max pooling

这部分也是之前介绍过的一篇论文中的类似做法,根据实体的位置将句子分为左中右三部分,对左中右三部分分别max-pooling,最后将所有的结果拼接,过softmax层,图中的一个细节就是分段pooling的时候并没有丢失两个实体,而是将两个实体划分在在左中两段中,这是一个细节,图中也很明显给画出来了。

MIL-PCNN

上面的PCNN网络结构展示的是多实例学习中一个bag(包)中的一个instance(句子)的情况,而多实例学习的输入到网络中的是一个包,里面包含了很多句子。假设我们存在 个bags {},每个bag包含个句子 。多实例学习的目的是预测看不见的袋子的标签。在本文中,bag中的所有实例都是独立考虑的,并且bag中的instance是没有label的,只有bag中才有label,因此只需要关注bag的label即可。

模型图中经过softmax得到的是bag中的一个instance的关系类别概率,而非bag的,因此重新定义了基于bag的损失函数,文中采取的措施是At-Least-One的假设,每个bag中至少有一个标注正确的instance,这样就可以找到bag中置信度得分最高的instance,代表当前bag的结果。定义如下的目标函数

adf9db4a-8e8e-11eb-8b86-12bb97331649.png

2016-ACL

论文题目:Neural Relation Extraction with Selective Attention over Instances

论文地址:https://www.aclweb.org/anthology/P16-1200.pdf

这篇文章是在上一篇文章PCNN的基础之上进行的改进,主要是因为PCNN在多实例学习部分采用的是选取bag中置信度最高的instance(句子)作为bag的标签,这样的做法可能会丢失太多的信息,因为一个bag中正负样本的数量是不定的,可能存在多个正样本或者多个负样本。这篇文章为了充分利用bag中的所有instance信息,利用注意力机制充分利用instance信息,减弱噪音的影响。模型的整体结构如下图。

ae482642-8e8e-11eb-8b86-12bb97331649.png

模型的整体结构也是分为两大部分

Sentence Encoder:句子编码部分采用的方式和上文的PCNN一样,包括输入部分的词向量和位置向量,卷积神经网络,以及分段max-pooling,这部分的方式没有区别,这部分的模型结构如下图所示。

aea13dd6-8e8e-11eb-8b86-12bb97331649.png

Selective Attention over Instances:这部分是文章的重点,改进的地方主要是在这里,利用注意力机制对bag中的instance进行加权,得到bag的最终向量表示,,其中 是权重,文中具体的有两种计算权重的方式。

Average: 将bag中所有instance的重要程度都等同看待,即,这会放大instance的噪音影响,文中将其作为对比实验的一个baseline。

Selective Attention: 这部分attention的目的是加强正样本的instance、弱化负样本instance的噪音影响。具体的计算公式见下面,其中 代表的是句子句子和关系 的相关程度, 为attention的对角矩阵,这样就可以得到加权后的bag向量表示 。

aee67cb6-8e8e-11eb-8b86-12bb97331649.png

af257bbe-8e8e-11eb-8b86-12bb97331649.png

2016-COLING

论文题目:Relation Extraction with Multi-instance Multi-label Convolutional Neural Networks

论文地址:https://www.aclweb.org/anthology/C16-1139.pdf

这篇文章也是在PCNN的基础之上进行的改进,主要有两方面,其一也是和上文一样认为PCNN的at-least-once假设太过强硬,应该充分利用bag中的所有instance信息,另外是评估了数据集中存在18.3%的重叠关系数据,因此之前的单标签是不合理的,所以这篇文章针对这两部分进行了改进,模型的整体结构如下图。

af9c1954-8e8e-11eb-8b86-12bb97331649.png

Sentence-level Feature Extraction:这部分和之前的PCNN一样,Embedding (word + position) -> CNN -> 分段最大池化获取每一个instance的句子表示。

Cross-sentence Max-pooling:这篇文章融合bag中所有instance信息的方法和上文不一样,不是采用的注意力机制,而是采用了非常简单直观或者说粗暴的方式,将bag中每个instance的句子信息取每一维度的最大值,获取bag的向量表示,就如图中中间部分所示。

Multi-label Relation Modeling:之前的方式都是采用softmax多标签分类的方式,而这篇文章为了解决重叠关系问题,将不在采用softmax,而是对每一个 relation 做 sigmoid ,然后根据阈值来判定该instance是否应该包含这个 relation 。

2017-AAAI

论文题目:Distant Supervision for Relation Extraction with Sentence-Level Attention and Entity Descriptions

论文地址:https://www.aaai.org/ocs/index.php/AAAI/AAAI17/paper/download/14491/14078

这篇文章的关键点主要也是两部分,其一也是考虑了at-least-once的假设太多强硬,需要采用注意力机制考虑bag中更多的instance信息,另外一个是之前的方法都过多关注实体本身,而忽略了实体背后的文本描述信息,因此,这篇文章的将实体链接到实体描述文本上面获取很多的信息表达,文章的主要结构如下。

aff7c7ae-8e8e-11eb-8b86-12bb97331649.png

主要包括三部分

(a) PCNNs Module:这部分还是和之前一样,完全延续了 PCNN 的模型结构,采用word + position -> CNN -> Piecewise Max-pooling获取文中的 bag 中的句子信息表达。

(b) Sentence-level Attention Module:这部分类似之前的Selective Attention,也是计算 bag 中每个 instance 与 relation 的相关性,这里关系的向量采用的是 两个实体信息来表达,然后计算相关的权重(如下),最后通过加权的方式获取 bag 的向量表达,然后过线性层和softmax层做多分类,没有考虑重叠关系。

b147ce24-8e8e-11eb-8b86-12bb97331649.png

Entity Descriptions:这部分是将实体的文本描述信息编码,采用的是简单的CNN + max-pooling 获取实体描述文本的向量表达,文中提出,为了尽可能使实体的向量表达与实体描述文本的向量表达在语义空间中接近,直接定义了一个距离公式计算loss, ,然后和上面判别关系的loss结合, ,两个损失函数联合训练。

b1abf0fc-8e8e-11eb-8b86-12bb97331649.png

2018-EMNLP

论文题目:Hierarchical Relation Extraction with Coarse-to-Fine Grained Attention

论文地址:https://www.aclweb.org/anthology/D18-1247.pdf

这篇文章主要考虑到之前的关系抽取方法中,没有考虑到关系之间是存在语义依赖关系的,而且,知识库的关系中很多都是带有层级结构的,另外,之前的方法没有对关系的长尾分布问题进行仔细的考量,易导致关系数量多的则准确率更高,关系数量极少的准确率堪忧,针对上面的问题,这篇文章提出了在多实例学习中采用注意力机制的思想,提出层次化注意力机制来做具有层级的关系抽取问题,而且对于长尾分布的关系抽取也有很明显的改善。

b21b1c2a-8e8e-11eb-8b86-12bb97331649.png

b2762764-8e8e-11eb-8b86-12bb97331649.png

2018-EMNLP

论文题目:RESIDE: Improving Distantly-Supervised Neural Relation Extraction using Side Information

论文地址:https://www.aclweb.org/anthology/D18-1157.pdf

这篇文章主题思想还是远程监督的思想,考虑到知识库中除了实体关系之外,还有很多其他的信息可以加以利用,因此在模型中考虑了这部分特征信息,比如关系的别名信息以及实体的类别信息。另外,之前看到的很多文章都是采用了CNN的网络结构,但是本文不同,摒弃了之前的CNN网络结构,而是采用Bi-GRU以及GCN的文本编码方式,考虑到采用GCN的编码方式还是考量了Bi-GRU对文本的长距离信息依赖。文章的模型结构如下。

b289c38c-8e8e-11eb-8b86-12bb97331649.png

总结

以上是几篇远程监督关系抽取的论文,从09年的开山之作,到前两年的一些工作,文中的工作虽然没有覆盖全部,但是基本的方法已有大概的脉络梳理,总体来说,输入表示部分基本都是词向量与位置编码结合,获取句子语义部分采用CNN,Piecewise max-pool池化较多,当然也有采用GRU/GCN等,另外大多数工作基本都是多实例学习 + 注意力机制的改进与创新,其他的一些涉及到重叠关系、长尾分布等相关处理。除了前几年的一些工作之外,最近也有远程监督关系抽取的一些工作。

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4572

    浏览量

    98743
  • 分类器
    +关注

    关注

    0

    文章

    152

    浏览量

    13112
  • 机器学习
    +关注

    关注

    66

    文章

    8122

    浏览量

    130556

原文标题:【关系抽取】从头来看关系抽取-远程监督来袭

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于GSM的远程家庭智能报警系统的设计及实现方法

    电子发烧友网站提供《基于GSM的远程家庭智能报警系统的设计及实现方法.rar》资料免费下载
    发表于 03-04 09:38 0次下载

    基于神经辐射场的自监督多相机占用预测

    本研究提出了一种自监督的多摄相机3D占据预测方法,名为OccNeRF。该方法旨在解决无界场景的建模问题。
    的头像 发表于 01-02 14:53 196次阅读
    基于神经辐射场的自<b class='flag-5'>监督</b>多相机占用预测

    基于transformer和自监督学习的路面异常检测方法分享

    铺设异常检测可以帮助减少数据存储、传输、标记和处理的压力。本论文描述了一种基于Transformer和自监督学习的新方法,有助于定位异常区域。
    的头像 发表于 12-06 14:57 800次阅读
    基于transformer和自<b class='flag-5'>监督</b>学习的路面异常检测<b class='flag-5'>方法</b>分享

    监督域自适应场景:基于检索增强的情境学习实现知识迁移

    本文对比了多种基线方法,包括无监督域自适应的传统方法(如Pseudo-labeling和对抗训练)、基于检索的LM方法(如REALM和RAG)和情境学习
    发表于 12-05 14:14 196次阅读
    无<b class='flag-5'>监督</b>域自适应场景:基于检索增强的情境学习实现知识迁移

    LabVIEW远程监控

    LabVIEW远程监控 远程监控的应用场景 从办公室远程监控工厂车间的测试设备。 在世界另一端的偏远地区监控客户现场的发电设备。 从公司远程监控外场的产品。 技术更新与
    发表于 12-03 21:51

    动态场景下的自监督单目深度估计方案

    监督单目深度估计的训练可以在大量无标签视频序列来进行,训练集获取很方便。但问题是,实际采集的视频序列往往会有很多动态物体,而自监督训练本身就是基于静态环境假设,动态环境下会失效。
    发表于 11-28 09:21 277次阅读
    动态场景下的自<b class='flag-5'>监督</b>单目深度估计方案

    请问外部噪声引入目标系统的途径和抑制方法有哪些?

    请问外部噪声引入目标系统的途径和抑制方法有哪些? 外部噪声是指来自于环境或设备的不希望信号干扰,导致目标系统输出的信号出现失真或其他问题。为了解决这个问题,我们首先需要了解外部噪声引入目标系统的途径
    的头像 发表于 11-09 15:53 224次阅读

    一种利用几何信息的自监督单目深度估计框架

    本文方法是一种自监督的单目深度估计框架,名为GasMono,专门设计用于室内场景。本方法通过应用多视图几何的方式解决了室内场景中帧间大旋转和低纹理导致自监督深度估计困难的挑战。
    发表于 11-06 11:47 183次阅读
    一种利用几何信息的自<b class='flag-5'>监督</b>单目深度估计框架

    为什么步进电机驱动引入细分控制?

    为什么步进电机驱动引入细分控制
    发表于 10-10 07:09

    自动驾驶操作域监督是什么

    操作域监督(ODS) 操作域监督功能模块图 操作域监督模块监控与动态驾驶任务相关的能力、状态和情况,目的是确保自动驾驶车辆在操作设计域及其他适用的动态和静态约束下运行。它使用两个操作域表示实现运行时
    的头像 发表于 10-04 18:19 326次阅读
    自动驾驶操作域<b class='flag-5'>监督</b>是什么

    有没有mcu远程读写服务器上mysql数据库方法

    有没有mcu通过控制wifi芯片远程读写服务器上mysql数据库?相应的mcu和wifi模块的数据手册及控制方法
    发表于 09-28 06:02

    如何实现工业设备远程调试的方法

    工业设备远程调试的方法。 一、工业设备远程调试的技术架构 远程调试技术主要由现场设备、数据采集模块、数据传输模块、远程控制模块四部分组成。现
    的头像 发表于 09-14 10:03 576次阅读

    常用的远程控制方法总结

    开个新系列,写一下在调试工作中,常用的远程控制方法
    的头像 发表于 09-06 15:32 1168次阅读
    常用的<b class='flag-5'>远程</b>控制<b class='flag-5'>方法</b>总结

    Xilinx FPGA远程调试方法(二)

    上篇主要是分享了Vivado编译软件远程调试的方法。杰克使用Vivado软件进行远程连接,主要是用于固化程序以及FPGA(PL端)的异常排查。而本篇主要内容是对使用Vitis软件远程
    发表于 05-25 14:36 1785次阅读
    Xilinx FPGA<b class='flag-5'>远程</b>调试<b class='flag-5'>方法</b>(二)

    git拉取远程分支到本地的两种方法

    使用这种方式会在本地仓库新建分支xxx,并自动切换到新建的分支xxx,当然了远程分支xxx的代码也拉取到了本地分支xxx中。采用这种方法建立的本地分支会和远程分支建立映射关系。
    的头像 发表于 05-06 09:19 1.4w次阅读