一种基于序列生成对抗网络的中文命名实体识别数据增强算法转让专利
申请号 : CN202010635292.1
文献号 : CN111738007B
文献日 : 2021-04-13
发明人 : 李思 , 王蓬辉 , 李明正 , 孙忆南
申请人 : 北京邮电大学
摘要 :
权利要求 :
1.一种基于序列生成对抗网络的中文命名实体识别数据增强方法,其特征在于,采用序列生成对抗网络的方式,学习训练集中实体和非实体的关系,来进行数据增强,提高命名实体识别的性能,该方法包括以下步骤:(1)对语料库中的句子进行处理,根据句子的实体标注信息,将每个句子分成实体和非实体部分,同时将实体和非实体部分加入字典;
(2)根据实体和非实体形成的字典,将每个句子中的实体和非实体部分映射成字典中对应的索引,形成索引序列;
(3)随机初始化索引到向量的映射字典,将每个句子映射成实体和非实体对应的向量连接而成的数值矩阵;
(4)生成器采用从左到右的策略进行文本生成,双向长短期记忆神经网络(Bidirectional Long-Short Term Memory,Bi-LSTM)用于提取输出单元与之前时刻相关的特征信息,前馈神经网络将特征信息映射成所有可能的输出单元的概率;
(5)考虑当前单元的输出对于整个输出序列的影响,采用蒙特卡洛搜索的roll-out策略对之后时刻的输出单元进行采样;
(6)判别器对采样后形成的完整序列进行判断,给出相应的分数,指导生成器的数据生成;
(7)根据步骤(6)得到的判别器分数,计算当前句子的奖励和生成器的目标函数,利用反向传播和梯度更新获得良好的生成器模型,来自动生成大量数据;
(8)将步骤(7)中生成数据与步骤(1)的字典进行字符串匹配,得到生成数据对应的实体标签;
(9)将生成的文本数据用于扩大训练集,并通过字向量字典将训练集中的句子数值化为向量矩阵;
(10)采用双向长短期记忆神经网络来提取输入句子中每个字符上下文相关的特征向量表示;
(11)采用条件随机场解码获得每个字符对应的预测标签,计算损失函数,利用反向传播计算模型中的参数;
(12)不断重复步骤(9)到步骤(11),在开发集上测试训练的命名实体识别模型,选取在开发集上F值最大的模型,进行保存。
2.如权利要求1中所述方法,其特征在于,非训练情况下,实体识别的过程包括:(2.1)将测试集中句子通过字向量字典映射成对应的向量矩阵;
(2.2)将每个句子的向量表示输入到双向长短期记忆神经网络,得到每个句子和上下文相关的特征表示;
(2.3)采用条件随机场,解码得到测试集中每个句子的最优标签序列,作为命名实体识别的结果。
3.如权利要求1所述的方法,其特征在于,所述步骤(1)中,对语料库中的句子进行处理,根据句子的实体标注信息,将每个句子分成实体和非实体部分,同时将实体和非实体部分加入字典,具体过程:
假设一个文本序列{c1,c2,c3,c4,c5,c6}的标签是{O,O,B-PER,I-PER,O,O},将c1c2,c5c6归为非实体部分,c3c4归为实体部分,然后将它们和对应的标签加入到字典中。
4.如权利要求1所述的方法,其特征在于,所述的步骤(4)中,双向长短期记忆神经网络用于提取输出单元与之前时刻相关的特征信息,前馈神经网络将特征信息映射成所有可能的输出单元的概率,计算过程如下:hi=LSTM(hi-1,li-1)p(li|l0,l1,…,li-1)=softmax(W·hi+b)其中LSTM表示的是LSTM单元,hi-1指的是i-1时刻生成器中LSTM的隐层输出,W和b是前馈网络的可训练的参数权重,采用hi-1来初始化i时刻的LSTM是为了引入前一时刻的信息,softmax用于归一化。
5.如权利要求1中所述的方法,其特征在于,所述的步骤(5)中,采用蒙特卡洛搜索的roll-out策略对之后时刻的输出单元进行采样:{(l1,l2,…,lm)1,(l1,l2,…,lm)2,…,(l1,l2,…,lm)K}=MC((l1,…,li),K)其中li是当前时刻的输出单元,m是设定的最大输出序列长度,K是蒙特卡洛搜索的采样次数,MC是蒙特卡洛搜索方法。
6.如权利要求1中所述的方法,其特征在于,所述的步骤(6)中判别器对采样后形成的完整序列进行判断,给出相应的分数,具体计算过程:o=max{h1,h2,…,hm}p=sigmoid(Wo*o+bo)其中 是字符ci的字向量,ti是字符ci对应的标签, 和 是卷积核的参数,window是卷积核的窗口大小,max是指最大池化操作,用于得到最终的文本特征表示,Wo和bo用于将文本特征映射到输入文本为真实文本的概率分数,sigmoid用于将输出概率限制在0到1之间。
7.如权利要求1中所述的方法,其特征在于,所述的步骤(7)中当前句子的奖励和生成器的目标函数,具体计算过程:
其中Ri是i时刻生成器获得的奖励,J(θ)是生成器的目标函数,Discriminator是指在判别器的计算过程,K是蒙特卡洛搜索的采样次数,Gθ是生成器的参数,m是设定的最大输出序列长度。
说明书 :
一种基于序列生成对抗网络的中文命名实体识别数据增强
算法
技术领域
背景技术
域,人们利用深度神经网络,实现了图像中的目标检测,比如利用卷积神经网络和候选窗结
合,实现对图像中的行人进行检测;在语音领域,深度学习则被用于语音合成和识别,为我
们提供了智能的语音系统;在自然语言处理领域,深度学习更是被应用在了各个生活场景,
比如利用神经网络分析用户的浏览记录和消费行为,推送用户可能喜欢的产品,以及利用
大量的平行语料库训练翻译系统,使机器达到高水平的翻译能力。随着互联网的迅速发展,
其产生的用户信息也越来越多,如何能够自动化地从用户信息中提取有用信息,来服务用
户,具有十分重要的意义。中文命名实体识别作为信息提取的上游任务,其发展对于信息提
取技术十分关键。
提取文本中的关键实体信息,了解文本中的实体和实体关系,这对于机器翻译、对话系统和
知识图谱的构建都有十分重要的作用。
边界。用于命名实体识别的传统方法包括最大熵模型、支持向量机模型以及条件随机场。近
年来发展的深度学习方法,比如循环神经网络、卷积神经网络等也被广泛应用于中文命名
实体识别上,并且在几个大型语料库上取得了较高的准确率。
博、医疗等领域的标注语料库很少,使得训练的神经网络无法在该领域上达到很好的准确
率。近年来,为了提高准确率,在微博、医疗等领域上的命名实体识别任务,主要从两个方面
着手。
重,来提取文本中更加重要的信息。另一方面引入外部资源,也可以帮助提高命名实体识别
的准确性。外部资源包括额外的实体字典、大规模的无标注或弱标注的语料库等。这些额外
的资源通常以额外特征的形式集成到模型中。
制,来获取医疗文本中的关键信息和文本特征。
人工设计的特征,一定程度上增强了模型识别在训练集中未出现的实体的能力。其中实体
字典的加入方式是:如果一个字符的n-gram模板出现在实体字典中,那么会在这个字符的
字向量后面拼接一个数值为1的向量,否则拼接一个数值为0的向量。
“Incorporating dictionaries into deep neural networks for the Chinese
clinical named entity recognition”现有技术中:
发明内容
成多样化的训练数据,扩大训练集,减轻缺乏大量标注数据的影响,提高命名实体识别的性
能。
成器生成数据的质量,最终利用高质量的生成数据来扩大训练集,达到提高命名实体识别
性能的目的。
的特征信息,前馈神经网络将特征信息映射成所有可能的输出单元的概率。
过程如下:
息,softmax用于归一化。
用于将文本特征映射到输入文本为真实文本的概率分数,sigmoid用于将输出概率限制在0
到1之间。
题;同时利用强化学习的方式建立生成器和判别器之间的联系,解决了梯度更新无法在生
成器和判别器之间传播的问题,同时通过生成器学习实体和非实体的关系,自动生成标注
数据,减轻了缺乏大量标注数据的影响,提高了命名实体识别的性能。
附图说明
具体实施方式
本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人
员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范
围。其中,本实施例中出现的缩略语和关键术语定义如下:
c5,c6}的标签是{O,O,B-PER,I-PER,O,O},可以将c1c2,c5c6归为非实体部分,c3c4归为实体部
分,然后将它们和对应的标签加入到字典中。
的特征信息,前馈神经网络将特征信息映射成所有可能的输出单元的概率。计算过程如下:
息。
用于将文本特征映射到输入文本为真实文本的概率分数,sigmoid用于将输出概率限制在0
到1之间。
句子的奖励和生成器的目标函数,具体计算过程:
向量维度为n,经过双向长短期记忆神经网络,提取当前时刻输出单元与之前时刻的单元相
关的特征;经过前馈神经网络,将提取到的特征映射到所有可能输出单元的概率,取概率值
最大的单元作为当前时刻的输出单元;同时为了解决生成器和判别器的梯度更新传递的问
题,引入强化学习的机制,将判别器的输出结果作为奖励,指导生成器的数据生成过程。生
成器生成的数据将联合原始训练集,用于训练命名实体识别模型。
了生成文本没有标签的问题;同时利用强化学习的方式建立生成器和判别器之间的联系,
解决了梯度更新无法在生成器和判别器之间传播的问题,最后通过生成器学习实体和非实
体的关系,自动生成标注数据,减轻了缺乏大量标注数据的影响,提高了命名实体识别的性
能。
盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。