一种对语音识别模型进行压缩的方法、装置及存储介质制造方法及图纸

技术编号:37303103 阅读:14 留言:0更新日期:2023-04-21 22:48
本申请实施例公开了一种对语音识别模型进行压缩的方法、装置及存储介质。其中,该方法包括:以无标签语音数据集作为第一训练数据,利用知识蒸馏算法对原始语音识别模型进行训练,得到第一语音识别模型;以无标签语音数据集和有标签语音数据集作为第二训练数据,对第一语音识别模型进行语音识别任务的微调,得到第二语音识别模型;以有标签语音数据集作为第三训练数据,利用神经网络结构搜索算法对第二语音识别模型进行训练,得到包括多个子语音识别模型的第三语音识别模型;从多个子语音识别模型中提取一个子语音识别模型,得到压缩后的语音识别模型,如此能对语音识别模型进行有效压缩,得到满足计算资源且识别精度较高的语音识别模型。识别模型。识别模型。

【技术实现步骤摘要】
一种对语音识别模型进行压缩的方法、装置及存储介质


[0001]本申请涉及语音识别领域,更具体的说,涉及一种对语音识别模型进行压缩的方法、装置及存储介质。

技术介绍

[0002]语音识别,也被称为自动语音识别(Automat ic Speech Recogn it ion,ASR),是人机交互与通信的关键组成部分,其主要目的是使机器“听懂”人类所说的语音,将语音信号转变为文本信号。
[0003]目前,为了追求更高的语音识别性能,不可避免的会导致语音识别模型的网络结构更加复杂,网络计算量以及网络参数成倍增长,如此会带来高额的存储空间和计算资源消耗。
[0004]然而,在一些资源受限的场景,如智能手机、车载等场景,巨大的计算量以及参数量使语音识别模型很难部署到智能终端设备,无法满足资源受限的场景的语音识别使用需求。

技术实现思路

[0005]有鉴于此,本申请实施例公开一种对语音识别模型进行压缩的方法、装置及存储介质,对语音识别模型进行有效压缩,得到满足计算资源且识别精度较高的语音识别模型。
[0006]本申请实施例提供的技术方案如下:
[0007]第一方面,本申请实施例提供了一种对语音识别模型进行压缩的方法,所述方法包括:
[0008]以无标签语音数据集作为第一训练数据,利用知识蒸馏算法对原始语音识别模型进行训练,得到第一语音识别模型;
[0009]以所述无标签语音数据集和有标签语音数据集作为第二训练数据,对所述第一语音识别模型进行语音识别任务的微调,得到第二语音识别模型;
[0010]以所述有标签语音数据集作为第三训练数据,利用神经网络结构搜索算法对所述第二语音识别模型进行训练,得到第三语音识别模型;其中,所述第三语音识别模型包括多个子语音识别模型;
[0011]从所述多个子语音识别模型中提取一个子语音识别模型,得到压缩后的语音识别模型;所述压缩后的语音识别模型用于对待识别的语音数据进行识别。
[0012]在一种可能的实现方式中,所述以无标签语音数据集作为第一训练数据,利用知识蒸馏算法对原始语音识别模型进行训练,得到第一语音识别模型,包括:
[0013]在所述原始语音识别模型增加线性层,得到第四语音识别模型;所述线性层用于将所述第四语音识别模型的输出维度映射到和所述原始语音识别模型的输出维度一致;
[0014]利用所述原始语音识别模型作为知识蒸馏算法的老师模型,所述第四语音识别模型作为知识蒸馏算法的学生模型,通过老师模型来指导学生模型进行训练,得到所述第一
语音识别模型;其中,所述原始语音识别模型不对所述无标签语音数据集做掩码,所述第四语音识别模型对所述无标签语音数据集做掩码。
[0015]在一种可能的实现方式中,所述利用所述原始语音识别模型作为知识蒸馏算法的老师模型,所述第四语音识别模型作为知识蒸馏算法的学生模型,通过老师模型来指导学生模型进行训练,得到第一语音识别模型,包括:
[0016]将所述无标签语音数据集输入所述原始语音识别模型进行训练,得到所述原始语音识别模型的Transformer模块中每个Transformer层的输出结果;
[0017]对前K个所述Transformer层的输出结果进行均值计算,得到第一输出结果;
[0018]将所述无标签语音数据集输入所述第四语音识别模型进行训练,得到第二输出结果;所述第二输出结果为所述第四语音识别模型的Transformer模块的输出结果;
[0019]利用所述第一输出结果和所述第二输出结果计算得到第一损失值;
[0020]以最小化第一损失值作为第一训练目标,对所述第四语音识别模型进行迭代训练,直至所述第四语音识别模型收敛,得到所述第一语音识别模型。
[0021]在一种可能的实现方式中,所述以所述无标签语音数据集和有标签语音数据集作为第二训练数据,对所述第一语音识别模型进行语音识别任务的微调,得到第二语音识别模型,包括:
[0022]在所述第一语音识别模型增加线性映射模块,得到第五语音识别模型;
[0023]将所述有标签语音数据集输入所述第五语音识别模型进行语音识别任务的微调,得到所述线性映射模块的第三输出结果;
[0024]将所述无标签语音数据集输入所述第五语音识别模型进行语音识别任务的微调,得到所述线性映射模块的第四输出结果;
[0025]利用所述第三输出结果和所述第四输出结果计算得到第二损失值;
[0026]以最小化第二损失值作为第二训练目标,对所述第五语音识别模型进行迭代训练,直至所述第五语音识别模型收敛,得到所述第二语音识别模型。
[0027]在一种可能的实现方式中,所述利用所述第三输出结果和所述第四输出结果计算得到第二损失值,包括:
[0028]利用所述第三输出结果和所述有标签语音数据集对应的标签计算得到第一子损失值;
[0029]利用所述第四输出结果和所述无标签语音数据集对应的伪标签计算得到第二子损失值;其中,所述伪标签通过对所述无标签语音数据集进行解码得到;
[0030]利用所述第一子损失值和所述第二子损失值计算得到第二损失值。
[0031]在一种可能的实现方式中,所述以所述有标签语音数据集作为第三训练数据,利用神经网络结构搜索算法对所述第二语音识别模型进行训练,得到第三语音识别模型,包括:
[0032]利用Transformer模块的可变参数构建所述第二语音识别模型的搜索空间;
[0033]将所述有标签语音数据集输入所述第二语音识别模型,从所述搜索空间中随机采样多个子语音识别模型进行向前传播计算,得到第五输出结果;
[0034]利用所述第五输出结果和所述有标签语音数据集对应的标签计算得到第三损失值;
[0035]以最小化第三损失值作为第三训练目标,对所述第二语音识别模型进行迭代训练,直至所述第二语音识别模型收敛,得到所述第三语音识别模型。
[0036]在一种可能的实现方式中,所述Transformer模块的可变参数包括以下至少一种:Transformer层的输入输出维度、Transformer层的多头注意力机制中注意力头的数量、Transformer层中前馈神经网络的维度和Transformer层的输入输出维度的比值、Transformer模块中Transformer层的个数。
[0037]第二方面,本申请实施例提供了一种对语音识别模型进行压缩的装置,所述装置包括:
[0038]第一训练单元,用于以无标签语音数据集作为第一训练数据,利用知识蒸馏算法对原始语音识别模型进行训练,得到第一语音识别模型;
[0039]第二训练单元,以所述无标签语音数据集和有标签语音数据集作为第二训练数据,对所述第一语音识别模型进行语音识别任务的微调,得到第二语音识别模型;
[0040]第三训练单元,用于以所述有标签语音数据集作为第三训练数据,利用神经网络结构搜索算法对所述第二语音识别模型进行本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种对语音识别模型进行压缩的方法,其特征在于,所述方法包括:以无标签语音数据集作为第一训练数据,利用知识蒸馏算法对原始语音识别模型进行训练,得到第一语音识别模型;以所述无标签语音数据集和有标签语音数据集作为第二训练数据,对所述第一语音识别模型进行语音识别任务的微调,得到第二语音识别模型;以所述有标签语音数据集作为第三训练数据,利用神经网络结构搜索算法对所述第二语音识别模型进行训练,得到第三语音识别模型;其中,所述第三语音识别模型包括多个子语音识别模型;从所述多个子语音识别模型中提取一个子语音识别模型,得到压缩后的语音识别模型;所述压缩后的语音识别模型用于对待识别的语音数据进行识别。2.根据权利要求1所述的方法,其特征在于,所述以无标签语音数据集作为第一训练数据,利用知识蒸馏算法对原始语音识别模型进行训练,得到第一语音识别模型,包括:在所述原始语音识别模型增加线性层,得到第四语音识别模型;所述线性层用于将所述第四语音识别模型的输出维度映射到和所述原始语音识别模型的输出维度一致;利用所述原始语音识别模型作为知识蒸馏算法的老师模型,所述第四语音识别模型作为知识蒸馏算法的学生模型,通过老师模型来指导学生模型进行训练,得到所述第一语音识别模型;其中,所述原始语音识别模型不对所述无标签语音数据集做掩码,所述第四语音识别模型对所述无标签语音数据集做掩码。3.根据权利要求2所述的方法,其特征在于,所述利用所述原始语音识别模型作为知识蒸馏算法的老师模型,所述第四语音识别模型作为知识蒸馏算法的学生模型,通过老师模型来指导学生模型进行训练,得到第一语音识别模型,包括:将所述无标签语音数据集输入所述原始语音识别模型进行训练,得到所述原始语音识别模型的Transformer模块中每个Transformer层的输出结果;对前K个所述Transformer层的输出结果进行均值计算,得到第一输出结果;将所述无标签语音数据集输入所述第四语音识别模型进行训练,得到第二输出结果;所述第二输出结果为所述第四语音识别模型的Transformer模块的输出结果;利用所述第一输出结果和所述第二输出结果计算得到第一损失值;以最小化第一损失值作为第一训练目标,对所述第四语音识别模型进行迭代训练,直至所述第四语音识别模型收敛,得到所述第一语音识别模型。4.根据权利要求1所述的方法,其特征在于,所述以所述无标签语音数据集和有标签语音数据集作为第二训练数据,对所述第一语音识别模型进行语音识别任务的微调,得到第二语音识别模型,包括:在所述第一语音识别模型增加线性映射模块,得到第五语音识别模型;将所述有标签语音数据集输入所述第五语音识别模型进行语音识别任务的微调,得到所述线性映射模块的第三输出结果;将所述无标签语音数据集输入所述第五语音识别模型进行语音识别任务的微调,得到所述线性映射模块的第四输出结果;利用所述第三输出结果和所述第四输出结果计算得到第二损失值;以最小化第二损失值作为第二训练目标,对所述第五语音识别模型进行迭代训练...

【专利技术属性】
技术研发人员:何雪方磊方四安周振昆胡鹏
申请(专利权)人:合肥讯飞数码科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1