CN109657239B - 基于注意力机制和语言模型学习的中文命名实体识别方法 - Google Patents

基于注意力机制和语言模型学习的中文命名实体识别方法 Download PDF

Info

Publication number
CN109657239B
CN109657239B CN201811517779.9A CN201811517779A CN109657239B CN 109657239 B CN109657239 B CN 109657239B CN 201811517779 A CN201811517779 A CN 201811517779A CN 109657239 B CN109657239 B CN 109657239B
Authority
CN
China
Prior art keywords
word
lstm
language model
layer
named entity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811517779.9A
Other languages
English (en)
Other versions
CN109657239A (zh
Inventor
廖伟智
马攀
王宇
阴艳超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201811517779.9A priority Critical patent/CN109657239B/zh
Publication of CN109657239A publication Critical patent/CN109657239A/zh
Application granted granted Critical
Publication of CN109657239B publication Critical patent/CN109657239B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Character Discrimination (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种基于注意力机制和语言模型学习的中文命名实体识别方法,该方法包括构建基于字的字典,对每个元素对应的ID号进行向量转换,通过restricted Self‑attention层进行组合,通过第一层Bi‑LSTM进行拼接组合并训练语言模型,通过第二层Bi‑LSTM进行拼接组合并采用条件随机场方法进行标签预测训练,将数据集进行随机排列并采用Adam优化方法进行多轮训练,利用神经网络对待识别的文本数据进行中文命名实体识别。本发明只基于字的特征,不需要进行分词和其他的词性、句法等人工特征,提高了方法的健壮性和鲁棒性;而且本发明对未登录词表现良好,且性能优良,可以很好的提高下游任务的性能。

Description

基于注意力机制和语言模型学习的中文命名实体识别方法
技术领域
本发明属于实体识别技术领域,具体涉及一种基于注意力机制和语言模型学习的中文命名实体识别方法。
背景技术
中文命名实体识别问题是自然语言处理领域最常见的问题之一,其主要任务是给非结构化的文本中的字或词打上标签,便于提取文本中的有效信息。
中文命名体识别任务是对中文文本数据中的实体进行识别,提取文本中的有效信息,具体的,识别的对象是中文文本数据,如一句话或一段文章;识别的要求是标记出这段文字中的实体名称,如人名、地名、机构名、称谓等等。
目前进行中文命名实体识别的方法主要分为三类:
1.基于规则的无监督方法:
主要是根据待识别的命名实体在语言学上的表现形式,人为设置一些规则去匹配句子的句法结构,标记处命名实体。基于规则的方法多采用语言学专家手工构造规则模板,选用特征包括统计信息、标点符号、关键字、指示词和方向词、位置词(如尾字)、中心词等方法,以模式和字符串相匹配为主要手段,这类***大多依赖于知识库和词典的建立。这类方法的效果很大程度上依赖于设定规则的语言学专家的水平,而且对于不同的领域需要设置不同的规则去适应,所以比较消耗时间和人力。
2.基于概率统计的方法:
统计机器学习方法将命名实体识别当作序列标注任务来看,通过大规模的语料学习来获得语言模型,从而实现对句子各个位置的标注。这类方法常用的模型有:生成式模型隐马尔科夫模型(HMM)和判别式模型条件随机场(CRF)等。
3.基于神经网络的方法:
随着神经网络的快速发展,特别是循环神经网络的发展,对处理序列任务带来的了重大性能提高,加上词向量的发展,使神经网络处理文本数据成为一种途径。加上神经网络强大的特征提取能力,不要多余的人工特征就能达到很好的性能。在处理序列标注问题比较突出的就是LSTM+CRF模型,其在英文命名实体识别中取得了很好的效果,但是由于中文语言特性的关系,这套模型在中文命名实体识别任务中表现的没有那么出色。所以中文基于字还是基于词或者基于字和词混合特征的研究一直在进行,而且有论文指出基于字特征的命名实体识别任务的表现效果要好于基于词特征的效果,而且基于字特征的方法对于未登录词的表现要好于基于词特征的方法。
现有技术缺陷:
1.基于规则的无监督方法需要语言学专家来设置规则,而且对于不同的领域,甚至不同的文本语言风格都需要设置不同的规则,可扩展行很低。而且设置的规则如果严格的话,对于有效信息的遗漏很大。如果太宽松的话,识别的效果很差。
2.基于概率统计的方法主要由大规模的语料库学习来获得语言模型,主要模型有隐马尔科夫模型、最大熵模型和条件随机场,这类方法很依赖于语料库的质量,而且在某些样本上表现很差,导致泛化不够,召回率偏低,表现效果不是很好。
3.目前主流的神经网络方法是利用循环神经网络(RNN)或者其他循环神经网络的变种,如LSTM、GRU等,将命名实体识别问题转换为序列标注问题。这类问题有先经过分词后再进行序列标注,但是这种方法的效果很大程度上受到分词效果的影响,而且对于未登录词的表现效果不是很好;还有研究为单纯提高神经网络模型性能,人工增加各种特征 (如词性特征、语法特征等)进神经网络的输入,这类方法虽然说对效果有一定的提高,但是人工增加的特征,增加了人的工作量,使方法复杂化,这也不符合神经网络自动提取特征的本质特点。
发明内容
本发明的发明目的是:为了克服现有中文命名实体识别方法存在的缺陷,提高识别的效果,本发明提出了一种基于注意力机制和语言模型学习的中文命名实体识别方法。
本发明的技术方案是:一种基于注意力机制和语言模型学习的中文命名实体识别方法,包括以下步骤:
A、获取已标注标签的中文命名实体识别的数据集,构建基于字的字典;
B、对步骤A构建的基于字的字典中每个元素对应的ID号进行向量转换处理;
C、将步骤B转换后的字向量通过restricted Self-attention层进行组合,获取每个中心字在附近窗口范围内与其他字向量的加权组合的字向量,挖掘中心字在附近窗口范围内的潜在的词信息;
D、将步骤C获取的字向量通过第一层Bi-LSTM进行处理,得到两个方向的每个时间步的隐藏层输出,将得到的输出进行拼接组合,并利用每个时间步的隐藏层输出训练语言模型;
E、将步骤D得到的拼接结果通过第二层Bi-LSTM进行处理,得到二次拼接组合的输出,并采用条件随机场方法进行标签预测训练;
F、将已标注标签的中文命名实体识别的数据集进行随机排列处理,并采用Adam优化方法循环步骤A-E对神经网络进行多轮训练;
G、利用神经网络对待识别的文本数据进行处理,完成中文命名实体识别。
进一步地,所述步骤A获取已标注标签的中文命名实体识别的数据集,构建基于字的字典,具体为
对已标注标签的中文命名实体识别的数据集中的每一个字和符号分配一个ID号,并在句子的开头和结尾分别添加标识。
进一步地,所述步骤A还包括构建标签序列;所述标签序列包括正向语言模型标签、反向语言模型标签和每个字对应命名体类别的标签。
进一步地,所述步骤C将步骤B转换后的字向量通过restricted Self-attention层进行组合,获取字组合成的词信息,具体为
设定窗口大小,将中心字的窗口大小区域内的每个字与中心字进行相关性比较,计算每个字与中心字的相关性值;然后根据区域内每个字和中心字的相关性进行加权组合,计算中心字向量,获取由字组合成的潜在词信息。
进一步地,所述计算每个字与中心字的相关性值的公式为具体为 f(xi,q)=ωTσ(W(1)xi+W(2)q)
其中,q表示中心字,xi表示中心字附近window-size窗口大小的第i个字,W(1)表示xi需要经过的全连接层对应权值矩阵,W(2)表示q需要经过的全连接层对应权值矩阵,wT表示相关性向量。
进一步地,所述计算中心字向量的公式为具体为
Figure RE-GDA0001933829270000031
p(z|x,q)=soft max(a)
Figure RE-GDA0001933829270000032
Figure RE-GDA0001933829270000033
其中,a表示每一个xi和q计算的相关性值拼接之后的向量,p(z|x,q)表示所有对应 xi和q的相关性值经过softmax函数后的输出值,p(z=i|x,q)表示xi和q的相关性值在整个序列上的权重值,z表示中心字附近window-size窗口内所有xi关于q的权重值集合,x 表示包含xi的序列,s表示加权组合的计算值。
进一步地,所述步骤D中将步骤C获取的字向量通过第一层Bi-LSTM进行处理,得到两个方向的每个时间步的隐藏层输出,将得到的输出进行拼接组合的计算模型为
Figure RE-GDA0001933829270000041
Figure RE-GDA0001933829270000042
Figure RE-GDA0001933829270000043
Figure RE-GDA0001933829270000044
Figure RE-GDA0001933829270000045
其中,
Figure RE-GDA0001933829270000046
表示正向LSTM的t时刻的隐藏层输出,
Figure RE-GDA0001933829270000047
表示反向LSTM的t时刻的隐藏层输出,dt表示
Figure RE-GDA0001933829270000048
Figure RE-GDA0001933829270000049
的拼接结果,
Figure RE-GDA00019338292700000410
表示正向隐藏层输出经过激活函数tanh的结果,
Figure RE-GDA00019338292700000411
表示反向隐藏层输出经过激活函数tanh的结果,
Figure RE-GDA00019338292700000412
表示
Figure RE-GDA00019338292700000413
经过的全连接层对应权值矩阵,
Figure RE-GDA00019338292700000414
表示
Figure RE-GDA00019338292700000415
经过的全连接层对应权值矩阵。
进一步地,所述步骤D中利用每个时间步的隐藏层输出训练语言模型的计算模型为
Figure RE-GDA00019338292700000416
Figure RE-GDA00019338292700000417
Figure RE-GDA00019338292700000418
Figure RE-GDA00019338292700000419
其中,
Figure RE-GDA00019338292700000420
表示在t时刻用
Figure RE-GDA00019338292700000421
来预测下一个时刻的字的概率向量,
Figure RE-GDA00019338292700000422
表示在t时刻用
Figure RE-GDA00019338292700000423
来预测下一个时刻的字的概率向量,
Figure RE-GDA00019338292700000424
表示
Figure RE-GDA00019338292700000425
经过的全连接层对应权值矩阵,
Figure RE-GDA00019338292700000426
表示
Figure RE-GDA00019338292700000427
经过的全连接层对应权值矩阵,
Figure RE-GDA00019338292700000428
表示正向LSTM训练语言模型的损失函数,
Figure RE-GDA00019338292700000429
表示反向LSTM训练语言模型的损失函数,T表示序列的总的时间步。
进一步地,所述步骤D还包括分别通过计算预测的字ID和真实前后字ID之间的交叉熵,并利用步骤A构建的正向LSTM标签和反向LSTM标签计算损失,对语言模型进行优化。
进一步地,所述步骤E中采用条件随机场方法进行标签预测训练具体为
利用步骤D得到的输出,输入到第二层Bi-LSTM,再得到第二层Bi-LSTM拼接后的输出,然后在一个条件随机场里面计算标签序列的最大似然估计,并利用步骤A构建的每个字对应命名体类别的标签计算条件随机场的损失,最后将条件随机场的损失加上第二层 Bi-LSTM的语言模型的损失得到的整个神经网络的损失。
本发明的有益效果是:本发明通过构建基于字的字典,分别通过restrictedSelf-attention 层、第一层Bi-LSTM和第二层Bi-LSTM进行处理,并在第一层Bi-LSTM进行语言模型学习,最后通过条件随机场方法进行标签预测训练;本发明只基于字的特征,不需要进行分词和其他的词性、句法等人工特征,提高了方法的健壮性和鲁棒性;而且本发明对未登录词表现良好,且性能优良,可以很好的提高下游任务的性能。
附图说明
图1为本发明的中文命名实体识别方法的流程示意图;
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如图1所示,为本发明的中文命名实体识别方法的流程示意图。一种基于注意力机制和语言模型学习的中文命名实体识别方法,包括以下步骤:
A、获取已标注标签的中文命名实体识别的数据集,构建基于字的字典;
B、对步骤A构建的基于字的字典中每个元素对应的ID号进行向量转换处理;
C、将步骤B转换后的字向量通过restricted Self-attention层进行组合,获取每个中心字在附近窗口范围内与其他字向量的加权组合的字向量,挖掘中心字在附近窗口范围内的潜在的词信息;
D、将步骤C获取的字向量通过第一层Bi-LSTM进行处理,得到两个方向的每个时间步的隐藏层输出,将得到的输出进行拼接组合,并利用每个时间步的隐藏层输出训练语言模型;
E、将步骤D得到的拼接结果通过第二层Bi-LSTM进行处理,得到二次拼接组合的输出,并采用条件随机场方法进行标签预测训练;
F、将已标注标签的中文命名实体识别的数据集进行随机排列处理,并采用Adam优化方法循环步骤A-E对神经网络进行多轮训练;
G、利用神经网络对待识别的文本数据进行处理,完成中文命名实体识别。
本发明结合注意力机制(restricted self-attention)技术,并分析当前主流LSTM+CRF 模型的缺点,设计了两层双向LSTM+CRF结构,并在第一层双向LSTM的输出加入语言模型学习,提高了模型的表达能力。
上述步骤A-C为中文命名实体识别的第一阶段,即将中文文本数据转换为可以处理的数字向量,再使用restricted Self-attention技术发掘潜在的词信息;上述步骤D为中文命名实体识别的第二阶段,即通过第一层Bi-LSTM进行处理,并学习语言模型;上述步骤E-G 为中文命名实体识别的第三阶段,即通过第二层Bi-LSTM+CRF进行预测。
在本发明的一个可选实施例中,上述步骤A获取已标注标签的中文命名实体识别的数据集,构建基于字的字典,具体为:对已标注标签的中文命名实体识别的数据集中的每一个字和符号分配一个ID号,并在句子的开头和结尾分别添加标识。
上述基于字的字典包括数据集中的所有字和符号,并添加标识符<UNK>、<PAD>、和代表句子开始结尾的<S>、</S>等标识,对字典中的每个元素可以分配一个ID号;为便于后续批量化处理,本发明设定<PAD>的ID为0,其他元素就按顺序分配ID,从而可以得到关于数据集的字典,字典中的每个元素都有与之一一对应的ID编号。利用制作好的字典可以将中文文本数据转化为可以给神经网络输入的数字信息。例如一句中文文本,“我爱北京天安门。”,一查找字典中每个字及符号对应的ID编号,“我”的ID是1,“爱“的 ID是4,“北”的ID是16,…,“。”对应的ID是10,转换后的ID序列[1,4,16,45, 46,153,86,10]。
如果使用批量训练的方法,输入的维度为[batch_size*max_len],这里batch_size表示批量输入的样本数,max_len表示批量样本中最长的一个样本长度,其他不足最长的样本用‘0’来补齐。比如一个批量batch的样本数目是2,按照最长的序列来补齐。
“我是中国人。”
“我很自豪。”
转换后的批量ID为两维的矩阵[[1,8,87,89,62,10],[1,54,465,875,10,0]],将不足最长的句子序列用O来补齐。
上述步骤A还包括构建标签序列;所述标签序列包括正向语言模型标签、反向语言模型标签和每个字对应命名体类别的标签。
上述正向LSTM标签用于正向语言模型学习,构建正向LSTM标签的方法为删除一个序列样本(如:一句话)的第一个ID,在序列最后用表示结尾“<\S>”对应的ID,例如,“我爱北京天安门。”,去掉第一个字“我”,在序列最后补上“<\S>”,这里“<\S>”在字典中对应的ID为“489”,转换后的ID标签为[4,16,45,46,153,86,10,489]。
上述反向LSTM标签的构建方法为去掉序列的最后一个字,并给序列开头补上“<S>”, 例如“我爱北京天安门。”,去掉“。”,给开头补上“<S>”,“<S>”对应的ID为789,转换后的结果[789,1,4,16,45,46,153,86]。
上述每个字对应命名体类别的标签是已经标注好的数据集的原始信息,本发明将各个标签转换为指定的数字类别。例如:原始标注数据集中的"B-PER",表示人名的开头,"I-PER", 表示人名的中间字,"E-PER",表示人名结尾字,可以将它们建立一一对应关系,"B-PER" 对应数字1,"I-PER"对应数字2,"E-PER"对应数字3,从而将原始数据集中的字符串类型的标签转换为可以处理数字信息。
在本发明的一个可选实施例中,上述步骤B对步骤A构建的基于字的字典中每个元素对应的ID号进行向量转换处理,具体为通过谷歌word2vec工具将每个ID转换为一个向量,表示为[batch_size*max_len*emb_size],其中emb_size表示设定的向量维度。
在本发明的一个可选实施例中,上述步骤C将步骤B转换后的字向量通过restricted Self-attention层进行组合,获取字组合成的词信息,具体为设定窗口大小,将中心字的窗口大小区域内的每个字与中心字进行相关性比较,计算每个字与中心字的相关性值;然后根据区域内每个字和中心字的相关性进行加权组合,计算中心字向量,获取由字组合成的潜在词信息。
本发明将步骤B转换的字向量经过restricted Self-attention层,让神经网络学习潜在的通过字组合的词信息。这里restricted表示限制窗口(window_size)大小,即不会在整个句子序列上做Self-attention,只有在自身字的附近的一个固定窗口大小的区域进行self-attention 处理。
本发明计算每个字与中心字的相关性值的公式为具体为 f(xi,q)=wTσ(W(1)xi+W(2)q)
其中,q表示中心字,xi是中心字附近window-size窗口大小的第i个字,总共有window_size个字,即i从1到window-size。用附近的每个字和中心字去做相关性比较,实现方式是将中心字经过线性变换后和经过线性变换后的附近的一个字进行向量相加。再经过σ激活函数,σ激活函数可以是sigmoid函数或者tanh函数,再乘以wT;wT是一个 emb_size维的向量,所以乘积是一个值,而这个值就是附近的x_i这个字和中心字q的相关性;W(1)表示xi需要经过的全连接层对应权值矩阵,W(2)表示q需要经过的全连接层对应权值矩阵。
本发明将附近窗口的所有字都和中心字做相关性比较,得到每个附近字和中心字的相关性得分f(xi,q),并将他们所有拼接起来,通过一个softmax激活函数将各自的相关性得分转换为相应的概率,将转换后的概率和对应的中心字向量相乘,再将结果相加,得到中心字的向量表示,这种通过字向量的权重相乘的组合形式可以让神经网络发现通过字组合成的潜在的词信息。
计算中心字向量的公式为具体为
Figure RE-GDA0001933829270000081
p(z|x,q)=soft max(a)
Figure RE-GDA0001933829270000082
Figure RE-GDA0001933829270000083
其中,a表示每一个xi和q计算的相关性值拼接之后的向量,即为列表;p(z|x,q)表示所有对应xi和q的相关性值经过softmax函数后的输出值,softmax函数可以将对应的序列的每个值转换为每个值相应的权重,整个序列的所有xi的权重之和等于1,(p(z=i|x,q)表示xi和q的相关性值在整个序列上的权重值,z表示中心字附近window-size窗口内所有xi关于q的权重值集合,x表示包含xi的n个字的序列,x={x1,x2,x3,…xi,…xn},s表示加权组合的计算值,即将每个xi对应的权重和xi进行乘积,然后把所有的加和起来的值。
本发明基于字进行中文命名实体识别,对处理未登录词有很好的效果,并且采用self-attention技术,发掘了潜在的通过字组合成的词信息,提高了模型的表达能力,而且本发明使用中心字附近限制窗口大小的方法,没有在整个序列上做self-attention,从而提高预测的精度。因为大部分中心字的信息只与附近窗口大小的字的信息有关,而且本发明使用的attention技术可以在窗口大小内上神经网络自动发掘和中心字有关的字的权重,和中心字相关性高的权重值大,和中心字相关性低的权重值低。
在本发明的一个可选实施例中,上述步骤D将步骤C获取的字向量通过第一层 Bi-LSTM进行处理,得到两个方向的每个时间步的隐藏层输出,将得到的输出进行拼接组合,并利用每个时间步的隐藏层输出训练语言模型。
对于一句话,“我爱你”,经过第一层Bi-LSTM后的隐藏层输出可以预测这个字的前后字,这样可以让Bi-LSTM的隐层的输出更加符合文本语言模型。具体计算模型为
Figure RE-GDA0001933829270000091
Figure RE-GDA0001933829270000092
Figure RE-GDA0001933829270000093
Figure RE-GDA0001933829270000094
Figure RE-GDA0001933829270000095
其中,
Figure RE-GDA0001933829270000096
表示正向LSTM的t时刻的隐藏层输出,
Figure RE-GDA0001933829270000097
表示反向LSTM的t时刻的隐藏层输出,xt表示t时刻的输入,即一个字向量;dt表示
Figure RE-GDA0001933829270000098
Figure RE-GDA0001933829270000099
的拼接结果,,即将正向LSTM 和反向LSTM的t时刻隐藏层的输出拼接起来的结果,dt的维度为
Figure RE-GDA00019338292700000910
Figure RE-GDA00019338292700000911
的维度和,
Figure RE-GDA00019338292700000912
表示正向隐藏层输出经过激活函数tanh的结果,即正向隐藏层输出乘以一个权值矩阵后的结果再经过一个tanh的激活函数的最后结果,
Figure RE-GDA00019338292700000913
表示反向隐藏层输出经过激活函数tanh的结果,即反向隐藏层输出乘以一个权值矩阵后的结果再经过一个tanh的激活函数的最后结果,
Figure RE-GDA00019338292700000914
表示
Figure RE-GDA00019338292700000915
经过的全连接层对应权值矩阵,
Figure RE-GDA00019338292700000916
表示
Figure RE-GDA00019338292700000917
经过的全连接层对应权值矩阵。
Figure RE-GDA00019338292700000918
Figure RE-GDA00019338292700000919
为Bi-LSTM隐层的输出经过线性变化后,再经过tanh激活函数的输出,这样可以直接用
Figure RE-GDA00019338292700000920
Figure RE-GDA00019338292700000921
来预测下前后的字信息。利用每个时间步的隐藏层输出训练语言模型的计算模型为
Figure RE-GDA00019338292700000922
Figure RE-GDA00019338292700000923
Figure RE-GDA00019338292700000924
Figure RE-GDA00019338292700000925
其中,
Figure RE-GDA00019338292700000926
表示在t时刻用
Figure RE-GDA00019338292700000927
来预测下一个时刻的字的概率向量,向量中每个元素都是一个概率,整个向量的所有元素概率和为1,
Figure RE-GDA00019338292700000928
表示在t时刻用
Figure RE-GDA00019338292700000929
来预测下一个时刻的字的概率向量,向量中每个元素都是一个概率,整个向量的所有元素概率和为1,
Figure RE-GDA0001933829270000101
表示
Figure RE-GDA0001933829270000102
经过的全连接层对应权值矩阵,
Figure RE-GDA0001933829270000103
表示
Figure RE-GDA0001933829270000104
经过的全连接层对应权值矩阵,
Figure RE-GDA0001933829270000105
表示正向LSTM训练语言模型的损失函数,使用极大似然估计方式,
Figure RE-GDA0001933829270000106
表示反向LSTM训练语言模型的损失函数,使用极大似然估计方式,T表示序列的总的时间步,即序列的长度。
计算
Figure RE-GDA0001933829270000107
Figure RE-GDA0001933829270000108
的值,这两个值越小说明学习的语言模型越好,分别通过计算预测的字 ID和真实前后字ID之间的交叉熵,并利用步骤A构建的正向LSTM标签和反向LSTM标签计算损失,对语言模型进行优化。
在本发明的一个可选实施例中,上述步骤E将步骤D得到的词向量通过第二层 Bi-LSTM进行处理,具体为将第一层Bi-LSTM的输出作为第二层Bi-LSTM的输入,采用与第一层Bi-LSTM相同的计算图模型进行处理,但第二层Bi-LSTM不进行语言模型的学习,而是将隐藏层输出拼接之后直接用条件随机场的方法进行标签预测训练,具体为利用步骤D得到的输出,输入到第二层Bi-LSTM,再得到第二层Bi-LSTM拼接后的输出,然后在一个条件随机场里面计算标签序列的最大似然估计,并利用步骤A构建的每个字对应命名体类别的标签计算条件随机场的损失,最后将条件随机场的损失加上第二层 Bi-LSTM的语言模型的损失得到的整个神经网络的损失。
本发明在第一层Bi-LSTM后使用了语言模型的学习,在神经网络最终的损失计算中不光加上了标签预测的损失,还加上了语言模型的损失,形成一个多任务学习,这样就可以使得第一层Bi-LSTM产生的输出更加符合语言特性,让第二层Bi-LSTM接受的输入具有序列化,从而提高了识别效果。
在本发明的一个可选实施例中,上述步骤F将已标注标签的中文命名实体识别的数据集进行随机排列处理,并采用Adam优化方法循环步骤A-E对神经网络进行多轮训练,一轮表示在整个数据集上训练一次,从而不断降低整个神经网络的损失,优化参数。
在本发明的一个可选实施例中,上述步骤G在神经网络训练完成后,利用神经网络对待识别的文本数据进行处理,神经网络会返回条件随机场生成的转移概率矩阵和生成logit 值。其中生成logit值的方法为第二层Bi-LSTM双向输出拼接之后,维度为 [batch_size*max_len*hidden_size],其中hidden_size为定义LSTM是设定的超参数,再将其进行全连接层,将最后一维hidden_size转化为最终需要预测的标签类别的数目target_num,最终的logit维度为[batch_size*max_len*target_num],得到移概率矩阵和logit值即可通过维特比算法进行解码,标记出每个字的最终类别。
本发明采用谷歌开源且预训练好的word2vec将中文文本的字转换为向量输入,通过 restricted Self-attention将输入的字符信息进行组合,让神经网络发现通过字组合成的潜在的词信息,然后通过第一层的Bi-LSTM,得到的两个单向的输出进行拼接组合,这里本发明添加了一个额外的学习任务,即通过第一层Bi-LSTM的输入学习一个语言模型,使得第一层的输出更加符合语言的特点,再将第一层Bi-LSTM拼接后的输出当做第二层Bi-LSTM的输入,然后得到两个方向的LSTM输出再拼接,再经过一个全连接层,通过条件随机场CRF 的方法进行预测标签。
本发明针对当前中文命名实体识别方法存在的问题,并结合神经网络技术,通过只构建基于字的特征输入的方法,直接识别出中文文本中的实体名;这种方法只基于字的特征,不需要进行分词和其他的词性、句法等人工特征,这样便于方法的健壮性和鲁棒性;而且本发明对未登录词表现良好,且性能优良,可以很好的提高,下游任务(如:信息检索和关键字识别)的性能。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。

Claims (8)

1.一种基于注意力机制和语言模型学习的中文命名实体识别方法,其特征在于,包括以下步骤:
A、获取已标注标签的中文命名实体识别的数据集,构建基于字的字典;所述步骤A获取已标注标签的中文命名实体识别的数据集,构建基于字的字典,具体为
对已标注标签的中文命名实体识别的数据集中的每一个字和符号分配一个ID号,并在句子的开头和结尾分别添加标识;
所述步骤A还包括构建标签序列;所述标签序列包括正向语言模型标签、反向语言模型标签和每个字对应命名体类别的标签;
B、对步骤A构建的基于字的字典中每个元素对应的ID号进行向量转换处理;
C、将步骤B转换后的字向量通过restricted Self-attention层进行组合,获取每个中心字在附近窗口范围内与其他字向量的加权组合的字向量,挖掘中心字在附近窗口范围内的潜在的词信息;
D、将步骤C获取的字向量通过第一层Bi-LSTM进行处理,得到两个方向的每个时间步的隐藏层输出,将得到的输出进行拼接组合,并利用每个时间步的隐藏层输出训练语言模型;
E、将步骤D得到的拼接结果通过第二层Bi-LSTM进行处理,得到二次拼接组合的输出,并采用条件随机场方法进行标签预测训练;
F、将已标注标签的中文命名实体识别的数据集进行随机排列处理,并采用Adam优化方法循环步骤A-E对神经网络进行多轮训练;
G、利用神经网络对待识别的文本数据进行处理,完成中文命名实体识别。
2.如权利要求1所述的基于注意力机制和语言模型学习的中文命名实体识别方法,其特征在于,所述步骤C将步骤B转换后的字向量通过restricted Self-attention层进行组合,获取每个中心字在附近窗口范围内与其他字向量的加权组合的字向量,挖掘中心字在附近窗口范围内的潜在的词信息,具体为
设定窗口大小,将中心字的窗口大小区域内的每个字与中心字进行相关性比较,计算每个字与中心字的相关性值;然后根据区域内每个字和中心字的相关性进行加权组合,计算中心字向量,获取由字组合成的潜在词信息。
3.如权利要求2所述的基于注意力机制和语言模型学习的中文命名实体识别方法,其特征在于,所述计算每个字与中心字的相关性值的公式具体为
f(xi,q)=wTσ(W(1)xi+W(1)q)
其中,σ表示激活函数,q表示中心字,xi表示中心字附近window-size窗口大小的第i个字,W(1)表示xi需要经过的全连接层对应权值矩阵,W(2)表示q需要经过的全连接层对应权值矩阵,wT表示相关性向量。
4.如权利要求3所述的基于注意力机制和语言模型学习的中文命名实体识别方法,其特征在于,所述计算中心字向量的公式具体为
Figure FDA0002394631490000021
p(z|x,q)=softmax(a)
Figure FDA0002394631490000022
Figure FDA0002394631490000023
其中,a表示每一个xi和q计算的相关性值拼接之后的向量,p(z|x,q)表示所有对应xi和q的相关性值经过softmax函数后的输出值,p(z=i|x,q)表示xi和q的相关性值在整个序列上的权重值,z表示中心字附近window-size窗口内所有xi关于q的权重值集合,x表示包含xi的序列,n表示n个字,s表示加权组合的计算值。
5.如权利要求4所述的基于注意力机制和语言模型学习的中文命名实体识别方法,其特征在于,所述步骤D中将步骤C获取的字向量通过第一层Bi-LSTM进行处理,得到两个方向的每个时间步的隐藏层输出,将得到的输出进行拼接组合的计算模型为
Figure FDA0002394631490000024
Figure FDA0002394631490000025
Figure FDA0002394631490000026
Figure FDA0002394631490000027
Figure FDA0002394631490000028
其中,
Figure FDA0002394631490000029
表示正向LSTM的t时刻的隐藏层输出,
Figure FDA00023946314900000210
表示反向LSTM的t时刻的隐藏层输出,dt表示
Figure FDA00023946314900000211
Figure FDA00023946314900000212
的拼接结果,
Figure FDA00023946314900000213
表示正向隐藏层输出经过激活函数tanh的结果,
Figure FDA00023946314900000214
表示反向隐藏层输出经过激活函数tanh的结果,
Figure FDA0002394631490000031
表示
Figure FDA0002394631490000032
经过的全连接层对应权值矩阵,
Figure FDA0002394631490000033
表示
Figure FDA0002394631490000034
经过的全连接层对应权值矩阵。
6.如权利要求5所述的基于注意力机制和语言模型学习的中文命名实体识别方法,其特征在于,所述步骤D中利用每个时间步的隐藏层输出训练语言模型的计算模型为
Figure FDA0002394631490000035
Figure FDA0002394631490000036
Figure FDA0002394631490000037
Figure FDA0002394631490000038
其中,
Figure FDA0002394631490000039
表示在t时刻用
Figure FDA00023946314900000310
来预测下一个时刻的字的概率向量,
Figure FDA00023946314900000311
表示在t时刻用
Figure FDA00023946314900000312
来预测下一个时刻的字的概率向量,
Figure FDA00023946314900000313
表示
Figure FDA00023946314900000314
经过的全连接层对应权值矩阵,
Figure FDA00023946314900000315
表示
Figure FDA00023946314900000316
经过的全连接层对应权值矩阵,
Figure FDA00023946314900000317
表示正向LSTM训练语言模型的损失函数,
Figure FDA00023946314900000318
表示反向LSTM训练语言模型的损失函数,T表示序列的总的时间步。
7.如权利要求6所述的基于注意力机制和语言模型学习的中文命名实体识别方法,其特征在于,所述步骤D还包括分别通过计算预测的字ID和真实前后字ID之间的交叉熵,并利用步骤A构建的正向LSTM标签和反向LSTM标签计算损失,对语言模型进行优化。
8.如权利要求7所述的基于注意力机制和语言模型学习的中文命名实体识别方法,其特征在于,所述步骤E中采用条件随机场方法进行标签预测训练具体为
利用步骤D得到的输出,输入到第二层Bi-LSTM,再得到第二层Bi-LSTM拼接后的输出,然后在一个条件随机场里面计算标签序列的最大似然估计,并利用步骤A构建的每个字对应命名体类别的标签计算条件随机场的损失,最后将条件随机场的损失加上第二层Bi-LSTM的语言模型的损失得到的整个神经网络的损失。
CN201811517779.9A 2018-12-12 2018-12-12 基于注意力机制和语言模型学习的中文命名实体识别方法 Active CN109657239B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811517779.9A CN109657239B (zh) 2018-12-12 2018-12-12 基于注意力机制和语言模型学习的中文命名实体识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811517779.9A CN109657239B (zh) 2018-12-12 2018-12-12 基于注意力机制和语言模型学习的中文命名实体识别方法

Publications (2)

Publication Number Publication Date
CN109657239A CN109657239A (zh) 2019-04-19
CN109657239B true CN109657239B (zh) 2020-04-21

Family

ID=66113875

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811517779.9A Active CN109657239B (zh) 2018-12-12 2018-12-12 基于注意力机制和语言模型学习的中文命名实体识别方法

Country Status (1)

Country Link
CN (1) CN109657239B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110147551B (zh) * 2019-05-14 2023-07-11 腾讯科技(深圳)有限公司 多类别实体识别模型训练、实体识别方法、服务器及终端
CN111160467B (zh) * 2019-05-31 2021-12-10 北京理工大学 一种基于条件随机场和内部语义注意力的图像描述方法
CN110298043B (zh) * 2019-07-03 2023-04-07 吉林大学 一种车辆命名实体识别方法及***
CN110334189B (zh) * 2019-07-11 2023-04-18 河南大学 基于长短时和自注意力神经网络的微博话题标签确定方法
CN110705272A (zh) * 2019-08-28 2020-01-17 昆明理工大学 一种面向汽车发动机故障诊断的命名实体识别方法
CN110598213A (zh) * 2019-09-06 2019-12-20 腾讯科技(深圳)有限公司 一种关键词提取方法、装置、设备及存储介质
CN110619124B (zh) * 2019-09-19 2023-06-16 成都数之联科技股份有限公司 一种结合注意力机制与双向lstm的命名实体识别方法及***
CN111079418B (zh) * 2019-11-06 2023-12-05 科大讯飞股份有限公司 命名体识别方法、装置、电子设备和存储介质
CN110826334B (zh) * 2019-11-08 2023-04-21 中山大学 一种基于强化学习的中文命名实体识别模型及其训练方法
CN110969020B (zh) * 2019-11-21 2022-10-11 中国人民解放军国防科技大学 基于cnn和注意力机制的中文命名实体识别方法、***及介质
CN113033192B (zh) * 2019-12-09 2024-04-26 株式会社理光 一种序列标注的训练方法、装置及计算机可读存储介质
CN111223489B (zh) * 2019-12-20 2022-12-06 厦门快商通科技股份有限公司 一种基于Attention注意力机制的特定关键词识别方法及***
CN111222339B (zh) * 2020-01-13 2023-05-23 华南理工大学 一种基于对抗多任务学习的医疗咨询命名实体识别方法
CN113139382A (zh) * 2020-01-20 2021-07-20 北京国双科技有限公司 命名实体识别方法及装置
CN111274829B (zh) * 2020-02-07 2023-06-16 中国科学技术大学 一种利用跨语言信息的序列标注方法
CN111209754B (zh) * 2020-02-25 2023-06-02 桂林电子科技大学 一种用于越南语实体识别的数据集构造方法
CN111368544B (zh) * 2020-02-28 2023-09-19 中国工商银行股份有限公司 命名实体识别方法及装置
CN111522964A (zh) * 2020-04-17 2020-08-11 电子科技大学 一种藏医药文献核心概念挖掘方法
CN111444721B (zh) * 2020-05-27 2022-09-23 南京大学 一种基于预训练语言模型的中文文本关键信息抽取方法
CN113743116A (zh) * 2020-05-28 2021-12-03 株式会社理光 命名实体识别的训练方法、装置及计算机可读存储介质
CN111651995A (zh) * 2020-06-07 2020-09-11 上海建科工程咨询有限公司 基于深度循环神经网络的事故信息自动提取方法及***
CN111738169B (zh) * 2020-06-24 2023-05-23 北方工业大学 一种基于端对端网络模型的手写公式识别方法
CN112989811B (zh) * 2021-03-01 2022-09-09 哈尔滨工业大学 一种基于BiLSTM-CRF的历史典籍阅读辅助***及其控制方法
CN112883737B (zh) * 2021-03-03 2022-06-14 山东大学 基于中文命名实体识别的机器人语言指令分析方法及***
CN113158658B (zh) * 2021-04-26 2023-09-19 中国电子科技集团公司第二十八研究所 一种基于知识嵌入的结构化管制指令提取方法
WO2023004528A1 (zh) * 2021-07-26 2023-02-02 深圳市检验检疫科学研究院 一种基于分布式***的并行化命名实体识别方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017045453A (ja) * 2015-08-27 2017-03-02 ゼロックス コーポレイションXerox Corporation 固有表現抽出用ドキュメント専用地名辞典
CN106569998A (zh) * 2016-10-27 2017-04-19 浙江大学 一种基于Bi‑LSTM、CNN和CRF的文本命名实体识别方法
CN107797992A (zh) * 2017-11-10 2018-03-13 北京百分点信息科技有限公司 命名实体识别方法及装置
CN107977361A (zh) * 2017-12-06 2018-05-01 哈尔滨工业大学深圳研究生院 基于深度语义信息表示的中文临床医疗实体识别方法
CN108628823A (zh) * 2018-03-14 2018-10-09 中山大学 结合注意力机制和多任务协同训练的命名实体识别方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017045453A (ja) * 2015-08-27 2017-03-02 ゼロックス コーポレイションXerox Corporation 固有表現抽出用ドキュメント専用地名辞典
CN106569998A (zh) * 2016-10-27 2017-04-19 浙江大学 一种基于Bi‑LSTM、CNN和CRF的文本命名实体识别方法
CN107797992A (zh) * 2017-11-10 2018-03-13 北京百分点信息科技有限公司 命名实体识别方法及装置
CN107977361A (zh) * 2017-12-06 2018-05-01 哈尔滨工业大学深圳研究生院 基于深度语义信息表示的中文临床医疗实体识别方法
CN108628823A (zh) * 2018-03-14 2018-10-09 中山大学 结合注意力机制和多任务协同训练的命名实体识别方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于CRF 和Bi-LSTM 的保险名称实体识别;陈彦妤 等;《智能计算机与应用》;20180630;第8卷(第3期);第111-114页 *
基于深度神经网络的命名实体识别;GUL Khan Safi Qamas 等;《技术研究》;20171030;第29-35页 *

Also Published As

Publication number Publication date
CN109657239A (zh) 2019-04-19

Similar Documents

Publication Publication Date Title
CN109657239B (zh) 基于注意力机制和语言模型学习的中文命名实体识别方法
CN108460013B (zh) 一种基于细粒度词表示模型的序列标注模型及方法
CN109992782B (zh) 法律文书命名实体识别方法、装置及计算机设备
CN108628823B (zh) 结合注意力机制和多任务协同训练的命名实体识别方法
CN110245229B (zh) 一种基于数据增强的深度学习主题情感分类方法
CN108009148B (zh) 基于深度学习的文本情感分类表示方法
CN110263325B (zh) 中文分词***
CN111738007B (zh) 一种基于序列生成对抗网络的中文命名实体识别数据增强算法
CN110765775A (zh) 一种融合语义和标签差异的命名实体识别领域自适应的方法
CN111666758B (zh) 中文分词方法、训练设备以及计算机可读存储介质
CN108415906B (zh) 基于领域自动识别篇章机器翻译方法、机器翻译***
CN111243699A (zh) 基于字词信息融合的中文电子病历实体抽取方法
CN113505200B (zh) 一种结合文档关键信息的句子级中文事件检测的方法
CN112163089B (zh) 一种融合命名实体识别的高技术文本分类方法及***
CN113704416B (zh) 词义消歧方法、装置、电子设备及计算机可读存储介质
CN111368542A (zh) 一种基于递归神经网络的文本语言关联抽取方法和***
CN111222318A (zh) 基于双通道双向lstm-crf网络的触发词识别方法
CN113723103A (zh) 融合多源知识的中文医学命名实体和词性联合学习方法
CN113065349A (zh) 基于条件随机场的命名实体识别方法
Ye et al. Improving cross-domain Chinese word segmentation with word embeddings
CN111222329B (zh) 句向量训练方法及模型、句向量预测方法及***
Szűcs et al. Seq2seq deep learning method for summary generation by lstm with two-way encoder and beam search decoder
CN113076718B (zh) 一种商品属性抽取方法及其***
CN114239584A (zh) 一种基于自监督学习的命名实体识别方法
CN113536799A (zh) 基于融合注意力的医疗命名实体识别建模方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant