一种基于动态前缀提示信息的事件抽取方法技术

技术编号:34854576 阅读:28 留言:0更新日期:2022-09-08 07:55
本发明专利技术涉及一种基于动态前缀提示信息的事件抽取方法,属于计算机自然语言处理技术领域。本方法根据输入文本结合所有可能的事件类型,动态构造可调整的稠密的前缀信息,由此增强前缀信息的表现力,提高了数据的利用率。同时,利用相关性分类器将不包含事件实例的文本排除,减少了不相关信息的干扰。本方法克服了现有的基于生成的事件抽取方法中人工构造离散提示文本的次优性,事件类型信息与文本上下文相隔绝等技术缺陷。本方法在精确率、召回率、F1值评测指标等方面都有显著提升。F1值评测指标等方面都有显著提升。F1值评测指标等方面都有显著提升。

【技术实现步骤摘要】
一种基于动态前缀提示信息的事件抽取方法


[0001]本专利技术涉及一种基于动态前缀提示信息的事件抽取方法,属于计算机自然语言处理


技术介绍

[0002]事件抽取,是指从非结构化文本中根据预定义的事件本体抽取事件实例的过程,是一项可以增强下游应用的技术,同时也是让计算机理解和处理自然语言文本的一种重要的技术手段。
[0003]在事件抽取任务中,事件实例由事件触发词和事件元素组成。其中,事件触发词是一个动作性质的词语或短语,指示了事件的发生,具有特定的事件类别。事件元素是参与事件的实体,具有特定的角色。
[0004]在进行事件抽取之前,通常会定义事件本体,包括事件类型和各类型关注的角色。例如,在句子“The man returned to Los Angeles from Mexico following his capture Tuesday by bounty hunters.”中存在两个事件实例,一个由“returned”触发的运输(Transport)类型事件,和一个由“capture”触发的逮捕入狱(Arrest

Jail)类型事件。
[0005]近年来,随着序列到序列预训练语言模型的广泛应用,利用文本生成解决信息抽取任务的方法受到大量关注。区别于传统的将事件触发词和事件元素抽取划分为识别和分类的方法,此类方法是基于生成的事件抽取方法。
[0006]目前,基于生成的事件抽取方法面临诸多挑战。
[0007]首先,现有方法受到人工构造离散提示文本的次优性所带来的限制。现有方法为每个事件类型人工设计自然语言形式的提示作为条件生成模板,该模板描述事件的结构。相关工作证明提示文本的构造方法对下游任务具有很大影响。而提示模板在训练过程中不会进行调整,是人工构造的次优的文本组合,很大程度上限制了模型的最终性能上限。
[0008]其次,现有方法中事件类型信息与文本上下文相隔绝。当抽取特定类型的事件时,基于生成的事件抽取方法仅关注该事件类型的信息,而没有考虑到其他可能的事件类型之间的关联。
[0009]综上所述,这两个挑战阻碍了基于分类的方法取得更有竞争力的结果,现有方法尚没有将能够根据输入文本动态构建与事件类别有关的提示信息或利用相关性分类器将不包含事件实例的文本排除的技术方案公开,数据利用率低,受不相关信息干扰。

技术实现思路

[0010]本专利技术的目的是为了克服现有的基于生成的事件抽取方法中存在的人工构造离散提示文本的次优性、事件类型信息与文本上下文相隔绝等技术缺陷,创造性地提出一种基于动态前缀提示信息的事件抽取方法。
[0011]本专利技术的创新点在于:根据输入文本结合所有可能的事件类型,动态构造可调整的稠密的前缀信息,由此增强前缀信息的表现力,提高了数据的利用率。同时,利用相关性
分类器将不包含事件实例的文本排除,减少了不相关信息的干扰。
[0012]本专利技术采用的技术方案如下:
[0013]一种基于动态前缀提示信息的事件抽取方法。
[0014]首先,训练一个事件抽取器,包括一个相关性分类器、一个提示信息构造器和一个条件文本生成器。
[0015]其中,相关性分类器是一个参数会随着训练而微调的BERT文本分类器;
[0016]提示信息构造器是一个BERT文本编码器和由若干个前缀向量序列组成的集合。每个前缀向量序列对应一种事件抽取器所支持的事件类型,其中包含多个实值向量,且各序列中包含的向量个数相同;
[0017]条件文本生成器是一个参数会随着训练而微调的预训练序列到序列语言模型BART。
[0018]步骤1:建立带有事件实例标注的“事件实例集合

文本对”训练样本和事件本体O;
[0019]按照事件实例集合中的事件类型训练相关性分类器,并依次枚举事件类型;按照各事件类型的标注结果构造目标文本,由此训练出事件抽取器。
[0020]具体地,步骤1可以包括以下步骤:
[0021]步骤1.1:人工对语料库中的文本进行标注,形成“事件实例集合

文本对”训练样本和描述事件类型和结构的本体O。
[0022]步骤1.2:对“事件实例集合

文本对”训练样本中文本的事件实例集合进行是否为空的判断,如为空则相关性为“0”,如不为空则相关性为“1”,之后形成“相关性

文本对”训练样本。
[0023]步骤1.3:将“相关性

文本对”训练样本中的每一条文本输入相关性分类器,进行目标为“0”和“1”的二分类,计算交叉熵损失函数;利用Adam优化算法进行训练,优化相关性分类器中的参数。
[0024]优选地,步骤1.3可以采用以下方法实现:
[0025]步骤1.3.1:使用BERT tokenizer,将输入文本c切分为subword序列,并在序列首、尾分别加上特殊符号“[CLS]”和“[SEP]”;
[0026]步骤1.3.2:将添加首尾标记的subword序列输入BERT编码器,得到模型最后一层中特殊符号“[CLS]”对应的输出向量v
r

[0027]步骤1.3.3:将输出向量v
r
输入多层前馈神经网络,进行二分类;
[0028]步骤1.3.4:根据二分类的概率logits和输入文本c的正确相关性,计算交叉熵损失函数;
[0029]步骤1.3.5:利用Adam优化算法进行训练,优化相关性分类器中的参数,包括一个BERT编码器和一个多层前馈神经网络。
[0030]步骤1.4:为每种事件类型e∈O,初始化一个独立的前缀向量序列作为参数,并设计一个生成模板t
e

[0031]具体地,步骤1.4可以采用以下方法实现:
[0032]步骤1.4.1:为每种事件类型e初始化一个前缀向量序列,每个序列中均包含L个向量,记为每个向量之间相互独立,并满足每个向量之间相互独立,并满足表示实数域,D表示
的向量维度;
[0033]步骤1.4.2:为每种事件类型e设计一个生成模板t
e

[0034]生成模板t
e
为触发词和事件元素提供了要被填入的槽位,从而实现将单个类型的事件实例结构体转化为了一个自然语言文本序列。
[0035]例如,出生(Be

Born)类型事件的生成模板为“Trigger is<trg><SEP1><arg1>was born in<arg2>place”,其中特殊符号“<SEP1>”用于分隔触发词和事件元素;在触发词部分,特殊符号“<trg>”是真实触发词需要被填入的槽位;在事件元素部分,特殊符号“&l本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于动态前缀提示信息的事件抽取方法,其特征在于:首先,训练一个事件抽取器,包括一个相关性分类器、一个提示信息构造器和一个条件文本生成器;其中,相关性分类器是一个参数会随着训练而微调的BERT文本分类器;提示信息构造器是一个BERT文本编码器和由若干个前缀向量序列组成的集合;每个前缀向量序列对应一种事件抽取器所支持的事件类型,其中包含多个实值向量,且各序列中包含的向量个数相同;条件文本生成器是一个参数会随着训练而微调的预训练序列到序列语言模型BART;步骤1:建立带有事件实例标注的“事件实例集合

文本对”训练样本和事件本体O;按照事件实例集合中的事件类型训练相关性分类器,并依次枚举事件类型;按照各事件类型的标注结果构造目标文本,由此训练出事件抽取器;步骤2:对待计算的输入文本,首先利用相关性分类器对输入文本进行预测,判断其中是否包含事件;若不包含事件,则输出空事件实例集合;若包含事件,则依次枚举事件类型,对每种事件类型均利用提示信息构造器动态构造前缀向量序列,利用条件文本生成器输出生成的文本,并按照规则解析得到事件实例的集合。2.如权利要求1所述的一种基于动态前缀提示信息的事件抽取方法,其特征在于,步骤1包括以下步骤:步骤1.1:人工对语料库中的文本进行标注,形成“事件实例集合

文本对”训练样本和描述事件类型和结构的本体O;步骤1.2:对“事件实例集合

文本对”训练样本中文本的事件实例集合进行是否为空的判断,如为空则相关性为“0”,如不为空则相关性为“1”,之后形成“相关性

文本对”训练样本;步骤1.3:将“相关性

文本对”训练样本中的每一条文本输入相关性分类器,进行目标为“0”和“1”的二分类,计算交叉熵损失函数;利用Adam优化算法进行训练,优化相关性分类器中的参数;步骤1.4:为每种事件类型e∈O,初始化一个独立的前缀向量序列作为参数,并设计一个生成模板t
e
;步骤1.5:选择“事件实例集合

文本对”中相关性为“1”的训练样本,形成训练样本子集,并对训练样本子集中的“事件实例集合

文本对”<S,c>,S表示事件实例集合,c表示输入文本;枚举事件类型,设当前处理的事件类型为e,进行后续步骤;步骤1.6:利用BERT文本编码器计算输入文本c的表示向量;步骤1.7:利用表示向量聚合代表各事件类型的前缀向量序列,形成一组动态构造的前缀向量序列P
c
;步骤1.8:根据事件实例集合S中事件类型为e的事件实例子集,构造目标文本g
e
;步骤1.9:将动态构造的前缀向量序列P
c
、生成模板t
e
、文本c输入条件文本生成器,计算输出目标文本g
e
的负对数似然作为损失函数;然后,利用AdamW优化算法进行训练,优化提示信息构造器和条件文本生成器中的参数;
优化结束后,得到包含最优参数的事件抽取器;步骤2包括以下步骤:步骤2.1:将待计算的输入文本c利用相关性分类器进行分类;若结果为“0”,即不相关,则直接输出空事件实例集合,结束步骤;若结果为“1”,即相关,则进入步骤2.2;步骤2.2:利用提示信息构造器的出一组动态构造的前缀向量序列P
c
;步骤2.3:枚举事件类型,设当前处理的事件类型为e;步骤2.4:将动态构造的前缀向量序列P
c
、生成模板t
e
、文本c输入条件文本生成器,得到输出文本o;步骤2.5:根据步骤1.8的构造规则对输出文本o进行解析,得到事件实例集合;步骤2.6:将枚举过程中所有事件类型的事件实例集合合并,得到最终的事件实例集合。3.如权利要求2所述的一种基于动态前缀提示信息的事件抽取方法,其特征在于,步骤1.3包括以下步骤:步骤1.3.1:使用BERT tokenizer,将输入文本c切分为subword序列,并在序列首、尾分别加上特殊符号“[CLS]”和“[SEP]”;步骤1.3.2:将添加首尾标记的subword序列输入BERT编码器,得到模型最后一层中特殊符号“[CLS]”对应的输出向量v
r
;步骤1.3...

【专利技术属性】
技术研发人员:黄河燕刘啸
申请(专利权)人:北京理工大学东南信息技术研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1