公开/公告号CN114780677A
专利类型发明专利
公开/公告日2022-07-22
原文格式PDF
申请/专利权人 西安电子科技大学;陕西方寸积慧智能科技有限公司;
申请/专利号CN202210354653.4
申请日2022-04-06
分类号G06F16/33;G06F16/35;G06F40/289;G06F40/30;G06N3/04;G06N3/08;
代理机构西安智大知识产权代理事务所;
代理人段俊涛
地址 710071 陕西省西安市太白南路2号
入库时间 2023-06-19 16:04:54
法律状态公告日
法律状态信息
法律状态
2022-07-22
公开
发明专利申请公布
技术领域
本发明属于人工智能技术领域,涉及自然语言处理,特别涉及一种基于特征融合的中文事件抽取方法,可用于舆情分析、情报处理。
背景技术
事件抽取任务的主要目标是从非结构化文本中提取结构化的事件信息,以降低用户获取并处理信息的难度。其中一般包括判断文本中包含的事件类型(event type),以及识别事件论元(argument)并判断其在事件中扮演的角色(role)。该技术可应用于新闻舆情分析、情报处理、金融风险评估等领域。事件抽取系统的研究经过十几年的发展,众多专家学者已经取得了大量有效的研究成果,但是大多数研究针对于英文语料,中文事件抽取方面的研究还相对不成熟,不仅缺乏高质量的数据集,而且模型性能上相比英文事件抽取也较差。
传统的事件抽取方法通过获取事件触发词和事件论元的词汇、句法、语义等特征信息,将事件检测和事件论元抽取转化为分类问题,其核心在于特征的提取和分类器的构造。虽然词汇、句法、语义等多种特征可以作为分类器的输入,但是更高层次语言学特征的构建,如词性标注、句法依存分析等,需要语言学和相关领域的专业知识,这限制了分类器的适应性和通用性。
随着神经网络的发展,深度学习在事件检测性能和事件论元抽取性能方面均取得了瞩目的成果。在神经网络中,输入层可以采用原始数据的简单表示作为输入,每一层都可以通过学习,将其较浅层的输入转换为更抽象和复杂的特征,然后再将其输入到较深层,直到最深层的输出特征被用于分类。与传统方法相比,深度学习可以大大降低特征工程的难度,且检测和分类精度也优于前者。2018年10月,谷歌AI研究院发布了基于Transformer编码器结构的预训练语言模型BERT,将预训练语言模型应用于事件抽取任务的研究也随即活跃起来。在此之前,主流的事件检测方法是从文本中检测出事件触发词,并根据事件触发词判断事件类型;随着基于预训练网络的事件抽取模型的发展,得益于其强大的语义特征表示能力,基于全文的事件检测方法已成为主流。
发明内容
为了克服上述现有技术的缺点,本发明的目的在于提供一种基于特征融合的中文事件抽取方法,以提升中文事件抽取的精确率和召回率。
为了实现上述目的,本发明采用的技术方案是:
基于特征融合的中文事件抽取方法,包括如下步骤:
步骤1,构建中文事件抽取网络BERT-FF
所述中文事件抽取网络BERT-FF包括字级别特征提取网络、词级别特征提取网络、特征融合网络和后端分类网络;
所述字级别特征提取网络基于BERT预训练语言模型,用于提取输入文本的字级别特征;所述词级别特征提取网络用于提取输入文本的词级别特征;所述特征融合网络通过注意力机制将提取的字级别特征与词级别特征进行融合,以增强模型的语义表示能力,获得融合特征向量;所述后端分类网络用于将融合特征向量分别输入事件检测后端网络和事件论元抽取后端网络,获得最终的事件抽取结果;
步骤2,构建训练数据集
所述训练数据集由从开放网络中爬取的描述事件的文本和与该文本一一对应的注解文件组成;
步骤3,对中文事件抽取网络BERT-FF进行训练
步骤4,从开放网络中爬取描述事件的文本,作为测试数据集输入到训练好的中文事件抽取网络BERT-FF中进行事件抽取,输出结构化的事件信息,得到事件抽取的结果,并计算事件抽取的精确率和召回率。
与现有技术相比,本发明的有益效果是:
第一,本发明使用迁移学习的方法,将BERT的预训练参数文件加载到(1a)所构建的字级别特征提取网络中,使字级别特征提取网络能够快速地学习文本的字级别语义特征,加快了模型整体的收敛速度,降低了事件抽取的时间复杂度。
第二,本发明使用对比学习的方法对BERT的预训练参数进行优化,缓解了BERT语义特征向量空间的各向异性问题,然后使用优化后的模型代替原模型作为特征提取网络,提高了模型的事件检测性能。
第三,本发明使用基于注意力机制的特征融合方法,针对中文文本数据的特点,将提取的字级别特征信息与词级别特征信息相融合,增强了模型的上下文语义表示能力,使得模型在事件检测和事件论元抽取上的精确率和召回率均有所提升。
附图说明
图1为中文事件抽取网络BERT-FF的结构示意图。
图2为BERT预训练模型的结构示意图。
图3为多头注意力机制的结构示意图。
图4为事件抽取示例图。
具体实施方式
下面结合附图和实施例详细说明本发明的实施方式。
本发明一种基于特征融合的中文事件抽取方法,实现步骤如下。
步骤1,参照图1,构建中文事件抽取网络BERT-FF。
中文事件抽取网络BERT-FF包括:字级别特征提取网络、词级别特征提取网络、特征融合网络和后端分类网络。
其中,字级别特征提取网络基于BERT预训练语言模型,用于提取输入文本的字级别特征;词级别特征提取网络用于提取输入文本的词级别特征;特征融合网络通过注意力机制将提取的字级别特征与词级别特征进行融合,以增强模型的语义表示能力,获得融合特征向量;后端分类网络用于将融合特征向量分别输入事件检测后端网络和事件论元抽取后端网络,获得最终的事件抽取结果。
其关键步骤如下:
1.1)搭建中文事件抽取网络BERT-FF的字级别特征提取网络:
参照图2,结构关系依次为:输入层→词嵌入层→位置编码→N个级联的语义编码器→输出层。
各模块具体参数和实现方式如下:
输入层的输入为文本分字后得到的token序列,为了避免显存的OOM(Out ofMemory)问题,训练时token序列的最大长度设置为128,若超过128则截断。为了对输入文本数据进行批处理,每个批次(Batch)内的token序列长度须保持相等,若不相等则按批次内最长的token序列长度Padding。设token序列长度为sequence length
词嵌入层的嵌入维度embeded size=768,符合BERT的输入维度要求,即每个token的词向量为768维的列向量。
位置编码方法采用Sinusoidal位置编码,如式(1)和式(2)所示:
其中,pos指的是当前token在序列中的位置,取值范围是[0,sequence length
字级别特征提取网络的主体是N个级联的语义编码器,本发明中N=12。每个语义编码器由两部分组成:包含残差网络的多头自注意力(Multi-Head Self-Attention)模块和包含残差网络的前向传播(Feed Forward)模块。
包含残差网络的多头自注意力模块由一个多头注意力模块和一个残差模块拼接组成,多头注意力模块参照图3。多头注意力模块的input
包含残差网络的前向传播模块由两个全连接层、GeLU激活函数和一个残差模块拼接组成,GeLU激活函数位于两个全连接层之间。第一个全连接层映射矩阵的维度为768×2048,第二个全连接层映射矩阵的维度为2048×768。残差模块会将其前置模块的输入和输出相加,并进行层归一化。GeLU激活函数表示为:
其中,x表示前置模块的输出,erf(*)表示高斯误差计算函数。
1.2)搭建中文事件抽取网络BERT-FF的词级别特征提取网络:
结构关系依次为:输入层→词嵌入层→位置编码→全连接层→输出层。
各模块具体参数和实现方式如下:
输入层的输入为文本分词后得到的token序列,为了避免显存的OOM问题,训练时token序列的最大长度设置为128,若超过128则截断。为了对输入文本数据进行批处理,每个批次(Batch)内的token序列长度须保持相等,若不相等则按批次内最长的token序列长度Padding。设token序列长度为sequence length
词嵌入层的嵌入维度embedded size=128,即每个token的词向量为128维的列向量。
位置编码方法采用Sinusoidal位置编码。
全连接层映射矩阵的维度为128×768,使词级别特征向量维度与字级别特征向量维度相等,方便后续的计算。
1.3)搭建中文事件抽取网络BERT-FF的特征融合网络:
结构关系依次为:输入层→多头注意力模块→输出层。
各模块具体参数和实现方式如下:
输入层的输入由两部分组成,分别为字级别特征向量input
多头注意力模块每一个Attention Head的三个输入分别为查询向量序列Q、键向量序列K和值向量序列V,经过实验调参,这里Attention Head的个数设为24时模型性能达到最优。Q由input
1.4)搭建中文事件抽取网络BERT-FF的后端分类网络:
中文事件抽取网络BERT-FF的后端分类网络分为两部分,分别是事件检测后端网络和事件论元抽取后端网络。
事件检测后端网络的结构关系依次为:输入层→全连接层→多标签分类器→输出层。
各模块具体参数和实现方式如下:
输入层的输入为融合特征向量中的[CLS]标签的特征向量,维度为1×768。
全连接层映射矩阵的维度为768×n_events,n_events为事件类型的总数。
多标签分类器由n_events个Sigmoid函数组成,最终输出为当前输入文本中包含事件类型的概率分布。若概率大于0.5则认为文本中包含对应的事件类型,否则认为不包含。
事件论元抽取后端网络的结构关系依次为:输入层→全连接层→条件随机场→输出层。
各模块具体参数和实现方式如下:
输入层的输入为融合特征向量,维度为sequence length
全连接层映射矩阵的维度为768×n_labels,n_labels为事件论元序列标注标签的总数,标注方法为BIO标注法。
条件随机场为线性链条件随机场,最终输出为事件论元的序列标注结果。条件随机场(Conditional Random Field,CRF)是一种判别式概率模型,是在给定随机变量X的条件下,随机变量Y的概率无向图模型。定义在线性链上的特殊的条件随机场,称为线性链条件随机场(Linear Chain CRF),其定义为:
设X=(X
P(Y
则称P(Y|X)为线性链条件随机场。
步骤2,构建训练数据集。本发明训练数据集由从开放网络中爬取的描述事件的文本和与该文本一一对应的注解文件组成。
在本发明的实施例中,构建过程如下:
2.1)从开放网络中爬取至少5000条描述事件的文本。
2.2)对每一条文本包含的事件类型、事件论元以及论元角色进行人工标注,生成与爬取文本一一对应的注解文件。其中,事件类型指文本中包含的事件类型;事件论元指文本中与事件相关的元素,一般是命名实体;论元角色指事件论元在事件中扮演的角色。
以新闻文本“也门安全部门官员25日说,该国西南部港口城市穆哈当天发生地雷爆炸事件,导致至少4名平民死亡。”为例,根据预定义的事件模式,事件抽取系统应识别出该文本中包含“灾害/意外-爆炸”和“人生-死亡”两个事件,并抽取出“灾害/意外-爆炸”事件发生的“时间”为“当天”,“地点”为“该国西南部港口城市穆哈”,造成的“死亡人数”为“至少4名”,以及“人生-死亡”事件发生的“时间”为“当天”,“地点”为“该国西南部港口城市穆哈”,“死者”为“平民”。
上述示例中,“灾害/意外-爆炸”和“人生-死亡”为事件类型;“当天”、“该国西南部港口城市穆哈”、“至少4名”、“平民”为事件论元;“时间”、“地点”、“死亡人数”、“死者”为对应的论元角色。
2.3)将爬取的文本与注解文件组成训练数据集。
步骤3,对事件抽取网络BERT-FF进行训练。
3.1)配置事件抽取网络BERT-FF运行环境,包括CUDA11.0、cuDNN 8.0.4、Python3.7、PyTorch 1.7.0等不同的软件。
3.2)下载预训练语言模型BERT的预训练参数文件chinese_bert_wwm.bin到本地硬盘。
3.3)利用对比学习方法对BERT的预训练参数进行优化,得到优化后的预训练参数文件。
3.4)利用迁移学习的方法,在字级别特征提取网络中加载优化后的预训练参数文件,得到加载后的字级别特征提取网络。这种方法是在相关的预训练任务中获得已经具有较强语义表示能力的模型参数,将其加载到字级别特征提取网络中,以加快模型训练时的收敛速度,节约训练时间,并且降低欠拟合和过拟合的风险。
3.5)利用加载好字级别特征提取网络的BERT-FF,对训练数据集进行训练,得到训练好的中文事件抽取网络BERT-FF,实现如下:
网络训练的迭代次数(Epoch)设为50轮,使网络权重充分迭代,收敛到最优。每轮训练结束后在测试样本上进行测试,以事件论元抽取的F1得分为标准保存最佳测试结果和网络权重。训练时的批次大小(Batch Size)设为24,充分利用GPU的计算资源。网络优化器选择自适应动量估计(Adam)算法。学习率(Learning Rate)采用分层学习率:字级别特征提取网络的学习率设为0.00002,条件随机场的学习率设为0.002,模型其他部分的学习率设为0.0002。字级别特征提取网络基于预训练语言模型,只需微调即可收敛,因此学习率设的很小,而模型其他部分则需要从头开始充分训练。基于概率图模型的条件随机场比较难收敛,学习率需设的比较大。
步骤4,从开放网络中爬取描述事件的文本,作为测试数据集输入到训练好的中文事件抽取网络BERT-FF中进行事件抽取,输出结构化的事件信息,即事件抽取的结果,并计算事件抽取的精确率和召回率。示例地,为保证效果,爬取的文本至少为500条。
以输入新闻文本“也门安全部门官员25日说,该国西南部港口城市穆哈当天发生地雷爆炸事件,导致至少4名平民死亡。”为例,最终的事件抽取结果可以组织为键值对的结构化形式,参照图4。这种结构化的形式可以方便地存储在json文件或数据库中,以便用户获取事件信息或可视化展示。
下面结合仿真实验对本发明的效果做进一步的描述。
1、实验条件
本发明仿真实验的硬件测试平台是:CPU为Intel(R)Xeon(R)Silver 4310,主频为2.1Ghz,内存为32GB,GPU为单张NVIDIA GeForce RTX 3080Ti;软件平台是:Ubuntu 18.04系统。
2、实验内容与结果分析
本发明的仿真实验是采用本发明的方法,在已构建的事件抽取训练数据集上,对构建的中文事件抽取网络BERT-FF进行训练。利用训练好的中文事件抽取网络BERT-FF对输入的测试文本进行事件抽取,输出结构化的事件信息,得到事件抽取的结果,并计算事件抽取的精确率和召回率。
表1为用本发明的方法对已构建数据集训练后,在测试集上的事件检测性能。
表1 不同方法的事件检测性能对比
表1展示了本发明的方法在测试集上的事件检测性能,同时以其他两种方法作为对照组进行了实验。LSTM-CRF表示经典的基于LSTM-CRF序列标注的事件抽取方法,BERT表示未使用本发明中特征融合方法的事件抽取方法,BERT-FF表示本发明的方法。Precision表示精确率,Recall表示召回率,F1表示F1得分。
对比于BERT,可以观察到,在使用了本发明的特征融合方法后,BERT-FF在事件检测的精确率上比BERT提升了5.56%,而在召回率上仅有不到1%的下降。最终计算F1得分,BERT-FF比BERT提升了2.39%。综合比较,BERT-FF的事件检测性能相比BERT有可观的提升。
表2为用本发明的方法对已构建数据集训练后,在测试集上的事件论元抽取性能。
表2 不同方法的事件论元抽取性能对比
表2展示了本发明的方法在测试集上的事件论元抽取性能,同时以其他两种方法作为对照组进行了实验。
对比于BERT,可以观察到,在加入了本发明的特征融合方法后,BERT-FF在各项指标上均有所提升,精确率提升了1.67%,召回率提升了4.50%,而最终计算F1得分提升了3.04%。综合比较,BERT-FF的事件论元抽取性能相比BERT有可观的提升。
综上所述,在加入了本发明的特征融合方法后,模型的事件检测和事件论元抽取性能均有所提升,说明融合字级别特征和词级别特征对于模型语义表示能力的优化确实起到了一定作用,证明了本章提出的特征融合方法在事件抽取任务上的有效性。
以上仅为本发明的一个具体实例,以便于本技术领域的技术人员理解本发明,但本发明不限于该具体实例的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在本发明的保护之列。
机译: 抽取式磁盘中文件的保存方法
机译: 投票率开关铁路破坏状态监测方法基于特征融合
机译: 一种基于特征融合的行为识别方法及装置、装置及存储介质