语音识别方法及装置、计算机可存储介质与流程

文档序号:19145621发布日期:2019-11-15 23:28阅读:195来源:国知局
语音识别方法及装置、计算机可存储介质与流程

本公开涉及机器学习领域,特别涉及语音识别方法及装置、计算机可存储介质。



背景技术:

近年来,随着人工智能技术的高速发展,智能客服系统已经在电商、物流、金融等多项服务领域获得了广泛应用。asr(automaticspeechrecognition,自动语音识别)是智能客服系统的核心技术之一,该技术旨在将用户的语音信号转为文本信息,以便用于后续的自然语言处理。因此,准确、实时的asr是保障智能客服系统准确进行客户意图理解和服务应答的重要前提。然而,在实际的智能客服场景下,待识别的音频中可能存在口音、方言、背景噪声干扰等多种复杂因素,给高准确率的语音识别带来巨大挑战。

针对智能客服场景的语音识别问题,传统方法通常将语音识别的机器学习任务分解为多个串行的子模型,也即前一个模型的输出是后一个模型的输入,这些串行的子模型包括声学模型、发音词典模型、语言模型。通过分别对每个模型进行设计、数据标注、训练,获得最终的机器学习模型结果。

然而,该方法的主要存在以下两点问题。首先,每一个子模型的训练均需要大量的标注数据,子模型越多,标注数据的时间和人力成本越高。其次,采用多个子模型的串行模型,非常容易导致模型误差的累积传递,例如每个子模型的准确率是90%,三个子模型串行使用的准确率将是0.9×3=72.9%,严重制约了最终的机器学习模型的应用效果。

随着dl(deeplearning,深度学习)技术的高速发展,基于端到端的dnn(deepneuralnetwork,深度神经网络)的机器学习模型相比于传统的串行模型的性能获得了显著的提升。基于dnn的语音识别仅采用一个机器学习模型,输入端为语音音频数据,输出端为文字识别结果。该类模型有效解决了的传统机器学习模型中的子模型设计成本高、多模型数据标注成本高和模型误差串行累积导致的识别准确率低等问题。

目前,基于dnn的机器学习模型的框架主要包括ctc(connectionisttemporalclassification,连接时间分类)框架,las(listenattentionspell,听力、注意力机制、拼写)框架和rnnt(recurrentneuralnetworktransducer,循环神经网络转写)框架,后续的基于dnn的机器学习模型的结构,均是在这三种框架的基础之上演变获得。

由于利用机器学习模型进行语音识别的网络结构通常较大,因此大规模的音频数据及标注数据是训练一个好的语音识别模型的重要前提。与获取图像、文本等数据相比,由于音频数据涉及隐私、版权等信息,通常难以轻易获得大规模的音频数据。另外,需要人工听取至少一遍音频数据才能完成音频数据的标注,标注成本高。

而训练数据是深度学习领域中影响机器学习模型的准确率最为重要的因素之一。能否获得大规模的音频数据对机器学习的语音识别的最终性能起着决定性的作用。但是,由于音频的语音信号的采集设备不同,采样率通常也不一致,而不同采样率的音频的语音信号难以同时用于机器学习模型的训练。

传统的机器学习模型均采用某一种单一采样率的音频数据,训练并获得该采样率下的机器学习模型。由于不同采样率的音频数据的语音特征分布不同,在某一个语音特征分布下训练得到的机器学习模型,往往难以有效应用于其他语音特征分布。并且,由于不同设备采集的音频数据的往往存在一定的差异,容易出现利用某一类采用率语音数据训练获得的模型,对另一类采样率语音数据识别效果较差的现象。因此,采用某一采样率的音频数据训练得到的机器学习模型,往往对其他采样率音频数据的识别效果较差。

为了能够利用更大规模的音频数据对机器学习模型进行训练,相关的语音识别技术是对不同采样率的音频数据进行降采样或者升采样,使得不同采样率变换到相同采样率后,再提取音频数据的语音特征,进而利用提取到的语音特征训练机器学习模型。



技术实现要素:

发明人认为:相关的语音识别技术中,降采样会损失大量的原始音频数据信息,升采样则会插入其他音频数据信息,无法准确提取不同采样率的音频数据的原始语音特征,从而机器学习模型的语音识别性能难以提升。

针对上述技术问题,本公开提出了一种解决方案,可以准确地提取不同采样率的音频数据的原始语音特征,从而提升机器学习模型的语音识别性能。

根据本公开的第一方面,提供了一种语音识别方法,包括:获取与不同采样率的待训练音频对应的第一线性频谱,所述第一线性频谱的横坐标为频谱序列序号,纵坐标为频域序号,横坐标和纵坐标确定的坐标点的值为与所述待训练音频对应的原始幅度值;确定所述不同采样率中的最大采样率和除所述最大采样率以外的其他采样率;确定与所述其他采样率对应的第一线性频谱的最大频域序号为第一频域序号;确定与所述最大采样率对应的第一线性频谱的最大频域序号为第二频域序号;在与所述其他采样率对应的第一线性频谱中,将与大于所述第一频域序号、且小于或等于所述第二频域序号的每个频域序号对应的幅度值设置为零,得到与所述其他采样率对应的第二线性频谱;根据与所述最大采样率对应的第一线性频谱的第一梅尔谱特征,确定所述最大采样率的待训练音频的第一语音特征;根据与所述其他采样率对应的第二线性频谱的第二梅尔谱特征,确定所述其他采样率的待训练音频的第二语音特征;利用所述第一语音特征和所述第二语音特征,训练机器学习模型。

在一些实施例中,根据与所述最大采样率对应的第一线性频谱的第一梅尔谱特征,确定所述最大采样率的待训练音频的第一语音特征包括:对所述第一梅尔谱特征进行全局归一化处理得到所述第一语音特征;根据与所述其他采样率对应的第二线性频谱的第二梅尔谱特征,确定所述其他采样率的待训练音频的第二语音特征包括:对所述第二梅尔谱特征进行局部归一化处理得到所述第二语音特征。

在一些实施例中,所述局部归一化处理包括:根据与所述其他采样率的音频对应的最大线性频谱频率,获取与所述最大线性频谱频率对应的梅尔谱频率;计算与所述梅尔谱频率对应的最大梅尔滤波器序号;获取所述第二梅尔谱特征中的、与每个其他梅尔滤波器序号对应的第一幅度值,所述其他梅尔滤波器序号为小于或等于所述最大梅尔滤波器序号的梅尔滤波器序号;分别计算所述各个第一幅度值的均值和标准差,作为局部均值和局部标准差;计算每个第一幅度值与所述局部均值的第一差值;计算每个第一差值与所述局部标准差的比值,作为与每个第一幅度值对应的归一化后的第一幅度值;将所述第二梅尔谱特征中的每个第一幅度值替换为与每个第一幅度值对应的归一化后的第一幅度值。

在一些实施例中,所述全局归一化处理包括:获取所述第一梅尔谱特征中的、与每个梅尔滤波器序号对应的第二幅度值;计算所述各个第二幅度值的均值和标准差,作为全局均值和全局标准差;计算每个第二幅度值与所述全局均值的第二差值;计算每个第二差值与所述全局标准差的比值,作为与每个第二幅度值对应的归一化后的第二幅度值;将所述第一梅尔谱特征中的每个第二幅度值替换为与每个第二幅度值对应的归一化后的第二幅度值。

在一些实施例中,获取与不同采样率的音频对应的第一线性频谱包括:利用短时傅立叶变换,分别获取与不同采样率的音频对应的第一线性频谱。

在一些实施例中,在获取与不同采样率的音频对应的第一线性频谱之前,还包括:获取不同采样率的音频的语音信号波形图;分别对不同采样率的音频的语音信号波形图进行预加重处理。

在一些实施例中,语音识别方法还包括:利用多个单位三角滤波器,对与所述最大采样率对应的第一线性频谱、和与所述其他采样率对应的第二线性频谱分别进行梅尔滤波变换,得到所述第一梅尔谱特征和所述第二梅尔谱特征。

在一些实施例中,所述机器学习模型包括深度神经网络dnn模型。

在一些实施例中,所述不同采样率包括16khz和8khz。

在一些实施例中,语音识别方法还包括:获取待识别音频;确定所述待识别音频的语音特征;将所述待识别音频的语音特征输入至所述机器学习模型,得到语音识别的结果。

在一些实施例中,确定所述待识别音频的语音特征包括:确定所述待识别音频的第一线性频谱的最大频域序号为第三频域序号;在所述待识别音频的第一线性频谱中,将与大于所述第三频域序号、且小于或等于所述第二频域序号的每个频域序号对应的幅度值设置为零,得到所述待识别音频的第二线性频谱;根据所述待识别音频的第二线性频谱的梅尔谱特征,确定所述待识别音频的语音特征。

根据本公开第二方面,提供了一种语音识别装置,包括:第一获取模块,被配置为获取与不同采样率的待训练音频对应的第一线性频谱,所述第一线性频谱的横坐标为频谱序列序号,纵坐标为频域序号,横坐标和纵坐标确定的坐标点的值为与所述待训练音频对应的原始幅度值;第一确定模块,被配置为确定所述不同采样率中的最大采样率和除所述最大采样率以外的其他采样率;第二确定模块,被配置为确定与所述其他采样率对应的第一线性频谱的最大频域序号为第一频域序号;第三确定模块,被配置为确定与所述最大采样率对应的第一线性频谱的最大频域序号为第二频域序号;设置模块,被配置为在与所述其他采样率对应的第一线性频谱中,将与大于所述第一频域序号、且小于或等于所述第二频域序号的每个频域序号对应的幅度值设置为零,得到与所述其他采样率对应的第二线性频谱;第四确定模块,被配置为根据与所述最大采样率对应的第一线性频谱的第一梅尔谱特征,确定所述最大采样率的待训练音频的第一语音特征;第五确定模块,被配置为根据与所述其他采样率对应的第二线性频谱的第二梅尔谱特征,确定所述其他采样率的待训练音频的第二语音特征;训练模块,被配置为利用所述第一语音特征和所述第二语音特征,训练机器学习模型。

根据本公开第三方面,提供了一种语音识别装置,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令,执行上述任一实施例所述的语音识别方法。

根据本公开的第四方面,一种计算机可存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现上述任一实施例所述的语音识别方法。

在上述实施例中,可以准确地提取不同采样率的音频数据的原始语音特征,从而提升机器学习模型的语音识别性能。

附图说明

构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。

参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:

图1示出根据本公开一些实施例的语音识别方法的流程图;

图2示出根据本公开一些实施例的全局归一化处理的流程图;

图3示出根据本公开一些实施例的局部归一化处理的流程图;

图4示出根据本公开另一些实施例的语音识别方法的流程图;

图5a示出根据本公开一些实施例的采样率为8khz的待训练音频的语音信号波形图;

图5b示出根据本公开一些实施例的采样率为16khz的待训练音频的语音信号波形图;

图5c示出根据本公开一些实施例的采样率为8khz的音频的预加重处理后的语音信号波形图;

图5d示出根据本公开一些实施例的采样率为16khz的音频的预加重处理后的语音信号波形图;

图6a示出根据本公开一些实施例的与采样率为8khz的音频对应的第一线性频谱;

图6b示出根据本公开一些实施例的与采样率为16khz的音频对应的第一线性频谱;

图6c示出根据本公开一些实施例的与8khz对应的第二线性频谱;

图7a示出根据本公开一些实施例的与8khz对应的第二线性频谱的第二梅尔谱特征;

图7b示出了根据本公开一些实施例的与16khz对应的第二线性频谱的第二梅尔谱特征;

图8a示出根据本公开一些实施例的局部归一化处理后的第二梅尔谱特征;

图8b示出根据本公开一些实施例的全局归一化处理后的第一梅尔谱特征;

图9示出根据本公开一些实施例的语音识别装置的框图;

图10示出根据本公开一些实施例的语音识别装置的框图;

图11示出用于实现本公开一些实施例的计算机系统的框图。

具体实施方式

现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。

在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

图1示出根据本公开一些实施例的语音识别方法的流程图。

如图1所示,语音识别方法包括步骤s110-步骤s180。

在步骤s110中,获取与不同采样率的待训练音频对应的第一线性频谱。第一线性频谱的横坐标为频谱序列序号,纵坐标为频域序号,横坐标和纵坐标确定的坐标点的值为与待训练音频对应的原始幅度值。

例如,不同采样率包括16khz和8khz。即,待训练音频包括采样率为16khz的音频和采样率为8khz的音频。应当理解,本公开只是以最常见的16khz和8khz采样率为例,采样率还可以包括44.1khz、50khz等。

在一些实施例中,通过如下方式获取与不同采样率的待训练音频对应的第一线性频谱。

利用短时傅立叶变换,分别获取与不同采样率的音频对应的第一线性频谱。即,将音频的时域特征转换为频域特征。频域特征具有更好的特征表示,在频谱中较为容易区分。

在一些实施例中,在获取与不同采样率的音频对应的第一线性频谱之前,语音识别方法还包括如下步骤。

首先,获取不同采样率的音频的语音信号波形图。然后,分别对不同采样率的音频的语音信号波形图进行预加重处理。通过对语音信号进行预加重处理,提高了语音信号的信噪比,增加了语音的高频分辨率。

在步骤s120中,确定不同采样率中的最大采样率和除最大采样率以外的其他采样率。例如,最大采样率为16khz,其他采样率为8khz。

在步骤s130中,确定与其他采样率对应的第一线性频谱的最大频域序号为第一频域序号。

在步骤s140中,确定与最大采样率对应的第一线性频谱的最大频域序号为第二频域序号。

在步骤s150中,在与其他采样率对应的第一线性频谱中,将与大于第一频域序号、且小于或等于第二频域序号的每个频域序号对应的幅度值设置为零,得到与其他采样率对应的第二线性频谱。

在步骤s160中,根据与最大采样率对应的第一线性频谱的第一梅尔谱特征,确定最大采样率的待训练音频的第一语音特征。例如,利用多个单位三角滤波器,对与最大采样率对应的第一线性频谱进行梅尔滤波变换,得到第一梅尔谱特征。在一些实施例中,利用多个单位方波滤波器,对与最大采样率对应的第一线性频谱进行梅尔滤波变换,得到第一梅尔谱特征。

例如,对第一梅尔谱特征进行全局归一化处理得到第一语音特征。

下面将结合图2具体描述全局归一化处理的流程。

图2示出根据本公开一些实施例的全局归一化处理的流程图。

如图2所示,全局归一化处理包括步骤210-步骤s250。

在步骤s210中,获取第一梅尔谱特征中的、与每个梅尔滤波器序号对应的第二幅度值。梅尔谱特征也称为梅尔谱图,梅尔谱特征的横坐标为梅尔谱序列的序号,纵坐标为梅尔滤波器的序号,横坐标和纵坐标确定的坐标点的值为第二幅度值。

在步骤s220中,计算各个第二幅度值的均值和标准差,作为全局均值和全局标准差。

在步骤s230中,计算每个第二幅度值与全局均值的第二差值。

在步骤s240中,计算每个第二差值与全局标准差的比值,作为与每个第二幅度值对应的归一化后的第二幅度值。

在步骤s250中,将第一梅尔谱特征中的每个第二幅度值替换为与每个第二幅度值对应的归一化后的第二幅度值。

本公开通过对第一梅尔谱特征进行全局归一化处理的方式提高了训练机器学习模型的收敛效果,抑制了奇异数据对训练机器学习模型的影响。

返回图1,在步骤s170中,根据与其他采样率对应的第二线性频谱的第二梅尔谱特征,确定其他采样率的待训练音频的第二语音特征。例如,利用多个单位三角滤波器,对与其他采样率对应的第二线性频谱进行梅尔滤波变换,得到第二梅尔谱特征。

例如,对第二梅尔谱特征进行局部归一化处理得到第二语音特征。

下面将结合图3具体描述局部归一化处理的流程。

图3示出根据本公开一些实施例的局部归一化处理的流程图。

如图3所示,局部归一化处理包括步骤s310-步骤s370。

在步骤s310中,根据与其他采样率的音频对应的最大线性频谱频率,获取与最大线性频谱频率对应的梅尔谱频率。例如,根据采样定理,与采样率为8khz的音频对应的最大线性频谱频率为4khz,与采样率为16khz的音频对应的最大线性频谱频率为8khz。最大线性频谱频率也是最大语音信号频率。

在步骤s320中,计算与梅尔谱频率对应的最大梅尔谱滤波器序号。

在步骤s330中,获取第二梅尔谱特征中的、与每个其他梅尔滤波器序号对应的第一幅度值。其他梅尔滤波器序号为小于或等于最大梅尔滤波器序号的梅尔滤波器序号。梅尔谱特征也称为梅尔谱图,梅尔谱特征的横坐标为梅尔谱序列的序号,纵坐标为梅尔滤波器的序号,横坐标和纵坐标确定的坐标点的值为第一幅度值。

在步骤s340中,分别计算各个第一幅度值的均值和标准差,作为局部均值和局部标准差。

在步骤s350中,计算每个第一幅度值与局部均值的第一差值。

在步骤s360中,计算每个第一差值与局部标准差的比值,作为于每个第一幅度值对应的归一化后的第一幅度值。

在步骤s370中,将第二梅尔谱特征中的每个第一幅度值替换为与每个第一幅度值对应的归一化后的第一化幅度值。

由于在如图1所示的步骤s150中对其他采样率的待训练音频进行了零值填充,如果对第二梅尔谱特征进行全局归一化处理,填充的零值将导致第二梅尔谱特征中增加大量均值和标准差均为0的特征,从而抑制待训练音频的原始语音特征。本公开通过对第二梅尔谱特征进行局部归一化处理,能够防止待训练音频的原始语音特征受抑制。

返回图1,在步骤s180中,利用第一语音特征和第二语音特征,训练机器学习模型。在一些实施例中,机器学习模型包括dnn(deepneuralnetwork,深度神经网络)模型。例如,dnn模型为基于端到端的dnn模型。

在一些实施例中,语音识别方法还包括如下步骤。

首先,获取待识别音频。例如,待识别音频为不同采样率中的一种。

然后,确定待识别音频的语音特征。在一些实施例中,确定待识别音频的语音特征包括如下步骤。

首先确定待识别音频的第一线性频谱的最大频域序号为第三频域序号。然后在待识别音频的第一线性频谱中,将与大于第三频域序号、且小于或等于第二频域序号的每个频域序号对应的幅度值设置为零,得到待识别音频的第二线性频谱。最后根据待识别音频的第二线性频谱的梅尔谱特征,确定待识别音频的语音特征。应当理解,语音识别过程也需要采用与获得待训练音频的语音特征相似的方法,获得待识别音频的语音特征,才能利用待识别音频的语音特征进行语音识别。

最后,将待识别音频的语音特征输入至机器学习模型,得到语音识别的结果。例如,将待识别音频转换为文本信息,文本信息即为语音识别的结果。

本公开通过对与小于最大采样率以外的其他采样率的待训练音频对应的第一线性频谱进行零值填充的方式,在不增加语音特征也不减少语音特征的基础上,实现了对不同采样率的待训练音频进行混合训练的效果,提高了机器学习模型的识别性能。相比于采用单一采样率的音频对机器学习模型进行训练的方式,本公开解决了由于单一采样率的音频数量有限导致的训练样本补足的问题,并且解决了由于采用单一采样率的音频数据训练得到的机器学习模型对其他采样率的音频数据的语音识别效果较差导致的机器学习模型的通用性较差的问题,提高了机器学习模型的通用性。

下面将结合图4、图5a、图5b、图5c、图5d、图6a、图6b、图6c、图7a、图7b、图8a、图8b描述对采样率为8khz和16khz的待训练音频进行混合采样率训练的语音识别方法的详细流程。

图4示出根据本公开另一些实施例的语音识别方法的流程图。

如图4所示,语音识别方法包括步骤s400-步骤s480。

在步骤s400中,分别获取采样率为8khz、16khz的待训练音频的语音信号波形图。语音信号波形图体现的是音频的时域特征。

图5a示出根据本公开一些实施例的采样率为8khz的待训练音频的语音信号波形图。

如图5a所示,采样率为8khz的待训练音频的语音信号波形图的横坐标为采样点序号,纵坐标为语音信号的归一化幅度值。

图5b示出根据本公开一些实施例的采样率为16khz的待训练音频的语音信号波形图。

如图5b所示,采样率为16khz的待训练音频的语音信号波形图的横坐标为采样点序号,纵坐标为语音信号的归一化幅度值。

在一些实施例中,记采样率s∈[1,2],分别对应8khz和16khz,则采样率为8khz的音频的离散语音信号为采样率为16khz的音频的离散语音信号为其中i∈[1,n1],j∈[1,n2],n1和n2分别为采样率为8khz和16khz的音频的数量。

为离散语音信号中第k采样点的幅度值,其中为离散语音信号的采样点总数,即采样点序号的总数量。每个采样点对应一个采样时刻,也表示采样时刻的总数量。

返回图4,在步骤s401中,分别对采样率为8khz、16khz的音频的离散语音信号波形图进行预加重处理。预加重处理后的语音信号其中,α为预加重权重,0<α<1。例如,α=0.97。

例如,对图5a和图5b所示的语音信号波形图分别进行预加重处理,分别得到图5c和图5d所示的预加重处理后的语音信号波形图。预加重处理后的语音信号波形图仍然体现的是音频的时域特征。

图5c示出根据本公开一些实施例的采样率为8khz的音频的预加重处理后的语音信号波形图。

如图5c所示,采样率为8khz的音频的预加重处理后的语音信号波形图的横坐标为采样点序号,纵坐标为预加重处理后的归一化幅度值。

图5d示出根据本公开一些实施例的采样率为16khz的音频的预加重处理后的语音信号波形图。

如图5d所示,采样率为16khz的音频的预加重处理后的语音信号波形图的横坐标为采样点序号,纵坐标为预加重处理后的归一化幅度值。

返回图4,在步骤s410中,获取与采样率为8khz和16khz的待训练音频对应的第一线性频谱。例如,对预加重处理后的语音信号进行短时傅立叶变换(short-timefouriertransform,stft),得到第一线性频谱。短时傅立叶变换公式为即对语音信号进行ns点的短时傅立叶变换。

例如,stft的滑动窗口大小为20ms,滑动窗口的滑动步长为10ms。应当理解,窗口的滑动步长只要可以保证滑动窗口之间有一定的重叠区域即可。对于8khz和16khz的音频的预加重处理后的语音信号,分别对应20ms×8khz=160个点,20ms×16khz=320个点。由于ns的值必须是2的指数幂,才能实现并行处理,提高处理速度。2的指数幂中大于160和320的最小数分别为256和512,因此n1=256,n2=512,也即对采样率为8khz的音频的预加重处理后的语音信号进行256点stft,对采样率为16khz的音频的预加重处理后的语音信号进行512点stft。

根据采样定理,采样率为8khz的音频最多只能有4khz的频谱信息,256点stft就是将-4khz到4khz平均分为256份,正频率4khz和负频率-4khz合并,得到频谱序列的维度是256÷2+1=129。即通过256点stft可以获得每一段8khz采样率语音信号的129维频谱序列。

同理,通过512点stft可以获得每一段16khz采样率语音信号的257维频谱序列,从而得到对预加重处理后的语音信号进行短时傅立叶变换后的第一线性频谱。

图6a示出根据本公开一些实施例的与采样率为8khz的音频对应的第一线性频谱。

如图6a所示,与采样率为8khz的音频对应的第一线性频谱的横坐标为频谱序列序号,纵坐标为频域序号,横坐标和纵坐标确定的坐标点的值为与采样率为8khz的音频对应的幅度值。每个频域序号对应一段频率范围。例如,采样率为8khz的音频的线性频谱频率范围为0~4khz,与采样率8khz的音频对应的第一线性频谱的频域序号为0~128,即将0~4khz分为128段,每个频域序号对应一段线性频谱频率范围。

根据图5b可知预加重处理后的语音信号的最大采样点序号为20000,也就是8khz的音频总共有20000个采样点,8khz表示每秒8000个采样点,则20000个采样点的8khz的音频总共时长为20000/8000=2.5秒,即2500毫秒,滑动窗口的步长为10毫秒,则滑动步数为2500/10-1=249步。因此,频谱序列序号为0-248。频域序号为0-128。每个频谱序列序号和每个频域序号唯一确定一个幅度值。与每个频谱序列序号对应的129个幅度值构成与该频谱序列序号对应的频谱序列。

图6b示出根据本公开一些实施例的与采样率为16khz的音频对应的第一线性频谱。

如图6b所示,与采样率为16khz的音频对应的第一线性频谱的横坐标为频谱序列序号,纵坐标为频域序号,横坐标和纵坐标确定的坐标点的值为与采样率为16khz的音频对应的幅度值。频谱序列序号为0-498,频域序号为0-256。每个频谱序列序号和每个频域序号唯一确定一个幅度值。与每个频谱序列序号对应的257个幅度值构成与该频谱序列序号对应的频谱序列。

返回图4,在步骤s420中,确定16khz为最大采样率,8khz为其他采样率。

在步骤s430中,确定与8khz对应的第一线性频谱的最大频域序号为第一频域序号。根据图6a,第一频域序号为128。

在步骤s440中,确定与16khz对应的第一线性频谱的最大频域序号为第二频域序号。根据图6b,第二频域序号为256。

在步骤s450中,在与8khz对应的第一线性频谱中,将与大于第一频域序号、且小于或等于第二频域序号的每个频域序号对应的幅度值设置为零,得到与8khz对应的第二线性频谱。例如,在图6a中,将与大于128、且小于或等于256的每个频域序号对应的幅度值设置为零,得到如图6c所示的与8khz对应的第二线性频谱,使得第二线性频谱的频域序号数量和与16khz对应的第一线性频谱的频域序号的数量相同,从而使得不同采样率的待训练音频可以对机器学习模型进行混合训练。

图6c示出根据本公开一些实施例的与8khz对应的第二线性频谱。

如图6c所示,与采样率为8khz的音频对应的第二线性频谱的横坐标为频谱序列序号,纵坐标为频域序号,横坐标和纵坐标确定的坐标点的值为与采样率为8khz的音频对应的幅度值。相比图6a,增加了与频域序号为129至255对应的幅度值,且幅度值均为0。零值填充的方式没有破坏音频的原始频谱信息,也就没有破坏原始语音特征。

返回图4,在步骤460中,分别对16khz对应的第一线性频谱、与8khz对应的第二线性频谱进行梅尔滤波变换,得到第一梅尔谱特征、第二梅尔谱特征。

梅尔谱频率和线性频谱频率的映射关系为:或者f=700(10m/2595-1),其中,f为线性频谱频率,m为梅尔谱频率。梅尔谱特征是对线性频谱特征进行滤波变换得到的另一种频谱特征。

本领域技术人员应当理解,通过梅尔滤波变换,将线性频谱特征转为梅尔谱特征就是将线性频谱特征转为对数线性频谱。而在语音识别中,由于高低频率的差异特征,通常认为低频率部分相对于高频率部分的语音信息更为丰富。对线性频谱进行梅尔滤波变换得到的梅尔谱特征,使得音频的低频率部分对应梅尔谱的分辨率更高,高频率部分对应梅尔谱的分辨率相对较低,非常适用于语音识别过程中的语音特征提取。这里高频率和低频率为相对概念,即高于低频率的均为高频率。例如,0~2khz为低频率,则大于2khz的频率为高频率。

通过设计线性梅尔滤波器的个数,可以获得相应维度特征的梅尔谱特征。例如,利用多个单位三角滤波器,进行梅尔滤波变换。单位三角滤波器的个数为80。

利用公式计算得到每个单位三角滤波器。其中,hn(g)表示第n个单位三角滤波器,n取值为1~80。mn为每个单位三角滤波器的中心频率。g为线性频谱频率。由于对与8khz的音频对应的第一线性频谱进行了零值填充,因此,8khz和16khz的音频的线性频谱频率均为0~8khz。f(mn)为中心频率mn对应的线性频谱频率,通过公式f=700(10m/2595-1)计算得到。

下面将具体描述每个单位三角滤波器的中心频率mn的计算过程。

每个单位三角滤波器的最大梅尔谱频率对应的线性频谱频率为8khz,即从而,每个单位三角滤波器的带宽为进而,每个单位三角滤波器的中心频率为

对于采样率为8khz的音频,计算得到各个单位三角滤波器hn(g)后,利用h1(g)至hn(g)这80个单位三角滤波器对如图6c所示的第二线性频谱进行梅尔滤波变换。即利用公式计算得到如图7a所示的第二梅尔谱特征。即为第二梅尔谱特征中的第一幅度值矩阵。

图7a示出根据本公开一些实施例的与8khz对应的第二线性频谱的第二梅尔谱特征。

如图7a所示,与采样率为8khz的音频对应的第二线性频谱的第二梅尔谱特征的横坐标为频谱序列序号,与第二线性频谱的频谱序列序号相同,纵坐标为梅尔滤波器序号,横坐标和纵坐标确定的坐标点的值为与采样率为8khz的音频对应的幅度值。

同理,可以得到如图7b所示的第一梅尔谱特征。

图7b示出了根据本公开一些实施例的与16khz对应的第二线性频谱的第二梅尔谱特征。

如图7b所示,与采样率为16khz的音频对应的第二线性频谱的第二梅尔谱特征的横坐标为频谱序列序号,与第二线性频谱的频谱序列序号相同,纵坐标为梅尔滤波器序号,横坐标和纵坐标确定的坐标点的值为与采样率为16khz的音频对应的幅度值。

返回图4,在步骤471中,对第二梅尔谱特征进行局部归一化处理,得到第二语音特征。

根据采样定理,与采样率为8khz的音频对应的第一线性频谱的最大线性频谱频率为4khz。与4khz对应的梅尔谱频率为根据公式可得,与梅尔谱频率m1对应的梅尔滤波器序号为

由于在步骤s450中对与采样率为8khz的音频对应的第一线性频谱进行了高频零值填充,在第二梅尔谱特征中,只有低维的61维度为采样率为8khz的音频的原始语音特征,而其他19维度为零值填充的结果。采用局部归一化处理的方式可以避免对填充的零值一起进行归一化处理,导致增加大量均值和标准差为0的语音特征,从而抑制音频的原始特征的问题。这里的高频指的是与大于第一频域序号、且小于或等于第二频域序号的频域序号对应的线性频谱频率。

例如,局部归一化计算公式为

其中,为1至61维第二梅尔谱特征中的幅度值矩阵,即为各个第一幅度值构成的矩阵。为局部归一化处理后的前61维第二梅尔谱特征中的幅度值矩阵。为第一幅度值的均值,即为局部均值。为第一幅度值的标准差,即为局部标准差。即为计算每个第一幅度值与局部均值的第一差值构成的矩阵。即为计算每个第一差值与局部标准差的比值,得到与每个第一幅度值对应的归一化后的第一幅度值构成的矩阵。

对于其他19维度为零值填充形成的第二梅尔谱特征,维持不变,即为62至80维第二梅尔谱特征中的幅度值矩阵。为局部归一化处理后的后19维第二梅尔谱特征中的幅度值矩阵。其中,s=1,指代采样率为8khz的音频。

对如图7a所示的第二梅尔谱特征进行上述局部归一化处理,得到如图8a所示的局部归一化处理后的第二梅尔谱特征。局部归一化处理后的第二梅尔谱特征即为第二语音特征。

图8a示出根据本公开一些实施例的局部归一化处理后的第二梅尔谱特征。

如图8a所示,局部归一化处理后的第二梅尔谱特征的横坐标为频谱序列序号,与第二线性频谱的频谱序列序号相同,纵坐标为梅尔滤波器序号,横坐标和纵坐标确定的坐标点的值为与采样率为8khz的音频对应的局部归一化后的幅度值。

在步骤472中,对第一梅尔谱特征进行全局归一化处理,得到第一语音特征。

例如,全局归一化处理的公式为

其中,为全局归一化处理后的第一梅尔谱特征中的幅度值矩阵。为第一梅尔谱特征中的第二幅度值矩阵。为全局均值。为全局标准差。即为计算每个第二幅度值与全局均值的第二差值后,计算每个第二差值与全局标准差的比值,作为与每个第二幅度值对应的全局归一化后的第二幅度值。

对如图7b所示的第一梅尔谱特征进行上述全局归一化处理,得到如图8b所示的全局归一化处理后的第一梅尔谱特征。全局归一化处理后的第一梅尔谱特征即为第二语音特征。

图8b示出根据本公开一些实施例的全局归一化处理后的第一梅尔谱特征。

如图8b所示,全局归一化处理后的第一梅尔谱特征的横坐标为频谱序列序号,与16khz的音频对应的第一线性频谱的频谱序列序号相同,纵坐标为梅尔滤波器序号,横坐标和纵坐标确定的坐标点的值为与采样率为16khz的音频对应的全局归一化后的幅度值。

利用如图8b所示的全局归一化处理后的第一梅尔谱特征和如图8a所示的局部归一化处理后的第二梅尔谱特征,即利用第一语音特征和第二语音特征可以训练机器学习模型。例如,机器学习模型为端到端神经网络语音识别模型。

返回图4,在步骤480中,利用第一语音特征和第二语音特征,训练机器学习模型。例如,将如图8a所示的局部归一化处理后的第二梅尔谱特征和图8b所示的全局归一化处理后的第一梅尔谱特征,输入到机器学习模型中进行训练。

应当理解,图6a-图8b都是通过亮度来决定幅度值的大小,为相应的示意图。

图9示出根据本公开一些实施例的语音识别装置的框图。

如图9所示,语音识别装置9包括第一获取模块91、第一确定模型92、第二确定模块93、第三确定模块94、设置模块95、第四确定模块96、第五确定模块97、训练模块98。

第一获取模块91被配置为获取与不同采样率的待训练音频对应的第一线性频谱,第一线性频谱的横坐标为频谱序列序号,纵坐标为频域序号,横坐标和纵坐标确定的坐标点的值为与待训练音频对应的原始幅度值,例如执行如图1所示的步骤s110或者如图4所示的步骤s410。

第一确定模块92被配置为确定不同采样率中的最大采样率和除最大采样率以外的其他采样率,例如执行如图1所示的步骤s120或如图4所示的步骤s420。

第二确定模块93被配置为确定与其他采样率对应的第一线性频谱的最大频域序号为第一频域序号,例如执行如图1所示的步骤s130或如图4所示的步骤s430。

第三确定模块94被配置为确定与最大采样率对应的第一线性频谱的最大频域序号为第二频域序号,例如执行如图1所示的步骤s140或如图4所示的步骤s440。

设置模块95被配置为在与其他采样率对应的第一线性频谱中,将与大于第一频域序号、且小于或等于第二频域序号的每个频域序号对应的幅度值设置为零,得到与其他采样率对应的第二线性频谱,例如执行如图1所示的步骤s150或如图4所示的步骤s450。

第四确定模块96被配置为根据与最大采样率对应的第一线性频谱的第一梅尔谱特征,确定最大采样率的待训练音频的第一语音特征,例如执行如图1所示的步骤s160或如图4所示的步骤s472。

第五确定模块97被配置为根据与其他采样率对应的第二线性频谱的第二梅尔谱特征,确定其他采样率的待训练音频的第二语音特征,例如执行如图1所示的步骤s170或如图4所示的步骤s471。

训练模块98被配置为利用第一语音特征和第二语音特征,训练机器学习模型,例如执行如图1所示的步骤s180或如图4所示的步骤s480。

图10示出根据本公开一些实施例的语音识别装置的框图。

如图10所示,语音识别装置10包括存储器101;以及耦接至该存储器101的处理器102。存储器101用于存储执行语音识别方法对应实施例的指令。处理器102被配置为基于存储在存储器101中的指令,执行本公开中任意一些实施例中的语音识别方法。

图11示出用于实现本公开一些实施例的计算机系统的框图。

如图11所示,计算机系统110可以通用计算设备的形式表现。计算机系统110包括存储器1110、处理器1120和连接不同系统组件的总线1100。

存储器1110例如可以包括系统存储器、非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(bootloader)以及其他程序等。系统存储器可以包括易失性存储介质,例如随机存取存储器(ram)和/或高速缓存存储器。非易失性存储介质例如存储有执行语音识别方法中的至少一种的对应实施例的指令。非易失性存储介质包括但不限于磁盘存储器、光学存储器、闪存等。

处理器1120可以用通用处理器、数字信号处理器(dsp)、应用专用集成电路(asic)、现场可编程门阵列(fpga)或其它可编程逻辑设备、分立门或晶体管等分立硬件组件方式来实现。相应地,诸如判断模块和确定模块的每个模块,可以通过中央处理器(cpu)运行存储器中执行相应步骤的指令来实现,也可以通过执行相应步骤的专用电路来实现。

总线1100可以使用多种总线结构中的任意总线结构。例如,总线结构包括但不限于工业标准体系结构(isa)总线、微通道体系结构(mca)总线、外围组件互连(pci)总线。

计算机系统110还可以包括输入输出接口1130、网络接口1140、存储接口1150等。这些接口1130、1140、1150以及存储器1111和处理器1120之间可以通过总线1100连接。输入输出接口1130可以为显示器、鼠标、键盘等输入输出设备提供连接接口。网络接口1140为各种联网设备提供连接接口。存储接口1150为软盘、u盘、sd卡等外部存储设备提供连接接口。

这里,参照根据本公开实施例的方法、装置和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个框以及各框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可提供到通用计算机、专用计算机或其他可编程装置的处理器,以产生一个机器,使得通过处理器执行指令产生实现在流程图和/或框图中一个或多个框中指定的功能的装置。

这些计算机可读程序指令也可存储在计算机可读存储器中,这些指令使得计算机以特定方式工作,从而产生一个制造品,包括实现在流程图和/或框图中一个或多个框中指定的功能的指令。

本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。

通过上述实施例中的语音识别方法及装置、计算机可存储介质,可以准确地提取不同采样率的音频数据的原始语音特征,从而提升机器学习模型的语音识别性能。

至此,已经详细描述了根据本公开的语音识别方法及装置、计算机可存储介质。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1