基于BiLSTM结合多头注意力的中文重叠事件抽取系统

文档序号:31539143发布日期:2022-09-16 23:23阅读:134来源:国知局
基于BiLSTM结合多头注意力的中文重叠事件抽取系统
基于bilstm结合多头注意力的中文重叠事件抽取系统
技术领域
1.本发明属于自然语言处理领域,涉及一种基于bilstm结合多头注意力的中文重叠事件抽取系统。


背景技术:

2.随着互联网技术的发展,大量信息以文本的形式存储在计算机里,如何挖掘有价值的信息,已成为信息抽取的核心问题。事件抽取是信息抽取领域的研究热点之一,核心任务是从无结构化的自然语言文本中抽取指定类型的信息,并以半结构化或结构化的形式进行表示。
3.目前主流的研究方法大多基于神经网络,通过网络提取特征。chen等人提出基于动态多池化卷积神经网络的方法,根据触发词和事件元素使用动态多池化层提取信息;zeng等人提出用双向lstm和crf抽取句子特征,用卷积神经网络抽取语义特征进行中文事件抽取;chen等人提出利用知识库的远程监督方法,生成大规模标注数据,应用到金融领域;liu等人提出联合多事件提取框架用于重叠事件抽取;yang等人提出根据角色分离事件元素的方法解决角色重叠问题。
4.在现有技术中,存在以下问题:(1)对于应用场景复杂的中文金融事件元素提取,事件中含有较多未定义的公司名、专业词汇。由于提取的特征不足,存在识别召回率较低问题。(2)对于多任务联合学习模型,其底层网络参数是共享的,因此,模型的收敛往往容易偏向于损失权重占比较大的任务,导致错误传播问题。


技术实现要素:

5.有鉴于此,本发明的目的在于提供一种基于bilstm结合多头注意力的中文重叠事件抽取系统,采用多头自注意力融合双向lstm进行事件元素的识别,可以更好地进行特征提取,获取更丰富的语义信息,解决多任务联合学习模型存在的提取特征不足导致事件元素识别召回率低的问题,本发明还根据损失占比为各任务设置损失权重,弱化下游任务对上游任务的影响,解决各个子任务损失占比相差较大导致错误传播的问题。
6.为达到上述目的,本发明提供如下技术方案:
7.一种基于bilstm结合多头注意力的中文重叠事件抽取系统,包括bert编码器、事件类型检测解码器、触发词提取解码器、事件元素提取解码器和损失权重调整模块;
8.所述bert编码器作为文本编码器,生成以标记上下文为条件的文本表示,并包含丰富的文本信息;
9.所述事件类型检测解码器基于bert文本分类模型,对事件进行分类;
10.所述触发词提取解码器通过事件类型检测与触发词提取之间的条件依赖关系,根据获取到的事件类型提取出触发词;
11.所述事件元素提取解码器采用多头注意力结合双向lstm层对事件元素进行提取;
12.所述损失权重调整模块结合多个损失函数,利用多个目标的同方差不确定性为每
个任务动态分配权重。
13.进一步,所述事件类型检测解码器基于bert文本分类模型,将最后一层输出的第一个token位置当作句子的表示,然后连接全连接层进行分类,具体包括以下步骤:
14.s11:首先初始化嵌入矩阵为类型嵌入,其中e表示事件类型集合,d为词向量维(d=768);
15.s12:通过相似性函数δ来度量候选类型c∈c和标记表示之间的相关性;
16.s13:通过测量具有相同相似度函数δ的自适应句子表征sc、类型嵌入c的相似度来预测事件类型。
17.进一步,所述触发词提取解码器利用条件融合函数建立事件类型检测和触发词提取之间的条件依赖关系模型,对类型检测和触发词提取之间的条件依赖性进行建模,通过自注意力层来进一步细化触发词提取的表示。
18.进一步,所述事件元素提取解码器首先使用条件融合函数φ对事件类型、触发词和事件元素进行依赖性建模,然后进行特征提取;采用多头注意力结合双向lstm层来细化事件元素提取的表示:
19.z
ct
=[z
ct

;p]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0020]yct
=[y
ct

;p]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0021]
x
ct
=[z
ct
;y
ct
]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0022]
其中是相对位置嵌入,d
p
是维度,z
ct
是经过双向lstm层后的矩阵表示,y
ct
是经过多头注意力层后的矩阵表示,x
ct
是两层网络融合拼接后的矩阵表示,如公式(1)~(3)所示,然后使用正则化进行降维;
[0023]
最后使用指示符函数i(r,c)来指示该角色是否属于根据预定义事件模式的类型,表示公式如(4)所示:
[0024][0025]
使用一对taggers标记器来预测事件元素,其中表示xc中的第i个tokens表示,事件元素起始位置和结束位置的表示如公式(5)(6)所示:
[0026][0027][0028]
选择值的结果为预测的起始位置,选择值的结果为预测的结束位置,ξ4,ξ5∈[0,1]是标量阈值;通过列举所有起始位置,搜索句子中最近的结束位置,起始位置和结束位置之间的标记形成一个完整的事件元素。
[0029]
进一步,所述损失权重调整模块实施步骤如下:
[0030]
手动设置初始化权重,结合多个损失函数,同时利用多个目标的同方差不确定性,如公式(7)所示,重新为每个任务分配权重:
[0031]
l

=1/(2σ^2)
·
l+log(1+1/σ^2)
ꢀꢀꢀ
(7)
[0032]
其中,σ表示高斯分布的标准差,l表示单任务部分的损失,l

表示权重更新后单任务的损失。
[0033]
本发明的有益效果在于:本发明提高了对语句中的文字信息的提取能力,增强了
对句子结构的提取能力,并且能够长距离的传递信息,从而更好地进行特征提取,获取更丰富的语义信息。考虑到联合学习多任务模型的各任务间损失量级相差较大,导致收敛方向倾向于某任务,本发明采用动态设置损失权重的方法,具体是根据各任务的损失占比重新为每个任务分配权重,以使各任务的损失在同一量级上,优化了整体模型的收敛方向,提高了模型的泛化性。
[0034]
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
[0035]
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
[0036]
图1为本发明所述基于bilstm结合多头注意力的中文重叠事件抽取系统结构示意图。
具体实施方式
[0037]
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0038]
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
[0039]
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
[0040]
本发明一种基于bilstm结合多头注意力的中文重叠事件抽取模型,包括一个共享的bert编码器,一个事件类型检测解码器,一个触发词提取解码器,一个事件元素提取解码器,还包括损失权重调整模块。其结构如图1所示。
[0041]
1)bert编码器
[0042]
为了共享每个句子的文本表示,整体模型采用bert作为文本编码器。bert是一种基于transformer架构的双向语言表示模型,它生成以标记上下文为条件的文本表示,并包
含丰富的文本信息。
[0043]
2)事件类型检测解码器
[0044]
基于bert文本分类模型将最后一层输出的第一个token位置当作句子的表示,然后连接全连接层进行分类。包括注意力层、相似度预测层、事件类型分类层。
[0045]
首先初始化嵌入矩阵为类型嵌入,其中e表示事件类型集合,d为词向量维(d=768)。通过相似性函数δ来度量候选类型c∈c和标记表示之间的相关性。最后,通过测量具有相同相似度函数δ的自适应句子表征sc、类型嵌入c的相似度来预测事件类型。
[0046]
3)触发词提取解码器
[0047]
包括条件融合层、自注意力层和归一化层。利用条件融合函数建立事件类型检测和触发词提取之间的条件依赖关系模型,对类型检测和触发词提取之间的条件依赖性进行建模,通过自注意力层来进一步细化触发词提取的表示。
[0048]
4)事件元素提取解码器
[0049]
包括条件融合层、bilstm层、多头自注意力层、归一化层和指示符函数层。基于自注意力机制的信息提取方式识别事件元素,会忽略重要信息,而双向lstm对语句中的文字信息提取能力较强,但未考虑句子的结构信息,且并行计算能力不强,利用多头注意力对句子结构提取能力较强,以及能长距离传递信息的特点,弥补lstm的弱点。因此,本发明采用多头注意力结合双向lstm层来进一步细化事件元素提取的表示,经过两层网络融合拼接后使用正则化进行降维。
[0050]
在本实施例中,首先使用条件融合函数φ对事件类型、触发词和事件元素进行依赖性建模,然后进行特征提取。采用多头注意力结合双向lstm层来进一步细化事件元素提取的表示。
[0051]zct
=[z
ct

;p]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0052]yct
=[y
ct

;p]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0053]
x
ct
=[z
ct
;y
ct
]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0054]
其中是相对位置嵌入,d
p
是维度,z
ct
是经过双向lstm层后的矩阵表示,y
ct
是经过多头注意力层后的矩阵表示,x
ct
是两层网络融合拼接后的矩阵表示,如公式(1)~(3)所示,然后使用正则化进行降维。
[0055]
最后使用指示符函数i(r,c)来指示该角色是否属于根据预定义事件模式的类型,表示公式如(4)所示:
[0056][0057]
同样使用一对taggers标记器来预测事件元素,其中表示xc中的第i个tokens表示,事件元素起始位置和结束位置的表示如公式(5)(6)所示:
[0058][0059][0060]
选择值的结果为预测的起始位置,选择值的结果为预测的结束位置,ξ4,ξ5∈[0,1]是标量阈值。通过列举所有起始位置,搜索句子中最近的结束位置,起始位
置和结束位置之间的标记形成一个完整的事件元素。
[0061]
5)损失权重调整模块
[0062]
各任务间的损失量级差距较大,当模型倾向于拟合某个任务时,收敛方向会受该任务的主导,整体的训练效果往往会变差,导致错误级联问题,因此,本实施例添加损失权重调整模块,结合多个损失函数,利用多个目标的同方差不确定性为每个任务动态分配权重。
[0063]
本实施例的损失权重调整模块的具体操作是手动设置初始化权重,结合多个损失函数,同时利用多个目标的同方差不确定性,如公式(7)所示,重新为每个任务分配权重。
[0064]
l

=1/(2σ^2)
·
l+log(1+1/σ^2)
ꢀꢀꢀ
(7)
[0065]
其中,σ表示高斯分布的标准差,l表示单任务部分的损失,l

表示权重更新后单任务的损失。
[0066]
在本实施例中,在某金融事件抽取数据集fewfc上进行实验,并以8:1:1的比例划分数据集,分别作为训练集、验证集、测试集。数据的划分和数据量的组成如表1所示。
[0067]
表1
[0068][0069]
本实施例采用精确率p、召回率r和综合评价f1值作为评价指标,计算方法如公式(18)~(20)所示:
[0070][0071][0072][0073]
其中,tp表示将正类预测为正类的数量,fn表示将正类预测为负类的数目,fp表示将负类预测为正类数的数目。
[0074]
本实施例的实验环境是基于pytorch框架,采用nvidia tesla p100 gpu训练模型,使用中文bert-base-chinese模型作为文本编码器,共有12层,768个隐藏单元和12个注意力头,运用adam优化器来训练模型。各种方法中的超参数如表2所示。
[0075]
表2
[0076][0077]
对于bert参数,初始学习速率调整为[1e-5,5e-5],学习率的预热比例为10%。本模型多头注意力的头数在{2,4,8,16}内调整,双向lstm的层数在{1,2,3}内调整,权重衰减
初始值为[1,1,0.2]。
[0078]
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1