热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

实体关系联合抽取方法综述(有监督)

目录1概述:1.1方法简介1.2联合抽取模型挑战2所需预备知识3基于特征工程的联合抽取4基于神经网络的联合抽取4.1基于共享参数的联合抽取模型4.1.1实

目录

1 概述:

1.1 方法简介

1.2 联合抽取模型挑战

2 所需预备知识

3 基于特征工程的联合抽取

 4 基于神经网络的联合抽取

4.1 基于共享参数的联合抽取模型

4.1.1 实体对映射到关系

4.1.2 头实体映射到关系、尾实体

4.1.3 关系映射到头实体、尾实体

 4.2 基于联合解码的联合抽取模型

4.2.1 序列标注

4.2.2 Sequence-to-Sequence

5 数据集介绍

5.1 人工标注数据集

5.2 NLP 获取数据集

6 未来研究方向




1 概述:

        实体关系联合抽取通过对文本信息建模,来自动识别实体、实体类型以及实体之间特定的关系类型,为知识图谱构建、智能问答和语义搜索等下游任务提供基础支持;


1.1 方法简介

        传统方法:传统的流水线方法将实体关系联合抽取分解成命名实体识别和关系抽取两个独立的子任务,由于两个子任务之间缺少交互,流水线方法存在误差传播等问题;

                误差传播:命名实体识别子任务产生的误差,在关系抽取子任务中无法得到纠正,影响关系抽取的结果质量;

                子任务间缺少交互:流水线方法忽略了命名实体识别和关系抽取两个子任务间的关系,两个子任务之间缺少交互,使得子任务的信息没
有被充分利用。比如实体类型和关系类型之间应存在某种隐含关系,在识别实体类型的过程中,关系类型会起到一定作用,对于识别关系类型的过程同样如此;

                产生冗余信息:命名实体识别子任务获得的实体,实体之间并非都存在某种关系,不存在关系的实体作为冗余信息传递到关系抽取子任务中,提高了错误率;

        新方法: 建立统一的模型使得不同子任务彼此交互,充分利用子任务中的信息,进一步提升模型性能;

                抽取特征的不同方式:基于特征工程的联合抽取和基于神经网络的联合抽取(联合抽取的主流方法:共享参数和联合解码)两种类型;、


1.2 联合抽取模型挑战

        联合抽取模型挑战:

        实体嵌套:现实生活中,存在一个实体嵌套另一个实体的情况,同一个词可能属于不同的实体,比如“天津大学”是一所大学,同时“天津”也是一个地点。联合抽取模型需要融入更丰富的上下文语义信息才能识别当前实体类型,大量实体嵌套的情况增加了联合抽取的难度;

        关系重叠:同一句子中可以存在不同的关系类型,相同的实体之间可以存在多种关系类型,不同关系之间也可能包含一些隐藏信息。比如“北京是中国的首都”,“中国”和“北京”之间存在“包含”和“首都”两种关系类型。联合抽取模型需要设计不同的抽取策略或复杂的标注方案才能解决此类问题;

        数据噪音:日常生活产生的海量数据通常存在大量数据噪音,尤其是网页、社交平台和媒体评论等环境产生的数据,存在许多特殊符号和不标准表达等类型的噪音。包含数据噪音的数据难以被充分利用,也增大了联合抽取获取有效数据的难度;

        模型的平衡性:联合抽取的难点是增强子任务间的交互性。简单的交互难以充分利用子任务的重要信息,降低抽取结果的准确性;复杂的交互会对子任务进行限制,使得子任务抽取的特征不具备丰富性。联合抽取需要在子任务特征的丰富性和子任务的交互性间做权衡,以达到最佳抽取效果;


2 所需预备知识

        命名实体识别:命名实体的概念在1995年MUC-6会议上被首次提出,命名实体是指能够从元素集合中识别具有相似属性元素的单词;命名实体识别即识别文本中具有特定意义的实体,例如人名、地名和机构名等,已知实体类型集合 E,给定输入句子S = \{w_1,w_2,...,w_n\},命名实体识别输出S 中的所有实体及实体类型<w_i,w_j,e_k>,其中e_k \in E, w_i,w_j为实体的起始单词和结束单词;

        关系抽取:关系抽取任务于1998年MUC-7 会议上被首次引入,通过填充关系模板槽完成实体间三类关系 Location_of、Employee_of 和 Product_of 的抽取。关系抽取通常在实体信息已知的情况下进行,即给定实体对<h,e_1,t,e_2>, e_1,e_2分别表示 h 和t 的实体类型,关系抽取输出h 和t 之间存在的关系类型r;

        实体关系联合抽取:已知关系类型集合 R 、实体类型集合E,给定句子S = \{w_1,w_2,...,w_n\}, 实体关系联合抽取通过建立统一的模型,输出S 中的所有关系五元组<h,e_1,r,t,e_2>, ,对于没有预先给定实体类型的数据集,实体关系联合抽取输出句子S 所有的关系三元组<h,r,t>;

         常用的神经网络模型:

        循环神经网络:循环神经网络擅长处理带有时序信息的序列,其在每个时刻t 都更新自己的“记忆”,难以解决长期依赖与梯度消失的问题。长短时记忆网络(long short-term memory,LSTM)[22]于1997 年被提出,是循环神经网络的一种变体。LSTM 用特定的学习机制来聚焦并更新信息,能够解决长期依赖和梯度消失问题。门控循环单元(gated recurrent unit,GRU)对LSTM进行改进,使用更少的门提升了计算效率;

        图卷积网络(graph convolutional network,GCN):研究者们将诸如卷积神经网络等传统神经网络结构扩展到图数据中,使用卷积层提取图中节点的特征信息,将当前节点的特征传递至相邻节点,通过叠加GCN 层学习到图中的节点表示。GCN 的输入是一个图,图通常由n × d 的节点嵌入矩阵和n × n 的图结构表征矩阵(如邻接矩阵)来表示,最终输出 n × d 的矩阵,表示每个节点的特征信息;

        预训练模型:预训练模型是已经在大量数据集上训练并保存的网络模型。对于具体的任务,可以在预训练模型上微调,实验也证明预训练方法是有效的。在自然语言处理(natural language processing,NLP)领域,预训练模型BERT(bidirectional encoder representations from transformers)展现了优秀的性能。BERT 是一种基于Transformer 的多层双向语言表征模型,由n 个相同的Transformer块叠加而成,通过
点积注意力的方法更深层次地学习到单词的特征信息;


3 基于特征工程的联合抽取

        基于特征工程的联合抽取,需要根据数据特点设计特征,当满足特征函数的条件时,特征函数会被触发;

整数线性规划:约束条件和目标函数均为线性函数;

        使用随机离散变量表示局部实体识别和关系抽取的结果,目的是在先验信息、关系和实体类型等多个约束条件下求得全局最优分配策略

        模型目标函数: (1)标注分配损失,表示局部分类器预测的标注与实际值偏离的情况;(2)约束损失,表示破坏给定约束条件需要付出
的代价
;(3)变量的整数约束将线性规划转换成整数线性规划,用线性松弛法、分支定界法和割平面法等求解最优分配策略;

        大量的线性公式可以表示各种类型的约束条件,使得联合抽取的设计更具备通用性和灵活性;

        整数线性规划方法根据多个独立局部分类器的结果计算全局最优解以实现联合抽取,但局部分类器之间没有交互

卡片金字塔解析:用图结构编码句子中实体信息和关系类型信息,局部分类器彼此交互,提升了联合抽取的性能;

        类似树的图结构在最高层有一个根节点,中间层是内部节点,底层是叶子节点,实体对应叶子节点,叶子节点标注为实体类型;

        图的层数和叶子节点数相等,从图的底层到顶层,每次减少一个节点;

        除去最底层节点,每一层的节点表示与节点相关的最左和最右两个叶子节点之间可能存在关系。

        根据卡片金字塔的结构特点,分别产生叶子节点的实体信息和非叶子节点的关系信息。最终图的节点都被标注,实现了联合抽取。

 结构化预测:传统的机器学习方法,主要面向回归问题和分类问题,输出分别是一个标量和一个类别。对于结构化预测,任务的输出是一个序列、图或树等结构类型,结构中包含语义信息和逻辑信息

        将句子中的实体类型信息和关系类型信息存储在图中,图的节点表示实体信息,弧表示实体间的关系信息;

        


 4 基于神经网络的联合抽取

        基于特征工程的联合抽取在获取特征的过程中严重依赖NLP 工具,需要大量人力和专业领域知识,且存在误差传播的问题,最终影响联合抽取的结果;

基于神经网络的联合抽取模型通常由三部分构成:

         词嵌入层:词嵌入层将输入句子中的单词 w 嵌入到一个向量空间,向量中融入单词信息、字符信息和其他特征信息;

        序列编码层:序列编码层叠加在词嵌入层上,将词嵌入层获得的向量进一步编码,使得单词 w 对应的向量融入上下文信息;

        解码器层:基于联合解码的联合抽取模型在序列编码层上叠加统一的解码器,直接解码序列编码层得到联合抽取的结果

                基于共享参数的联合抽取模型在序列编码层上叠加不同的解码器,根据不同的子任务解码序列信息,解码器间通过共享序列编码层进行信息交互;


4.1 基于共享参数的联合抽取模型

分为三类:

        实体对映射到关系。先抽取实体,再根据实体对进行关系分类;

        头实体映射到关系、尾实体。先抽取头实体h ,再抽取对应的关系r 和尾实体t;

        关系映射到头实体、尾实体。先抽取关系 r ,再抽取对应的头实体h 和尾实体t;


4.1.1 实体对映射到关系

        实体对映射到关系将联合抽取分解成两个子任务:命名实体识别和关系抽取。目前,两个子任务都有较为成熟的处理方法;

        SPTree模型(论文:MIWA M, BANSAL M. End-to-end relation extraction using LSTMs on sequences and tree structures[C] //Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics, Berlin, Aug 7-12, 2016. Stroudsburg:
ACL, 2016: 1105-1116)

        由三个表示层组成: 词嵌入层、序列层、依赖层

        词嵌入层: 词嵌入层将单词和单词词性转换成嵌入向量;

        序列层:由双向LSTM和两层前馈神经网络构成,序列层的输出为单词的BILOU(begin、inside、last、outside、unit) 标注,通过标注信息实现命名实体识别子任务

        SPTree 采用序列标注方案时融入了实体间的依赖信息,通过利用上一个单词的标注信息预测下一个单词的BILOU 标注

        将命名实体识别子任务识别的实体进行关系抽取,由模型的依赖层实现

        依赖层:SPTree的依赖层采用双向树结构的LSTM(由上到下和由下到上,树结构LSTM的设计方法有利于关系抽取,在依赖树中找到两个目标实体的最小公共节点,即两实体间的最短路径),使得每个节点融入该节点到根节点和叶子节点的信息

        依赖层叠加在序列层上,命名实体识别和关系分类两个子任务可以共享序列层和词嵌入层的信息,两个子任务同时进行训练并在整个模型解码完成后,通过反向传播算法更新共享参数来实现信息交互;

        之后的各类模型主要从两方面提升联合抽取的性能:(1)提升命名实体识别和关系抽取的准确性;(2)增加两个子任务间的交互性

        (1)提升命名实体识别和关系抽取的准确性

                采用LSTM 解码实体信息,采用卷积神经网络实现关系抽取;

                在实体识别和关系抽取时都采用LSTM 实现

                在序列编码层上采用CRF 提升实体识别的准确性;

                在关系抽取的过程中,使中元素的特征向量满足基于翻译的约束

                将关系抽取作为多标注分类任务进行处理;

                在序列编码层叠加双向GCN 提升模型抽取特征的能力;

        (2)现实世界中的实体通常基于跨度进行标记,对跨度建模能够直接抽取实体的特征信息,在设计上容易解决实体嵌套的问题;

                双向LSTM 上使用注意力机制获取所有可能的跨度;

                在假设空间上进行集束搜索,评估跨度的类型信息和跨度间的关系信息

                构造动态跨度图来进一步丰富跨度信息;

                通过预训练语言模型BERT和注意力机制,提升了抽取跨度的准确性;

        (3)增强两个子任务间的交互性

                联合抽取转换为表格填充任务;

                采用LSTM 进行特征抽取;

                采用双向LSTM 学习共享参数层的动态交互信息

                采用强化学习的方式增强子任务间的交互;

                设计最小化风险的全局损失函数进行联合训练;

                将实体类型和关系类型构造成二分图,用GCN 进行联合推理;

        联合抽取模型需要权衡子任务的准确性和交互性,在抽取句子的特征信息时通常采用双向LSTM 或预训练语言模型,不同的子任务会设计相应的子模型


4.1.2 头实体映射到关系、尾实体

        头实体映射到关系、尾实体的联合抽取策略,条件概率来表示: p(h,r,t|S)= p(h|S)p(r,t|h,S)

        模型如果不能准确地抽取头实体 h ,那么模型抽取的关系类型 r 和尾实体 t 的置信度同样较低;

        论文:KATIYAR A, CARDIE C. Going out on a limb: joint extraction of entity mentions and relations without dependency trees[C] //Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics, Vancouver, Jul 30-Aug 4, 2017. Stroudsburg: ACL, 2017: 917-928.

        该论文在识别实体的过程中采用BILOU 序列标注的方法,识别出实体后,使用指针网络的方法(注意力模型的一种改进),根据关系类型识别出另一个实体

        序列编码层: 采用多层双向LSTM,在序列编码层上叠加一层从左到右的LSTM层和前馈神经网络进行解码

        识别当前实体的过程z_t = LSTM([z_t&#39;; e_{t-1}], h_{t-1})   y_t = softmax(Wz_t + b)  z_t&#39;, e_{t-1}单词经过多层双向LSTM的特征向量和上一个单词标注的嵌入向量,将二者拼接,与上一时刻的隐藏状态向量一同输入至从左到右的LSTM 层,获取单词在当前时刻t 特征向量z_t,通过前馈神经网络获取单词的标注信息 y_t, 仅当该单词是实体时,模型才会执行关系判断和另一个实体信息的识别;

        关系判断及实体信息识别

        V 是注意力权重矩阵, z_{\leq t}, e_{\leq t}分别表示在 t时刻和t 时刻之前,单词的特征向量和单词的标注嵌入向量;

        将二者进行拼接,通过前馈神经网络将特征向量信息转换成注意力分数,最终通过softmax 函数获得p^t_{\leq t}, 即表示 t 时刻所对应的实体与 t 时刻之前对应的所有实体之间的关系的概率值;

         识别实体的同时识别出所对应的关系和另一个实体;

(1)抽取句子中的多个关系类型:

        采用多头选择机制,在词嵌入向量中添加一个最坏情况扰动项产生对抗样本,通过对抗学习提升了联合抽取模型的鲁棒性;

        采用序列标注的方法实现该分解策略;

        将关系类型当作一种头实体映射到尾实体的函数,根据函数 fr(h) → t 设计头实体触发器和特定关系的尾实体触发器

        新颖的握手标注方案,将长度为n 的句子转换成长度为 (n^2 + n)/2 的序列后进行编码,解决了曝光偏差的问题;

(2)提升准确率

        采用机器阅读理解的方法,将先验信息融入到问题中在问题和句子的交互中捕捉语义信息,提高了模型的准确性;

        根据头实体用模板生成的方法获得关系类型和尾实体的问题,并采用机器阅读理解的方法抽取句子S 中对应的尾实体;


4.1.3 关系映射到头实体、尾实体

        句子中存在的关系类型是由上下文信息而不是实体信息触发;

        使模型更关注于该关系相关的语义信息,减少冗余的抽取操作,句子中关系类型的数量通常少于实体数量,关系映射到头实体、尾实体的联合抽取方法也降低了计算复杂度,提高了联合抽取的效率;

        论文:TAKANOBU R, ZHANG T, LIU J, et al. A hierarchical framework for relation extraction with reinforcement learning[C]//Proceedings of the 33rd AAAI Conference on Artificial Intelligence, Honolulu, Jan 27- Feb 1, 2019. MenloPark: AAAI, 2019: 7072-7079.

        该论文将实体当作特定关系类型的参数,并设计分层的强化学习框架完成联合抽取。

        强化学习会给出智能体每个状态下应该采取的行动,使得智能体从环境中获得的奖励最大;

        高层级的强化学习被用于关系抽取,在这一层级,智能体顺序扫描句子 S ,当 S中有足够的语义信息时,如一些动词短语“die of”,名词短语“his father”,或介词“from”等,智能体将会预测出相应的关系类型,并发布一个子任务,即低层级的强化学习,用于识别当前关系类型对应的实体对,当子任务完成后,智能体继续扫描S 剩余的部分;       

         高层级和低层级的强化学习都采用双向LSTM 编码得到每个单词的特征向量;

        高层级的强化学习将单词的特征向量、关系类型的嵌入向量和上一时刻的状态信息向量拼接后,通过前馈神经网络获得当前的状态信息向量,采用随机策略预测当前句子包含的关系类型

        高层级的强化学习同时设置奖励函数,当句子S 不存在模型预测得到的关系类型时,函数值为-1;当模型预测得到关系类型为空时,函数值为0;当句子 S 存在模型预测得到的关系类型时,函数值为1,此时会触发低层级的实体识别

        低层级的强化学习采用序列标注的方法,根据预测标注与序列标准标注之间的偏差设计奖励函数

        高层级的关系抽取和低层级的实体识别通过状态信息向量和奖励函数实现交互;

        在执行低层级的实体识别时,高层级的关系抽取传递相关的关系信息,低层级的实体识别会通过奖励机制,将实体识别的情况反馈给高层级,使得句子中的多个关系三元组被有序地抽取

(1)提升准确率,后续工作:

        在双向LSTM 上叠加卷积神经网络提升了关系抽取的准确性,并采用单向LSTM 解码当前关系类型对应的实体对;

        根据不同的关系类型,用关系敏感的注意力方法获得句子的不同特征信息,通过门机制降低无关关系类型对实体识别的影响;

        统一编码器在编码实体信息和关系类型信息时,得到的特征信息可能是冲突的、不明确的,设计序列编码器和表编码器,两个编码器分别用于编码实体信息和关系类型信息,其内部彼此交互,表编码器将特征信息传递给序列编码器,并预测出关系类型,序列编码器根据特征信息和序列编码信息,通过前馈神经网络预测出实体信息;

基于共享参数联合抽取总结:

        (1)实体对映射到关系的联合抽取模型,两个子任务的实现方法较为成熟,通过共享参数的方法容易实现联合抽取,但联合抽取过程中会产生不存在关系的冗余实体对,难以有效解决关系重叠的问题;

        (2)头实体映射到关系、尾实体的方法能够有效解决关系重叠的问题增强了实体类型信息和关系类型信息的交互,但模型设计相对复杂;

        (3)关系映射到头实体、尾实体的方法减少了冗余信息的抽取,能够解决关系重叠的问题,但识别候选关系类型的难度较大,模型设计相对复杂;


 4.2 基于联合解码的联合抽取模型

        基于共享参数的联合抽取模型,每个子任务拥有独立的解码器,通过共享参数的方法实现信息交互,子任务间的交互性并不强。

        为了增强不同子任务之间的交互性,基于联合解码的联合抽取模型被相继提出。基于联合解码的联合抽取模型通常在序列编码层上叠加统一解码器,直接解码得到关系三元组信息;

        主要存在两种方法:(1)序列标注方法,将联合抽取转换成序列标注进行解码;(2)Sequence-to-Sequence,采用Sequence-to-Sequence 方法生成关系三元组;


4.2.1 序列标注

        用序列标注实现联合抽取的优点是方法成熟,实现简单;难点是需要设计统一的标注方案,在标注中融入实体类型信息和关系类型信息

NovingTagging:

        论文: ZHENG S, WANG F, BAO H, et al. Joint extraction of entities and relations based on a novel tagging scheme[C]//Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics, Vancouver, Jul 30-Aug 4, 2017. Stroudsburg: ACL, 2017: 1227-1236.

        该论文首次采用序列标注的方法实现联合抽取,模型只有唯一的解码器,编码后的句子序列直接被解码得到序列标注信息,根据标注信息获
得关系三元组,NovingTagging 在原有BIES(begin、inside、end、single)标注方案上进行了扩展;

        如下方的例句中存在关系三元组 Apple Inc,Company - Founder,Steven Paul Jobs ,两个实体Apple Inc 和Steven Paul Jobs 的每个单词用BIES 标注能表示该单词在实体中的位置信息,而新的标注中融入了关系类型信息和实体在关系中的角色信息,如 CF 表示关系类型Company-Founder,“1”和“2”分别表示被标注的单词属于当前关系类型的头实体和尾实体

         

        NovingTagging 设计的标注方案在将实体信息和关系类型信息相结合时,并没有融入实体类型信息,由于每个单词只能有一个标注,NovingTagging不能解决关系重叠和实体嵌套的问题

解决关系重叠问题:

        在标注方案上进一步改进,将长度为 n的句子根据每个单词 w 的位置进行 n 次不同标注,使得每个单词可被多次标注,在解码过程中,基于位置的注意力方法和CRF 得到 n 个不同的序列标注,解决了关系重叠的问题;


4.2.2 Sequence-to-Sequence

        Sequence-to-Sequence 方法最初被应用于机器翻译,基于Sequence-to-Sequence 的模型主要由两个分别被称为编码器和解码器的循环神经网络构成,编码器将任意长度的输入序列转换成固定长度的语义向量,解码器将语义向量转换成另一个输出序列;

论文:ZENG X R, ZENG D, HE S, et al. Extracting relational facts by an end-to-end neural model with copy mechanism [C]//Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics, Melbourne, Jul 15-20. Stroudsburg: ACL, 2018: 506-514

        该论文采用Sequence-to-Sequence 的方法设计了模型CopyRE,同时引入了复制机制,联合抽取过程类似机器翻译,解码器依次产生关系类型、头实体和尾实体,该论文首次将关系重叠类型进行分类,将关系类型分为三种:(1)Normal关系类型,关系三元组的实体没有重叠;(2)SEO(single entity overlap)关系类型,关系三元组的实体对中有一个实体与另一个关系三元组的实体重叠,但两个关系三元组的实体对不重叠;(3)EPO(entity pair overlap)关系类型,一个实体对之间存在多种关系;

        

         

        联合抽取模型普遍容易解决Normal 类型,Copy-RE 能够解决EPO 类型和SEO 类型

        编码器:CopyRE 的编码器采用双向循环神经网络,句子 S经过词嵌入层后传入双向循环神经网络,双向循环神经网络最终的隐藏状态向量拼接得到语义向量h ,编码过程中用注意力方法获取注意力向量 c

        解码器:采用单向循环神经网络h 和c 输入解码器后获得当前时刻t 的输出向量,输出向量通过前馈神经网络获得关系类型;

        关系类型的嵌入向量和注意力向量作为下一时刻 t + 1 的输入,t + 1 时刻的输出向量通过前馈神经网络后采用复制机制从原句子中复制
头实体,头实体的嵌入向量和注意力向量在 t + 2 时刻用相同的方法复制得到尾实体

        最终依次产生句子S 中的所有关系三元组,实现联合抽取。在解码过程中,一个实体可以被多次复制,解决了关系重叠的问题

(1)提升准确率后续工作:

        句子中的多个三元组之间应该存在顺序关系,并采用了强化学习方法;

        由于CopyRE 只能复制实体的最后一个单词,难以处理一个实体包含多个单词的情况,一种多任务学习模型CopyMTL,CopyMTL 在
CopyRE 基础上添加了一个序列标注模块用于实体识别,序列标注得到的实体和复制机制得到的实体进行校对,使得CopyMTL 能够准确识别实体;

        编码器中采用Transformer,解码器为从左到右的单向LSTM,提升了特征抽取能力;

       基于单词的解码器Wdec 和基于指针网络的解码器PNDec,提高了关系三元组之间的交互;

       

基于联合解码的模型特点总结:

        序列标注的方法容易实现联合抽取,但真实数据间的关系通常比较复杂,在解决实体嵌套、关系重叠等具体问题时,序列标注的方法需要设计复杂的标注方案,增加了联合抽取的难度;

         Sequence-to-Sequence 的方法能有效解决关系重叠的问题,但当句子长度较长时,提升了构造具有丰富语义特征向量的难度;


5 数据集介绍

        主要分为人工标注的数据集和采用NLP 获取的数据集,这两类数据集都被作为有监督数据集进行处理;


5.1 人工标注数据集

        人工标注的数据集需要标注员对文本数据进行标注,耗费成本大,整体效率低下,但数据质量高,噪音少,有公认的评价方式,这类数据集的规模通常也较小;

(1)ACE 系列数据集

        ACE(automatic content extraction)的研究目标是从自然语言数据中自动抽取实体、实体相关事件和实体间的关系类型,其数据来源除英语外还包括阿拉伯语和汉语等;

        ACE 预先定义了实体间的关系类型,ACE 的任务是识别实体间是否存在语义关系,并进一步判断该语义关系属于哪一种预定义的关系类型;ACE 提供了相应的标注数据集 ACE2004 和ACE2005;

        ACE2004 数据集的实体和关系类型如下表:

         ACE2005 保留了 ACE2004 中的 PER- SOC(person-social)、ART(agent-artifact)和GPE-AFF(geopolitical entity affiliation)关系类型,将PHYS(physical)关系类型分为PHYS 和Part-Whole 类型,移除了DISC(discourse)类型,将EMP-ORG(employment-organization)
和PER/ORG- AFF(person/organization- affiliation)合并成EMP-ORG;

(2)SemEval-2010 Task 8 数据集

        SemEval(semantic evaluation)会议在自然语言领域受到广泛关注。SemEval-2010 Task 8 侧重于识别名词对之间的语义关系,目的是比较不同关系抽取方法的性能差异,并对未来的研究提供标准的评测方法

        SemEval 选择 9 种关系类型:CE(cause-effect)、IA(instrument-agency)、PP(product-producer)、CC(content-container)、EO(entity-origin)、ED(entity-destination)、CW(component-whole)、MC(member-collection)和MT(message-topic),覆盖范围较为广泛。SemEval 提供了8 000 个训练样本和2 717 个测试样本,每个样本存在的关系类型都被标注,但没有标注实体的类型信息

(3)CoNLL04 数据集

        CoNLL04 数据集提供了1 437 个至少存在一个关系的句子,句子中的实体和关系类型都进行了标注。CoNLL04 数据集包含5 336 个实体,19 048 个实体对(二元关系),存在4 种实体类型和6 种关系类型

 (4)ADE 数据集

        ADE(adverse drug events)数据集中存在两种实体类型:Drug 和Disease。

        任务的目的是抽取句子中的Drug 类型实体和Disease类型实体,并确定Drug 和Disease 的关联性。

        ADE 数据集来自于 1 644 个PubMed 的摘要信息,从摘要中选取至少存在一组实体类型为Drug-Disease 且关系类型为ADE 的句子,
ADE 数据集共6 821条,包含10 652个实体以及6 682个关联;


5.2 NLP 获取数据集

        通过NLP 获取的数据集,规模较大,迁移性较好,但质量相比人工标注数据集较低,主要有NYT(New York Times)数据集和 WebNLG(Web natural language generation)数据集,分别采用远程监督和自然语言生成的方法获取;

        远程监督将大量语料数据与现有数据库中的关系进行对齐,通过成熟的NLP 工具进行实体标注;自然语言生成方法是从标准数据库中获取关系三元组信息,用自然语言生成技术构造大量包含该关系三元组的句子;

(1)NYT 数据集

        NYT 数据集通过远程监督的方法获得,采集了1987 年到2007 年的纽约时报新闻文章数据共24.9万条,将获得的数据与Freebase 对齐,构造出了118万条句子,过滤出部分噪音数据后,剩余66 195 个句子样本,通常随机选择出5 000 条样本作为测试集,5 000 条样本作为验证集,剩余的56 195 条样本作为训练集,共包含3 种实体类型和24 种关系类型;

(2)WebNLG 数据集

        WebNLG 通过从DBpedia 中抽取一组三元组并采用自然语言生成方法获得所构造的句子;

        该数据集共有5 519 条训练集和703 条验证集,包含246 种关系,每个样本由一组三元组和一条标准句子构成,标准句子包含样本中的所有三元组,实验时,研究人员通常会过滤不包含实体的标准句子;


6 未来研究方向

(1)篇章级别的实体关系联合抽取

        现有的模型大多是基于句子级别的联合抽取,面临的挑战主要是实体嵌套和关系重叠,可以通过设计特殊标注方案或调整抽取顺序的策略解决;

        篇章级别的数据处理较为复杂,目前的预训练语言模型如BERT,其输入有最大长度限制,如何在较长篇幅的数据下进行模型训练,如何处理不同句子间的关系信息、不同关系间的关系信息,多个实体共指等复杂情况仍有待解决;、

        对于一些隐藏的关系类型,并不能通过简单的抽取得到,需要进一步根据上下文的信息推理获得。显然将篇章级别的抽取看作一系列单句子抽取的组合是不合理的,如何设计一个行之有效的方案依然亟待解决;

(2)融入多样信息的实体关系联合抽取

        本文介绍的模型抽取的三元组大多是静态的,输入句子经过序列编码器后得到的词向量融入了上下文的语义信息,模型主要关注实体信息和预先定义的关系类型信息,而在抽取带有时序信息的实体和实体间的关系时,实体和实体间的关系可能都在动态更新,如何在词向量中有效嵌入时序信息仍有待研究;

        当句子中包含事件信息时,如事件之间存在因果关系,事件的发展会影响实体和实体间的关系,模型需要同时考虑不同的事件信息以提高
联合抽取的准确性;

        因此,在实体关系联合抽取模型中如何有效融入时序、事件等多样信息是非常有意义的研究课题;

(3)提升实体关系联合抽取的可解释性

        当前主流的实体关系联合抽取模型主要基于神经网络,在特征抽取上更优于传统的特征工程方法,减少了人工抽取特征的工作量,但基于神经网络的方法面临着一个棘手的问题——可解释性差;

        联合抽取模型的性能通常由实验进行验证,但是如果无法理解学习到的特征表示具有何种可解释的含义时,则无法深刻理解模型本身的应用限制,尤其目前模型趋向于复杂化,如何选择网络层数、模型参数大小、模型架构、优化算法以及激活函数等,通常是基于具体实验的效果,并未理解其真实含义,对于联合抽取结果的可解释性不强;

        如何提升实体关系联合抽取模型的可解释性仍然需要进一步研究。

参考论文:有监督实体关系联合抽取方法研究综述

        论文链接: 有监督实体关系联合抽取方法研究综述--《计算机科学与探索》年期


推荐阅读
  • 统一知识图谱学习和建议:更好地理解用户偏好
    本文介绍了一种将知识图谱纳入推荐系统的方法,以提高推荐的准确性和可解释性。与现有方法不同的是,本方法考虑了知识图谱的不完整性,并在知识图谱中传输关系信息,以更好地理解用户的偏好。通过大量实验,验证了本方法在推荐任务和知识图谱完成任务上的优势。 ... [详细]
  • HashMap的相关问题及其底层数据结构和操作流程
    本文介绍了关于HashMap的相关问题,包括其底层数据结构、JDK1.7和JDK1.8的差异、红黑树的使用、扩容和树化的条件、退化为链表的情况、索引的计算方法、hashcode和hash()方法的作用、数组容量的选择、Put方法的流程以及并发问题下的操作。文章还提到了扩容死链和数据错乱的问题,并探讨了key的设计要求。对于对Java面试中的HashMap问题感兴趣的读者,本文将为您提供一些有用的技术和经验。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文讨论了clone的fork与pthread_create创建线程的不同之处。进程是一个指令执行流及其执行环境,其执行环境是一个系统资源的集合。在调用系统调用fork创建一个进程时,子进程只是完全复制父进程的资源,这样得到的子进程独立于父进程,具有良好的并发性。但是二者之间的通讯需要通过专门的通讯机制,另外通过fork创建子进程系统开销很大。因此,在某些情况下,使用clone或pthread_create创建线程可能更加高效。 ... [详细]
  • 本文介绍了在Python张量流中使用make_merged_spec()方法合并设备规格对象的方法和语法,以及参数和返回值的说明,并提供了一个示例代码。 ... [详细]
  • 深入理解Java虚拟机的并发编程与性能优化
    本文主要介绍了Java内存模型与线程的相关概念,探讨了并发编程在服务端应用中的重要性。同时,介绍了Java语言和虚拟机提供的工具,帮助开发人员处理并发方面的问题,提高程序的并发能力和性能优化。文章指出,充分利用计算机处理器的能力和协调线程之间的并发操作是提高服务端程序性能的关键。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 本文介绍了解决二叉树层序创建问题的方法。通过使用队列结构体和二叉树结构体,实现了入队和出队操作,并提供了判断队列是否为空的函数。详细介绍了解决该问题的步骤和流程。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 本文介绍了绕过WAF的XSS检测机制的方法,包括确定payload结构、测试和混淆。同时提出了一种构建XSS payload的方法,该payload与安全机制使用的正则表达式不匹配。通过清理用户输入、转义输出、使用文档对象模型(DOM)接收器和源、实施适当的跨域资源共享(CORS)策略和其他安全策略,可以有效阻止XSS漏洞。但是,WAF或自定义过滤器仍然被广泛使用来增加安全性。本文的方法可以绕过这种安全机制,构建与正则表达式不匹配的XSS payload。 ... [详细]
  • 欢乐的票圈重构之旅——RecyclerView的头尾布局增加
    项目重构的Git地址:https:github.comrazerdpFriendCircletreemain-dev项目同步更新的文集:http:www.jianshu.comno ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • 本文介绍了贝叶斯垃圾邮件分类的机器学习代码,代码来源于https://www.cnblogs.com/huangyc/p/10327209.html,并对代码进行了简介。朴素贝叶斯分类器训练函数包括求p(Ci)和基于词汇表的p(w|Ci)。 ... [详细]
  • 如何使用Python从工程图图像中提取底部的方法?
    本文介绍了使用Python从工程图图像中提取底部的方法。首先将输入图片转换为灰度图像,并进行高斯模糊和阈值处理。然后通过填充潜在的轮廓以及使用轮廓逼近和矩形核进行过滤,去除非矩形轮廓。最后通过查找轮廓并使用轮廓近似、宽高比和轮廓区域进行过滤,隔离所需的底部轮廓,并使用Numpy切片提取底部模板部分。 ... [详细]
author-avatar
katsulyl_266
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有