CN116341651A - 实体识别模型训练方法、装置、电子设备及存储介质 - Google Patents
实体识别模型训练方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116341651A CN116341651A CN202310361596.7A CN202310361596A CN116341651A CN 116341651 A CN116341651 A CN 116341651A CN 202310361596 A CN202310361596 A CN 202310361596A CN 116341651 A CN116341651 A CN 116341651A
- Authority
- CN
- China
- Prior art keywords
- model
- teacher
- entity
- word
- sub
- 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
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000012549 training Methods 0.000 title claims abstract description 47
- 238000012937 correction Methods 0.000 claims abstract description 18
- 239000013598 vector Substances 0.000 claims description 124
- 238000000605 extraction Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 14
- 238000002372 labelling Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 5
- 238000007906 compression Methods 0.000 abstract description 4
- 230000006835 compression Effects 0.000 abstract description 4
- 238000011002 quantification Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 7
- 239000000284 extract Substances 0.000 description 6
- 238000013140 knowledge distillation Methods 0.000 description 5
- 241000209094 Oryza Species 0.000 description 4
- 235000007164 Oryza sativa Nutrition 0.000 description 4
- 235000009566 rice Nutrition 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 235000013305 food Nutrition 0.000 description 2
- 235000012054 meals Nutrition 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 208000024891 symptom Diseases 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- 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/096—Transfer learning
-
- 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
- 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
Abstract
本申请提供一种实体识别模型训练方法、装置、电子设备及存储介质,所述方法包括:通过根据第一隐藏状态以及第二隐藏状态,确定教师模型对应的第一损失结果;根据第二预测结果以及样本数据,确定初始学生模型对应的第二损失结果;根据第一损失结果以及第二损失结果,确定初始学生模型的目标损失结果,并根据初始学生模型的目标损失结果对初始学生模型进行迭代修正,并将迭代修正结束时的初始学生模型作为待使用的实体识别模型。通过使用教师模型输出的预测结果以及样本数据确定的学生模型的损失结果,使得优化的学生模型预测结果的准确率更高,实现模型的压缩和量化,降低了模型调用的延时,增加了模型的精度。
Description
技术领域
本申请涉及人工智能领域,具体而言,涉及一种实体识别模型训练方法、装置、电子设备及存储介质。
背景技术
随着人工智能的发展,近年出现了越来越多的智能对话系统,例如语音助手、克服机器人、对话机器人等。而命名实体识别是智能对话系统的重要部分,命名实体识别也被称为实体抽取或实体提取,智能对话系统需要根据命名实体识别来理解用户的真实意图,因此,命名实体识别是智能对话系统中的重要部分。
现有技术中,主要是通过文本拼接的方法进行实体的识别,但是在文本拼接之后的计算复杂度会变高,因此,利用文本拼接的方法进行实体的识别的复杂度高。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种实体识别模型训练方法、装置、电子设备及存储介质,实现模型的压缩和量化,降低模型调用的延时,增加模型的精度。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供了一种实体识别模型训练方法,所述方法包括:
根据预先训练得到的教师模型构建初始学生模型,所述教师模型包括:第一教师子模型以及第二教师子模型,所述第一教师子模型用于进行特征提取,所述第二教师子模型用于进行实体识别,所述初始学生模型包括:第一学生子模型以及第二学生子模型,所述第一学生子模型通过从所述第一教师子模型中抽取预设数量的层得到,所述第二学生子模型的结构与所述第二教师子模型的结构相同;
将多个样本数据输入至所述教师模型,得到所述教师模型输出的第一预测结果,并将所述多个样本数据输入至所述初始学生模型中,得到所述初始学生模型输出的第二预测结果;
分别确定所述第一预测结果对应的第一隐藏状态以及所述第二预测结果对应的第二隐藏状态;
根据所述第一隐藏状态以及所述第二隐藏状态,确定所述教师模型对应的第一损失结果;
根据所述第二预测结果以及所述样本数据,确定所述初始学生模型对应的第二损失结果;
根据所述第一损失结果以及所述第二损失结果,确定所述初始学生模型的目标损失结果,并根据所述初始学生模型的目标损失结果对所述初始学生模型进行迭代修正,并将迭代修正结束时的初始学生模型作为待使用的实体识别模型。
可选的,所述第二教师子模型以及所述第二学生子模型分别为指针网络。
可选的,所述将多个样本数据输入至所述教师模型,得到所述教师模型输出的第一预测结果,包括:
将所述多个样本数据输入所述第一教师子模型,得到多个第一特征向量;
将所述多个第一特征向量输入所述第二教师子模型中,由所述第二教师子模型对所述多个第一特征向量进行解码,得到各第一特征向量对应的字,根据各第一特征向量对应的字确定实体的首尾位置,并根据实体的首尾位置对各第一特征向量对应的字进行标注,根据标注结果进行字的拼接处理,得到目标实体,将所述目标实体作为所述第一预测结果进行输出。
可选的,根据各第一特征向量对应的字确定实体的首尾位置,还包括:
根据各第一特征向量、预设的向量矩阵、预设的激活函数,确定各第一特征向量对应的字为实体的首位置的第一概率以及为实体的尾位置的第二概率;
根据所述第一概率、所述第二概率以及预设阈值,确定各第一特征向量对应的字是否为实体的首位置或尾位置。
可选的,根据实体的首尾位置对各第一特征向量对应的字进行标注,包括:
若所述第一特征向量对应的字为实体的首位置或尾位置,则使用第一预设数值将所述位置对应的字进行标注;
若所述第一特征向量对应的字不为实体的首位置以及尾位置,则使用第二预设数值将所述位置对应的字进行标注。
可选的,根据标注结果进行字的拼接处理,得到目标实体,包括:
从所述第一特征向量对应的字中查找首个标注为第一预设数值的第一字,将所述第一字作为目标实体的首位置;
从所述第一特征向量对应的字中查找距离所述第一字最近且标注为第一预设数值的第二字,将所述第二字作为目标实体的尾位置;
将所述第一字和第二字拼接为所述目标实体。
可选的,根据所述第一损失结果以及所述第二损失结果,确定所述初始学生模型的目标损失结果,包括:
对第一损失结果以及第二损失结果进行加权计算,得到所述目标损失结果。
第二方面,本申请实施例还提供了一种实体识别模型训练装置,所述装置包括:
构建模块,用于根据预先训练得到的教师模型构建初始学生模型,所述教师模型包括:第一教师子模型以及第二教师子模型,所述第一教师子模型用于进行特征提取,所述第二教师子模型用于进行实体识别,所述初始学生模型包括:第一学生子模型以及第二学生子模型,所述第一学生子模型通过从所述第一教师子模型中抽取预设数量的层得到,所述第二学生子模型的结构与所述第二教师子模型的结构相同;
输入模块,用于将多个样本数据输入至所述教师模型,得到所述教师模型输出的第一预测结果,并将所述多个样本数据输入至所述初始学生模型中,得到所述初始学生模型输出的第二预测结果;
确定模块,用于分别确定所述第一预测结果对应的第一隐藏状态以及所述第二预测结果对应的第二隐藏状态;
确定模块,用于根据所述第一隐藏状态以及所述第二隐藏状态,确定所述教师模型对应的第一损失结果;
确定模块,用于根据所述第二预测结果以及所述样本数据,确定所述初始学生模型对应的第二损失结果;
确定模块,用于根据所述第一损失结果以及所述第二损失结果,确定所述初始学生模型的目标损失结果,并根据所述初始学生模型的目标损失结果对所述初始学生模型进行迭代修正,并将迭代修正结束时的初始学生模型作为待使用的实体识别模型。
可选的,所述第二教师子模型以及所述第二学生子模型分别为指针网络。
可选的,所述输入模块具体用于:
将所述多个样本数据输入所述第一教师子模型,得到多个第一特征向量;
将所述多个第一特征向量输入所述第二教师子模型中,由所述第二教师子模型对所述多个第一特征向量进行解码,得到各第一特征向量对应的字,根据各第一特征向量对应的字确定实体的首尾位置,并根据实体的首尾位置对各第一特征向量对应的字进行标注,根据标注结果进行字的拼接处理,得到目标实体,将所述目标实体作为所述第一预测结果进行输出。
可选的,所述输入模块具体用于:
根据各第一特征向量、预设的向量矩阵、预设的激活函数,确定各第一特征向量对应的字为实体的首位置的第一概率以及为实体的尾位置的第二概率;
根据所述第一概率、所述第二概率以及预设阈值,确定各第一特征向量对应的字是否为实体的首位置或尾位置。
可选的,所述输入模块具体用于:
若所述第一特征向量对应的字为实体的首位置或尾位置,则使用第一预设数值将所述位置对应的字进行标注;
若所述第一特征向量对应的字不为实体的首位置以及尾位置,则使用第二预设数值将所述位置对应的字进行标注。
可选的,所述输入模块具体用于:
从所述第一特征向量对应的字中查找首个标注为第一预设数值的第一字,将所述第一字作为目标实体的首位置;
从所述第一特征向量对应的字中查找距离所述第一字最近且标注为第一预设数值的第二字,将所述第二字作为目标实体的尾位置;
将所述第一字和第二字拼接为所述目标实体。
可选的,所述确定模块具体用于:
对第一损失结果以及第二损失结果进行加权计算,得到所述目标损失结果。
第三方面,本申请实施例还提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的程序指令,当应用程序运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述程序指令,以执行上述第一方面所述的实体识别模型训练方法的步骤。
第四方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被读取并执行上述第一方面所述的实体识别模型训练方法的步骤。
本申请的有益效果是:
本申请提供的一种实体识别模型训练方法、装置、电子设备及存储介质,通过根据预先训练得到的教师模型构建初始学生模型;将多个样本数据输入至教师模型,得到教师模型输出的第一预测结果,并将多个样本数据输入至初始学生模型中,得到初始学生模型输出的第二预测结果;分别确定第一预测结果对应的第一隐藏状态以及第二预测结果对应的第二隐藏状态;根据第一隐藏状态以及第二隐藏状态,确定教师模型对应的第一损失结果;根据第二预测结果以及样本数据,确定初始学生模型对应的第二损失结果;根据第一损失结果以及第二损失结果,确定初始学生模型的目标损失结果,并根据初始学生模型的目标损失结果对初始学生模型进行迭代修正,并将迭代修正结束时的初始学生模型作为待使用的实体识别模型。通过使用教师模型输出的预测结果以及样本数据确定的学生模型的损失结果,使得优化的学生模型预测结果的准确率更高,同时,通过优化后的学生模型去学习教师模型的知识,可以实现模型的压缩和量化,降低了模型调用的延时,增加了模型的精度。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种实体识别模型训练方法的流程示意图;
图2为本申请实施例提供的另一种实体识别模型训练方法的示意图;
图3为本申请实施例提供的一种完整的实体识别模型训练方法的流程图;
图4为本申请实施例提供的一种教师模型训练的流程图;
图5为本申请实施例提供的一种实体识别模型训练方法的装置示意图;
图6为本申请实施例提供的一种电子设备的结构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
模型知识蒸馏的目的是用一个小模型去学习一个大模型的知识,让小模型的输出效果能够接近大模型的输出效果,其中,小模型可以被称为学生模型(Student model),大模型可以被称为教师模型(Teacher model),这种方法通常用教师模型在训练阶段及参数微调中获取知识来指导原有的小规模模型训练,之后将教师模型中的知识迁移到学生模型中。
知识蒸馏方法包括但不限于,通过教师模型对训练样本的推理,产生每个样本在每个分类上的预测概率作为软标签,使用软标签对特定结构的学生模型进行训练。
本申请可以应用在保险行业智能对话机器人系统中,抽取用户问题中的实体,当然,智能对话机器人系统只是一个示例性的例子,该方法还可以应用到其他场景,在此不做限定。采用了一种基于知识蒸馏和全局指针网络的命名实体识别的方法,可以将输入的文本送入预训练模型中,通过预训练模型进行特征提取处理,获得多个特征向量,将获得到的多个特征向量输入至命名实体抽取网络中进行实体的抽取,也就是本申请中的全局指针网络,最终获取命名实体抽取网络输出的命名实体识别结果。
本申请上述方法可以解决现有技术中存在的由于无法识别嵌套实体,导致漏识别和错误识别的技术问题,同时压缩了网络的参数,降低了模型调用的延时,又减少了过拟合,从而增加了模型的精度。
图1为本申请实施例提供的一种实体识别模型训练方法的流程示意图,如图1所示,该方法包括:
S101、根据预先训练得到的教师模型构建初始学生模型。
其中,该教师模型可以包括第一教师子模型以及第二教师子模型,该第一教师子模型可以用于进行特征提取,例如对教师模型输入的文本进行特征提取,得到该输入文本的特征向量。第二教师子模型用于进行实体识别,具体地,可以将第一教师子模型得到的特征向量输入至第二教师子模型中,第二教师子模型可以根据接收到的特征向量使用预设的方法进行实体识别,得到目标实体。
可选的,初始学生模型可以包括第一学生子模型以及第二学生子模型,其中,第一学生子模型可以从第一教师子模型中抽取预设数量的层从而得到第一学生子模型,具体地,若第一教师子模型为一个12层的双向基于注意力机制的神经网络的编码器(Bidirectional Encoder representations from Transformer,简称Bert),则第一学生子模型可以从教师子模型中抽取预设数量的神经网络层作为第一学生子模型的神经网络层,例如可以每隔两层神经网络层取一层的参数作为第一学生子模型的参数初始化,则可以从12层神经网络层的第一教师子模型中抽取6层的神经网络层作为第一学生子模型的神经网络层;第一学生子模型也可以用于进行特征提取,例如对学生模型输入的文本进行特征提取,得到该输入文本的特征向量,并且将第一教师子模型得到的特征向量输入至第二教师子模型中;其中,第二学生子模型的结构与第二教师子模型的结构相同,可以根据接收到的特征向量使用预设的方法进行实体识别,得到目标实体。
S102、将多个样本数据输入至教师模型,得到教师模型输出的第一预测结果,并将多个样本数据输入至初始学生模型中,得到初始学生模型输出的第二预测结果。
可选的,该多个样本数据可以从实际的线上系统中的问答数据中获取(即问题数据和候选答案数据),可以对获取到的数据进行规范化处理,并将处理后的数据进行保存,用于模型的训练中,其中,该样本数据例如可以为“你喜欢音乐吗”,“今天中午你准备吃米饭不”,“你一会要去看电影吗”等,通过模型的训练,可以辨识出日常词汇,也可以辨识出特定领域(例如保险、电影、音乐)等名词,辨识出的这些名词则为模型需要辨识的各实体,其中可以包括实体的类型等。
可选的,多个样本数据输入至教师模型中后,第一教师子模型对输入的各样本数据进行全局特征提取,可以挖掘各样本数据中的深层次的语义特征,得到上下文关联的各样本数据中各字的特征向量,即可以将各样本数据中的各字转化为数值化的具有固定长度的特征向量。例如获得各样本数据中每一个字的信息,将字转换为多个类型的嵌入特征,将多个嵌入特征进行融合,采用第一教师子模型中的特征提取网络对融合后的嵌入特征进行编码,得到各样本数据中各字的特征,之后使用第一教师子模型中的转换网络对各样本数据中各字的特征进行池化处理,并将池化后的各字的特征进行转换为预设维度的向量,得到各样本数据中各字的特征向量。
可选的,第二教师子模型基于第一子模型得到的各样本数据中各字的特征向量进行实体识别,输出预测的实体,则该预测的实体为教师模型输出的第一预测结果。
可选的,可以将上述保存的各样本数据输入至初始学生模型中,经过初始学生模型对各样本数据的特征提取以及实体识别输出的预测的实体,为初始学生模型输出的第二预测结果。
值得说明的是,初始学生模型中第一学生子模型特征提取与教师模型中的第一教师子模型特征提取的过程,第二学生子模型实体识别与第二教师子模型实体识别的过程是一样的,此处不作赘述。
S103、分别确定第一预测结果对应的第一隐藏状态以及第二预测结果对应的第二隐藏状态。
其中,第一隐藏状态可以为第一预测结果实体中各字的特征向量;第二隐藏状态可以为第二预测结果实体中各字的特征向量。
可选的,当第一预测结果输出时,可以根据第一预测结果输出的实体,获取实体中各字的特征向量;当第二预测结果输出时,可以根据第二预测结果输出的实体,获取实体中各字的特征向量。
S104、根据第一隐藏状态以及第二隐藏状态,确定教师模型对应的第一损失结果。
可选的,第一隐藏状态和第二隐藏状态可以使用预设的方法确定教师模型的第一损失结果,具体地,可以根据第一隐藏状态以及第二隐藏状态使用均方差损失函数计算出教师模型的第一损失结果。
S105、根据第二预测结果以及样本数据,确定初始学生模型对应的第二损失结果。
可选的,第二预测结果可以为初始学生模型输出的各实体的预测标签,该样本数据指示的是样本数据中各实体的真实标签,根据第二预测结果以及样本数据可以使用预设的方法确定初始学生模型的第二损失结果,例如可以根据初始模型输出的各实体的预测标签与各实体的真实标签使用交叉熵损失函数计算出初始学生模型的第二损失结果。
S106、根据第一损失结果以及第二损失结果,确定初始学生模型的目标损失结果,并根据初始学生模型的目标损失结果对初始学生模型进行迭代修正,并将迭代修正结束时的初始学生模型作为待使用的实体识别模型。
可选的,第一损失结果以及第二损失结果可以使用预设的方法,计算出初始学生模型的目标损失结果,将计算出的初始学生模型的目标损失结果作为初始学生模型新的目标损失结果,通过重复上述S102-S106步骤,对初始模型的目标损失结果进行迭代修正,直至计算出的目标损失结果达到收敛条件,例如在不需要额外大量标注新的样本数据以及不需要超高计算资源的条件下,可以将迭代修正结束时的初始学生模型作为待使用的实体识别模型,该初始学生模型可以为一个高准确率输出的学生模型,并将迭代修正结束时的初始学生模型进行保存,作为待使用的实体识别模型。
本实施例中,通过根据预先训练得到的教师模型构建初始学生模型;将多个样本数据输入至教师模型,得到教师模型输出的第一预测结果,并将多个样本数据输入至初始学生模型中,得到初始学生模型输出的第二预测结果;分别确定第一预测结果对应的第一隐藏状态以及第二预测结果对应的第二隐藏状态;根据第一隐藏状态以及第二隐藏状态,确定教师模型对应的第一损失结果;根据第二预测结果以及样本数据,确定初始学生模型对应的第二损失结果;根据第一损失结果以及第二损失结果,确定初始学生模型的目标损失结果,并根据初始学生模型的目标损失结果对初始学生模型进行迭代修正,并将迭代修正结束时的初始学生模型作为待使用的实体识别模型。通过使用教师模型输出的预测结果以及样本数据确定的学生模型的损失结果,使得优化的学生模型预测结果的准确率更高,同时,通过优化后的学生模型去学习教师模型的知识,可以实现模型的压缩和量化,降低了模型调用的延时,增加了模型的精度。
可选的,第二教师子模型以及第二学生子模型分别可以为指针网络。
其中,该指针网络可以通过指向从源文本中抽取关键句或者关键词,通过对第一教师子模型以及第一学生子模型输出的特征向量进行首位置或者尾位置的实体识别,具体地通过指针网络得到各特征向量的概率分布,通过设置阈值为各特征向量对应的字分配标签分布标注出实体的首位置以及尾位置,通过概率分布作为“指针”来处理表示可变实体的长度,预测实体的开始位置、结束位置来预测实体概率,可以解决现有技术中的实体嵌套问题。
可选的,上述步骤S102中将多个样本数据输入至教师模型,得到教师模型输出的第一预测结果,可以包括:
可选的,将多个样本数据输入至第一教师子模型,得到多个第一特征向量。
其中,各样本数据中可以包括多个字,第一教师子模型提取各样本数据中各字的特征,得到各样本数据中各字的特征向量,则各样本数据中各字的特征向量为各第一特征向量,例如一个样本数据的句子长度为n,输入的句子为X=(x1,x2…xn),xn指的是该句子中各字,可以包括该字在该句子中的位置,经过特征提取得到的各特征向量可以为H=[h1,h2…hn],hn为该句子中各个位置的特征向量。
可选的,将多个第一特征向量输入至第二教师子模型中,由第二教师子模型对多个第一特征向量进行解码,得到各第一特征向量对应的字,根据各第一特征向量对应的字确定实体的首尾位置,并根据实体的首尾位置对各第一特征向量对应的字进行标注,根据标注结果进行字的拼接处理,得到目标实体,将目标实体作为第一预测结果进行输出。
可选的,当多个第一特征向量输入至第二教师子模型中时,第二教师子模型可以对各第一特征向量进行解码以识别出输入的样本数据中所有可能的实体,并得到各第一特征向量对应的字。
可选的,可以根据各第一特征向量对应的字以及预设的方法,确定实体的首尾位置,当实体的首尾位置确定后,可以使用预设的方法对各特征向量对应的字进行标注,并根据标注的结果对首位置和尾位置进行拼接,得到目标实体。
可选的,实体可以包括多种类型,例如电影类型、音乐类型、症状类型、频率类型等,每一种类型的实体都对应着相应的首位置和尾位置,例如对于样本数据“你喜欢音乐吗”,其中“音”对应位置是音乐类型实体的首位置,“乐”对应位置是音乐类型实体的尾位置。
可选的,上述根据各第一特征向量对应的字确定实体的首尾位置,还包括:
可选的,根据各第一特征向量、预设的向量矩阵、预设的激活函数确定各第一特征向量对应的字为实体的首位置的第一概率以及为实体的尾位置的第二概率。
具体地,可以根据如下公式进行计算:
其中,Wsubs和Wsube表示的各第一特征向量的矩阵、hi为样本数据中第i位置的第一特征向量,σ为预设的激活函数,bsubs和bsube表示各第一特征向量的偏置向量,为各样本数据中第i位置的第一特征向量对应的字是实体首位置的概率,该概率为第一概率,为各样本数据中第i位置的第一特征向量对应的字是实体尾位置的概率,该概率为第二概率。
可选的,根据第一概率、第二概率与预设阈值之间的大小关系,可以确定各第一特征向量对应的字是否为首位置或者尾位置,若计算的第一概率大于第二概率,且大于预设阈值,则,该第一特征向量对应的字可以为实体的首位置;若计算的第二概率大于第一概率,且大于预设阈值,则,该第一特征向量对应的字可以为实体的尾位置;若计算的第一概率以及第二概率均小于预设阈值,则该第一特征向量对应的字不为实体的首位置也不为实体的尾位置。
示例性的,仍以“你喜欢音乐吗”该样本数据为例,对于样本数据中的“音”字的第一特征向量,通过上述计算“音”的第一概率以及第二概率,若计算得到的第一概率大于第二概率,且大于预设阈值,则该第一特征向量对应的字“音”为实体的首位置。
本实施例中,通过指针网络计算得到各第一特征向量对应的字的概率以及通过概率确定实体的首尾位置,可以解决实体的嵌套问题。
可选的,根据实体的首尾位置对各第一特征向量对应的字进行标注,可以包括:
可选的,若第一特征向量对应的字为实体的首位置或者尾位置,则使用第一预设数值将该位置对应的字进行标注;若第一特征向量对应的字不为实体的首位置以及尾位置,则使用第二预设数值将该位置对应的字进行标注。
示例性的,第一预设数值例如可以为字符“1”,第二预设数值例如可以为“0”,使用第一预设数值“1”对实体的首位置对应的字和尾位置对应的字进行标注,第二预设数值“0”对不是实体的首位置和尾位置的其他位置上的字进行标注。需要说明的是,第一预设数值以及第二预设数值可以为除“1”、“0”以外的其他类型的标签字符,在此不作限制。
示例性的,以“你今天吃米饭了么”为例,start表示实体的首位置,也就是标签的起始位置,end表示实体的尾位置,也就是标签的结束位置。对于时间类型的实体,“今”位置对应时间类型的起始位置,将“今”位置对应的字标注第一预设数值“1”;“天”位置对应时间类型的结束位置,将“天”位置对应的字标注第一预设数值“1”,其他位置对应的字标注为“0”。对于食物类型的实体,“米”位置对应食物类型的起始位置,将“米”位置对应的字标注第一预设数值“1”;“饭”位置对应时间类型的结束位置,将“饭”位置对应的字标注第一预设数值“1”,其他位置对应的字标注为“0”。
可选的,上述根据标注结果进行字的拼接处理,得到目标实体,可以包括:
可选的,从第一特征向量对应的字中查找首个标注为第一预设数值的第一字,将该第一字作文目标实体的首位置,从第一特征向量对应的字中查找距离第一字最近且标注为第一预设数值的第二字,将第二字作为目标实体的尾位置,将第一字和第二字进行拼接得到目标实体。
可选的,对于各样本数据中需要查找的实体类型,可以从各样本数据中的多个第一特征向量中查找出在该多个第一特征向量对应的字首个标注第一预设数值的字作为第一字,并将该第一字作为目标实体的首位置,继续从多个第一特征向量对应的字中查找距离第一字最近且同样标注第一预设数值的第二字作为目标实体的尾位置,将查找到的第一字和第二字进行拼接,得到需要查找的实体类型的目标实体。
值得说明的是,上述具体实施例中以将多个样本数据输入至教师模型,得到教师模型输出的第一预测结果为例进行具体的说明,将多个样本输入至初始学生模型,得到初始学生模型输出的第二测试结果的具体实施过程和教师模型的具体实施过程一致,在此不做赘述,另外,上述的教师模型是已经经过训练和微调过的模型。
可选的,上述根据第一损失结果以及第二损失结果,确定初始学生模型的目标损失结果,包括:
可选的,对第一损失结果以及第二损失结果进行加权计算,得到目标损失结果,具体地,可以使用如下公式:
L=αLsoft+(1-α)Lhard
其中,L为初始学生模型的目标损失结果,Lsoft为教师模型的第一损失结果,Lhard为初始学生模型的第二损失结果,α为加权系数。
图2为本申请实施例提供的另一种实体识别模型训练方法的示意图,如图2所示,图中的12层bert模型以及指针网络指的是上述的教师模型中的第一教师子模型以及第二教师子模型,6层bert模型以及指针网络指的是上述的初始学生模型中的第一学生子模型以及第二学生子模型;KL损失函数指示的是教师模型的均方误差损失函数,也就是Lsoft,CE损失函数指示的是初始学生模型的交叉熵损失函数,也就是Lhard,根据Lsoft以及Lhard计算初始学生模型的损失结果。其中,图中的数据标签指示的是样本数据中的真实的数据标签,该真实的数据标签也可以作为上述中的多个样本数据。具体地实施步骤在上述具体实施例中已详细说明,此处不作赘述。
图3为本申请实施例提供的一种完整的实体识别模型训练方法的流程图,如图3所示:
S201、获取多个样本数据。
S202、使用经过训练和微调过的预训练模型、指针网络作为知识蒸馏中的教师模型。
S203、建立初始学生模型,以及确定初始学生模型的目标损失结果。
S204、使用教师模型对初始学生模型进行知识蒸馏,以教师模型的预测结果作为指导对初始学生模型进行优化,得到目标学生模型。
S201-S204中各步骤的具体实施过程在上述具体实施例中已详细说明,此处不做赘述。
图4为本申请实施例提供的一种教师模型训练的流程图,如图4所示:
S301、输入多个样本数据。
S302、通过第一教师子模型进行特征提取,得到多个第一特征向量。
S303、将各第一特征向量输入至指针网络中,进行实体识别,输出第一预测结果。
S304、重复上述步骤,对教师模型进行微调和优化,得到最优教师模型作为训练初始学生模型的教师模型。
其中,上述步骤指的是上述S301-S303步骤。
S301-S304中各步骤的具体实施过程在上述具体实施例中已详细说明,此处不做赘述。
图5为本申请实施例提供的一种实体识别模型训练方法的装置示意图,如图5所示,该装置包括:
构建模块401,用于根据预先训练得到的教师模型构建初始学生模型,所述教师模型包括:第一教师子模型以及第二教师子模型,所述第一教师子模型用于进行特征提取,所述第二教师子模型用于进行实体识别,所述初始学生模型包括:第一学生子模型以及第二学生子模型,所述第一学生子模型通过从所述第一教师子模型中抽取预设数量的层得到,所述第二学生子模型的结构与所述第二教师子模型的结构相同;
输入模块402,用于将多个样本数据输入至所述教师模型,得到所述教师模型输出的第一预测结果,并将所述多个样本数据输入至所述初始学生模型中,得到所述初始学生模型输出的第二预测结果;
确定模块403,用于分别确定所述第一预测结果对应的第一隐藏状态以及所述第二预测结果对应的第二隐藏状态;
确定模块403,用于根据所述第一隐藏状态以及所述第二隐藏状态,确定所述教师模型对应的第一损失结果;
确定模块403,用于根据所述第二预测结果以及所述样本数据,确定所述初始学生模型对应的第二损失结果;
确定模块403,用于根据所述第一损失结果以及所述第二损失结果,确定所述初始学生模型的目标损失结果,并根据所述初始学生模型的目标损失结果对所述初始学生模型进行迭代修正,并将迭代修正结束时的初始学生模型作为待使用的实体识别模型。
可选的,所述第二教师子模型以及所述第二学生子模型分别为指针网络。
可选的,输入模块402具体用于:
将所述多个样本数据输入所述第一教师子模型,得到多个第一特征向量;
将所述多个第一特征向量输入所述第二教师子模型中,由所述第二教师子模型对所述多个第一特征向量进行解码,得到各第一特征向量对应的字,根据各第一特征向量对应的字确定实体的首尾位置,并根据实体的首尾位置对各第一特征向量对应的字进行标注,根据标注结果进行字的拼接处理,得到目标实体,将所述目标实体作为所述第一预测结果进行输出。
可选的,输入模块402具体用于:
根据各第一特征向量、预设的向量矩阵、预设的激活函数,确定各第一特征向量对应的字为实体的首位置的第一概率以及为实体的尾位置的第二概率;
根据所述第一概率、所述第二概率以及预设阈值,确定各第一特征向量对应的字是否为实体的首位置或尾位置。
可选的,输入模块402具体用于:
若所述第一特征向量对应的字为实体的首位置或尾位置,则使用第一预设数值将所述位置对应的字进行标注;
若所述第一特征向量对应的字不为实体的首位置以及尾位置,则使用第二预设数值将所述位置对应的字进行标注。
可选的,输入模块402具体用于:
从所述第一特征向量对应的字中查找首个标注为第一预设数值的第一字,将所述第一字作为目标实体的首位置;
从所述第一特征向量对应的字中查找距离所述第一字最近且标注为第一预设数值的第二字,将所述第二字作为目标实体的尾位置;
将所述第一字和第二字拼接为所述目标实体。
可选的,确定模块403具体用于:
对第一损失结果以及第二损失结果进行加权计算,得到所述目标损失结果。
图6为本申请实施例提供的一种电子设备500的结构框图,如图6所示,该电子设备可包括:处理器501、存储器502。
可选的,还可以包括总线503,其中,所述存储器502用于存储有所述处理器501可执行的机器可读指令,当电子设备500运行时,所述处理器501与所述存储器502存储之间通过总线503通信,所述机器可读指令被所述处理器501执行时执行上述方法实施例中的方法步骤。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述实体识别模型训练方法实施例中的方法步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (10)
1.一种实体识别模型训练方法,其特征在于,所述方法包括:
根据预先训练得到的教师模型构建初始学生模型,所述教师模型包括:第一教师子模型以及第二教师子模型,所述第一教师子模型用于进行特征提取,所述第二教师子模型用于进行实体识别,所述初始学生模型包括:第一学生子模型以及第二学生子模型,所述第一学生子模型通过从所述第一教师子模型中抽取预设数量的层得到,所述第二学生子模型的结构与所述第二教师子模型的结构相同;
将多个样本数据输入至所述教师模型,得到所述教师模型输出的第一预测结果,并将所述多个样本数据输入至所述初始学生模型中,得到所述初始学生模型输出的第二预测结果;
分别确定所述第一预测结果对应的第一隐藏状态以及所述第二预测结果对应的第二隐藏状态;
根据所述第一隐藏状态以及所述第二隐藏状态,确定所述教师模型对应的第一损失结果;
根据所述第二预测结果以及所述样本数据,确定所述初始学生模型对应的第二损失结果;
根据所述第一损失结果以及所述第二损失结果,确定所述初始学生模型的目标损失结果,并根据所述初始学生模型的目标损失结果对所述初始学生模型进行迭代修正,并将迭代修正结束时的初始学生模型作为待使用的实体识别模型。
2.根据权利要求1所述的实体识别模型训练方法,其特征在于,所述第二教师子模型以及所述第二学生子模型分别为指针网络。
3.根据权利要求2所述的方法,其特征在于,所述将多个样本数据输入至所述教师模型,得到所述教师模型输出的第一预测结果,包括:
将所述多个样本数据输入所述第一教师子模型,得到多个第一特征向量;
将所述多个第一特征向量输入所述第二教师子模型中,由所述第二教师子模型对所述多个第一特征向量进行解码,得到各第一特征向量对应的字,根据各第一特征向量对应的字确定实体的首尾位置,并根据实体的首尾位置对各第一特征向量对应的字进行标注,根据标注结果进行字的拼接处理,得到目标实体,将所述目标实体作为所述第一预测结果进行输出。
4.根据权利要求3所述的实体识别模型训练方法,其特征在于,根据各第一特征向量对应的字确定实体的首尾位置,还包括:
根据各第一特征向量、预设的向量矩阵、预设的激活函数,确定各第一特征向量对应的字为实体的首位置的第一概率以及为实体的尾位置的第二概率;
根据所述第一概率、所述第二概率以及预设阈值,确定各第一特征向量对应的字是否为实体的首位置或尾位置。
5.根据权利要求3所述的实体识别模型训练方法,其特征在于,根据实体的首尾位置对各第一特征向量对应的字进行标注,包括:
若所述第一特征向量对应的字为实体的首位置或尾位置,则使用第一预设数值将所述位置对应的字进行标注;
若所述第一特征向量对应的字不为实体的首位置以及尾位置,则使用第二预设数值将所述位置对应的字进行标注。
6.根据权利要求5所述的实体识别模型训练方法,其特征在于,根据标注结果进行字的拼接处理,得到目标实体,包括:
从所述第一特征向量对应的字中查找首个标注为第一预设数值的第一字,将所述第一字作为目标实体的首位置;
从所述第一特征向量对应的字中查找距离所述第一字最近且标注为第一预设数值的第二字,将所述第二字作为目标实体的尾位置;
将所述第一字和第二字拼接为所述目标实体。
7.根据权利要求1-6任一项所述的实体识别模型训练方法,其特征在于,根据所述第一损失结果以及所述第二损失结果,确定所述初始学生模型的目标损失结果,包括:
对第一损失结果以及第二损失结果进行加权计算,得到所述目标损失结果。
8.一种实体识别模型训练装置,其特征在于,包括:
构建模块,用于根据预先训练得到的教师模型构建初始学生模型,所述教师模型包括:第一教师子模型以及第二教师子模型,所述第一教师子模型用于进行特征提取,所述第二教师子模型用于进行实体识别,所述初始学生模型包括:第一学生子模型以及第二学生子模型,所述第一学生子模型通过从所述第一教师子模型中抽取预设数量的层得到,所述第二学生子模型的结构与所述第二教师子模型的结构相同;
输入模块,用于将多个样本数据输入至所述教师模型,得到所述教师模型输出的第一预测结果,并将所述多个样本数据输入至所述初始学生模型中,得到所述初始学生模型输出的第二预测结果;
确定模块,用于分别确定所述第一预测结果对应的第一隐藏状态以及所述第二预测结果对应的第二隐藏状态;
确定模块,用于根据所述第一隐藏状态以及所述第二隐藏状态,确定所述教师模型对应的第一损失结果;
确定模块,用于根据所述第二预测结果以及所述样本数据,确定所述初始学生模型对应的第二损失结果;
确定模块,用于根据所述第一损失结果以及所述第二损失结果,确定所述初始学生模型的目标损失结果,并根据所述初始学生模型的目标损失结果对所述初始学生模型进行迭代修正,并将迭代修正结束时的初始学生模型作为待使用的实体识别模型。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时实现上述权利要求1-7任一项所述的实体识别模型训练方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1-7任一项所述的实体识别模型训练方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310361596.7A CN116341651A (zh) | 2023-03-30 | 2023-03-30 | 实体识别模型训练方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310361596.7A CN116341651A (zh) | 2023-03-30 | 2023-03-30 | 实体识别模型训练方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116341651A true CN116341651A (zh) | 2023-06-27 |
Family
ID=86891199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310361596.7A Pending CN116341651A (zh) | 2023-03-30 | 2023-03-30 | 实体识别模型训练方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116341651A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116579345A (zh) * | 2023-07-14 | 2023-08-11 | 亚信科技(中国)有限公司 | 命名实体识别模型的训练方法、命名实体识别方法及装置 |
CN116665025A (zh) * | 2023-07-31 | 2023-08-29 | 福思(杭州)智能科技有限公司 | 数据闭环方法和系统 |
-
2023
- 2023-03-30 CN CN202310361596.7A patent/CN116341651A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116579345A (zh) * | 2023-07-14 | 2023-08-11 | 亚信科技(中国)有限公司 | 命名实体识别模型的训练方法、命名实体识别方法及装置 |
CN116579345B (zh) * | 2023-07-14 | 2023-10-24 | 亚信科技(中国)有限公司 | 命名实体识别模型的训练方法、命名实体识别方法及装置 |
CN116665025A (zh) * | 2023-07-31 | 2023-08-29 | 福思(杭州)智能科技有限公司 | 数据闭环方法和系统 |
CN116665025B (zh) * | 2023-07-31 | 2023-11-14 | 福思(杭州)智能科技有限公司 | 数据闭环方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020140487A1 (zh) | 用于智能设备的人机交互语音识别方法及系统 | |
CN110990543A (zh) | 智能对话的生成方法、装置、计算机设备及计算机存储介质 | |
US20230080671A1 (en) | User intention recognition method and apparatus based on statement context relationship prediction | |
CN108710704B (zh) | 对话状态的确定方法、装置、电子设备及存储介质 | |
CN112528637B (zh) | 文本处理模型训练方法、装置、计算机设备和存储介质 | |
CN107844481B (zh) | 识别文本检错方法及装置 | |
CN116341651A (zh) | 实体识别模型训练方法、装置、电子设备及存储介质 | |
CN112037773B (zh) | 一种n最优口语语义识别方法、装置及电子设备 | |
CN111985239A (zh) | 实体识别方法、装置、电子设备及存储介质 | |
CN113268609A (zh) | 基于知识图谱的对话内容推荐方法、装置、设备及介质 | |
CN110852089B (zh) | 基于智能分词与深度学习的运维项目管理方法 | |
CN112800768A (zh) | 一种嵌套命名实体识别模型的训练方法及装置 | |
CN111079418A (zh) | 命名体识别方法、装置、电子设备和存储介质 | |
CN113239702A (zh) | 意图识别方法、装置、电子设备 | |
CN115810068A (zh) | 一种图像描述生成方法、装置、存储介质及电子设备 | |
CN115186147A (zh) | 对话内容的生成方法及装置、存储介质、终端 | |
CN114694637A (zh) | 混合语音识别方法、装置、电子设备及存储介质 | |
CN112270184A (zh) | 自然语言处理方法、装置及存储介质 | |
CN112818688B (zh) | 文本处理方法、装置、设备及存储介质 | |
CN116561272A (zh) | 开放域视觉语言问答方法、装置、电子设备及存储介质 | |
CN113792120B (zh) | 图网络的构建方法及装置、阅读理解方法及装置 | |
CN115240712A (zh) | 一种基于多模态的情感分类方法、装置、设备及存储介质 | |
CN113257230B (zh) | 语音处理方法及装置、计算机可存储介质 | |
CN113436616B (zh) | 一种多领域自适应的端到端语音识别方法、系统及电子装置 | |
CN111581351B (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 |