事件抽取方法、装置、电子设备及存储介质转让专利

申请号 : CN202110827424.5

文献号 : CN113761875B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈玉博赵军刘康杨航

申请人 : 中国科学院自动化研究所

摘要 :

本发明提供一种事件抽取方法、装置、电子设备及存储介质,其中方法包括:获取待抽取文档;将所述待抽取文档输入至事件抽取模型,得到所述事件抽取模型输出的所述待抽取文档对应的预测结果;其中,所述预测结果包括多个预测事件,以及每一预测事件对应的事件元素;所述事件抽取模型用于基于所述待抽取文档中每一语句的上下文特征和事件元素,确定所述待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定所述预测结果。本发明提供的方法、装置、电子设备及存储介质,能够同时提取多个事件,并实现事件元素的准确分配,减小了事件抽取的误差,提高了事件抽取的准确性。

权利要求 :

1.一种事件抽取方法,其特征在于,包括:

获取待抽取文档;

将所述待抽取文档输入至事件抽取模型,得到所述事件抽取模型输出的所述待抽取文档对应的预测结果;

其中,所述预测结果包括多个预测事件,以及每一预测事件对应的事件元素;所述事件抽取模型用于基于所述待抽取文档中每一语句的上下文特征和事件元素,确定所述待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定所述预测结果;

所述事件抽取模型包括句子级特征提取层、文档级特征提取层、特征解码层和事件预测层;

所述将所述待抽取文档输入至事件抽取模型,得到所述事件抽取模型输出的所述待抽取文档对应的预测结果,包括:将所述待抽取文档输入至所述句子级特征提取层,得到所述句子级特征提取层输出的所述待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量;

将所述待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量输入至所述文档级特征提取层,得到所述文档级特征提取层输出的所述待抽取文档对应的文档编码向量和文档事件元素表示向量;

将所述待抽取文档对应的文档编码向量和文档事件元素表示向量输入至所述特征解码层,得到所述特征解码层输出的所述待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量;

将所述待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量输入至所述事件预测层,得到所述事件预测层输出的所述待抽取文档对应的预测结果。

2.根据权利要求1所述的事件抽取方法,其特征在于,所述将所述待抽取文档输入至所述句子级特征提取层,得到所述句子级特征提取层输出的所述待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量,包括:将所述待抽取文档输入至所述句子级特征提取层中的语句编码层,得到所述语句编码层输出的所述待抽取文档中每一语句对应的上下文特征向量;

将所述待抽取文档输入至所述句子级特征提取层中的序列标注层,得到所述序列标注层输出的所述待抽取文档中每一语句对应的事件元素表示向量。

3.根据权利要求2所述的事件抽取方法,其特征在于,所述语句编码层和所述文档级特征提取层均采用Transformer模型。

4.根据权利要求1所述的事件抽取方法,其特征在于,所述将所述待抽取文档对应的文档编码向量和文档事件元素表示向量输入至所述特征解码层,得到所述特征解码层输出的所述待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量,包括:将所述待抽取文档对应的文档编码向量输入至所述特征解码层中的文档分类层,得到所述文档分类层输出的所述待抽取文档对应的事件查询向量和角色查询向量;

将所述待抽取文档对应的文档编码向量和事件查询向量输入至所述特征解码层中的事件解码层,得到所述事件解码层输出的所述待抽取文档对应的事件关系表示向量;

将所述待抽取文档对应的文档事件元素表示向量和角色查询向量输入至所述特征解码层中的角色解码层,得到所述角色解码层输出的所述待抽取文档对应的角色关系表示向量;

将所述待抽取文档对应的角色关系表示向量和事件关系表示向量输入至所述特征解码层中的事件到角色解码层,得到所述事件到角色解码层输出的所述待抽取文档对应的事件到角色关系表示向量。

5.根据权利要求4所述的事件抽取方法,其特征在于,所述事件解码层、所述角色解码层和所述事件到角色解码层均采用非自回归解码器模型。

6.根据权利要求1至5任一项所述的事件抽取方法,其特征在于,所述事件抽取模型的损失函数是基于如下步骤确定的:确定多个样本待抽取文档,以及每一样本待抽取文档对应的真实事件;

将所述多个样本待抽取文档输入至所述事件抽取模型,得到所述事件抽取模型输出的每一样本待抽取文档对应的样本预测事件;

基于每一样本待抽取文档对应的真实事件和样本预测事件建立二部图,并基于所述二部图的匹配结果确定所述事件抽取模型的损失函数。

7.一种事件抽取装置,其特征在于,包括:

获取单元,用于获取待抽取文档;

抽取单元,用于将所述待抽取文档输入至事件抽取模型,得到所述事件抽取模型输出的所述待抽取文档对应的预测结果;

其中,所述预测结果包括多个预测事件,以及每一预测事件对应的事件元素;所述事件抽取模型用于基于所述待抽取文档中每一语句的上下文特征和事件元素,确定所述待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定所述预测结果;

所述事件抽取模型包括句子级特征提取层、文档级特征提取层、特征解码层和事件预测层;

所述抽取单元包括:

句子级特征提取子单元,用于将所述待抽取文档输入至所述句子级特征提取层,得到所述句子级特征提取层输出的所述待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量;

文档级特征提取子单元,用于将所述待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量输入至所述文档级特征提取层,得到所述文档级特征提取层输出的所述待抽取文档对应的文档编码向量和文档事件元素表示向量;

特征解码子单元,用于将所述待抽取文档对应的文档编码向量和文档事件元素表示向量输入至所述特征解码层,得到所述特征解码层输出的所述待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量;

事件预测子单元,用于将所述待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量输入至所述事件预测层,得到所述事件预测层输出的所述待抽取文档对应的预测结果。

8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述事件抽取方法的步骤。

9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述事件抽取方法的步骤。

说明书 :

事件抽取方法、装置、电子设备及存储介质

技术领域

[0001] 本发明涉及自然语言处理技术领域,尤其涉及一种事件抽取方法、装置、电子设备及存储介质。

背景技术

[0002] 随着互联网技术的不断进步,信息的获取变得越来越容易。用户时时刻刻都会接触涉及各个领域的海量信息,比如体育、娱乐、军事等领域的新闻。然而这些信息一般都是无序、杂乱、非结构的,并且存在一定程度的信息冗余。因此,如何从海量信息中发现感兴趣的事件是亟需解决的问题。事件抽取(Event Extraction)技术正是解决这一问题的有力手段。事件抽取主要研究如何从含有事件信息的非结构化文本中识别出用户感兴趣的结构化事件信息。
[0003] 现有的事件抽取方法,从句子中抽取事件,将事件抽取任务建模成序列进行预测,按照串行预测的方式进行事件以及事件元素的抽取,局限于单个事件元素的抽取,缺乏对全局事件信息的考虑,事件抽取的误差较大,准确性差。

发明内容

[0004] 本发明提供一种事件抽取方法、装置、电子设备及存储介质,用于解决现有技术中事件抽取的误差较大,准确性差的技术问题。
[0005] 本发明提供一种事件抽取方法,包括:
[0006] 获取待抽取文档;
[0007] 将所述待抽取文档输入至事件抽取模型,得到所述事件抽取模型输出的所述待抽取文档对应的预测结果;
[0008] 其中,所述预测结果包括多个预测事件,以及每一预测事件对应的事件元素;所述事件抽取模型用于基于所述待抽取文档中每一语句的上下文特征和事件元素,确定所述待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定所述预测结果。
[0009] 根据本发明提供的事件抽取方法,所述事件抽取模型包括句子级特征提取层、文档级特征提取层、特征解码层和事件预测层;
[0010] 所述将所述待抽取文档输入至事件抽取模型,得到所述事件抽取模型输出的所述待抽取文档对应的预测结果,包括:
[0011] 将所述待抽取文档输入至所述句子级特征提取层,得到所述句子级特征提取层输出的所述待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量;
[0012] 将所述待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量输入至所述文档级特征提取层,得到所述文档级特征提取层输出的所述待抽取文档对应的文档编码向量和文档事件元素表示向量;
[0013] 将所述待抽取文档对应的文档编码向量和文档事件元素表示向量输入至所述特征解码层,得到所述特征解码层输出的所述待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量;
[0014] 将所述待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量输入至所述事件预测层,得到所述事件预测层输出的所述待抽取文档对应的预测结果。
[0015] 根据本发明提供的事件抽取方法,所述将所述待抽取文档输入至所述句子级特征提取层,得到所述句子级特征提取层输出的所述待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量,包括:
[0016] 将所述待抽取文档输入至所述句子级特征提取层中的语句编码层,得到所述语句编码层输出的所述待抽取文档中每一语句对应的上下文特征向量;
[0017] 将所述待抽取文档输入至所述句子级特征提取层中的序列标注层,得到所述序列标注层输出的所述待抽取文档中每一语句对应的事件元素表示向量。
[0018] 根据本发明提供的事件抽取方法,所述语句编码层和所述文档级特征提取层均采用Transformer模型。
[0019] 根据本发明提供的事件抽取方法,所述将所述待抽取文档对应的文档编码向量和文档事件元素表示向量输入至所述特征解码层,得到所述特征解码层输出的所述待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量,包括:
[0020] 将所述待抽取文档对应的文档编码向量输入至所述特征解码层中的文档分类层,得到所述文档分类层输出的所述待抽取文档对应的事件查询向量和角色查询向量;
[0021] 将所述待抽取文档对应的文档编码向量和事件查询向量输入至所述特征解码层中的事件解码层,得到所述事件解码层输出的所述待抽取文档对应的事件关系表示向量;
[0022] 将所述待抽取文档对应的文档事件元素表示向量和角色查询向量输入至所述特征解码层中的角色解码层,得到所述角色解码层输出的所述待抽取文档对应的角色关系表示向量;
[0023] 将所述待抽取文档对应的角色关系表示向量和事件关系表示向量输入至所述特征解码层中的事件到角色解码层,得到所述事件到角色解码层输出的所述待抽取文档对应的事件到角色关系表示向量。
[0024] 根据本发明提供的事件抽取方法,所述事件解码层、所述角色解码层和所述事件到角色解码层均采用非自回归解码器模型。
[0025] 根据本发明提供的事件抽取方法,所述事件抽取模型的损失函数是基于如下步骤确定的:
[0026] 确定多个样本待抽取文档,以及每一样本待抽取文档对应的真实事件;
[0027] 将所述多个样本待抽取文档输入至所述事件抽取模型,得到所述事件抽取模型输出的每一样本待抽取文档对应的样本预测事件;
[0028] 基于每一样本待抽取文档对应的真实事件和样本预测事件建立二部图,并基于所述二部图的匹配结果确定所述事件抽取模型的损失函数。
[0029] 本发明还提供一种事件抽取装置,包括:
[0030] 获取单元,用于获取待抽取文档;
[0031] 抽取单元,用于将所述待抽取文档输入至事件抽取模型,得到所述事件抽取模型输出的所述待抽取文档对应的预测结果;
[0032] 其中,所述预测结果包括多个预测事件,以及每一预测事件对应的事件元素;所述事件抽取模型用于基于所述待抽取文档中每一语句的上下文特征和事件元素,确定所述待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定所述预测结果。
[0033] 本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现所述事件抽取方法的步骤。
[0034] 本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述事件抽取方法的步骤。
[0035] 本发明提供的事件抽取方法、装置、电子设备及存储介质,通过事件抽取模型对待抽取文档进行处理,基于待抽取文档中每一语句的上下文特征和事件元素,确定待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定预测结果,预测结果包括多个预测事件,以及每一预测事件对应的事件元素,由于事件抽取模型考虑了每一语句的上下文特征和事件元素,对文档中的内容能够进行整体地认知和理解,能够从跨语句文本中抽取相关信息,确定事件之间的关系、角色之间的关系和事件到角色之间的关系,能够同时提取多个事件,并实现事件元素的准确分配,减小了事件抽取的误差,提高了事件抽取的准确性。

附图说明

[0036] 为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0037] 图1为本发明提供的事件抽取方法的流程示意图;
[0038] 图2为本发明提供的基于并行预测的篇章级事件抽取方法的原理示意图;
[0039] 图3为本发明提供的基于并行预测的篇章级事件抽取模型的结构示意图;
[0040] 图4为本发明提供的事件抽取装置的结构示意图;
[0041] 图5为本发明提供的电子设备的结构示意图。

具体实施方式

[0042] 为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0043] 现有技术是采用句子级事件抽取(Sentence‑level Event Extraction,SEE),该方法面临以下难题:(1)事件元素分散(argument‑scattering):归属同一事件的事件元素分布在文档中的多句话中。(2)多事件(multi‑events):一个文档中可能会描述多个相同类别的事件。事件抽取的误差较大,准确性差。
[0044] 针对现有技术的不足,图1为本发明提供的事件抽取方法的流程示意图,如图1所示,该方法包括:
[0045] 步骤110,获取待抽取文档。
[0046] 具体地,待抽取文档为记载多个事件的文件。例如,待抽取文档可以为一篇金融领域的相关报道,报道中可能记录了两个事件,分别为A公司增持了B公司的股票(事件1),减持了C公司的股票(事件2)。对该报道进行处理的目的,就是要抽取该报道中的两个事件。
[0047] 待抽取文档的来源可以为网络中各个领域的新闻报道、研究报告等,也可以为公开数据库中的语料数据集,例如中文金融公告语料(ChFinAnn)数据集。
[0048] 步骤120,将待抽取文档输入至事件抽取模型,得到事件抽取模型输出的待抽取文档对应的预测结果;
[0049] 其中,预测结果包括多个预测事件,以及每一预测事件对应的事件元素;事件抽取模型用于基于待抽取文档中每一语句的上下文特征和事件元素,确定待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定预测结果。
[0050] 具体地,预测事件为待抽取文档中所记录的事情或者事项。事件元素为待抽取文档中用来表示预测事件的各个组成元素,例如人名、地名、机构名、数量等。事件元素可以表现为名词、动词和量词。
[0051] 预测结果为需要从待抽取文档中抽取的预测事件,以及每一预测事件对应的事件元素。角色为待抽取文档中的预测事件的主体或者客体。
[0052] 例如,待抽取文档记录了A公司看好B公司的发展前景,增持了B公司的股票,不看好C公司的经营思路,减持了C公司的股票等相关信息。事件元素可以为公司名、股票数额等,例如100万元和200万元。角色可以为A公司、B公司和C公司。预测结果可以为从待抽取文档中抽取了两个事件,分别为A公司增持了B公司价值100万元的股票(预测事件1),减持了C公司价值200万元的股票(预测事件2)。
[0053] 为了从待抽取文档中抽取预测结果,需要从待抽取文档中确定事件之间的关系、角色之间的关系和事件到角色之间的关系。事件之间的关系用于描述待抽取文档中各个事件之间的内在关联。角色之间的关系用于描述待抽取文档中各个角色之间的内在关联。事件到角色之间的关系用于描述待抽取文档中每一事件和每一角色之间的内在关联。通过对待抽取文档全文进行分析,确定事件之间的关系、角色之间的关系和事件到角色之间的关系,就可以确定待抽取文档中的预测结果。
[0054] 可以通过对待抽取文档中每一语句进行特征提取,得到每一语句的上下文特征和事件元素。每一语句的上下文特征用于描述该语句与待抽取文档中该语句的上下文之间的内在关联,每一语句的事件元素用来记载该语句中所包含的事件元素。通过对语句之间的内在关联和语句所包含的事件元素进行分析,可以得到事件之间的关系、角色之间的关系和事件到角色之间的关系。
[0055] 上述处理过程可以通过事件抽取模型来实现,事件抽取模型用于根据待抽取文档中每一语句的上下文特征和事件元素,可以确定待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,进而确定预测结果。
[0056] 可以预先训练得到事件抽取模型,具体可以通过如下训练方式得到:首先,收集大量的样本待抽取文本;其次,对每一样本待抽取文本中的预测结果进行标注,包括样本待抽取文本中的预测事件和每一预测事件对应的事件元素;随即,根据大量的样本待抽取文本,以及每一样本待抽取文本中的预测结果对初始模型进行训练,以提高初始模型对于预测事件的预测能力,得到事件抽取模型。
[0057] 本发明实施例提供的事件抽取方法,通过事件抽取模型对待抽取文档进行处理,基于待抽取文档中每一语句的上下文特征和事件元素,确定待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定预测结果,预测结果包括多个预测事件,以及每一预测事件对应的事件元素,由于事件抽取模型考虑了每一语句的上下文特征和事件元素,对文档中的内容能够进行整体地认知和理解,能够从跨语句文本中抽取相关信息,确定事件之间的关系、角色之间的关系和事件到角色之间的关系,能够同时提取多个事件,并实现事件元素的准确分配,减小了事件抽取的误差,提高了事件抽取的准确性。
[0058] 基于上述实施例,事件抽取模型包括句子级特征提取层、文档级特征提取层、特征解码层和事件预测层;步骤120,包括:
[0059] 将待抽取文档输入至句子级特征提取层,得到句子级特征提取层输出的待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量;
[0060] 将待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量输入至文档级特征提取层,得到文档级特征提取层输出的待抽取文档对应的文档编码向量和文档事件元素表示向量;
[0061] 将待抽取文档对应的文档编码向量和文档事件元素表示向量输入至特征解码层,得到特征解码层输出的待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量;
[0062] 将待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量输入至事件预测层,得到事件预测层输出的待抽取文档对应的预测结果。
[0063] 具体地,从模型结构上看,事件抽取模型包括依次连接的句子级特征提取层、文档级特征提取层、特征解码层和事件预测层。
[0064] 句子级特征提取层用于基于语句角度,对待抽取文档中每一语句进行特征提取和事件元素的提取,提取到的每一语句对应的上下文特征向量用于表示该语句与待抽取文档中上文与下文之间的内在关联,提取到的每一语句对应的事件元素用于表示该语句中的各类组成元素。
[0065] 文档级特征提取层用于基于文档角度,对全局事件信息进行考虑,根据每一语句对应的上下文特征向量和事件元素表示向量,对待抽取文档进行特征提取和事件元素的提取,提取到的文档编码向量用于表示整篇文档的特征,提取到的文档事件元素表示向量用于表示整篇文档中的各类组成元素。
[0066] 特征解码层用于采用多粒度视角,根据文档编码向量和文档事件元素表示向量,对待抽取文档中包含的事件之间的关系、角色之间的关系和事件到角色之间的关系进行分析,分别得到角色关系表示向量、事件关系表示向量和事件到角色关系表示向量。
[0067] 事件预测层用于根据角色关系表示向量、事件关系表示向量和事件到角色关系表示向量,提取多个事件并实现事件元素的分配,确定待抽取文档对应的预测结果。
[0068] 基于上述任一实施例,将待抽取文档输入至句子级特征提取层,得到句子级特征提取层输出的待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量,包括:
[0069] 将待抽取文档输入至句子级特征提取层中的语句编码层,得到语句编码层输出的待抽取文档中每一语句对应的上下文特征向量;
[0070] 将待抽取文档输入至句子级特征提取层中的序列标注层,得到序列标注层输出的待抽取文档中每一语句对应的事件元素表示向量。
[0071] 具体地,句子级特征提取层可以包括语句编码层和序列标注层。其中,语句编码层用于对待抽取文档中每一语句进行编码,得到对应的上下文特征向量。序列标注层用于对每一语句中的事件元素进行抽取,得到对应的事件元素表示向量。
[0072] 语句编码层可以为Transformer模型、循环神经网络模型(RNN)等。序列标注层可以为隐马尔科夫模型(HMM)、最大熵隐马尔科夫模型(MEMM)和条件随机场模型(CRF)等。
[0073] 基于上述任一实施例,语句编码层和文档级特征提取层均采用Transformer模型。
[0074] 具体地,Transformer模型采用了基于多头多层的自注意力(Self‑attention)机制,解决长距离依赖问题,能够记住长距离的信息,并且能够实现并行计算,输出结果的可解释性强。
[0075] 语句编码层采用Transformer模型,可以实现对待抽取文档中每一语句进行并行计算,能够学习到每一语句中的全局信息和局部信息;文档级特征提取层采用Transformer模型,可以实现对每一语句对应的上下文特征向量和事件元素表示向量进行并行计算,能够学习到整篇文档中的全局信息和局部信息;减小了事件抽取的误差,提高了事件抽取的准确性。
[0076] 基于上述任一实施例,将待抽取文档对应的文档编码向量和文档事件元素表示向量输入至特征解码层,得到特征解码层输出的待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量,包括:
[0077] 将待抽取文档对应的文档编码向量输入至特征解码层中的文档分类层,得到文档分类层输出的待抽取文档对应的事件查询向量和角色查询向量;
[0078] 将待抽取文档对应的文档编码向量和事件查询向量输入至特征解码层中的事件解码层,得到事件解码层输出的待抽取文档对应的事件关系表示向量;
[0079] 将待抽取文档对应的文档事件元素表示向量和角色查询向量输入至特征解码层中的角色解码层,得到角色解码层输出的待抽取文档对应的角色关系表示向量;
[0080] 将待抽取文档对应的角色关系表示向量和事件关系表示向量输入至特征解码层中的事件到角色解码层,得到事件到角色解码层输出的待抽取文档对应的事件到角色关系表示向量。
[0081] 具体地,特征解码层包括文档分类层、事件解码层、角色解码层和事件到角色解码层。
[0082] 文档分类层用于对待抽取文档进行分类,确定待抽取文档中预测事件对应的事件类别。事件类别可以根据待抽取文档的内容进行预先确定。例如,对于上市公司的公告文档,事件类别可以为冻结事件、回购事件、增持事件、减持事件和质押事件。
[0083] 文档分类层根据待抽取文档对应的文档编码向量,可以采用线性分类器,确定待抽取文档中预测事件对应的事件类别,并根据事件类别确定每一事件类别对应的事件查询向量和角色查询向量。事件查询向量用于对每一事件类别对应的事件进行查询,角色查询向量用于对每一事件类别对应的角色进行查询。
[0084] 事件解码层用于根据待抽取文档对应的文档编码向量和事件查询向量,对待抽取文档中的多个事件进行预测并建模多个事件之间的关系,确定待抽取文档对应的事件关系表示向量。
[0085] 角色解码层用于根据待抽取文档对应的文档事件元素表示向量和角色查询向量,对待抽取文档中多个角色进行填充并建模事件内部角色之间的关系,确定待抽取文档对应的角色关系表示向量。
[0086] 事件到角色解码层用于根据待抽取文档对应的角色关系表示向量和事件关系表示向量,对待抽取文档中每一预测事件生成特有的角色填充,并建模每一预测事件中事件与角色之间的关系,确定待抽取文档对应的事件到角色关系表示向量。
[0087] 基于上述任一实施例,事件解码层、角色解码层和事件到角色解码层均采用非自回归解码器模型。
[0088] 具体地,现有的自回归解码器模型,每一步的输出结果都依赖于之前的输出结果,因此模型只能逐步处理文档,处理速度较慢。非自回归解码器模型打破了生成时的串行顺序,希望一次能够解码出整个目标句子,能够进行并行解码,显著地提升了模型的处理速度。
[0089] 本发明实施例中的事件解码层、角色解码层和事件到角色解码层均可以采用非自回归解码器模型。
[0090] 基于上述任一实施例,事件抽取模型的损失函数是基于如下步骤确定的:
[0091] 确定多个样本待抽取文档,以及每一样本待抽取文档对应的真实事件;
[0092] 将多个样本待抽取文档输入至事件抽取模型,得到事件抽取模型输出的每一样本待抽取文档对应的样本预测事件;
[0093] 基于每一样本待抽取文档对应的真实事件和样本预测事件建立二部图,并基于二部图的匹配结果确定事件抽取模型的损失函数。
[0094] 具体地,可以根据多个样本待抽取文档,以及每一样本待抽取文档对应的真实事件,对事件抽取模型进行训练,实现全局优化。
[0095] 事件抽取模型的损失函数可以采用二部图匹配的方法进行确定。首先,获取多个样本待抽取文档,并确定每一样本待抽取文档对应的多个真实事件。然后,将样本待抽取文档输入至事件抽取模型,得到事件抽取模型输出的每一样本待抽取文档对应的样本预测事件。根据每一样本待抽取文档对应的真实事件和样本预测事件建立二部图,例如,真实事件和样本预测事件可以作为二部图中的顶点,真实事件和样本预测事件之间的对应关系作为二部图中的边。根据二部图的匹配结果确定事件抽取模型的损失函数。
[0096] 基于上述任一实施例,图2为本发明提供的基于并行预测的篇章级事件抽取方法的原理示意图,如图2所示,该方法包括句子级编码以及候选事件元素抽取、文档级编码、多粒度解码器、基于二部图匹配的损失函数进行模型更新五个步骤。
[0097] 步骤一、给定一篇文档,利用基于Transformer框架的句子级编码器将文档中的每句话进行编码,并采用序列标注的方法进行候选事件元素的抽取。句子编码如下所示:
[0098] Ci=Transformer1(Si)
[0099] 其中,Si为文档中第i个句子,Ci为第i个句子对应的句子编码,Transformer1为句子级编码器。
[0100] 序列标注可以采用基于BIO标签的序列标注方法。
[0101] 步骤二、设计了一个文档级编码器,让句子和候选事件元素获得文档级的表示。文档级编码如下所示:
[0102]
[0103] 其中,Ha表示文档感知的候选事件元素的特征向量表示,Hs表示文档感知的句子特征向量表示,Transformer2为文档级编码器, 表示候选事件元素的表示,Na表示候选事件元素的数目, 表示文档中每个句子的上下文表示,Ns表示句子的数目,a表示事件元素,s表示句子。
[0104] 其中,还可以包括采取max‑pooling的操作得到候选事件元素以及文档中每个句子的表示。
[0105] 步骤三、采用多个线性分类器对文档的表示进行二分类,判断当前文档中是否包含某个类型的事件。根据预测的事件类型,以获得该类型下的事件框架。
[0106] 基于文档感知的句子以及候选事件元素表示,引入一个多粒度非自回归解码器用于同时生成多个事件以及事件下的所有事件元素。该解码器由三部分组成,分别是事件解码器、角色解码器以及事件到角色解码器。角色解码器是为处理事件元素分散问题而设计的,它可以基于文档感知的表示建模事件角色之间的依赖关系。事件解码器是为了同时生成多个事件而设计。
[0107] 事件解码器(Event Decoder)用于并行预测多个事件,并建模事件之间的交互,如下公式所示:
[0108] Hevent=EventDecoder(Qevent;Hs)
[0109] 其中,Qevent表示初始化的事件查询向量表示,Hevent表示解码后的事件表示。
[0110] 元素解码器(Role Decoder)用于并行预测事件下的多个角色的填充,并建模事件内部的交互,如下公式所示:
[0111] Hrole=RoleDecoder(Qrole;Ha)
[0112] 其中,Qrole表示初始化的事件角色查询向量表示,Hrole表示解码后的事件角色表示。
[0113] 事件到元素解码器(Event2Role Decoder)用于为每个事件生成特有的角色填充,对事件表示及其角色槽表示进行交互,如下公式所示:
[0114] He2r=Event2RoleDecoder(Hrole;Hevent)
[0115] 其中,He2r为事件表示向量和事件角色向量交互后的特征向量表示。
[0116] 步骤四、采用一个指针网络进行事件的预测,首先利用一个二分类器判断当前事件是否成立,其次为事件中的角色槽填上候选事件元素,如下公式所示:
[0117] Pevent=softmax(HeventWe)
[0118] Prole=softmax(tanh(He2rW1+HaW2)·V1)
[0119] 其中,We,W1,W2和V1为可学习的参数,Pevent和Prole表示预测的事件和事件角色下对应的事件元素。
[0120] 步骤五、采用一个基于二部图匹配的损失函数,对模型进行全局最优的优化更新,如下公式所示:
[0121]
[0122]
[0123]
[0124] 其中, 表示第i个事件中的第j个事件角色指向的候选事件元素的索引。用匈牙利算法可以有效地计算出最优分配 表示预测的第i个事件中第j个事件角色的概率,Yi表示表示标注的第i个事件的信息, 表示索引为σ(i)的事件预测,σ(i)表示对第i个标注事件的结果分配, 表示对第i个标注事件的最优结果分配,Cmatch表示标注事件和预测事件之间进行匹配得到的损失,m表示预测的事件数目,k表示文档中真实标注的事件数目,judgei表示判断第i个事件是否为空值 若 则对于第i个事件, 取1;若 则对于第i个事件, 取0;n表示该事
件类别下事件角色的数目, 表示第i个标注事件的结果分配中第j个事件角色的概率,表示第i个标注事件的最优结果分配中第j个事件角色的概率, 表示经过二部图匹配后的最优损失函数。
[0125] 图3为本发明提供的基于并行预测的篇章级事件抽取模型的结构示意图,如图3所示,该模型包括句子级特征提取层、文档级特征提取层、特征解码层和事件预测层。
[0126] 本发明实施例采用中文金融公告语料(ChFinAnn)数据集作为篇章级事件抽取的训练、验证、测试语料。该数据集总共包含32040篇文档,包含5种金融事件类型:冻结事件(Equity Freeze,EF)、回购事件(Equity Repurchase,ER)、增持事件(Equity Underweight,EU)、减持事件(Equity Overweight,EO)和质押事件(Equity Pledge,EP)。
[0127] 通过对比已有方法和本方法的效果来说明其有效性。在ChFinAnn数据集上的对比结果如表1所示。
[0128] 表1对比结果表
[0129]
[0130]
[0131] 其中,DE‑PPN为本发明实施例提供的基于并行预测的篇章级事件抽取模型(DE‑PPN)。DE‑PPN‑1表示针对一篇文档,只预测一个事件的模型,即设定生成事件数目为了1。P,R,F1分别表示准确率,召回率和F1‑score,从上表结果可以看出,基于并行预测的篇章级事件抽取方法在ChFinAnn数据集上的表现超过了已有方法,这表明该方法可以融入文档级信息,并且并行预测出所有的事件以及事件包含的事件元素。
[0132] 基于上述任一实施例,图4为本发明提供的事件抽取装置的结构示意图,如图4所示,该装置包括:
[0133] 获取单元410,用于获取待抽取文档;
[0134] 抽取单元420,用于将待抽取文档输入至事件抽取模型,得到事件抽取模型输出的待抽取文档对应的预测结果;
[0135] 其中,预测结果包括多个预测事件,以及每一预测事件对应的事件元素;事件抽取模型用于基于待抽取文档中每一语句的上下文特征和事件元素,确定待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定预测结果。
[0136] 本发明实施例提供的事件抽取装置,通过事件抽取模型对待抽取文档进行处理,基于待抽取文档中每一语句的上下文特征和事件元素,确定待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定预测结果,预测结果包括多个预测事件,以及每一预测事件对应的事件元素,由于事件抽取模型考虑了每一语句的上下文特征和事件元素,对文档中的内容能够进行整体地认知和理解,能够从跨语句文本中抽取相关信息,确定事件之间的关系、角色之间的关系和事件到角色之间的关系,能够同时提取多个事件,并实现事件元素的准确分配,减小了事件抽取的误差,提高了事件抽取的准确性。
[0137] 基于上述任一实施例,事件抽取模型包括句子级特征提取层、文档级特征提取层、特征解码层和事件预测层;抽取单元420包括:
[0138] 句子级特征提取子单元,用于将待抽取文档输入至句子级特征提取层,得到句子级特征提取层输出的待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量;
[0139] 文档级特征提取子单元,用于将待抽取文档中每一语句对应的上下文特征向量和事件元素表示向量输入至文档级特征提取层,得到文档级特征提取层输出的待抽取文档对应的文档编码向量和文档事件元素表示向量;
[0140] 特征解码子单元,用于将待抽取文档对应的文档编码向量和文档事件元素表示向量输入至特征解码层,得到特征解码层输出的待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量;
[0141] 事件预测子单元,用于将待抽取文档对应的角色关系表示向量、事件关系表示向量和事件到角色关系表示向量输入至事件预测层,得到事件预测层输出的待抽取文档对应的预测结果。
[0142] 基于上述任一实施例,句子级特征提取子单元具体用于:
[0143] 将待抽取文档输入至句子级特征提取层中的语句编码层,得到语句编码层输出的待抽取文档中每一语句对应的上下文特征向量;
[0144] 将待抽取文档输入至句子级特征提取层中的序列标注层,得到序列标注层输出的待抽取文档中每一语句对应的事件元素表示向量。
[0145] 基于上述任一实施例,语句编码层和文档级特征提取层均采用Transformer模型。
[0146] 基于上述任一实施例,特征解码子单元具体用于:
[0147] 将待抽取文档对应的文档编码向量输入至特征解码层中的文档分类层,得到文档分类层输出的待抽取文档对应的事件查询向量和角色查询向量;
[0148] 将待抽取文档对应的文档编码向量和事件查询向量输入至特征解码层中的事件解码层,得到事件解码层输出的待抽取文档对应的事件关系表示向量;
[0149] 将待抽取文档对应的文档事件元素表示向量和角色查询向量输入至特征解码层中的角色解码层,得到角色解码层输出的待抽取文档对应的角色关系表示向量;
[0150] 将待抽取文档对应的角色关系表示向量和事件关系表示向量输入至特征解码层中的事件到角色解码层,得到事件到角色解码层输出的待抽取文档对应的事件到角色关系表示向量。
[0151] 基于上述任一实施例,事件解码层、角色解码层和事件到角色解码层均采用非自回归解码器模型。
[0152] 基于上述任一实施例,该装置还包括:
[0153] 损失函数确定单元,用于确定多个样本待抽取文档,以及每一样本待抽取文档对应的真实事件;将多个样本待抽取文档输入至事件抽取模型,得到事件抽取模型输出的每一样本待抽取文档对应的样本预测事件;基于每一样本待抽取文档对应的真实事件和样本预测事件建立二部图,并基于二部图的匹配结果确定事件抽取模型的损失函数。
[0154] 基于上述任一实施例,图5为本发明提供的电子设备的结构示意图,如图5所示,该电子设备可以包括:处理器(Processor)510、通信接口(Communications Interface)520、存储器(Memory)530和通信总线(Communications Bus)540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑命令,以执行如下方法:
[0155] 获取待抽取文档;将待抽取文档输入至事件抽取模型,得到事件抽取模型输出的待抽取文档对应的预测结果;其中,预测结果包括多个预测事件,以及每一预测事件对应的事件元素;事件抽取模型用于基于待抽取文档中每一语句的上下文特征和事件元素,确定待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定预测结果。
[0156] 此外,上述的存储器530中的逻辑命令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干命令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0157] 本发明实施例提供的电子设备中的处理器可以调用存储器中的逻辑指令,实现上述方法,其具体的实施方式与前述方法实施方式一致,且可以达到相同的有益效果,此处不再赘述。
[0158] 本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:
[0159] 获取待抽取文档;将待抽取文档输入至事件抽取模型,得到事件抽取模型输出的待抽取文档对应的预测结果;其中,预测结果包括多个预测事件,以及每一预测事件对应的事件元素;事件抽取模型用于基于待抽取文档中每一语句的上下文特征和事件元素,确定待抽取文档中事件之间的关系、角色之间的关系和事件到角色之间的关系,并确定预测结果。
[0160] 本发明实施例提供的非暂态计算机可读存储介质上存储的计算机程序被执行时,实现上述方法,其具体的实施方式与前述方法实施方式一致,且可以达到相同的有益效果,此处不再赘述。
[0161] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0162] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干命令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0163] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。