1.一种基于可组合弱认证器的命名实体识别的算法架构,其特征在于,包括:实体识别部分和结果认证部分;
所述实体识别部分用于完成识别任务,得到识别结果;
所述结果认证部分包括两个及以上弱认证器,分别用于对所述识别结果在每个弱认证器对应细分目标上进行检验认证。
2.根据权利要求1所述的一种基于可组合弱认证器的命名实体识别的算法架构,其特征在于,还包括待识别信息输入层、实体识别层、数据转换层和弱认证器输出层;
所述待识别信息输入层进行特征提取工作:该层中包括特征提取模块;将待识别文本输入和实体描述输入经过特征提取模块处理后,作为实体识别层的第一输入信息;
所述实体识别层对第一输入信息进行实体识别工作:该层中包括实体识别模块,该模块将待识别文本处理为:实体概念描述类型对应的特征编码、输入序列每个位置被预测为实体的概率;
所述数据转换层根据弱认证器输出层中弱认证器信息处理要求分别对实体识别模块的输入、输出和/或实体类型嵌入向量融合处理后,作为弱认证器输出层的第二输入信息;
所述弱认证器输出层中包括多个弱认证器,每个弱认证器中记载有不同的神经网络层,实现在每个弱认证器对应细分目标上对第二输入信息进行检验认证;
优选的,还包括层间信息流:原始输入信息流、特征提取信息流、实体识别信息流、数据转换信息流和弱认证信息流;
所述原始输入信息流包括待识别文本输入和实体描述输入;所述特征提取信息流连接特征提取层和实体识别层;所述实体识别信息流连接实体识别层和数据转换层;所述数据转换信息流连接数据转换层和弱认证器输出层;所述弱认证信息流输出最终命名实体识别结果;
优选的,所述架构还包括训练信息流,所述训练信息流具体包括:预训练信息流和联合训练信息流;
其中,预训练信息流包括,实体识别模块预训练信息流、边界弱认证器预训练信息流和类型弱认证器预训练信息流;
实体识别模块预训练信息流:待识别信息输入层中的特征提取模块和实体识别层中的实体识别模块参与训练,弱认证器层关闭输入输出接口;训练数据为原始训练标记语料;
边界弱认证器模块预训练信息流:待识别信息输入层中的特征提取模块和弱认证器层中的边界弱认证器模块参与训练,实体识别层关闭输入输出接口,弱认证器层中的类型弱认证器模块关闭输入输出接口,特征提取模块在预训练过程中冻结网络参数;基于边界弱认证器模块的输入需求,对原始训练语料自动构建适配的数据输入;
类型弱认证器模块预训练信息流:待识别信息输入层中的特征提取模块和弱认证器层中的类型弱认证器模块,实体识别层关闭输入输出接口,弱认证器层中的边界弱认证器模块关闭输入输出接口,特征提取模块在预训练过程中冻结网络参数;基于类型弱认证器模块的输入需求,对原始训练语料自动构建适配的数据输入;
所述联合训练的信息流:待识别信息输入层中的特征提取模块、实体识别层中的实体识别模块、弱认证器层中的边界弱认证器模块和类型弱认证器模块参与训练,所有模块的输入输出输出接口打开;优选的,本发明不冻结实体识别模块的网络参数,冻结弱认证器模块的网络参数;通过边界弱认证器模块、类型弱认证器模块和实体识别模块的输出计算损失,对实体识别模块进行参数更新;训练数据为原始训练标记语料;
优选的,所述弱认证器层包括边界弱认证器模块和类型弱认证器模块;
所述数据转换层根据边界弱认证器模块对实体识别模块的输入、输出和/或实体类型嵌入向量融合处理的方法,包括:流向边界弱认证器模块的第二输入信息的融合处理方法为:至少将输入序列的语义特征编码E和输入序列每个位置被预测为实体的概率进行拼接;
流向类型弱认证器模块的第二输入信息的融合处理方法为:至少将输入序列实体位置掩码后的语义特征编码和输入序列实体位置替换为实体类型嵌入向量后的编码进行拼接;
优选的,所述输入序列实体位置掩码后的语义特征编码的形成方式为:对输入序列的语义特征编码E和输入序列对应位置被预测为非实体的概率相乘;所述输入序列实体位置替换为实体类型嵌入向量的方式为:对实体类型嵌入向量和输入序列对应位置被预测为非实体的概率相乘;
优选的,所述实体识别模块包括多组神经网络串联和神经网络的激活函数,优选的,每组神经网络可以为具有提取序列特征能力的网络结构;
优选的,所述特征提取模块中加载有基于自注意力机制的预训练语言模型;优选的,加载BERT算法;
优选的,所述边界弱认证器模块中加载有具有提取序列特征能力的神经网络和神经网络的激活函数,用于进行边界合法性判定;
所述类型弱认证器模块中加载有具有提取序列特征能力的神经网络和K个独立的激活函数用于进行K类实体的判定。
3.利用如权利要求1或2所述算法构架实现的基于可组合弱认证器的命名实体识别方法,其特征在于:
包括特征提取处理、实体识别处理、数据转换处理和弱认证器处理;
所述特征提取处理用于将待识别文本输入和实体描述输入经特征提取后得到输入的n×d
语义特征表示E,即E∈R ,其中n为待识别文本输入序列的长度,d为经特征提取模块最后一层的向量输出维度,R表示实数空间;
所述实体识别处理用于将语义特征表示E处理后获得实体标记输出,所述实体标记输出包括:实体概念描述类型对应的特征编码、输入序列每个位置被预测为实体的概率;
所述数据转换处理包括,边界弱认证器模块的输入前的融合处理方法和类型弱认证器模块的输入前的融合处理方法:
其中,边界弱认证器模块的输入至少包括拼接的输入序列的语义特征编码E 和输入序列每个位置被预测为实体的概率;
其中,类型弱认证器模块的输入至少包括融合:输入序列的语义特征编码E、输入序列每个位置被预测为实体的概率和实体类型嵌入向量;
所述弱认证器处理用于实现在每个弱认证器对应细分目标上对输入信息进行检验认证。
4.利用如权利要求3所述命名实体识别方法,所述弱认证器处理中:边界弱认证器模块使用Bi‑LSTM神经网络(Bidirectional Long Short‑Term Memory,双向长短期记忆)对输入进行上下文语义编码,其中,边界弱认证器模块的输入序列的第i个位置输入 对应的隐含向量 计算过程如下:b
对于每个位置的隐含向量 进行加权求和,得到输入的单一向量表示h:b
采用sigmoid函数获得边界弱认证器模块的概率输出p:b b b b
p=sigmoid(wh+b)#(6)b b b
其中,w和b为经Bi‑LSTM神经网络后输出层权重矩阵和偏置向量,h 为边界弱认证器b ner
模块的Bi‑LSTM的隐含状态向量,p代表了实体识别模块得到的序列实体类型概率向量P符合当前待识别文本输入序列X=x1,…,xn和实体概念描述输入序列Q=q1,…,qm的概率,其中n代表待识别文本输入序列的长度,m代表实体概念描述输入序列的长度;
优选的,所述弱认证器处理中:
类型弱认证器模块使用Bi‑LSTM神经网络获得输入的上下文编码,类型弱认证器模块有K个输出,其中K∈(1,2,3......k,k为自然数);
第k类实体概念类型概率的计算方式为:其中 和 为经Bi‑LSTM神经网络后输出层的权重矩阵和偏置向量;
优选的,所述特征提取模块加载有BERT算法;
优选的,所述实体识别模块中加载有:Bi‑LSTM神经网络进行上下文语义的学习,得到ner n×c ner
实体概念描述类型对应的特征编码H ∈R ,c为Bi‑LSTM隐含向量的维度;并在H 上应用神经网络的激活函数得到输入序列每个位置被预测为实体的概率,所有位置的概率组成的ner n×1
向量为P ∈(0,1) ;
优选的,对输入序列的语义特征编码E和输入序列每个位置被预测为实体的概率向量进行拼接的方法包括:
d ner
令ei∈R是语义特征编码E中第i个字符对应的向量编码, 是实体类型概率向量P中第i个字符对应的概率值;在边界弱认证器模块中,第i个位置的输入 表示为:其中 表示向量拼接操作;
优选的,所述类型弱认证器模块的输入的融合方法:第i个位置的输入 的计算方式如下:其中ei为序列第i个位置对应的语义特征编码向量, 为序列第i个位置标记为实体的概率,z为实体类型嵌入向量,实体类型嵌入向量随机初始化,不同实体类型对应的向量不同。
5.一种实现如权利要求3所述基于可组合弱认证器的命名实体识别方法的装置,其特征在于:
所述装置包括:特征提取模块,待识别的原始文本和实体描述文本共同经过特征提取模块获得和实体概念相关的待识别文本语义特征编码;特征提取的结果将作为实体识别模块、边界弱认证器数据转换模块和类型弱认证器数据转换模块的输入;
还包括实体识别模块,用于获取符合实体概念描述的最优实体标记序列;
还包括边界弱认证器数据转换模块,用于将特征提取结果和实体标记共同转换为边界弱认证器模块的合法输入;
还包括类型弱认证器数据转换模块,用于将特征提取结果、实体标记和实体类型嵌入向量共同转换为类型弱认证器模块的合法输入;
所述的特征提取结果为输入序列的语义特征编码E,所述实体标记为输入序列每个位置被预测为实体的概率。
6.一种如权利要求3所述命名实体识别的训练方法,其特征在于,包括:对实体识别模块的预训练、对边界弱认证器模块的预训练、对类型弱认证器模块的预训练和对上述三个模块的预训练全部完成后进行的联合训练,所述实体识别模块的预训练旨在让实体识别模块在所述联合训练前具有一定识别能力;
所述边界弱认证器模块的预训练使其在判定一个实体标记序列是否符合实际的上下文语境;
所述类型弱认证器模块的预训练使其判断某种类型实体是否符合当前输入的上下文语境。
7.如权利要求6所述命名实体识别的训练方法,其特征在于,所述边界弱认证器模块的预训练使其在判定一个实体标记序列是否符合实际的上下文语境的方法:该模块预训练的负样本为不正确的实体标记序列和待识别文本对,正样本为正确的实体标记序列和待识别文本对;
所述类型弱认证器模块的预训练使其判断某种类型实体是否符合当前输入的上下文语境;该模块预训练的负样本输入包括:一种形式为将正确实体标记序列输入替换为错误的实体标记序列输入,保持正确的实体类型嵌入向量输入;另一种形式为将实体类型嵌入向量输入进行替换,保持正确的实体标记序列输入;
优选的,在所述边界弱认证器模块和类型弱认证器模块的预训练中:根据训练语料自动构建相似的实体标记概率序列 作为边界弱认证器模块和类型弱认证器模块的输入,对于原始语料的标记序列 实体标记概率序列 的自动构建方式如下:
其中δi为每个位置生成一个0~0.5的随机数;
优选的,所述实体识别模块的预训练条件:特征提取模块和实体识别模块参与这部分训练,其余弱认证器模块关闭输入输出接口;训练数据为原始训练标记语料;
预训练方法为:输入包含待识别文本和预先构建的实体概念描述文本,输出为标记的ner
实体序列Y ,实体部分标记为1,非实体部分标记为0;实体识别模块预训练的损失函数包CRF
含两个部分:一是经过CRF后得到的句子级别负对数似然函数Loss ,二是预测实体标记和正确实体标签的交叉熵,损失函数的计算过程如下:ner ner ner CRF 2Loss =CE(P ,Y )+Loss +λ||Θ||#(11)ner ner
其中,X表示输入的待识别文本序列,Y 表示正确的实体标记序列,P 为实体识别模块得到的输入序列每个位置被预测为实体的概率组成的向量,Y′代表所有可能组合的实体标记序列, 和 为CRF的权重矩阵和偏置向量, 为实体识别模块神经网络的2
隐含向量,这里使用维特比算法来找到最优的实体标记序列;λ是L2范数正则化项||Θ||的权重超参数,Θ代表网络的参数集合;CE表示交叉熵;所述CRF仅在预训练时参与损失函数的计算,在联合训练时将关闭输入输出接口;
优选的,所述边界弱认证器模块的预训练的条件为:边界弱认证器模块预训练参与的模块包括:特征提取模块和边界弱认证器模块,其余模块关闭输入输出接口,特征提取模块在预训练过程中冻结网络参数;基于边界弱认证器模块的输入需求,对原始训练语料自动构建适配的数据输入;
边界弱认证器模块预训练方法为:其中特征提取模块的预训练输入包含待识别文本和预先构建的实体概念描述文本;边界弱认证器模块预训练时的输入包含来自特征提取模块的输出语义特征编码E和基于规则自动构建实体标记概率序列 边界弱认证器模块预训练时的输出为实体标记符合当前待识别文本的概率;边界弱认证器模块负样本的构建具体方式为随机的对实体标记概率序列 中值大于0.5的位置,设置为小于0.5的随机数;
该模块的预训练使用带有L2范数正则化项的交叉熵作为损失函数:b b b 2
Loss=CE(p,y)+λ||Θ||#(12)b b
其中p 为边界弱认证器模块预测的合法性概率输出,y为实际样本中实体标记符合当前待识别文本的概率,CE表示交叉熵;
所述类型弱认证器模块的预训练的条件为:类型弱认证器模块预训参与的模块包括特征提取模块和类型弱认证器模块,其余模块关闭输入输出接口,特征提取模块在预训练过程中冻结网络参数;基于类型弱认证器模块的输入需求,对原始训练语料自动构建适配的数据输入;
类型弱认证器模块预训练方法为:其中类型弱认证器模块预训练时的输入包含来自特征提取模块的输出语义特征编码E、基于规则自动构建实体标记概率序列 以及实体类型嵌入向量z,输出为K个实体类型的预测概率,输出对应的真实样本标记表示为类型弱认证器预训练负样本的构建具体方式为:将实体类型嵌入向量z进行替换;和/或随机的对实体标记概率序列 中值大于0.5的位置,设置为小于0.5的随机数;负样本对应的真实K个实体类型的预测概率均为0;类型弱认证器预训练使用带有L2正则化的交叉熵作为损失函数:
其中 表示类型弱认证器模块预测的第i个实体类型的概率, 为对应的第i个实体类型的真实概率;
优选的,所述联合训练中包含损失函数,损失函数如下:b t ner ner
Loss=αLoss+βLoss+CE(P ,Y )#(14)ner
其中,α和β为固定的权重参数,其中α,β∈(0,1),并且α和β的和为1,Y 表示正确的实ner
体标记序列,P 为实体识别模块得到的输入序列每个位置被预测为实体的概率组成的向量,CE表示交叉熵。
8.如权利要求7所述命名实体识别的训练方法,其特征在于,实体识别模块在联合训练的过程中将有弱认证器指导,进行进一步的优化:弱认证器在联合训练过程中从边界合法性和类型合法性两个角度计算损失。
9.一种实现如权利要求3所述基于可组合弱认证器的命名实体识别方法的可读存储介质,其特征在于,所述可读存储介质上存储有可执行的计算机程序,该程序被执行时能够完成:实现基于可组合弱认证器的命名实体识别方法、命名实体识别的训练方法、和/或命名实体识别的优化方法。
10.一种实现如权利要求3所述基于可组合弱认证器的命名实体识别方法的计算机设备,其特征在于,包括处理器、存储装置以及存储在存储装置上并可在所述处理器上执行的计算机程序;
所述处理器执行计算机程序时实现如下过程:其中,判断是训练还是使用阶段:若是训练阶段,获取训练语料;根据训练语料自动构建实体识别模块、边界弱认证器模块和类型弱认证器模块的预训练数据;分别对三个模块进行预训练过程;预训练完成后进行所有模块的联合学习过程,得到基于可组合弱认证器的命名实体识别模型;
若是使用阶段,获得训练得到的命名实体识别模型;获取待识别文本和待识别实体概念描述,将待识别文本和待识别实体概念描述输入到模型的语义特征提取模块,输出带有实体概念信息的待识别文本语义特征编码;将得到的语义特征编码输入给实体识别模块得到预测的实体标记输出;将实体标记序列输出以及语义特征编码输入到数据转换模块,得到边界弱认证器模块和类型弱认证器模块的输入;两个弱认证器模块的输入经过各自弱认证器网络,得到实体标记的边界置信度和实体类型的置信度;根据得到的实体标记输出、实体边界置信度和实体类型置信度得到最终的命名实体识别结果。