CN114925695A - 一种命名实体识别方法、系统、设备及存储介质 - Google Patents
一种命名实体识别方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN114925695A CN114925695A CN202210547075.6A CN202210547075A CN114925695A CN 114925695 A CN114925695 A CN 114925695A CN 202210547075 A CN202210547075 A CN 202210547075A CN 114925695 A CN114925695 A CN 114925695A
- Authority
- CN
- China
- Prior art keywords
- layer
- named entity
- neural network
- entity recognition
- output
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种命名实体识别方法、系统、设备及存储介质,步骤一,构建BERT预训练语言模型,将中文语句输出至BERT预训练语言模型中,输出具有语义特征表示的向量;步骤二,构建BiLSTM神经网络模型,将BERT预训练语言模型的输出结果作为BiLSTM神经网络模型的输入;步骤三,将BiLSTM神经网络模型的输出结果进行BIO联合标注,得到正确的标签,进行标注后得到该中文语句的命名实体识别结果。有效提高了命名实体识别任务中准确率。
Description
技术领域
本发明属于信息抽取领域,涉及一种命名实体识别方法、系统、设备及存储介质。
背景技术
命名实体识别是自然语言处理中的一项基本研究任务,也是信息抽取的一个子任务,最早是在MUC-6会议上引入这一评测任务,作为信息抽取技术的子课题供广大学者讨论研究,旨在识别出自然语言文本中的专有名词和有意义的数量短语,并加以分类。
通用领域的命名实体识别已经得到了广泛研究,其识别方法可分为基于规则的方法和基于统计的方法两大类。基于规则的方法通过分析实体本身的词汇特征和短语的搭配习惯,人工构建规则集抽取预先定义的各种类别的实体,需要具备大量的专业知识,因此导致召回率低、可移植性差的问答。基于统计的方法是从给定的、己标注好的训练集出发,定义特征集合,并应用学习算法训练统计模型,完成命名实体识别。目前常用的统计模型包括支持向量机(SupportVectorMachine,SVM)、隐马尔可夫(HiddenMarkovModels,HMM)和条件随机场(ConditionalRandomFields,CRFS)等,但这些模型都需要人依靠逻辑直觉和训练语料中的统计信息手工设计出大量的特征,其识别性能很大程度上依赖于所设计特征的准确度。
发明内容
本发明的目的在于克服上述现有技术的缺点,提供一种命名实体识别方法、系统、设备及存储介质,有效提高了命名实体识别任务中准确率。
为达到上述目的,本发明采用以下技术方案予以实现:
一种命名实体识别方法,包括以下步骤:
步骤一,构建BERT预训练语言模型,将中文语句输出至BERT预训练语言模型中,输出具有语义特征表示的向量;
步骤二,构建BiLSTM神经网络模型,将BERT预训练语言模型的输出结果作为BiLSTM神经网络模型的输入;
步骤三,将BiLSTM神经网络模型的输出结果进行BIO联合标注,得到正确的标签,进行标注后得到该中文语句的命名实体识别结果。
优选的,步骤三中,对BiLSTM神经网络模型的输出结果进行BIO联合标注后,在标签的基础上,加入一层CRF约束,然后进行反向解码,得到最优路径,找到正确的标签。
进一步,使用维比特算法进行反向解码。
优选的,步骤一中,BERT预训练语言模型中中文语句的特征向量表示包括词嵌入向量和位置编码。
优选的,步骤一中,BERT预训练语言模型包括输入层、特征向量层、多头自注意力层、残差网络层、全连接层和输出层。
优选的,BiLSTM神经网络模型由四层组成,依次为输入层、前向LSTM层、反向LSTM层和输出层,通过前向LSTM层和反向LSTM层的输出进行连接表示作为BiLSTM神经网络模型的结果输出。
进一步,设t时刻前向LSTM层或反向LSTM层的输入由三个部分组成,分别为:记忆单元c_(t-1),上一个单元的隐含层h_(t-1)和输入层x_t;隐含层h_t和记忆单元c_t构成了t时刻该单元的输出;t时刻隐含层的计算流程:先算出输入门、输出门和遗忘门的信息,再计算出记忆单元内的信息,最后由输出门和记忆单元的值计算得到该时刻隐含层的值。
一种命名实体识别系统,包括:
BERT预训练语言模型模块,用于构建BERT预训练语言模型,将中文语句输出至BERT预训练语言模型中,输出具有语义特征表示的向量;
BiLSTM神经网络模型模块,用于构建BiLSTM神经网络模型,将BERT预训练语言模型的输出结果作为BiLSTM神经网络模型的输入;
命名实体识别模块,用于将BiLSTM神经网络模型的输出结果进行BIO联合标注,得到正确的标签,进行标注后得到该中文语句的命名实体识别结果。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任意一项所述命名实体识别方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述命名实体识别方法的步骤。
与现有技术相比,本发明具有以下有益效果:
本发明首先将BERT预训练模型应用到中文命名实体识别任务中,为解决中文字词的多样性表达,字词的多义性问题,得到一个语义特征向量表示序列,再通过结合BiLSTM神经网络,规避传统LSTM网络其在进行句子建模时,无法编码从右向左(从后往前)的信息,只获得了待识别文本中的上文信息,无法结合上下文语境和语义信息对句子进行全局分析的缺陷,与传统统计机器学习方法相比,降低了对人工标注训练数据语料得依赖性。
进一步,引入CRF条件随机场,加入一层约束,来避免乱序标签的现象,确保最终结果是有效的,提高了命名实体识别任务的准确性。
进一步,在Bert预训练模型,Transformer模型编码词向量时引入了位置编码的特征,位置编码会在词向量中加入了字词的位置信息,使Transformer能够区分不同位置的字词。
进一步,残差网络层能够增强模型有保留输入状态的能力,达到“经过该层后结果至少不比输入差”的效果,全连接层能够提升网络的能力。
附图说明
图1为本发明的BERT模型结构图;
图2为本发明的BiLSTM结构图图;
图3为本发明的BERT-BiLSTM-CRF结构图;
图4为本发明的反向标注问句序列;
图5为本发明的训练模型F1值评估图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例;基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,下面描述中使用的词语“前”、“后”、“左”、“右”、“上”和“下”指的是附图中的方向,词语“内”和“外”分别指的是朝向或远离特定部件几何中心的方向。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
本发明所述的命名实体识别方法,包括以下步骤:
(1)构建BERT预训练语言模型
对输入的文本语句进行向量嵌入预处理操作。
BERT模型中主要结合了Transformer模型的编码器Encoders部分,模型的输入主要由每个字符的编码(词向量),句/段的编码(分段向量)、每个字符位置的编码(位置向量)这三个部分组成,此外针对每一个中文句子,BERT模型再其头部和尾部加入两个标记符号[CLS]和[SEP],其中[CLS]用来分类输入的两句话是否有上下文关系,[SEP]作为用来分开两句话的标识符。对输入文本信息的特征向量表示主要分为以下四个步骤:
1.1,Input Embedding(词嵌入向量)
Transformer输入是一个序列数据,将要进行训练的语料数据进行Embedding词嵌入操作,将语料中的每一个字符通过对照规则字典,转化为一个维度为Embeddingdimension的特征向量来表示,图中X代表输入的语料数据,经过Embedding嵌入后变为Xembedding。
1.2,Positional Encoding(位置编码)
Transformer模型并没有捕捉顺序序列的能力,也就是说无论句子的结构怎么打乱,Transformer都会得到类似的结果。但在具体语料训练的任务中,如遇到类似“西安到上海的列车班次”及“上海到西安的列车班次”这两句含义不同的话,“西安”和“上海”两个词在Transformer模型中的字符特征向量是不变的,应用于这两句在实际场景明显不符合语义,因此在Bert预训练模型,Transformer模型编码词向量时引入了位置编码(PositionEmbedding)的特征。具体地说,位置编码会在词向量中加入了字词的位置信息,这样Transformer就能区分不同位置的字词了。位置向量编码的计算公式如下:
上式(1),(2)中,pos代表字符词在一个句子中的位置,i代表词向量的维度,并且使用正余弦函数区分位置的奇偶性,在偶数位置使用正弦计算编码,奇数位置使用余弦计算编码。通过位置编码,可以得到一个和输入向量维度一致的向量编码组Xpos,将它和词向量嵌入部分Xembedding叠加组成新的词嵌入向量,即:
Xembedding=Xembedding+Xpos (3)
1.3,Multi-Head Attention
在Self-Attention自注意力机制中,只利用了一组向量矩阵Query(Q),Key(K),Value(V)来表示一组对当前词元素的特征表达,而Transformer模型中在原有Self-Attention机制的基础上,提出加入multi-headed机制,即通过多组不同的Query(Q),Key(K),Value(V)向量矩阵作为当前词元素的特征表达,一组特征表达记为一个head,最后将每组的特征拼接在一起作为最终的Attention值。计算公式如下:
MultiHead(Q,K,V)=Concat(head1,...,headi) (4)
其中,headi=Attention(Qi,Ki,Vi)。
1.4,Add&Norm
Transformer编码机制中加入残差网络,目的是为了增强模型有保留输入状态的能力,达到“经过该层后结果至少不比输入差”的效果。做归一化处理是有效防止在训练过程中模型网络梯度消失,加速训练的收敛速度。Layer Normation(层归一化)计算公式如下:
1.5,Feed Forward全连接层
由于单纯的多头注意力机制并不足以提取到理想的特征,因此增加全连接层来提升网络的能力.
FFN(x)=max(0,xW1+b1)W2+b2 (6)
(2)构建BiLSTM神经网络模型
长短时记忆网络(Long-ShortTermMemory),简称LSTM,即可以应对RNN存在的梯度爆炸问题,适用于对时序数据建模。但LSTM模型的是单向结构,其在进行句子建模时,无法编码从右向左(从后往前)的信息,只获得了待识别文本中的上文信息,因而对于上下文语境和语义信息的处理效果不是很好。而下文信息对于NER任务也有非常重要的参考意义。而使用双向长短时记忆网络(BidirectionalLong-ShortTer-mMemory,简称BiLSTM),可以更好地捕捉双向的依赖信息,通过对每个词序列使用前后向LSTM进行处理,使得每个时刻的特征都有前后向的依赖信息。Bi-LSTM主要由四层组成,分别是Input Layer(输入层),Forward Layer(前向LSTM层),Backward Layer(反向LSTM层),Output Layer(输出层)。步骤(2)的具体操作为:
a.首先将步骤(1)的BERT预训练模型输出的具有语义特征表示的向量作为BiLSTM神经网络模型的输入部分。
b.通过前向LSTM层和反向LSTM层的输出进行连接表示作为BiLSTM双向神经网络的结果输出。设t时刻前向LSTM层或反向LSTM层的输入由三个部分组成,分别为:记忆单元ct-1,上一个单元的隐含层ht-1和输入层xt。隐含层ht和记忆单元ct构成了t时刻该单元的输出。t时刻隐含层的计算流程:先算出输入门、输出门和遗忘门的信息,再计算出记忆单元内的信息,最后由输出门和记忆单元的值计算得到该时刻隐含层的值。计算式中出现的参数W和b分别代表三个门的权重矩阵和偏置向量,具体计算如下:
b1,遗忘门(Forget gate):
LSTM中的第一步是决定我们会从细胞状态中丢弃什么信息。这个决定通过一个称为忘记门层完成。该门会读取ht-1和xt,输出一个在0到1之间的数值给每个在细胞状态ct-1中的数字。1表示“完全保留”,输入门开启,0表示“完全舍弃”,此时输入门呈关闭状态。
ft=σ(Wf·[ht-1·xt]+bf) (7)
上式中ht-1表示的是上一个单元的输出,xt表示的是当前单元的输入,σ表示sigmod函数,其值域区间为(0,1),代表每个单元所占权重。
b2,输入门(Input gate):
LSTM模型第二步由输入门决定有哪些新的状态信息可以加入到现有细胞单元中来,首先通过“Input gate layer”的sigmod层决定哪些信息需要更新,利用一个tanh层生成一个向量,代表备选更新内容。tanh激活函数的值域区间为[-1,1],输出新的候选值。
it=σ(Wi·[ht-1,xt+bi]) (8)
b3,输出门(Output gate):
LSTM模型最后一步为确定经过过滤后最终输出的值,通过一个sigmod激活层确定输出哪些内容,之后通过tanh层处理将值转换到区间[-1,1]之间得到tanh(ct),与sigmod激活层计算的输出值ot相乘得到最后t时刻的输出值ht。具体计算公式如下:
ot=σ(wo[ht-1,xt]+bo) (10)
ht=ot*tanh(ct) (11)
用ht′表示反向LSTM的输出,拼接前后向LSTM神经网络的输出向量[ht:h′t]作为BiLSTM的输出结果。
(3)融合BERT-BiLSTM-CRF混合模型的命名实体识别方法
在实际的命名实体任务训练任务中,若只应用到步骤(2)的BiLSTM网络作为最后的结果输出,BiLSTM的结果输出为每个序列中特征向量对应的标签分数,通常选择标签打分最高的表示最优项,但这样存在结果不正确的现象。因此针对这种现象,本发明使用BIO联合标注,考虑再这些输出预测标签的基础上,加入一层CRF(Conditional Random Field)约束,来避免乱序标签的现象,确保最终结果是有效的。
1)B-I-O序列标注方法
序列标注主要可分为两类,一类是原始标注(Raw labeling),一类是联合标注(Joint Segmentation and labeling),两者的区别在于Raw labeling是对每一个句子单元元素都进行标签的标注,而Joint Segmentation and labeling则是在进行细分,将所有元素分段表示,每一个分段区域都使用相同的标签标注。
本发明使用的B-I-O标签属于Joint Segmentation and labeling序列标注,B(Beginning)代表一个实体的开头,I(Inside)代表实体的结尾,O(Outside)代表不属于任何实体类型。如“陕西的省会是哪里”这句话,通过BIO标注的最终结果为陕(B-LOC),西(I-LOC),的(O),省(O),会(O),是(O),哪(O),里(O)。可以看出名词“陕西”是这句话识别出来的地点实体。
2)CRF条件随机场
CRF的输入主要有两个向量变量组成,X代表观测向量,即最初对句子序列中每个字元素的向量表示,Y代表状态向量,即为步骤(1),步骤(2)BERT-BiLSTM结合的输出,代表每一个字元素(观测向量)对应的各个状态的概率,其中状态指BIO标注的每一种标签代表一个状态。可以看出,每个字元素可对应的预测标签有多种可能,因此为了更好的表示这些字元素对应的多种预测标签状态的关系,引入一个发射分数E(EmissionScore)来表示,同时为解决序列任务种存在需关联上下语义联系这一问题,创建另一个分数T(TransitionScore),代表转移分数,代表前一个状态向量标签到当前标签状态的分数值,CRF考虑到全局,将上一个的分数值累加到当前计算分数的序列向量上,即为转移分数和状态分数之和。
为了得到最后的输出结果,需要对求得的最优结果分数表示进行反向解码,找到一个最优路径作为正确标签的输出。维特比算法是一种动态规划算法用于最可能产生观测时间序列的-维特比路径-隐含状态序列,因此最后使用维比特算法对分数结果反向解码,得到最优路径,找到正确的标签进行标注。
具体过程为:
(1)构建BERT预训练语言模型
BERT模型的输入主要由每个字符的编码(词向量),句/段的编码(分段向量)、每个字符位置的编码(位置向量)这三个部分组成,此外针对每一个中文句子,BERT模型再其头部和尾部加入两个标记符号[CLS]和[SEP],其中[CLS]用来分类输入的两句话是否有上下文关系,[SEP]作为用来分开两句话的标识符。构建输入部分的词向量表示步骤如下:
a.Input Embedding(词嵌入向量)
Transformer输入是一个序列数据,将要进行训练的语料数据进行Embedding词嵌入操作,将语料中的每一个字符通过对照规则字典,转化为一个维度为Embeddingdimension的特征向量来表示,图中X代表输入的语料数据,经过Embedding嵌入后变为Xembedding。
b.Positional Encoding(位置编码)
Transformer模型编码词向量时引入了位置编码(Position Embedding)的特征。具体地说,位置编码会在词向量中加入了字词的位置信息,这样Transformer就能区分不同位置的字词了。位置向量编码的计算公式如下:
上式(1),(2)中,pos代表字符词在一个句子中的位置,i代表词向量的维度,并且使用正余弦函数区分位置的奇偶性,在偶数位置使用正弦计算编码,奇数位置使用余弦计算编码。通过位置编码,可以得到一个和输入向量维度一致的向量编码组Xpos,将它和词向量嵌入部分Xembedding叠加组成新的词嵌入向量,即:
Xembedding=Xembedding+Xpos (3)
c.Multi-Head Attention
在Self-Attention自注意力机制中,只利用了一组向量矩阵Query(Q),Key(K),Value(V)来表示一组对当前词元素的特征表达,而Transformer模型中在原有Self-Attention机制的基础上,提出加入multi-headed机制,即通过多组不同的Query(Q),Key(K),Value(V)向量矩阵作为当前词元素的特征表达,一组特征表达记为一个head,最后将每组的特征拼接在一起作为最终的Attention值。计算公式如下:
MultiHead(Q,K,V)=Concat(head1,...,headi) (4)
其中,geadi=Attention(Qi,Ki,Vi)。
d.Add&Norm
Transformer编码机制中加入残差网络,目的是为了增强模型有保留输入状态的能力,达到“经过该层后结果至少不比输入差”的效果。做归一化处理是有效防止在训练过程中模型网络梯度消失,加速训练的收敛速度。Layer Normation(层归一化)计算公式如下:
e.Feed Forward全连接层
由于单纯的多头注意力机制并不足以提取到理想的特征,因此增加全连接层来提升网络的能力.
FFN(x)=max(0,xW1+b1)W2+b2 (6)
在命名实体识别任务中,给定一个中文问句如,“陕西的省会是哪里”,那么首先送入BERT模型前将句子进行序列转换为X=(x1,x2,...,xn),经过三段文本分词处理后序列为S=([CLS],x1,x2,...,xn,[SEP]),将这些处理好的词句信息序列在经过多层Transformer编码器后,输出一个序列为F=(f0,f1,...,fn,fn+1)的语义向量表征序列,BERT模型结构图如图1所示。
(2)构建BiLSTM神经网络模型
双向长短时记忆网络(BidirectionalLong-ShortTer-mMemory,简称BiLSTM),可以更好地捕捉双向的依赖信息,通过对每个词序列使用前后向LSTM进行处理,使得每个时刻的特征都有前后向的依赖信息。Bi-LSTM主要由四层组成,分别是Input Layer(输入层),Forward Layer(前向LSTM层),Backward Layer(反向LSTM层),Output Layer(输出层)。步骤(2)的具体操作为:
a.首先将步骤(1)的BERT预训练模型输出的具有语义特征表示的向量作为BiLSTM神经网络模型的输入部分。
b.设x0,x1,...,xt代表t时刻输入的数据,ht,h′t分别代表前向LSTM模型和反向LSTM模型的输出。BiLSTM的输出是将这两个向量连接,形成一个新的向量[ht:h′t]。
c.BiLSTM的结果输出为每个序列中特征向量对应的标签分数,通常选择标签打分最高的表示最优项,但这样存在结果不正确的现象,图2为BiLSTM结构图,可以看出按照上图的最高分数标签输出可看出,结果为“B-Organization”,“I-Person”,“I-Organization”,“I-Person”,这四个预测标签对应的BIO标注的约束标准是错误的。证明若只使用BiLSTM结合BIO对句子字元素进行标注,会出现错误标注的现象。
(3)融合BERT-BiLSTM-CRF混合模型的命名实体识别方法
从步骤(2)最后的样例分析可以得出,若只使用BiLSTM进行句子实体标注,这样有可能存在结果不正确的现象。因此针对这种现象,考虑再这些输出预测标签的基础上,加入一层CRF(Conditional Random Field)约束,来避免乱序标签的现象,确保最终结果是有效的。图3为BERT-BiLSTM-CRF结构图。将需要进行实体识别任务的句子序列“陕西的省会是哪里”作为输入,首先通过BERT预训练语言模型,对句子序列中每一个字元素进行向量表示,得到表示语义特征向量的序列作为BERT层输出,第二层结合BiLSTM双向长短期记忆网络在进行模型训练,对语料特征表示向量的前后关系进行计算得到每一个字元素的前后语义关系,最后通过BIO序列标注方法,加入CRF条件随机场确保最终预测出的标签是合法的,最后的输出结果为标签序列[‘O’,‘B-ORG’,’I-ORG’,’O’,’O’,’O’,’O’,’O’,’O’,’O’]。
实验说明
本发明使用CCKS2019-CKBQA公开的评测数据,CCKS2019-CKBQA包括三份问答数据集,评测数据均由人工构建和标注,北京大学计算机技术研究所提供了3/4的开放领域问答数据,恒生电子股份有限公司提供了1/4的金融领域问答数据。CCKS2019-CKBQA的复杂问句占的比例较大,因此本文同时还加入了NLPCC 2016部分评测数据集,NLPCC 2016主要为一些简单问句,本实验选取总共3200个问答数据作为本次实验的样本集,并按5:2:1的划分比例将样本集分为训练集,验证集和测试集。
本发明根据所给的问答数据对集,对问句进行数据预处理,通过对所给数据集的SPARQL查询语句,查找实体的提及,如问句:罗密·施纳德的代表作?,我们根据所给的与其对应的SPARQL查询语句select?x where{<罗密·施纳德><代表作品>?x.},通过查找给定的三原组知识可以得出其对应的实体提及可能有[['罗密','施纳德','代表作','罗密·施纳德']来反向构造命名实体识别数据集,再给出的这些候选提及集合上,采用优先最大长度匹配原则,来对问句实体的提及进行标注,这里对问句的提及中的“罗密·施纳德”进行BIO标注,B代表实体的开始,I代表实体的内部组成元素,O代表不是实体的其他字符元素。每一行由单个字元素及对应的标签构成,每个字元素和对应的标签之间用一个Tab间隔开,将所有数据集进行反向序列标注,按照比例分配形成训练集文件(train.txt),验证集文件(dev.txt),测试集(test.txt)文件,并建立本发明提出的命名实体识别模型BERT-BiLSTM-CRF。反向标注问句序列如图4所示。
本发明使用的评价指标是准确率P、召回率R和F1值,为了证明Bert-BLSTM-CRF模型的有效性,将其和下述2种方法进行实验对比。
1.BiLSTM模型采用正向和反向的LSTM单元在语料库上完成对中文机构名命名实体的识别。
2.BiLSTM-CRF模型利用事先预训练好的字向量进行字级别的标注,然后输入BLSTM-CRF模型中进行训练,此模型是一个经典的序列标注模型。模型F1值评估图如图5所示。在图五中,横坐标代表Epoch,纵坐标代表模型训练结果的F1值,三条折线分别代表Bert-BiLSTM-CRF模型,BiLSTM-CRF模型和BiLSTM,可以看出Bert-BiLSTM-CRF模型训练的F1最高值为95.12%是在第12个epoch得到的,BiLSTM-CRF的F1最高值79.12%是在第16个epoch得到的,BiLSTM模型的F1值在第20个epoch才达到最优。证明本发明提出的Bert-BLSTM-CRF模型的的准确有效性。
下述为本发明的装置实施例,可以用于执行本发明方法实施例。对于装置实施例中未纰漏的细节,请参照本发明方法实施例。
本发明再一个实施例中,提供了一种命名实体识别系统,该命名实体识别系统可以用于实现上述命名实体识别方法,具体的,该命名实体识别系统包括BERT预训练语言模型模块、BiLSTM神经网络模型模块以及命名实体识别模块。
其中,BERT预训练语言模型模块用于构建BERT预训练语言模型,将中文语句输出至BERT预训练语言模型中,输出具有语义特征表示的向量。
BiLSTM神经网络模型模块用于构建BiLSTM神经网络模型,将BERT预训练语言模型的输出结果作为BiLSTM神经网络模型的输入。
命名实体识别模块用于将BiLSTM神经网络模型的输出结果进行BIO联合标注,得到正确的标签,进行标注后得到该中文语句的命名实体识别结果。
本发明再一个实施例中,提供了一种终端设备,该终端设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(Central ProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor、DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行一条或一条以上指令从而实现相应方法流程或相应功能;本发明实施例所述的处理器可以用于命名实体识别方法的操作,包括:步骤一,构建BERT预训练语言模型,将中文语句输出至BERT预训练语言模型中,输出具有语义特征表示的向量;步骤二,构建BiLSTM神经网络模型,将BERT预训练语言模型的输出结果作为BiLSTM神经网络模型的输入;步骤三,将BiLSTM神经网络模型的输出结果进行BIO联合标注,得到正确的标签,进行标注后得到该中文语句的命名实体识别结果。
再一个实施例中,本发明还提供了一种计算机可读存储介质(Memory),所述计算机可读存储介质是终端设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括终端设备中的内置存储介质,当然也可以包括终端设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。
可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中有关命名实体识别方法的相应步骤;计算机可读存储介质中的一条或一条以上指令由处理器加载并执行如下步骤:步骤一,构建BERT预训练语言模型,将中文语句输出至BERT预训练语言模型中,输出具有语义特征表示的向量;步骤二,构建BiLSTM神经网络模型,将BERT预训练语言模型的输出结果作为BiLSTM神经网络模型的输入;步骤三,将BiLSTM神经网络模型的输出结果进行BIO联合标注,得到正确的标签,进行标注后得到该中文语句的命名实体识别结果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
应该理解,以上描述是为了进行图示说明而不是为了进行限制。通过阅读上述描述,在所提供的示例之外的许多实施例和许多应用对本领域技术人员来说都将是显而易见的。因此,本教导的范围不应该参照上述描述来确定,而是应该参照前述权利要求以及这些权利要求所拥有的等价物的全部范围来确定。出于全面之目的,所有文章和参考包括专利申请和公告的公开都通过参考结合在本文中。在前述权利要求中省略这里公开的主题的任何方面并不是为了放弃该主题内容,也不应该认为申请人没有将该主题考虑为所公开的发明主题的一部分。
Claims (10)
1.一种命名实体识别方法,其特征在于,包括以下步骤:
步骤一,构建BERT预训练语言模型,将中文语句输出至BERT预训练语言模型中,输出具有语义特征表示的向量;
步骤二,构建BiLSTM神经网络模型,将BERT预训练语言模型的输出结果作为BiLSTM神经网络模型的输入;
步骤三,将BiLSTM神经网络模型的输出结果进行BIO联合标注,得到正确的标签,进行标注后得到该中文语句的命名实体识别结果。
2.根据权利要求1所述的命名实体识别方法,其特征在于,步骤三中,对BiLSTM神经网络模型的输出结果进行BIO联合标注后,在标签的基础上,加入一层CRF约束,然后进行反向解码,得到最优路径,找到正确的标签。
3.根据权利要求2所述的命名实体识别方法,其特征在于,使用维比特算法进行反向解码。
4.根据权利要求1所述的命名实体识别方法,其特征在于,步骤一中,BERT预训练语言模型中中文语句的特征向量表示包括词嵌入向量和位置编码。
5.根据权利要求1所述的命名实体识别方法,其特征在于,步骤一中,BERT预训练语言模型包括输入层、特征向量层、多头自注意力层、残差网络层、全连接层和输出层。
6.根据权利要求1所述的命名实体识别方法,其特征在于,BiLSTM神经网络模型由四层组成,依次为输入层、前向LSTM层、反向LSTM层和输出层,通过前向LSTM层和反向LSTM层的输出进行连接表示作为BiLSTM神经网络模型的结果输出。
7.根据权利要求6所述的命名实体识别方法,其特征在于,设t时刻前向LSTM层或反向LSTM层的输入由三个部分组成,分别为:记忆单元ct-1,上一个单元的隐含层ht-1和输入层xt;隐含层ht和记忆单元ct构成了t时刻该单元的输出;t时刻隐含层的计算流程:先算出输入门、输出门和遗忘门的信息,再计算出记忆单元内的信息,最后由输出门和记忆单元的值计算得到该时刻隐含层的值。
8.一种命名实体识别系统,其特征在于,包括:
BERT预训练语言模型模块,用于构建BERT预训练语言模型,将中文语句输出至BERT预训练语言模型中,输出具有语义特征表示的向量;
BiLSTM神经网络模型模块,用于构建BiLSTM神经网络模型,将BERT预训练语言模型的输出结果作为BiLSTM神经网络模型的输入;
命名实体识别模块,用于将BiLSTM神经网络模型的输出结果进行BIO联合标注,得到正确的标签,进行标注后得到该中文语句的命名实体识别结果。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任意一项所述命名实体识别方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述命名实体识别方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210547075.6A CN114925695A (zh) | 2022-05-19 | 2022-05-19 | 一种命名实体识别方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210547075.6A CN114925695A (zh) | 2022-05-19 | 2022-05-19 | 一种命名实体识别方法、系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114925695A true CN114925695A (zh) | 2022-08-19 |
Family
ID=82809587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210547075.6A Pending CN114925695A (zh) | 2022-05-19 | 2022-05-19 | 一种命名实体识别方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114925695A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112115688A (zh) * | 2020-09-18 | 2020-12-22 | 南方电网深圳数字电网研究院有限公司 | 一种基于bio的web端文本标注方法及系统 |
-
2022
- 2022-05-19 CN CN202210547075.6A patent/CN114925695A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112115688A (zh) * | 2020-09-18 | 2020-12-22 | 南方电网深圳数字电网研究院有限公司 | 一种基于bio的web端文本标注方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kumar et al. | Dialogue act sequence labeling using hierarchical encoder with crf | |
CN110866401A (zh) | 基于注意力机制的中文电子病历命名实体识别方法及系统 | |
Chen et al. | Joint entity and relation extraction for legal documents with legal feature enhancement | |
CN112163429B (zh) | 结合循环网络及bert的句子相关度获取方法、系统及介质 | |
CN114548101B (zh) | 基于可回溯序列生成方法的事件检测方法和系统 | |
CN111767718A (zh) | 一种基于弱化语法错误特征表示的中文语法错误更正方法 | |
CN113743099A (zh) | 基于自注意力机制方面术语提取系统、方法、介质、终端 | |
CN111460800A (zh) | 一种事件生成方法、装置、终端设备及存储介质 | |
CN115688784A (zh) | 一种融合字与词语特征的中文命名实体识别方法 | |
Marra et al. | An unsupervised character-aware neural approach to word and context representation learning | |
CN115796182A (zh) | 一种基于实体级跨模态交互的多模态命名实体识别方法 | |
Szűcs et al. | Seq2seq deep learning method for summary generation by lstm with two-way encoder and beam search decoder | |
CN114610866A (zh) | 基于全局事件类型的序列到序列联合事件抽取方法和系统 | |
CN114925695A (zh) | 一种命名实体识别方法、系统、设备及存储介质 | |
CN112463935B (zh) | 一种带有强泛化知识选择的开放域对话生成方法及系统 | |
Wu et al. | One improved model of named entity recognition by combining BERT and BiLSTM-CNN for domain of Chinese railway construction | |
Wei et al. | Named entity recognition method for educational emergency field based on BERT | |
Nguyen et al. | Attentive neural network for named entity recognition in vietnamese | |
Ren et al. | Neural networks for bacterial named entity recognition | |
CN114548090B (zh) | 基于卷积神经网络和改进级联标注的快速关系抽取方法 | |
Su et al. | A tree-like structured perceptron for transition-based biomedical event extraction | |
CN115510230A (zh) | 一种基于多维特征融合与比较增强学习机制的蒙古语情感分析方法 | |
Ali et al. | Towards Improving Causality Mining using BERT with Multi-level Feature Networks. | |
Nguyen et al. | Neural sequence labeling for Vietnamese POS tagging and NER | |
Xin et al. | Automatic annotation of text classification data set in specific field using named entity recognition |
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 |