事件抽取模型的训练方法、抽取方法、装置、设备及介质与流程

未命名 10-18 阅读:127 评论:0


1.本公开涉及自然语言处理技术领域,具体而言,涉及一种事件抽取模型的训练方法、事件抽取方法、事件抽取模型的训练装置、事件抽取装置、电子设备及计算机可读介质。


背景技术:

2.事件抽取是信息抽取的一项重要组成部分,旨在从文本中找出事件的触发词和相应的论元。事件抽取在很多领域具有广泛的应用,例如信息检索、文本摘要、知识库构建、舆情分析等。事件抽取主要包括以下步骤:1、事件触发词和事件类型的检测;2、与该事件相关的事件论元的抽取。
3.预先训练的语言模型可以有效提高事件抽取模型的性能,其训练包含预训练和微调两个步骤。目前的预训练方法没有涉及到对于事件的建模和学习,只在微调阶段建模事件的语义信息,缺乏对于事件抽取任务的预训练,从而导致事件抽取模型无法利用预训练方法充分利用数据中的信息,从而影响模型的性能。
4.鉴于此,本领域亟需一种事件抽取模型的训练方法,能够在预训练阶段充分地利用数据中的事件信息,提高事件抽取模型的性能。
5.需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。


技术实现要素:

6.本公开的目的在于提供一种事件抽取模型的训练方法、事件抽取方法、事件抽取模型的训练装置、事件抽取装置、电子设备及计算机可读介质,进而至少在一定程度上能够在预训练阶段充分地利用数据中的事件信息,提高事件抽取模型的性能。
7.根据本公开的第一个方面,提供一种事件抽取模型的训练方法,包括:
8.从训练样本文档中获取训练数据,所述训练数据包括所述训练样本文档的每个事件中的触发词和论元,以及所述训练样本文档中的无关实体;其中,所述无关实体为所述训练样本文档中不属于任何事件的实体;
9.将所述训练数据输入待训练的语言模型中,分别得到对应的触发词向量、论元向量和无关实体向量;
10.基于同一事件中的触发词向量和论元向量得到正样本对,基于所述无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对;
11.将每一个正样本对的样本相似度分别与正样本标签进行对比,将每一个负样本对的样本相似度分别与负样本标签进行对比,并根据各个所述正样本对和所述负样本对的相似度对比结果计算得到模型损失;
12.根据所述模型损失对所述语言模型的模型参数进行迭代训练,根据训练结果得到预训练语言模型,并基于所述预训练语言模型进行进一步训练得到事件抽取模型。
13.在本公开的一种示例性实施例中,所述基于同一事件中的触发词向量和论元向量
得到正样本对,包括:
14.将每个事件中的触发词对应的触发词向量分别与同一事件中的各个论元对应的论元向量进行结合得到正样本对。
15.在本公开的一种示例性实施例中,所述基于所述无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对,包括:
16.将属于不同事件的触发词向量和论元向量之间进行两两结合,得到负样本对;
17.将所述无关实体向量与其他无关实体向量之间进行两两结合,得到负样本对;
18.将所述无关实体向量与任意一个事件中的触发词向量或者论元向量进行两两结合,得到负样本对。
19.在本公开的一种示例性实施例中,所述样本相似度包括每个所述正样本对或者所述负样本对中的两个词向量之间的余弦相似度。
20.在本公开的一种示例性实施例中,所述根据各个所述正样本对和所述负样本对的相似度对比结果计算得到模型损失,包括:
21.根据所述正样本对的样本相似度与所述正样本标签得到正样本相似度差值,根据所述负样本对的样本相似度与所述负样本标签得到负样本相似度差值;
22.基于交叉熵损失函数以及所述正样本相似度差值和所述负样本相似度差值计算得到模型损失。
23.在本公开的一种示例性实施例中,在基于所述预训练语言模型进行进一步训练得到事件抽取模型之前,所述方法还包括:
24.根据所述预训练语言模型得到第一语言预测模型,并从所述训练样本文档中按照预设比例选择部分目标词语作为掩码任务对象;
25.根据预设的替换比例将所述目标词语替换为原始目标词语、掩码替换词语和随机替换词语;
26.将替换所述目标词语之后的所述训练样本文档输入所述第一语言预测模型中,得到所述掩码任务对象对应的预测值,并根据所述掩码任务对象对应的预测值和真实值之间的差异得到第一模型损失;
27.根据所述第一模型损失对所述第一语言预测模型进行迭代训练,并根据所述第一语言预测模型的训练结果更新所述预训练语言模型。
28.在本公开的一种示例性实施例中,在根据所述第一语言预测模型的训练结果更新所述预训练语言模型之后,所述方法还包括:
29.根据所述预训练语言模型得到第二语言预测模型,并从所述训练样本文档中选择部分目标语句作为第一语句,根据预设的正负样本比例将所述第一语句划分为第一正样本语句和第一负样本语句;
30.获取所述第一正样本语句的下一句作为对应的第二正样本语句,并根据所述第一正样本语句和对应的第二正样本语句得到正样本语句对;
31.获取所述训练样本文档中的随机语句作为所述第一负样本语句对应的第二负样本语句,并根据所述第一负样本语句和对应的第二负样本语句得到负样本语句对;
32.将所述正样本语句对和所述负样本语句对输入所述第二语言预测模型中,得到各个正负样本语句对对应的下一句预测结果,并根据所述下一句预测结果得到第二模型损
失;
33.根据所述第二模型损失对所述第二语言预测模型进行迭代训练,并根据所述第二语言预测模型的训练结果再次更新所述预训练语言模型。
34.根据本公开的第二个方面,提供一种事件抽取方法,包括:
35.将目标文档中的文本内容输入事件抽取模型中,其中,所述事件抽取模型是通过如上述任意一项所述的事件抽取模型的训练方法得到的;
36.根据所述事件抽取模型的输出结果得到所述目标文档的事件抽取结果。
37.根据本公开的第三方面,提供一种事件抽取模型的训练装置,包括:
38.训练数据获取模块,用于从训练样本文档中获取训练数据,所述训练数据包括所述训练样本文档的每个事件中的触发词和论元,以及所述训练样本文档中的无关实体;其中,所述无关实体为所述训练样本文档中不属于任何事件的实体;
39.词向量输出模块,用于将所述训练数据输入待训练的语言模型中,分别得到对应的触发词向量、论元向量和无关实体向量;
40.样本对生成模块,用于基于同一事件中的触发词向量和论元向量得到正样本对,基于所述无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对;
41.模型损失计算模块,用于将每一个正样本对的样本相似度分别与正样本标签进行对比,将每一个负样本对的样本相似度分别与负样本标签进行对比,并根据各个所述正样本对和所述负样本对的相似度对比结果计算得到模型损失;
42.模型参数训练模块,用于根据所述模型损失对所述语言模型的模型参数进行迭代训练,根据训练结果得到预训练语言模型,并基于所述预训练语言模型进行进一步训练得到事件抽取模型。
43.根据本公开的第四方面,提供一种事件抽取模型的训练装置,包括:
44.文本内容输入模块,用于将目标文档中的文本内容输入事件抽取模型中,其中,所述事件抽取模型是通过上述事件抽取模型的训练方法得到的;
45.抽取结果确定模块,用于根据所述事件抽取模型的输出结果得到所述目标文档的事件抽取结果。
46.根据本公开的第五方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的事件抽取模型的训练方法。
47.根据本公开的第六方面,提供一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的事件抽取模型的训练方法。
48.本公开示例性实施例可以具有以下有益效果:
49.本公开示例实施方式的事件抽取模型的训练方法中,一方面,基于训练样本文档的同一事件中的触发词和论元,以及不属于任何事件的无关实体构造正负样本对,自动生成可以用于对比学习预训练的数据,显式地从数据中建模不同事件之间的区别,从而更加充分地利用数据中的事件信息,在减少人工标注的工作量的同时,提高后续事件抽取模型的表现;另一方面,通过计算正样本对和负样本对的相似度,并基于对比学习完成模型的预训练,从而学习到事件的语义表示,使得同一个事件中的单词的表示比不相关的单词的表示更为接近,进而提高事件抽取模型的性能和事件抽取任务的效果。本公开示例实施方式
中的事件抽取模型的训练方法不针对具体的事件抽取模型,可以应用于所有基于预训练模型的事件抽取,具备较为广泛的应用前景。
50.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
51.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
52.图1示出了本公开示例实施方式的事件抽取模型的训练方法的流程示意图;
53.图2示出了根据本公开的一个具体实施方式中的构造正负样本对的示意图;
54.图3示出了本公开示例实施方式的基于下一句预测任务对模型进行预训练的流程示意图;
55.图4示出了本公开示例实施方式的基于掩码任务对模型进行预训练的流程示意图;
56.图5示出了本公开示例实施方式的事件抽取方法的流程示意图;
57.图6示出了根据本公开的一个具体实施方式中的事件抽取模型的训练方法的流程示意图;
58.图7示出了本公开示例实施方式的事件抽取模型的训练装置的框图;
59.图8示出了本公开示例实施方式的事件抽取装置的框图;
60.图9示出了适于用来实现本公开实施方式的电子设备的计算机系统的结构示意图。
具体实施方式
61.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
62.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
63.本示例实施方式首先提供了一种事件抽取模型的训练方法。参考图1所示,上述事
件抽取模型的训练方法可以包括以下步骤:
64.步骤s110.从训练样本文档中获取训练数据,训练数据包括训练样本文档的每个事件中的触发词和论元,以及训练样本文档中的无关实体。
65.其中,无关实体为训练样本文档中不属于任何事件的实体。
66.步骤s120.将训练数据输入待训练的语言模型中,分别得到对应的触发词向量、论元向量和无关实体向量。
67.步骤s130.基于同一事件中的触发词向量和论元向量得到正样本对,基于无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对。
68.步骤s140.将每一个正样本对的样本相似度分别与正样本标签进行对比,将每一个负样本对的样本相似度分别与负样本标签进行对比,并根据各个正样本对和负样本对的相似度对比结果计算得到模型损失。
69.步骤s150.根据模型损失对语言模型的模型参数进行迭代训练,根据训练结果得到预训练语言模型,并基于预训练语言模型进行进一步训练得到事件抽取模型。
70.本公开示例实施方式的事件抽取模型的训练方法中,一方面,基于训练样本文档的同一事件中的触发词和论元,以及不属于任何事件的无关实体构造正负样本对,自动生成可以用于对比学习预训练的数据,显式地从数据中建模不同事件之间的区别,从而更加充分地利用数据中的事件信息,在减少人工标注的工作量的同时,提高后续事件抽取模型的表现;另一方面,通过计算正样本对和负样本对的相似度,并基于对比学习完成模型的预训练,从而学习到事件的语义表示,使得同一个事件中的单词的表示比不相关的单词的表示更为接近,进而提高事件抽取模型的性能和事件抽取任务的效果。本公开示例实施方式中的事件抽取模型的训练方法不针对具体的事件抽取模型,可以应用于所有基于预训练模型的事件抽取,具备较为广泛的应用前景。
71.下面,结合图2至图4对本示例实施方式的上述步骤进行更加详细的说明。
72.在步骤s110中,从训练样本文档中获取训练数据,训练数据包括训练样本文档的每个事件中的触发词和论元,以及训练样本文档中的无关实体。
73.一篇文档中会包含多个不同的事件,每个事件中包括一个触发词和多个论元。其中,触发词表示事件发生的核心词,多为动词或名词。论元为事件的参与者,主要由实体、值、时间组成,其中值是一种非实体的事件参与者,例如工作岗位等。无关实体为训练样本文档中不属于任何事件的实体。
74.本示例实施方式中,针对训练样本文档中的每个事件,获取其中的触发词和论元,然后获取文档中的所有实体,并从其中筛选出不属于任何事件的无关实体,然后基于这些数据得到训练数据。
75.在步骤s120中,将训练数据输入待训练的语言模型中,分别得到对应的触发词向量、论元向量和无关实体向量。
76.本示例实施方式中的语言模型用于得到文本对应的词向量。将训练数据输入待训练的语言模型中,得到每个事件中的触发词和论元分别对应的词向量,以及文档中所有无关实体的词向量。
77.在步骤s130中,基于同一事件中的触发词向量和论元向量得到正样本对,基于无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对。
78.本示例实施方式中,可以基于同一事件中的触发词向量和论元向量得到正样本对,具体而言,可以将每个事件中的触发词对应的触发词向量分别与同一事件中的各个论元对应的论元向量进行结合得到正样本对。例如,事件1中包含触发词1以及论元1和论元2,将触发词1的词向量分别与论元1以及论元2的词向量相结合,可以分别构造两个正样本对。
79.本示例实施方式中,可以基于无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对,其中,构造负样本对的具体方式可以包括以下三种:
80.第一种方式,将属于不同事件的触发词向量和论元向量之间进行两两结合,得到负样本对。例如,可以将事件1中的触发词1的词向量与事件2中的触发词2的词向量相结合,构造负样本对;或者将事件1中的触发词1的词向量与事件2中任意一个论元的词向量相结合,构造负样本对;或者将事件1中任意一个论元的词向量与事件2中任意一个论元的词向量相结合,构造负样本对。
81.第二种方式,将无关实体向量与其他无关实体向量之间进行两两结合,得到负样本对。将不属于任何事件的任意两个无关实体的词向量相结合,也可以构造负样本对。
82.第三种方式,将无关实体向量与任意一个事件中的触发词向量或者论元向量进行两两结合,得到负样本对。将不属于任何事件的无关实体的词向量,与属于某个事件的触发词或论元的词向量相结合,也可以构造负样本对。
83.如图2所示为根据本公开的一个具体实施方式中的构造正负样本对的示意图,给出了基于两个不同的事件构造正样本对以及根据上述三种方式构造负样本对的示例性方法。
84.在步骤s140中,将每一个正样本对的样本相似度分别与正样本标签进行对比,将每一个负样本对的样本相似度分别与负样本标签进行对比,并根据各个正样本对和负样本对的相似度对比结果计算得到模型损失。
85.本示例实施方式中,样本相似度可以为每个正样本对或者负样本对中的两个词向量之间的余弦相似度,即正样本对中的两个词向量之间的余弦相似度,以及负样本对中的两个词向量之间的余弦相似度。除此之外,还可以使用其他相似度计算方法得到样本对中的两个词向量之间的样本相似度,本示例实施方式中不作具体限定。
86.本示例实施方式中,可以将正样本对的标签设为1,负样本对的标签设为0,将每一个正样本对的样本相似度分别与正样本标签进行对比,将每一个负样本对的样本相似度分别与负样本标签进行对比,然后根据正样本对的样本相似度与正样本标签得到正样本相似度差值,根据负样本对的样本相似度与负样本标签得到负样本相似度差值,进而对正样本对和负样本对进行对比学习预训练。
87.对比学习着重于学习同类实例之间的共性特点,区分不同类的实例之间的不同点,对比学习无需关注实例上的细节,只需在抽象语义级别的特征空间上学习对数据的区分,模型的泛化能力可以得到增强。对比学习的最终目的是学习编码器,该编码器能够对同类实例的数据产生相似的编码,使不同类实例的数据的编码产生区别。
88.文本编码器使用自监督的对比学习来学习事件的语义表示,从而使得同一个事件中的单词的表示比其他不相关的单词的表示更接近,提高事件抽取模型的性能。
89.得到正负样本对的相似度对比结果之后,可以基于交叉熵损失函数以及正样本相似度差值和负样本相似度差值计算得到模型损失。
90.在步骤s150中,根据模型损失对语言模型的模型参数进行迭代训练,根据训练结果得到预训练语言模型,并基于预训练语言模型进行进一步训练得到事件抽取模型。
91.本示例实施方式中,可以使用梯度下降法做参数更新,对语言模型进行训练,并根据训练结果得到预训练语言模型。然后在预训练语言模型的基础上,结合神经网络进行进一步的训练和调整,得到最终的事件抽取模型。
92.本示例实施方式中,在基于预训练语言模型进行进一步训练得到事件抽取模型之前,还可以基于下一句预测任务和掩码任务对模型进行预训练。如图3所示,基于下一句预测任务对模型进行预训练的方法,具体可以包括以下几个步骤:
93.步骤s310.根据预训练语言模型得到第一语言预测模型,并从训练样本文档中按照预设比例选择部分目标词语作为掩码任务对象。
94.本示例实施方式中,可以将语言模型添加一个分类层,得到第一语言预测模型,然后在原始的训练样本文档中抽取一部分目标词语作为掩码任务对象。例如,可以随机抽取15%的token(词语)作为参与掩码任务的对象。
95.步骤s320.根据预设的替换比例将目标词语替换为原始目标词语、掩码替换词语和随机替换词语。
96.目标词语可以根据一定的比例分成三个部分,分别进行不同的替换处理,得到原始目标词语、掩码替换词语和随机替换词语。例如,在80%的概率下,用[mask](掩码)标记替换该token;在10%的概率下,用一个随机的单词替换token;在10%的概率下,保持该token不变。
[0097]
步骤s330.将替换目标词语之后的训练样本文档输入第一语言预测模型中,得到掩码任务对象对应的预测值,并根据掩码任务对象对应的预测值和真实值之间的差异得到第一模型损失。
[0098]
对目标词语进行替换处理之后,输入第一语言预测模型中,使用该模型对被掩盖的token进行预测,并根据预测值和真实值之间的差异计算第一模型损失。
[0099]
步骤s340.根据第一模型损失对第一语言预测模型进行迭代训练,并根据第一语言预测模型的训练结果更新预训练语言模型。
[0100]
根据第一模型损失对第一语言预测模型中的模型参数进行迭代更新,在训练结束之后取出其中的语言模型,得到更新后的预训练语言模型。
[0101]
本示例实施方式中,如图4所示,基于掩码任务对模型进行预训练的方法,具体可以包括以下几个步骤:
[0102]
步骤s410.根据预训练语言模型得到第二语言预测模型,并从训练样本文档中选择部分目标语句作为第一语句,根据预设的正负样本比例将第一语句划分为第一正样本语句和第一负样本语句。
[0103]
本示例实施方式中,可以将语言模型添加一个句子分类层,得到第二语言预测模型,然后在原始的训练样本文档中抽取一部分目标语句作为第一语句,将参与训练的第一语句记为句子a。
[0104]
根据预设的正负样本比例,例如50%:50%,将第一语句划分为第一正样本语句和第一负样本语句。
[0105]
步骤s420.获取第一正样本语句的下一句作为对应的第二正样本语句,并根据第
一正样本语句和对应的第二正样本语句得到正样本语句对。
[0106]
例如,在50%的概率下,用原始文本中跟随句子a的下一句话作为句子b,并将句子a和句子b进行结合,构造正样本语句对。
[0107]
步骤s430.获取训练样本文档中的随机语句作为第一负样本语句对应的第二负样本语句,并根据第一负样本语句和对应的第二负样本语句得到负样本语句对。
[0108]
例如,在另外50%的概率下,用随机抽取的一句话作为句子b,并将句子a和句子b进行结合,构造负样本语句对。
[0109]
步骤s440.将正样本语句对和负样本语句对输入第二语言预测模型中,得到各个正负样本语句对对应的下一句预测结果,并根据下一句预测结果得到第二模型损失。
[0110]
将正样本语句对和负样本语句对输入第二语言预测模型中,使用该模型预测句子a和句子b之间的关系。第二语言预测模型输出句子b是句子a的下一句的概率值,根据该概率值计算得到第二模型损失。
[0111]
步骤s450.根据第二模型损失对第二语言预测模型进行迭代训练,并根据第二语言预测模型的训练结果再次更新预训练语言模型。
[0112]
根据第二模型损失对第二语言预测模型中的模型参数进行迭代更新,在训练结束之后取出其中的语言模型,得到更新后的预训练语言模型。
[0113]
基于下一句预测任务和掩码任务对预训练语言模型的模型参数进行更新之后,可以进一步提高后续事件抽取模型的表现。
[0114]
在此基础上,本示例实施方式还提供了一种事件抽取方法。参考图5所示,上述事件抽取模型的训练方法可以包括以下步骤:
[0115]
步骤s510.将目标文档中的文本内容输入事件抽取模型中。
[0116]
其中,事件抽取模型是通过如上的事件抽取模型的训练方法得到的。
[0117]
步骤s520.根据事件抽取模型的输出结果得到目标文档的事件抽取结果。
[0118]
基于事件抽取模型可以抽取出目标文档中用户感兴趣的事件,以及事件中的关键词,包括触发词和论元等,最后以结构化的方式呈现给用户。
[0119]
如图6所示是本公开的一个具体实施方式中事件抽取模型的训练方法的完整流程图,是对本示例实施方式中的上述步骤的举例说明,该流程图的具体步骤如下:
[0120]
步骤s610.输入一篇训练样本文档。
[0121]
步骤s620.将属于同一事件的触发词和论元结合构成正样本对。
[0122]
针对文档中的每个事件,将属于同一事件的触发词和论元两两结合构成正样本。
[0123]
步骤s630.针对不属于同个事件的触发词和论元以及不属于任何事件的实体分别构造负样本对。
[0124]
针对不属于同个事件的触发词和论元以及不属于任何事件的实体分别构造负样本。
[0125]
步骤s640.计算正样本对和负样本对的相似度。
[0126]
计算正样本对中的两个词向量之间的余弦相似度,以及负样本对中的两个词向量之间的余弦相似度。
[0127]
步骤s650.将正样本对的标签设为1,负样本对的标签设为0,并进行对比学习预训练。
[0128]
将每一个正样本对的样本相似度分别与正样本标签1进行对比,将每一个负样本对的样本相似度分别与负样本标签0进行对比,进行对比学习预训练。
[0129]
步骤s660.在“下一句预测”和“掩码语言模型”任务上对模型进行预训练。
[0130]
基于下一句预测任务和掩码任务对模型进行预训练,进一步提高后续事件抽取模型的表现。
[0131]
应当注意,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
[0132]
进一步的,本公开还提供了一种事件抽取模型的训练装置。参考图7所示,该事件抽取模型的训练装置可以包括训练数据获取模块710、词向量输出模块720、样本对生成模块730、模型损失计算模块740以及模型参数训练模块750。其中:
[0133]
训练数据获取模块710可以用于从训练样本文档中获取训练数据,训练数据包括训练样本文档的每个事件中的触发词和论元,以及训练样本文档中的无关实体;其中,无关实体为训练样本文档中不属于任何事件的实体;
[0134]
词向量输出模块720可以用于将训练数据输入待训练的语言模型中,分别得到对应的触发词向量、论元向量和无关实体向量;
[0135]
样本对生成模块730可以用于基于同一事件中的触发词向量和论元向量得到正样本对,基于无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对;
[0136]
模型损失计算模块740可以用于将每一个正样本对的样本相似度分别与正样本标签进行对比,将每一个负样本对的样本相似度分别与负样本标签进行对比,并根据各个正样本对和负样本对的相似度对比结果计算得到模型损失;
[0137]
模型参数训练模块750可以用于根据模型损失对语言模型的模型参数进行迭代训练,根据训练结果得到预训练语言模型,并基于预训练语言模型进行进一步训练得到事件抽取模型。
[0138]
在本公开的一些示例性实施例中,样本对生成模块730可以包括正样本对生成单元,可以用于将每个事件中的触发词对应的触发词向量分别与同一事件中的各个论元对应的论元向量进行结合得到正样本对。
[0139]
在本公开的一些示例性实施例中,样本对生成模块730还可以包括第一负样本对生成单元、第二负样本对生成单元以及第三负样本对生成单元。
[0140]
其中:
[0141]
第一负样本对生成单元可以用于将属于不同事件的触发词向量和论元向量之间进行两两结合,得到负样本对;
[0142]
第二负样本对生成单元可以用于将无关实体向量与其他无关实体向量之间进行两两结合,得到负样本对;
[0143]
第三负样本对生成单元可以用于将无关实体向量与任意一个事件中的触发词向量或者论元向量进行两两结合,得到负样本对。
[0144]
在本公开的一些示例性实施例中,模型损失计算模块740可以包括相似度对比单元以及交叉熵损失计算单元。其中:
[0145]
相似度对比单元可以用于根据正样本对的样本相似度与正样本标签得到正样本相似度差值,根据负样本对的样本相似度与负样本标签得到负样本相似度差值;
[0146]
交叉熵损失计算单元可以用于基于交叉熵损失函数以及正样本相似度差值和负样本相似度差值计算得到模型损失。
[0147]
在本公开的一些示例性实施例中,本公开提供的一种事件抽取模型的训练装置还可以包括掩码任务训练模块,该掩码任务训练模块可以包括目标词语获取单元、目标词语替换单元、第一损失计算单元以及第一模型训练单元。其中:
[0148]
目标词语获取单元可以用于根据预训练语言模型得到第一语言预测模型,并从训练样本文档中按照预设比例选择部分目标词语作为掩码任务对象;
[0149]
目标词语替换单元可以用于根据预设的替换比例将目标词语替换为原始目标词语、掩码替换词语和随机替换词语;
[0150]
第一损失计算单元可以用于将替换目标词语之后的训练样本文档输入第一语言预测模型中,得到掩码任务对象对应的预测值,并根据掩码任务对象对应的预测值和真实值之间的差异得到第一模型损失;
[0151]
第一模型训练单元可以用于根据第一模型损失对第一语言预测模型进行迭代训练,并根据第一语言预测模型的训练结果更新预训练语言模型。
[0152]
在本公开的一些示例性实施例中,本公开提供的一种事件抽取模型的训练装置还可以包括下一句预测训练模块,该下一句预测训练模块可以包括第一语句获取单元、正样本语句对构造单元、负样本语句对构造单元、第二损失计算单元以及第二模型训练单元。其中:
[0153]
第一语句获取单元可以用于根据预训练语言模型得到第二语言预测模型,并从训练样本文档中选择部分目标语句作为第一语句,根据预设的正负样本比例将第一语句划分为第一正样本语句和第一负样本语句;
[0154]
正样本语句对构造单元可以用于获取第一正样本语句的下一句作为对应的第二正样本语句,并根据第一正样本语句和对应的第二正样本语句得到正样本语句对;
[0155]
负样本语句对构造单元可以用于获取训练样本文档中的随机语句作为第一负样本语句对应的第二负样本语句,并根据第一负样本语句和对应的第二负样本语句得到负样本语句对;
[0156]
第二损失计算单元可以用于将正样本语句对和负样本语句对输入第二语言预测模型中,得到各个正负样本语句对对应的下一句预测结果,并根据下一句预测结果得到第二模型损失;
[0157]
第二模型训练单元可以用于根据第二模型损失对第二语言预测模型进行迭代训练,并根据第二语言预测模型的训练结果再次更新预训练语言模型。
[0158]
进一步的,本公开还提供了一种事件抽取装置。参考图8所示,该事件抽取装置可以包括文本内容输入模块810以及抽取结果确定模块820。
[0159]
其中:
[0160]
文本内容输入模块810可以用于将目标文档中的文本内容输入事件抽取模型中,其中,事件抽取模型是通过上述事件抽取模型的训练装置得到的;
[0161]
抽取结果确定模块820可以用于根据事件抽取模型的输出结果得到目标文档的事
件抽取结果。
[0162]
上述事件抽取模型的训练装置和事件抽取装置中各模块/单元的具体细节在相应的方法实施例部分已有详细的说明,此处不再赘述。
[0163]
图9示出了适于用来实现本公开实施例的电子设备的计算机系统的结构示意图。
[0164]
需要说明的是,图9示出的电子设备的计算机系统900仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0165]
如图9所示,计算机系统900包括中央处理单元(cpu)901,其可以根据存储在只读存储器(rom)902中的程序或者从存储部分908加载到随机访问存储器(ram)903中的程序而执行各种适当的动作和处理。在ram 903中,还存储有系统操作所需的各种程序和数据。cpu 901、rom 902以及ram 903通过总线904彼此相连。输入/输出(i/o)接口905也连接至总线904。
[0166]
以下部件连接至i/o接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至i/o接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
[0167]
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被中央处理单元(cpu)901执行时,执行本公开的系统中限定的各种功能。
[0168]
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0169]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程
序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0170]
作为另一方面,本公开还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的方法。
[0171]
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
[0172]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。
[0173]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

技术特征:
1.一种事件抽取模型的训练方法,其特征在于,包括:从训练样本文档中获取训练数据,所述训练数据包括所述训练样本文档的每个事件中的触发词和论元,以及所述训练样本文档中的无关实体;其中,所述无关实体为所述训练样本文档中不属于任何事件的实体;将所述训练数据输入待训练的语言模型中,分别得到对应的触发词向量、论元向量和无关实体向量;基于同一事件中的触发词向量和论元向量得到正样本对,基于所述无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对;将每一个正样本对的样本相似度分别与正样本标签进行对比,将每一个负样本对的样本相似度分别与负样本标签进行对比,并根据各个所述正样本对和所述负样本对的相似度对比结果计算得到模型损失;根据所述模型损失对所述语言模型的模型参数进行迭代训练,根据训练结果得到预训练语言模型,并基于所述预训练语言模型进行进一步训练得到事件抽取模型。2.根据权利要求1所述的事件抽取模型的训练方法,其特征在于,所述基于同一事件中的触发词向量和论元向量得到正样本对,包括:将每个事件中的触发词对应的触发词向量分别与同一事件中的各个论元对应的论元向量进行结合得到正样本对。3.根据权利要求1所述的事件抽取模型的训练方法,其特征在于,所述基于所述无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对,包括:将属于不同事件的触发词向量和论元向量之间进行两两结合,得到负样本对;将所述无关实体向量与其他无关实体向量之间进行两两结合,得到负样本对;将所述无关实体向量与任意一个事件中的触发词向量或者论元向量进行两两结合,得到负样本对。4.根据权利要求1所述的事件抽取模型的训练方法,其特征在于,所述样本相似度包括每个所述正样本对或者所述负样本对中的两个词向量之间的余弦相似度。5.根据权利要求1所述的事件抽取模型的训练方法,其特征在于,所述根据各个所述正样本对和所述负样本对的相似度对比结果计算得到模型损失,包括:根据所述正样本对的样本相似度与所述正样本标签得到正样本相似度差值,根据所述负样本对的样本相似度与所述负样本标签得到负样本相似度差值;基于交叉熵损失函数以及所述正样本相似度差值和所述负样本相似度差值计算得到模型损失。6.根据权利要求1所述的事件抽取模型的训练方法,其特征在于,在基于所述预训练语言模型进行进一步训练得到事件抽取模型之前,所述方法还包括:根据所述预训练语言模型得到第一语言预测模型,并从所述训练样本文档中按照预设比例选择部分目标词语作为掩码任务对象;根据预设的替换比例将所述目标词语替换为原始目标词语、掩码替换词语和随机替换词语;将替换所述目标词语之后的所述训练样本文档输入所述第一语言预测模型中,得到所述掩码任务对象对应的预测值,并根据所述掩码任务对象对应的预测值和真实值之间的差
异得到第一模型损失;根据所述第一模型损失对所述第一语言预测模型进行迭代训练,并根据所述第一语言预测模型的训练结果更新所述预训练语言模型。7.根据权利要求6所述的事件抽取模型的训练方法,其特征在于,在根据所述第一语言预测模型的训练结果更新所述预训练语言模型之后,所述方法还包括:根据所述预训练语言模型得到第二语言预测模型,并从所述训练样本文档中选择部分目标语句作为第一语句,根据预设的正负样本比例将所述第一语句划分为第一正样本语句和第一负样本语句;获取所述第一正样本语句的下一句作为对应的第二正样本语句,并根据所述第一正样本语句和对应的第二正样本语句得到正样本语句对;获取所述训练样本文档中的随机语句作为所述第一负样本语句对应的第二负样本语句,并根据所述第一负样本语句和对应的第二负样本语句得到负样本语句对;将所述正样本语句对和所述负样本语句对输入所述第二语言预测模型中,得到各个正负样本语句对对应的下一句预测结果,并根据所述下一句预测结果得到第二模型损失;根据所述第二模型损失对所述第二语言预测模型进行迭代训练,并根据所述第二语言预测模型的训练结果再次更新所述预训练语言模型。8.一种事件抽取方法,其特征在于,包括:将目标文档中的文本内容输入事件抽取模型中,其中,所述事件抽取模型是通过如权利要求1-7中任意一项所述的事件抽取模型的训练方法得到的;根据所述事件抽取模型的输出结果得到所述目标文档的事件抽取结果。9.一种事件抽取模型的训练装置,其特征在于,包括:训练数据获取模块,用于从训练样本文档中获取训练数据,所述训练数据包括所述训练样本文档的每个事件中的触发词和论元,以及所述训练样本文档中的无关实体;其中,所述无关实体为所述训练样本文档中不属于任何事件的实体;词向量输出模块,用于将所述训练数据输入待训练的语言模型中,分别得到对应的触发词向量、论元向量和无关实体向量;样本对生成模块,用于基于同一事件中的触发词向量和论元向量得到正样本对,基于所述无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对;模型损失计算模块,用于将每一个正样本对的样本相似度分别与正样本标签进行对比,将每一个负样本对的样本相似度分别与负样本标签进行对比,并根据各个所述正样本对和所述负样本对的相似度对比结果计算得到模型损失;模型参数训练模块,用于根据所述模型损失对所述语言模型的模型参数进行迭代训练,根据训练结果得到预训练语言模型,并基于所述预训练语言模型进行进一步训练得到事件抽取模型。10.一种事件抽取装置,其特征在于,包括:文本内容输入模块,用于将目标文档中的文本内容输入事件抽取模型中,其中,所述事件抽取模型是通过如权利要求1-7中任意一项所述的事件抽取模型的训练方法得到的;抽取结果确定模块,用于根据所述事件抽取模型的输出结果得到所述目标文档的事件抽取结果。
11.一种电子设备,其特征在于,包括:处理器;以及存储器,用于存储一个或多个程序,当所述一个或多个程序被所述处理器执行时,使得所述处理器实现如权利要求1至7中任一项所述的事件抽取模型的训练方法或者权利要求8所述的事件抽取方法。12.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至7中任一项所述的事件抽取模型的训练方法或者权利要求8所述的事件抽取方法。

技术总结
本公开涉及一种事件抽取模型的训练方法、事件抽取方法、装置、电子设备及计算机可读介质,属于自然语言处理技术领域。该事件抽取模型的训练方法包括:从训练样本文档中获取训练数据,包括每个事件中的触发词和论元以及无关实体;将训练数据输入语言模型中得到触发词向量、论元向量和无关实体向量;基于同一事件中的触发词向量和论元向量得到正样本对,基于无关实体向量以及不同事件中的触发词向量和论元向量得到负样本对;将正负样本对的样本相似度与样本标签进行对比,计算模型损失;根据模型损失对模型进行训练得到预训练语言模型,基于预训练语言模型进一步得到事件抽取模型。本公开通过计算正负样本对的相似度,可以提高事件抽取模型的性能。件抽取模型的性能。件抽取模型的性能。


技术研发人员:姚顺雨
受保护的技术使用者:中国电信股份有限公司
技术研发日:2023.07.10
技术公布日:2023/10/11
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐