掌桥专利:专业的专利平台
掌桥专利
首页

一种模型训练及文本识别方法、装置、设备及存储介质

文献发布时间:2023-06-19 11:29:13


一种模型训练及文本识别方法、装置、设备及存储介质

技术领域

本发明涉及智能识别领域,特别是涉及一种模型训练及文本识别方法、装置、设备及存储介质。

背景技术

在智能识别领域,对文本的识别是一个很有应用价值的研究方向,现实生活中很多应用都与其息息相关,例如,OTT(OverThe Top,互联网电视)和基线语音助手业务在与用户语音交互时,从用户语音中提取出文本信息,进而需要对文本进行识别,从而理解用户意图,并返回对应结果。

通常,对文本的识别包括意图识别和槽位填充,其中,意图识别用于将文本中的句子分为相应的意图种类,槽位填充则用于对给定的句子中的每个词分别打上相应的标签。

现有技术中,可以利用Bert(Bidirectional Encoder Representations fromTransformers,基于transformer网络的双向编码器表示)模型对文本进行识别,但是,在Bert模型中至少包括12层transformer(变换网络层)网络,使得文本识别模型的计算耗时较长,无法满足业务的QPS(Query Per Second,每秒查询率)要求。

发明内容

本发明实施例的目的在于提供一种模型训练及文本识别方法、装置、设备及存储介质,以减少文本识别模型的计算耗时,满足业务的QPS要求。具体技术方案如下:

在本发明实施的第一方面,首先提供了一种模型训练方法,所述方法包括:

获取样本文本数据;

将所述样本文本数据输入至预训练模型进行文本识别处理,得到第一预测文本识别结果,所述预训练模型中包括多层中间变换网络层、末层变换网络层及所述末层变换网络层所连接的输出分类器;

针对每层中间变换网络层,将所述样本文本数据在该中间变换网络层的输出结果输入至该中间变换网络层所连接的预设分类器,得到第二预测文本识别结果;

判断所述第二预测文本识别结果与所述第一预测文本识别结果之间的损失值是否小于预设损失值阈值;

若不小于,则对该中间变换网络层所连接的预设分类器进行迭代调整,若小于,则将迭代调整后的预设分类器作为该中间变换网络层对应的输出分类器,得到文本识别模型,所述文本识别模型包括所述预训练模型及每层中间变换网络层所连接的输出分类器。

可选的,在所述将所述样本文本数据输入至预训练模型进行文本识别处理,得到第一预测文本识别结果之前,所述方法还包括:

将所述样本文本数据输入至预设模型进行文本识别处理,得到初始预测文本识别结果,所述预设模型中包括多层中间变换网络层、末层变换网络层及所述末层变换网络层所连接的输出分类器;

判断所述初始预测文本识别结果是否收敛,若不收敛,则对所述预设模型进行迭代调整,若收敛,则将迭代调整后的预设模型作为所述预训练模型。

可选的,所述判断所述第二预测文本识别结果与所述第一预测文本识别结果之间的损失值是否小于预设损失值阈值,包括:

计算该中间变换网络层所连接的预设分类器输出的第二预测文本识别结果与所述第一预测文本识别结果之间的K-L散度;

计算该中间变换网络层对应的K-L散度以及在该中间变换网络层之前的各个中间变换网络层对应的K-L散度之和,得到该中间变换网络层对应的第二预测文本识别结果与所述第一预测文本识别结果之间的损失值。

可选的,所述输出分类器包括意图分类分类器和/或槽位识别分类器。

在本发明实施的第二方面,还提供了一种文本识别方法,所述方法包括:

获取待识别文本数据;

将预先训练得到的文本识别模型的第一层变换网络层作为目标网络,将所述待识别文本数据作为目标数据,将所述目标数据输入至所述目标网络进行特征提取,得到特征提取结果,其中,所述文本识别模型包括多层变换网络层,每层变换网络层分别连接对应的预先训练得到的输出分类器;

将所述特征提取结果输入至所述目标网络所连接的输出分类器,对所述特征提取结果进行分类识别,判断得到的目标识别结果是否满足预设条件;

若满足,则将所述目标识别结果作为所述待识别文本数据的文本识别结果;

若不满足,则将所述文本识别模型的下一层变换网络层作为目标网络,将所述特征提取结果作为目标数据,返回所述将所述目标数据输入至所述目标网络进行特征提取的步骤。

可选的,所述判断得到的目标识别结果是否满足预设条件,包括:

计算得到的目标识别结果的不稳定度,所述不稳定度用于表示得到的目标识别结果超出预设误差范围之外的误差程度;

判断所述不稳定度是否小于预设不稳定度阈值;

若小于,则判定所述目标识别结果满足所述预设条件,若不小于,则判定所述目标识别结果不满足所述预设条件。

可选的,采用如下公式,计算得到的目标识别结果的不稳定度:

其中,所述P

在本发明实施的第三方面,还提供了一种模型训练装置,所述装置包括:

样本获取模块,用于获取样本文本数据;

第一预测模块,用于将所述样本文本数据输入至预训练模型进行文本识别处理,得到第一预测文本识别结果,所述预训练模型中包括多层中间变换网络层、末层变换网络层及所述末层变换网络层所连接的输出分类器;

第二预测模块,用于针对每层中间变换网络层,将所述样本文本数据在该中间变换网络层的输出结果输入至该中间变换网络层所连接的预设分类器,得到第二预测文本识别结果;

判断模块,用于判断所述第二预测文本识别结果与所述第一预测文本识别结果之间的损失值是否小于预设损失值阈值;若不小于,则对该中间变换网络层所连接的预设分类器进行迭代调整,若小于,则将迭代调整后的预设分类器作为该中间变换网络层的输出分类器,得到文本识别模型,所述文本识别模型包括所述预训练模型及每层中间变换网络层所连接的输出分类器。

在本发明实施的第四方面,还提供了一种文本识别装置,所述装置包括:

数据获取模块,用于获取待识别文本数据;

特征提取模块,用于将预先训练得到的文本识别模型的第一层变换网络层作为目标网络,将所述待识别文本数据作为目标数据,将所述目标数据输入至所述目标网络进行特征提取,得到特征提取结果,其中,所述文本识别模型包括多层变换网络层,每层变换网络层分别连接对应的预先训练得到的输出分类器;

输出模块,用于将所述特征提取结果输入至所述目标网络所连接的输出分类器,对所述特征提取结果进行分类识别,判断得到的目标识别结果是否满足预设条件;若满足,则将所述目标识别结果作为所述待识别数据的文本识别结果;

所述特征提取模块,还用于在所述目标识别结果不满足预设条件的情况下,将所述文本识别模型的下一层变换网络层作为目标网络,将所述特征提取结果作为目标数据,返回所述将所述目标数据输入至所述目标网络进行特征提取的步骤。

在本发明实施的又一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述任一所述的文本识别方法。

在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的文本识别方法。

在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的文本识别方法。

本发明实施例提供的模型训练及文本识别方法、装置、设备及存储介质,通过获取待识别文本数据;将预先训练得到的文本识别模型的第一层变换网络层作为目标网络,将所述待识别文本数据作为目标数据,将所述目标数据输入至所述目标网络进行特征提取,得到特征提取结果,其中,所述文本识别模型包括多层变换网络层,每层变换网络层分别连接对应的预先训练得到的输出分类器;将所述特征提取结果输入至所述目标网络所连接的输出分类器,判断得到的目标识别结果是否满足预设条件;若满足,则将所述目标识别结果作为所述待识别数据的文本识别结果;若不满足,则将所述文本识别模型的下一层变换网络层作为目标网络,将所述特征提取结果作为目标数据,返回所述将所述目标数据输入至所述目标网络进行特征提取的步骤。这样,在文本识别过程中,将文本识别模型中每一层变换网络层的输出结果输入至对应的输出分类器,在输出分类器输出的目标识别结果满足条件的情况下,将目标识别结果作为文本识别结果提前输出,不再进入下一层的变换网络层计算,从而减少文本识别模型的计算耗时,满足业务的QPS要求。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本发明实施例中一种模型训练方法的步骤流程图;

图2为本发明实施例中进行模型训练的方案示意图;

图3为本发明实施例中一种文本识别方法的步骤流程图;

图4为本发明实施例中一种模型训练装置的结构示意图;

图5为本发明实施例中一种模型训练装置的结构示意图;

图6为本发明实施例的一种电子设备的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。

相关技术中,通常利用Bert模型对文本进行识别,但是,在Bert模型中至少包括12层transformer网络,使得文本识别模型的计算耗时较长,无法满足业务的QPS要求。

为了解决上述问题,本发明实施例提出了一种模型训练方法和一种文本识别方法,下面从总体上对本发明实施例提供的模型训练方法和文本识别方法进行说明。

其中,模型训练方法包括如下步骤:

获取样本文本数据;

将样本文本数据输入至预训练模型进行文本识别处理,得到第一预测文本识别结果,预训练模型中包括多层中间变换网络层、末层变换网络层及末层变换网络层所连接的输出分类器;

针对每层中间变换网络层,将样本文本数据在该中间变换网络层的输出结果输入至该中间变换网络层所连接的预设分类器,得到第二预测文本识别结果;

判断第二预测文本识别结果与第一预测文本识别结果之间的损失值是否小于预设损失值阈值;

若不小于,则对该中间变换网络层所连接的预设分类器进行迭代调整,若小于,则将迭代调整后的预设分类器作为该中间变换网络层对应的输出分类器,得到文本识别模型,文本识别模型包括预训练模型及每层中间变换网络层所连接的输出分类器。

文本识别方法包括如下步骤:

获取待识别文本数据;

将预先训练得到的文本识别模型的第一层变换网络层作为目标网络,将待识别文本数据作为目标数据,将目标数据输入至目标网络进行特征提取,得到特征提取结果,其中,文本识别模型包括多层变换网络层,每层变换网络层分别连接对应的预先训练得到的输出分类器;

将特征提取结果输入至目标网络所连接的输出分类器,对特征提取结果进行分类识别,判断得到的目标识别结果是否满足预设条件;

若满足,则将目标识别结果作为待识别文本数据的文本识别结果;

若不满足,则将文本识别模型的下一层变换网络层作为目标网络,将特征提取结果作为目标数据,返回将目标数据输入至目标网络进行特征提取的步骤。

由以上可见,本发明实施例提供的模型训练方法和文本识别方法中,在文本识别过程中,将文本识别模型中每一层变换网络层的输出结果输入至对应的输出分类器,在输出分类器输出的目标识别结果满足条件的情况下,将目标识别结果作为文本识别结果提前输出,不再进入下一层的变换网络层计算,从而减少文本识别模型的计算耗时,满足业务的QPS要求。

参照图1,示出了本申请的一种模型训练方法的步骤流程图,具体可以包括如下步骤:

S101:获取样本文本数据。

其中,样本文本数据可以是从互联网中爬取的文本数据,获取样本文本数据之后,可以对样本文本数据进行预处理,检查并清除错误的人工标注,另外,还可以进行标准化处理,使得样本文本数据格式更统一,训练得到的文本识别模型更准确。

S102:将样本文本数据输入至预训练模型进行文本识别处理,得到第一预测文本识别结果。

其中,预训练模型中包括多层中间变换网络层、末层变换网络层及末层变换网络层所连接的输出分类器。其中,中间变换网络层包括除末层变换网络层之外的其他所有变换网络层,即预训练模型中的第一层至倒数第二层变换网络层均为中间变换网络层;预设分类器包括意图分类分类器和/或槽位识别分类器,意图识别分类器用于根据文本中的句子的意图,将文本分为不同的意图种类,槽位填充分类器则用于将文本中每个句子中的每个词分别打上相应的标签。

举例而言,槽位识别分类器可以识别出每个样本文本数据中每个字符的槽位标签,槽位标签分为B、I、O三种,B表示当前字符为任一槽位的开头,I表示当前字符延续前一字符的槽位,O表示当前字符不属于任一槽位,这样,就得到了BIO格式的数据。其中,槽位识别分类器可以通过数据标注和模型训练识别出每个字符的槽位标签,首先,定义本体库,即定义需要识别的实体类型,比如电视台、视频名称等实体类型,然后,通过爬虫爬取带有实体词的文本数据,并对文本数据进行标注,进而,对输入文本数据进行特征提取,得到标签数量维度的特征向量以及各个槽位标签之间的依存关系,最终得到每个字符对应的槽位标签。比如:

我想看芒果台的快乐大本营

O O O B-TV I-TV I-TV O B-TITLE I-TITLE I-TITLE I-TITLE I-TITLE

其中,“我想看”和“的”三个字符不属于任一槽位,“芒果台”的槽位为电视台,“快乐大本营”的槽位为视频名称,本句意图是搜索电视台视频意图。

在本申请中,预训练模型是预先获取的可以用于进行文本识别的模型,将样本文本数据依次经过预训练模型中的多层中间变换网络层、末层变换网络层及末层变换网络层所连接的输出分类器的处理,可以得到样本文本数据的第一文本识别结果,这样,得到的第一文本识别结果具有一定的可信度,可以用于后续的损失值计算,用于验证文本识别的准确性。

其中,预训练模型可以是预先获取到的训练好的模型,或者,另一种实现方式中,也可以先对预设模型进行训练,得到预训练模型,再将样本文本数据输入至预训练模型进行文本识别处理,得到第一预测文本识别结果。具体而言,首先,可以将样本文本数据输入至预设模型进行文本识别处理,得到初始预测文本识别结果,预设模型中包括多层中间变换网络层、末层变换网络层及末层变换网络层所连接的输出分类器;然后,判断初始预测文本识别结果是否收敛,若不收敛,则对预设模型进行迭代调整,若收敛,则将迭代调整后的预设模型作为预训练模型。

其中,预训练模型可以为Bert模型,在Bert模型中至少包括12层变换网络层。

S103:针对每层中间变换网络层,将样本文本数据在该中间变换网络层的输出结果输入至该中间变换网络层所连接的预设分类器,得到第二预测文本识别结果。

每层中间变换网络层分别连接对应的预设分类器,预设分类器可以包括一个或多个,每层中间变换网络层连接的预设分类器都具有与末层变换网络层连接的输出分类器相同的作用,被训练用于对该中间变换网络层的输出结果进行处理,进而实现对样本文本数据的意图分类和/或槽位识别,得到第二预测文本识别结果。

S104:判断第二预测文本识别结果与第一预测文本识别结果之间的损失值是否小于预设损失值阈值;若不小于,则执行S105;若小于,则执行S106。

在本步骤中,判断第二预测文本识别结果与第一预测文本识别结果之间的损失值是否小于预设损失值阈值,可以包括如下步骤:

首先,计算该中间变换网络层所连接的预设分类器输出的第二预测文本识别结果与第一预测文本识别结果之间的K-L散度。

举例而言,可以采用如下公式:

其中,P

然后,计算该中间变换网络层对应的K-L散度以及在该中间变换网络层之前的各个中间变换网络层对应的K-L散度之和,得到该中间变换网络层对应的第二预测文本识别结果与第一预测文本识别结果之间的损失值。

举例而言,可以采用如下公式:

其中,L是文本识别模型中包括中间变换网络层和末层变换网络层在内的变换网络层的总层数。

S105:对该中间变换网络层所连接的预设分类器进行迭代调整。

也就是说,根据当前计算得到的损失值,对所连接的预设分类器的模型参数进行调整,得到调整后的预设分类器,然后,利用调整后的预设分类器对新输入的该中间变换网络层的输出结果进行处理,并得到对应的第二预测文本识别结果,并返回判断第二预测文本识别结果与第一预测文本识别结果之间的损失值是否小于预设损失值阈值的步骤。

S106:将迭代调整后的预设分类器作为该中间变换网络层对应的输出分类器,得到文本识别模型,文本识别模型包括预训练模型及每层中间变换网络层所连接的输出分类器。

如图2所示,为本发明实施例中进行模型训练的方案示意图。在该例中,文本识别模型包括预训练模型及预训练模型中每层中间变换网络层所连接的输出分类器,预训练模型包括11层中间变换网络层、1层末层变换网络层及末层变换网络层所连接的输出分类器,其中,如图2所示变换网络层1到变换网络层11即为中间变换网络层,变换网络层12即为末层变换网络层。文本识别模型中,变换网络层依次连接,由前一层变换网络层的输出作为下一层变换网络层的输入,同时,每层变换网络层的输出还可以输入至该变换网络层所连接的输出分类器,得到对应的预测文本识别结果,比如,如图2所示变换网络层1连接输出分类器1,同时,还连接变换网络层2,变换网络层2连接输出分类器2和变换网络层3,等等,以此类推。

在训练过程中,首先,进行微调训练,将样本文本数据作为输入队列,输入预训练模型,更新如图2所示变换网络层1、变换网络层2、…、变换网络层12以及输出分类器12的模型参数。

举例而言,首先,样本文本数据作为输入队列,输入至变换网络层1进行特征提取,然后,变换网络层1的输出结果输入至变换网络层2进一步进行特征提取,再将变换网络层2的输出结果输入至变换网络层3进行特征提取,以此类推,直至得到变换网络层12的输出结果,可以将变换网络层12的输出结果输入至变换网络层12所连接的输出分类器12,得到初始预测文本识别结果。进而,判断初始预测文本识别结果是否收敛,若不收敛,则对预设模型进行迭代调整,即利用反向传播算法,根据初始预测文本识别结果与样本文本数据的文本识别结果的期望值之间的误差,调整变换网络层1、变换网络层2、…、变换网络层12以及输出分类器12的模型参数,直至预测文本识别结果收敛。

然后,进行蒸馏训练,保持得到的变换网络层1、变换网络层2、…、变换网络层12以及输出分类器12的模型参数不变,根据每一层输出分类器的输出与最后一层输出分类器输出之间的差异,分别对每一层输出分类器的模型参数进行调整,使得每一层输出分类器的输出与最后一层输出分类器输出具有较好的拟合效果,更新如图2所示输出分类器1、输出分类器2、…、输出分类器11的模型参数,即训练每层中间变换网络层分别连接的输出分类器。这样,在训练结束后,每一层输出分类器均具备意图分类和槽位识别的能力。

举例而言,在确定变换网络层1、变换网络层2、…、变换网络层12以及输出分类器12的模型参数的模型参数之后,可以将变换网络层1的输出输入至所连接的输出分类器1,得到变换网络层1的第二预测文本识别结果,然后,判断第二预测文本识别结果与已经训练好的输出分类器12输出的第一预测文本识别结果之间的损失值是否小于预设损失值阈值,若不小于,则对输出分类器1进行迭代调整,即利用反向传播算法,根据第一预测文本识别结果与第二文本识别结果之间的损失值,调整输出分类器1的模型参数,直至损失值小于预设损失值阈值,以此类推,就可以确定输出分类器1、输出分类器2、…、输出分类器11的模型参数,从而得到包括变换网络层1、变换网络层2、…、变换网络层12以及变换网络层1、变换网络层2、…、变换网络层12的文本识别模型。

由以上可见,本发明实施例提供的模型训练方法中,在得到预训练模型之后,再分别训练每一层变换网络层所连接的预设分类器,得到文本识别模型,这样,在文本识别过程中,将文本识别模型中每一层变换网络层的输出结果输入至对应的输出分类器,在输出分类器输出的目标识别结果满足条件的情况下,将目标识别结果作为文本识别结果提前输出,不再进入下一层的变换网络层计算,从而减少文本识别模型的计算耗时,满足业务的QPS要求。

参照图3,示出了本申请的一种文本识别方法的步骤流程图,具体可以包括如下步骤:

S301:获取待识别文本数据。

其中,待识别文本数据可以是通过对用户语音进行识别后提取出的文本数据,也可以是用户输入的文本数据,还可以是从互联网中爬取的文本数据,具体不作限定。

在本步骤中,获取待识别文本数据之后,可以对待识别文本数据进行预处理,检查并清除错误的人工标注,另外,还可以进行标准化处理,使得待识别文本数据格式更统一,文本识别结果更准确。

S302:将预先训练得到的文本识别模型的第一层变换网络层作为目标网络,将待识别文本数据作为目标数据,将目标数据输入至目标网络进行特征提取,得到特征提取结果。

其中,文本识别模型包括多层变换网络层,每层变换网络层分别连接对应的预先训练得到的输出分类器。输出分类器包括意图分类分类器和/或槽位识别分类器,意图识别分类器用于根据文本中的句子的意图,将文本分为不同的意图种类,槽位识别分类器则用于将文本中每个句子中的每个词分别打上相应的槽位标签。

S303:将特征提取结果输入至目标网络所连接的输出分类器,对特征提取结果进行分类识别,判断得到的目标识别结果是否满足预设条件。若满足,则执行S304,若不满足,则执行S305。

一种实现方式中,判断得到的目标识别结果是否满足预设条件的步骤,包括:计算得到的目标识别结果的不稳定度;判断不稳定度是否小于预设不稳定度阈值;若小于,则判定目标识别结果满足预设条件,若不小于,则判定目标识别结果不满足预设条件。其中,不稳定度用于表示得到的目标识别结果超出预设误差范围之外的误差程度。

其中,可以采用如下公式,计算得到的目标识别结果的不稳定度:

其中,P

S304:将目标识别结果作为待识别文本数据的文本识别结果。

这样,在输出分类器输出的目标识别结果满足条件的情况下,将目标识别结果作为文本识别结果提前输出,不再进入下一层的变换网络层计算,从而减少文本识别模型的计算耗时。

S305:将文本识别模型的下一层变换网络层作为目标网络,将特征提取结果作为目标数据,返回S102中,将目标数据输入至目标网络进行特征提取的步骤。

也就是说,在输出分类器输出的目标识别结果不满足条件的情况下,将文本识别模型的下一层变换网络层作为目标网络,将特征提取结果作为目标数据,将新的目标数据输入至新的目标网络进行特征提取,得到新的特征提取结果。这样,可以使得待识别文本数据的文本识别结果的准确度维持在较高的水平,而不会导致为了减少计算耗时使得文本识别模型的识别准确度大幅度降低的情况发生。

在本发明实施例中,文本识别模型中变换网络层的层数越高,该变换网络层的输出结果越稳定,不稳定度值越低,不稳定度阈值设得越高,结果越容易提前输出,推理的层数越少,速度越快,准确度越低;反之不稳定度阈值设得越低,推理的层数越多,速度越慢,准确度越高。举例而言,不稳定度阈值为0.1时,速度提升1.5倍,准确率几乎没有下降。这样,使得在减少计算耗时的情况下,仍然能够维持文本识别模型的识别准确度。

由以上可见,本发明实施例提供的文本识别方法,在文本识别过程中,将文本识别模型中每一层变换网络层的输出结果输入至对应的输出分类器,在输出分类器输出的目标识别结果满足条件的情况下,将目标识别结果作为文本识别结果提前输出,不再进入下一层的变换网络层计算,从而减少文本识别模型的计算耗时,满足业务的QPS要求。

参照图4,示出了本申请的一种模型训练装置的结构框图,该装置具体可以包括如下模块:

样本获取模块401,用于获取样本文本数据;

第一预测模块402,用于将所述样本文本数据输入至预训练模型进行文本识别处理,得到第一预测文本识别结果,所述预训练模型中包括多层中间变换网络层、末层变换网络层及所述末层变换网络层所连接的输出分类器;

第二预测模块403,用于针对每层中间变换网络层,将所述样本文本数据在该中间变换网络层的输出结果输入至该中间变换网络层所连接的预设分类器,得到第二预测文本识别结果;

判断模块404,用于判断所述第二预测文本识别结果与所述第一预测文本识别结果之间的损失值是否小于预设损失值阈值;若不小于,则对该中间变换网络层所连接的预设分类器进行迭代调整,若小于,则将迭代调整后的预设分类器作为该中间变换网络层对应的输出分类器,得到文本识别模型,所述文本识别模型包括所述预训练模型及每层中间变换网络层所连接的输出分类器。

一种实现方式中,在所述将所述样本文本数据输入至预训练模型进行文本识别处理,得到第一预测文本识别结果之前,所述方法还包括:

将所述样本文本数据输入至预设模型进行文本识别处理,得到初始预测文本识别结果,所述预设模型中包括多层中间变换网络层、末层变换网络层及所述末层变换网络层所连接的输出分类器;

判断所述初始预测文本识别结果是否收敛,若不收敛,则对所述预设模型进行迭代调整,若收敛,则将迭代调整后的预设模型作为所述预训练模型。

一种实现方式中,所述判断所述第二预测文本识别结果与所述第一预测文本识别结果之间的损失值是否小于预设损失值阈值,包括:

计算该中间变换网络层所连接的预设分类器输出的第二预测文本识别结果与所述第一预测文本识别结果之间的K-L散度;

计算该中间变换网络层对应的K-L散度以及在该中间变换网络层之前的各个中间变换网络层对应的K-L散度之和,得到该中间变换网络层对应的第二预测文本识别结果与所述第一预测文本识别结果之间的损失值。

一种实现方式中,所述输出分类器包括意图分类分类器和/或槽位识别分类器。

由以上可见,本发明实施例提供的模型训练装置中,在得到预训练模型之后,再分别训练每一层变换网络层所连接的预设分类器,得到文本识别模型,这样,在文本识别过程中,将文本识别模型中每一层变换网络层的输出结果输入至对应的输出分类器,在输出分类器输出的目标识别结果满足条件的情况下,将目标识别结果作为文本识别结果提前输出,不再进入下一层的变换网络层计算,从而减少文本识别模型的计算耗时,满足业务的QPS要求。

参照图5,示出了本申请的一种文本识别装置的结构框图,该装置具体可以包括如下模块:

数据获取模块501,用于获取待识别文本数据;

特征提取模块502,用于将预先训练得到的文本识别模型的第一层变换网络层作为目标网络,将所述待识别文本数据作为目标数据,将所述目标数据输入至所述目标网络进行特征提取,得到特征提取结果,其中,所述文本识别模型包括多层变换网络层,每层变换网络层分别连接对应的预先训练得到的输出分类器;

输出模块503,用于将所述特征提取结果输入至所述目标网络所连接的输出分类器,对所述特征提取结果进行分类识别,判断得到的目标识别结果是否满足预设条件;若满足,则将所述目标识别结果作为所述待识别数据的文本识别结果;

所述特征提取模块502,还用于在所述目标识别结果不满足预设条件的情况下,将所述文本识别模型的下一层变换网络层作为目标网络,将所述特征提取结果作为目标数据,返回所述将所述目标数据输入至所述目标网络进行特征提取的步骤。

一种实现方式中,所述输出模块503,具体用于:

计算得到的目标识别结果的不稳定度;

判断所述不稳定度是否小于预设不稳定度阈值;

若小于,则判定所述目标识别结果满足所述预设条件,若不小于,则判定所述目标识别结果不满足所述预设条件。

一种实现方式中,所述输出模块503,具体用于采用如下公式,计算得到的目标识别结果的不稳定度:

其中,所述P

由以上可见,本发明实施例提供的文本识别装置,在文本识别过程中,将文本识别模型中每一层变换网络层的输出结果输入至对应的输出分类器,在输出分类器输出的目标识别结果满足条件的情况下,将目标识别结果作为文本识别结果提前输出,不再进入下一层的变换网络层计算,从而减少文本识别模型的计算耗时,满足业务的QPS要求。

本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,

存储器603,用于存放计算机程序;

处理器601,用于执行存储器603上所存放的程序时,实现如下步骤:

获取样本文本数据;

将样本文本数据输入至预训练模型进行文本识别处理,得到第一预测文本识别结果,预训练模型中包括多层中间变换网络层、末层变换网络层及末层变换网络层所连接的输出分类器;

针对每层中间变换网络层,将样本文本数据在该中间变换网络层的输出结果输入至该中间变换网络层所连接的预设分类器,得到第二预测文本识别结果;

判断第二预测文本识别结果与第一预测文本识别结果之间的损失值是否小于预设损失值阈值;

若不小于,则对该中间变换网络层所连接的预设分类器进行迭代调整,若小于,则将迭代调整后的预设分类器作为该中间变换网络层对应的输出分类器,得到文本识别模型,文本识别模型包括预训练模型及每层中间变换网络层所连接的输出分类器。

或实现如下步骤:

获取待识别文本数据;

将预先训练得到的文本识别模型的第一层变换网络层作为目标网络,将所述待识别文本数据作为目标数据,将所述目标数据输入至所述目标网络进行特征提取,得到特征提取结果,其中,所述文本识别模型包括多层变换网络层,每层变换网络层分别连接对应的预先训练得到的输出分类器;

将所述特征提取结果输入至所述目标网络所连接的输出分类器,对所述特征提取结果进行分类识别,判断得到的目标识别结果是否满足预设条件;

若满足,则将所述目标识别结果作为所述待识别文本数据的文本识别结果;

若不满足,则将所述文本识别模型的下一层变换网络层作为目标网络,将所述特征提取结果作为目标数据,返回所述将所述目标数据输入至所述目标网络进行特征提取的步骤。

上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述终端与其他设备之间的通信。

存储器可以包括随机存取存储器(RandomAccess Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的文本识别方法。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的文本识别方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

相关技术
  • 一种模型训练及文本识别方法、装置、设备及存储介质
  • 模型训练、文本识别方法及装置、电子设备、存储介质
技术分类

06120112940705