语音识别及模型训练方法、装置和计算机可读存储介质与流程

文档序号:21021206发布日期:2020-06-09 19:42阅读:275来源:国知局
语音识别及模型训练方法、装置和计算机可读存储介质与流程

本申请涉及语音处理技术领域,特别是涉及一种语音识别及模型训练方法、装置和计算机可读存储介质。



背景技术:

语音识别技术的发展,使人与机器通过自然语言交互成为可能。基于语音识别技术可以将语音信号转换为文本序列。实现这种转换需要对拾取的语音信号进行语音分离(speechseparation,ss)和语音增强(speechenhancement,se)等前端处理,再对前端处理得到的声学特征进行自动语音识别(automaticspeechrecognition,asr)后端处理。

传统方式前端语音分离增强模型与后端语音识别模型独立训练,在测试应用阶段直接将语音分离增强模型与语音识别模型进行级联。然而,前端处理会引入严重的失真,而这在后端模型训练阶段是未曾考虑的,从而这种级联方式下的语音识别准确性较低。



技术实现要素:

基于此,有必要针对语音识别准确性低的技术问题,提供一种语音识别及模型训练方法、装置和计算机可读存储介质。

一种语音识别模型训练方法,所述方法包括:

获取语音分离增强模型的第一损失函数及语音识别模型的第二损失函数;

基于所述第二损失函数进行反向传播,以对桥接在所述语音分离增强模型和语音识别模型之间的中间模型进行训练,得到鲁棒表征模型;

对所述第一损失函数和第二损失函数进行融合,得到目标损失函数;

基于所述目标损失函数对所述语音分离增强模型、鲁棒表征模型及语音识别模型进行联合训练,在满足预设收敛条件时结束训练。

一种语音识别模型训练装置,所述装置包括:

中间表征学习模块,用于获取语音分离增强模型的第一损失函数及语音识别模型的第二损失函数;基于所述第二损失函数进行反向传播,以对桥接在所述语音分离增强模型和语音识别模型之间的中间模型进行训练,得到鲁棒表征模型;

损失融合模块,用于对所述第一损失函数和第二损失函数进行融合,得到目标损失函数;

联合训练模块,用于基于所述目标损失函数对所述语音分离增强模型、鲁棒表征模型及语音识别模型进行联合训练,在满足预设收敛条件时结束训练。

一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述语音识别模型训练方法的步骤。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述语音识别模型训练方法的步骤。

上述语音识别模型训练方法、装置、计算机可读存储介质和计算机设备,提出了一种新型的在前端语音分离增强模型和后端语音识别模型之间引入用于中间过渡的鲁棒表征模型的端到端网络架构,这种架构通过引入适当的中间过渡表征学习技术,很好的弥合了以人为导向的语音分离任务和以机器为导向的语音识别任务之间的差异;在这种网络架构中,中间模型借助后端语音识别模型的第二损失函数反向传播完成训练,而语音分离增强模型和语音识别模型可以是预选训练好的,如此可以在较少的迭代训练次数后即可达到收敛;基于前后端模型分别对应损失函数的组合对端到端的网络模型进行联合训练,使得网络架构中每个单独的模型均能够综合学习来自复杂声学环境语音信号中的干扰特征,从而可以保证全局的语音处理任务的性能,提高语音识别准确性;此外,由于网路架构中的每个模型支持灵活独立选择,单独每个模型均可实现最优配置,而无需妥协单独任一模型,从而可以同时兼顾局部的每个语音处理任务的性能,提高语音客观可懂度。

一种语音识别方法,包括:

获取目标语音流;

基于语音分离增强模型提取所述目标语音流中每个音频帧的增强频谱;

基于鲁棒表征模型对所述增强频谱进行听觉匹配,得到鲁棒特征;

基于语音识别模型对所述鲁棒特征进行识别,得到每个音频帧对应的音素;

其中,所述语音分离增强模型、鲁棒表征模型及语音识别模型联合训练得到。

一种语音识别装置,所述装置包括:

语音分离增强模块,用于获取目标语音流;基于语音分离增强模型提取所述目标语音流中每个音频帧的增强频谱;

中间表征过渡模块,用于基于鲁棒表征模型对所述增强频谱进行听觉匹配,得到鲁棒特征;

语音识别模块,用于基于语音识别模型对所述鲁棒特征进行识别,得到每个音频帧对应的音素;其中,所述语音分离增强模型、鲁棒表征模型及语音识别模型联合训练得到。

一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述语音识别方法的步骤。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述语音识别方法的步骤。

上述语音识别方法、装置、计算机可读存储介质和计算机设备,提出了一种新型的在前端语音分离增强模型和后端语音识别模型之间引入鲁棒表征模型的端到端网络架构,这种架构通过引入适当的中间过渡表征学习技术,很好的弥合了以人为导向的语音分离任务和以机器为导向的语音识别任务之间的差异;对端到端的网络模型进行联合训练,使得网络架构中每个单独的模型均能够综合学习来自复杂声学环境语音信号中的干扰特征,从而可以保证全局的语音处理任务的性能,提高语音识别准确性;此外,由于网路架构中的每个模型支持灵活独立选择,单独每个模型均可实现最优配置,而无需妥协单独任一模型,从而可以同时兼顾局部的每个语音处理任务的性能,提高语音客观可懂度。

附图说明

图1为一个实施例中语音识别及模型训练方法的应用环境图;

图2为一个实施例中语音识别模型训练方法的流程示意图;

图3为一个实施例中基于鲁棒表征模型对语音分离增强模型和语音识别模型进行桥接的模型架构示意图;

图4为一个实施例中语音处理模型预训练的步骤的流程示意图;

图5为一个实施例中中间模型的构建步骤的流程示意图;

图6为一个实施例中语音识别模型预训练的步骤的流程示意图;

图7为一个具体实施例中语音识别模型训练方法的流程示意图;

图8为一个实施例中语音识别方法的流程示意图;

图9a为一个实施例中在五种snr信噪比条件下基于不同语音识别方法对来自两种声学环境的语音进行识别的字错误率的对比示意图;

图9b为一个实施例中在不同snr信噪比条件下不同语音识别系统的性能比较示意图;

图10为一个具体实施例中语音识别方法的流程示意图;

图11为一个实施例中语音识别模型训练装置的结构框图;

图12为另一个实施例中语音识别模型训练装置的结构框图;

图13为一个实施例中语音识别装置的结构框图;

图14为一个实施例中计算机设备的结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

图1为一个实施例中语音识别模型的训练方法的应用环境图。参照图1,该语音识别模型训练方法应用于模型训练系统。该语音识别模型训练系统包括终端110和服务器120。终端110和服务器120通过网络连接。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。终端110和服务器120均可单独用于执行本申请实施例中提供的语音识别模型训练方法。终端110和服务器120也可协同用于执行本申请实施例中提供的语音识别模型训练方法。

本申请实施例提供的方案涉及人工智能的语音识别等技术。语音技术(speechtechnology)的关键技术有语音分离(ss)和语音增强(se)及自动语音识别技术(asr)。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。

需要说明的是,本申请实施例中涉及用于语音处理的联合模型。联合模型包括用于不同环节语音处理的三个模型,具体包括前端的语音分离增强模型和后端的语音识别模型,以及桥接在语音分离增强模型和语音识别模型之间的鲁棒表征模型。三个模型分别可以是一种机器学习模型。机器学习模型是通过样本学习后具备某种能力的模型,具体可以是神经网络模型,比如cnn(convolutionalneuralnetworks,卷积神经网络)模型、rnn(recurrentneuralnetworks,循环神经网络)模型等。当然,机器学习模型也可以采用其他类型的模型。

可以理解,在模型训练前可以根据精准度要求等灵活选择每个环节所采用的模型,如此,每个环节均可采用最优配置,而不需要妥协任意一个环节的性能。换言之,本申请所涉及的三个模型分别可以自由选择擅长相应领域的专用模型。

其中,语音分离增强模型与语义识别模型分别可以是预训练好的,如此本申请可以在预训练的语音分离增强模型与语义识别模型基础上训练包含鲁棒表征模型的联合模型,如此可以在较少的迭代训练次数即可得到收敛的联合模型。语音分离增强模型与语义识别模型的预训练过程以及结合鲁棒表征模型进行联合训练的过程可参考后续实施例中的详细描述。

如图2所示,在一个实施例中,提供了一种语音识别模型训练方法。本实施例主要以该方法应用于计算机设备来举例说明,该计算机设备具体可以是上图中的终端110或者服务器120。参照图2,该语音识别模型训练方法具体包括如下步骤:

s202,获取语音分离增强模型的第一损失函数及语音识别模型的第二损失函数。

其中,语音分离增强模型是用于经过训练后具有语音分离和/或增强能力的模型,具体可以是以样本语音流作为训练数据,进行学习训练得到的用于将目标语音从样本语音流中的背景干扰中分离出来的模型。可以理解,语音分离增强模型还可以具有对语音信号进行语音活动检测(voiceactivitydetection,vad)、回声消除、混响消除或声源定位等预处理的能力,对此不作限制。

根据传感器或麦克风的数量,语音分离增强模型可分为单声道(单个麦克风)分离增强模型和阵列(多个麦克风)分离增强模型。单声道分离的主要方法包括语音增强和计算听觉场景分析(casa)。语音增强是通过分析单声道混合信号中目标语音信号和干扰信号的全部数据,经过带噪语音的噪声估计,对清晰语音进行估计,主流的语音增强方法包括频谱相减法(spectralsubtraction)等。计算听觉场景分析是建立在听觉场景分析的感知理论基础上,利用聚类约束(groupingcue)进行语音分离。阵列分离的主要方法包括波束成形、空间滤波器等。波束成形是通过恰当的阵列结构增强从特定的方向到达的语音信号,进而削减来自其它方向语音信号的干扰,如延迟-叠加技术。

语音分离/增强是以人为导向的语音处理任务。在语音分离/增强领域,常采用人为理解更为有效的表征参数,如短时傅立叶变换(shorttimefouriertransform,stft)频谱图或者修正离散余弦变换(modifieddiscretecosinetransform,mdct)等。语音分离/增强主流的性能衡量指标包括语音质量的感知评估(perceptualevaluationofspeechquality,pesq)、信号失真比(signaldistortionrate,sdr),短时客观可懂度(shorttimeobjectiveintelligibility,stoi)等。其中stoi与主观听觉可懂度具有高度相关性。

语音识别模型是经过训练后具有语音识别能力的声学模型,具体可以是以样本语音流作为训练数据,进行学习训练得到的用于对样本语音流进行音素识别的模型。语音分离增强模型与语音识别模型分别可以是预先训练好的。预训练的语音分离增强模型与语音识别模型各自具有固定的模型结构和模型参数。

语音识别是以机器为导向的语音处理任务。在自动语音识别等领域,例如智能音箱、虚拟数字人助手、机器翻译等,常采用机器理解更为高效的表征参数,如梅尔滤波器组(melfbanks)、梅尔频率倒谱系数(mel-frequencycepstralcoefficients,mfcc)等。语音识别模型主流的性能衡量指标包括字错误率(worderrorrate,wer),字符错误率(charactererrorrate,cer)或句子错误率(sentenceerrorrate,ser)等。

具体地,当需要进行联合模型训练时,计算机设备获取预训练的语音分离增强模型和语音识别模型,以及预训练语音分离增强模型时所采用的第一损失函数、预训练语音识别模型时所采用的第二损失函数。损失函数(lossfunction)通常作为学习准则与优化问题相联系,即通过最小化损失函数求解和评估模型。例如在统计学和机器学习中被用于模型的参数估计(parametericestimation)。预训练语音分离增强模型所采用的第一损失函数及预训练语音识别模型所采用的第二损失函数分别具体可以是均方误差、平均绝对值误差、log-cosh损失、分位数损失、理想分位数损失等。第一损失函数与第二损失函数分别也可以是多种损失函数的组合。

s204,基于第二损失函数进行反向传播,以对桥接在语音分离增强模型和语音识别模型之间的中间模型进行训练,得到鲁棒表征模型。

如上文所述,在语音处理过程中,前端的语音分离任务所采用的表征参数和性能衡量指标是以人为导向的,即以人的主观听觉可懂度为目标;而后端的语音识别任务所采用的表征参数和性能衡量指标则是以机器为导向的,即以机器识别准确率为目标。如此,在进行前后端语音处理任务的融合时,需要克服两种表征范畴之间的差异。

传统方式主要是将语音处理任务拆分为完全独立的两个子任务:语音分离任务和语音和识别任务。如此,在训练阶段,允许模块化对语音分离增强模型和语音识别模型分别训练,在生产测试阶段,将语音分离增强模型输出的增强后目标语音输入到语音识别模型进行识别。容易发现,这种方式并没有很好的解决两种表征范畴之间的差异化问题。在车载系统、电话会议设备,电话通讯和在线广播节目等实际应用场景中,目标语音受背景音乐或多说话人干扰影响的现象普遍存在。如此,语音分离增强模型在进行前端语音处理时会引入相对严重的失真,而这在语音识别模型训练阶段不曾考虑,从而直接将独立的前端语音分离增强模型和后端语音识别模型级联,会严重降低最终语音识别性能。

参考图3,图3示出了一个实施例中基于鲁棒表征模型对语音分离增强模型和语音识别模型进行桥接的模型架构示意图。如图3所示,为了克服两种表征范畴之间的差异,本申请的实施例在语音分离增强模型和语音识别模型之间桥接了待训练的中间模型。训练后的中间模型可以称作鲁棒表征模型。

其中,待训练的中间模型以及预训练的语音分离增强模型和语音识别模型均可以是由人工神经网络构成的模型。人工神经网络(artificialneuralnetworks,简写为anns),也简称为神经网络(nns)或称作连接模型(connectionmodel)。人工神经网络可从信息处理角度对人脑神经元网络进行抽象,以建立某种模型,按不同的连接方式组成不同的网络。在工程与学术界也常直接简称为神经网络或类神经网络。

神经网络模型比如cnn(convolutionalneuralnetwork,卷积神经网络)模型、dnn(deepneuralnetwork,深度神经网络)模型和rnn(recurrentneuralnetwork,循环神经网络)模型等。语音分离增强模型也可以是多种神经网络模型的组合。

其中,卷积神经网络包括卷积层(convolutionallayer)和池化层(poolinglayer)。深度神经网络包括输入层、隐含层和输出层,层与层之间是全连接的关系。循环神经网络是一种对序列数据建模的神经网络,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐藏层之间的节点不再无连接而是有连接的,并且隐藏层的输入不仅包括输入层的输出还包括上一时刻隐藏层的输出。循环神经网络模型,比如lstm(longshort-termmemoryneuralnetwork,长短时记忆神经网络)模型,bilstm(bi-directionallongshort-termmemory,双向长短时记忆神经网络)等。

在一个实施例中,用于语音分离和增强的语音分离增强模型也可称作提取器extract,用于中间过渡表征学习的鲁棒表征模型也可称作适配器adapt,用于音素识别的语音识别模型也可称作识别器recongnize。下文将提取器、适配器和识别器构成的语音处理系统称作ear系统。

具体地,计算机设备按照预设的深度学习优化算法确定第二损失函数在每次迭代过程产生的局部下降梯度。深度学习优化算法具体可以是批量梯度下降(batchgradientdescent,bgd)、随机梯度下降(stochasticgradientdescent,sgd)、小批量梯度下降(mini-batchgradientdescent,mbgd),adagrad(自适应算法),rmsprop(rootmeansquareprop)或adam(adaptivemomentestimation)等。计算机设备将局部下降梯度反向传播至中间模型,以对中间模型对应的模型参数进行更新,直至符合预设的训练停止条件时结束训练。

以随机梯度下降法为例,假设l1和l2分别为第一损失行数和第二损失函数,f(x,θadapt)表示输入为x和模型参数为θadapt的中间模型,y为中间模型输入x时语音识别模型对应的输出目标值,样本语音流中包含n个音频帧{x(1),…,x(n)},其中x(i)所对应的目标为y(i),则每次迭代所对应的局部下降梯度为假设随机梯度下降算法的学习率为η,则可以将模型参数变更为θadapt-ηg,并将变更后的模型参数作为中间模型当前的模型参数继续进行迭代,直至达到预设的训练停止条件。训练停止条件可以是第二损失函数的损失值达到预设最小值,或连续预设次数迭代中间模型的模型性能无明显改善等。

在一个实施例中,在基于第二损失函数反向传播对中间模型进行训练过程中,训练数据虽然经过了语音识别模型,但无需对预训练的语音识别模型的模型参数进行调整更新。

值得强调的是,用户根据模型偏好或者精准度要求等可以对具体所采用的中间模型、语音分离增强模型以及语音识别模型分别进行灵活独立选择,即允许用户按照自己意愿灵活地引进新的先进的语音分离/增强和语音识别技术。换言之,本申请所涉及的三个模型分别可以自由选择擅长相应领域的专用模型。比如,擅长语音分离领域的模型包括ai,擅长鲁棒表征学习领域的模型包括bj,擅长语音识别领域的模型包括ck,其中i,j,k均为正整数,则待训练的联合模型可以是ai+bj+ck中的任意一种。如此,每个模型均可采用最优配置,而不需要妥协其他模型的性能。

此外,这里的局部下降梯度是相对下文联合训练时所涉及的全局下降梯度而言的,不可认为是根据第二损失函数确定的下降梯度值的部分取值。

s206,对第一损失函数和第二损失函数进行融合,得到目标损失函数。

其中,目标损失函数是由第一损失函数和第二损失函数组合而成的综合损失函数。函数融合是通过一种或多种预设逻辑运算将多个函数转换为一个函数的过程。预设逻辑运算包括但不限于四则混合运算、加权求和、机器学习算法等。

具体地,计算机设备通过对第一损失函数与第二损失函数分进行预设逻辑运算,得到目标损失函数。以加权求和为例,假设加权因子为λss,则目标损失函数l=l2+λssl1。加权因子可以是根据经验或实验设定的数值,如0.1。容易发现,通过调整加权因子可以调整在多模型联合训练时语音分离增强模型的重要性。

在一个实施例中,计算机设备预置了一种或多种融合计算公式,并设定了融合计算公式中每种参数因子的输入格式。第一损失函数与第二损失函数分别作为一种参数因子输入不同的融合计算公式,即可得到不同的目标损失函数。

s208,基于目标损失函数对语音分离增强模型、鲁棒表征模型及语音识别模型进行联合训练,在满足预设收敛条件时结束训练。

如上文,语音分离增强模型、鲁棒表征模型和语音识别模型均可以是由人工神经网络构成的模型,如此,本申请提供的用于语音处理的模型架构是完全基于神经网络的,可以是实现端到端的联合训练。整个端到端的联合训练过程并不人为进行任务划分,而是将整个语音处理任务完全交给神经网络模型直接学习从原始语音信号到期望输出的映射。

具体地,计算机设备按照预设的深度学习优化算法确定目标损失函数产生的全局下降梯度。用于确定局部下降梯度的深度学习优化算法与用于确定全局下降梯度的深度学习优化算法可以相同,也可以不同。目标损失函数产生的全局下降梯度从语音识别模型依次反向传播至鲁棒表征模型和语音分离增强模型的网络各层,在此过程中对语音分离增强模型、鲁棒表征模型及语音识别模型对应的模型参数分别进行迭代更新,直至满足预设的训练停止条件时结束训练。

在一个实施例中,基于目标损失函数对语音分离增强模型、鲁棒表征模型及语音识别模型进行联合训练包括:确定目标损失函数产生的全局下降梯度;根据全局下降梯度对语音分离增强模型、鲁棒表征模型及语音识别模型分别对应的模型参数进行迭代更新,直至获得目标损失函数的最小化损失值。

以小批量随机梯度下降法为例,假设l1和l2分别为第一损失行数和第二损失函数,l为目标损失函数,θadapt为鲁棒表征模型的模型参数,θextract为语音分离增强模型的模型参数,θrecog为语音识别模型的模型参数,θear为整个联合模型的模型参数,α为小批量随机梯度下降算法的学习率,则将目标损失函数产生的全局下降梯度一直反向传播至语音分离增强模型将模型参数变更为并将变更后的模型参数作为联合模型当前的模型参数继续进行迭代,直至达到预设的训练停止条件。训练停止条件可以是目标损失函数的损失值达到预设最小值,或连续预设次数迭代中间模型的模型性能无明显改善等。

在一个具体的实施例中,样本语音流的批量大小可以是24,最初的学习率α可以是10-4,学习率的衰退系数可以是0.8,并在连续3次迭代目标损失函数的损失至均无改善时认为联合模型已经收敛,联合训练结束。

上述模型训练方法,提出了一种新型的在前端语音分离增强模型和后端语音识别模型之间引入用于中间过渡的鲁棒表征模型的端到端网络架构,这种架构通过引入适当的中间过渡表征学习技术,很好的弥合了以人为导向的语音分离任务和以机器为导向的语音识别任务之间的差异;在这种网络架构中,中间模型借助后端语音识别模型的第二损失函数反向传播完成训练,而语音分离增强模型和语音识别模型可以是预选训练好的,如此可以在较少的迭代训练次数后即可达到收敛;基于前后端模型分别对应损失函数的组合对端到端的网络模型进行联合训练,使得网络架构中每个单独的模型均能够综合学习来自复杂声学环境语音信号中的干扰特征,从而可以保证全局的语音处理任务的性能,提高语音识别准确性;此外,由于网路架构中的每个模型支持灵活独立选择,单独每个模型均可实现最优配置,而无需妥协单独任一模型,从而可以同时兼顾局部的每个语音处理任务的性能,提高语音客观可懂度。

在一个实施例中,如图4所示,上述语音识别模型训练方法还包括语音分离增强模型预训练的步骤,具体如下:

s402,基于第一神经网络模型提取样本语音流的估计频谱和嵌入特征矩阵。

其中,第一神经网络网络模型以及下文提及的第二神经网络模型、第三神经网络模型分别可以是上述人工神经网络模型中的任意一种。在本实施例中,第一神经网络网络模型可以是由基于理想比率掩模(idealratiomask,irm)的深度吸引子网络(deepattractornet,danet)和深度提取网络(deepextractornet,denet)简化得到的模型。denet网络中包括一个或多个卷积神经网络。在本实施例中,卷积神经网络可以采用bilstm网络。bilstm网络用于将语音信号从低维空间映射到高维空间。danet网络用于在高维空间中嵌入吸引子(attractor)以结合语音信号中时频信息一起参与训练。在基于sgd的反向传播对denet和danet网络进行联合训练过程中,denet网络和danet网络并未引入任何时间上的损失。

样本语音流可以是在不同复杂声学环境,基于车载系统、电话会议设备、音箱设备或在线广播设备等设备中的语音应用采集到的音频数据流。语音应用可以是系统电话应用、即时通讯应用、虚拟语音助手、机器翻译应用等。每段样本音频流可以包括多个音频帧。在样本音频流中采集音频帧的采样频率以及每个音频帧的帧长和帧移均可以根据需求自由设定。在一个具体的实施例中,可以采用16khz的采样频率,25ms的帧长、10ms的帧移进行音频帧采集。

具体地,计算机设备可以批量对多个样本语音流进行短时傅里叶变换,得到每个样本语音流中的语音特征和语音频谱。样本音频流的批量大小可以根据需求自由设定,如24等。由于用于语音分离和增强的第一神经网络模型只有在高维的嵌入空间才能较好的完成语音分离和增强。因而,计算机设备将批量样本语音流的语音特征映射至更高维的嵌入空间,转换得到嵌入特征矩阵。计算机设备在嵌入空间,基于第一神经网络模型对语音频谱进行语音分离和增强,得到估计频谱。估计频谱为第一神经网络模型输出的样本语音流的频谱。

s404,根据嵌入特征矩阵及预设理想掩蔽矩阵,确定样本语音流对应的吸引子。

其中,理想掩蔽矩阵是为了约束语音信号中噪声能量和语音失真能量而建立的自适应感知掩蔽矩阵,记录了不同语音频率对应的掩蔽阈值。理想掩蔽矩阵可以是根据语音信号低维的语音特征和高维的嵌入特征矩阵预测得到的。

吸引子是能够表征各样本语音流在嵌入空间所存在的普遍特征的特征向量。基于danet网络的语音分离增强模型是计算目标语音训练样本在嵌入空间中的向量的加权平均值并存储起来作为目标语音的“吸引子”。因此,在嵌入空间中只需要计算一个吸引子。

具体地,计算机设备根据语音信号以及通过短时傅里叶变换从语音信号中提取得到的语音频谱,预测批量样本语音流对应的理想掩蔽矩阵。理想掩蔽矩阵与嵌入特征矩阵处于同一维度的嵌入空间。计算机设备计算嵌入特征矩阵与理想掩蔽矩阵的乘积,基于该乘积结果确定嵌入空间的吸引子。

s406,通过计算嵌入特征矩阵中每个矩阵元素与吸引子的相似性,得到样本语音流的目标掩蔽矩阵。

具体地,计算机设备结合语音特征与吸引子的相似性进行掩蔽阈值修正,以对理想掩蔽矩阵进行重构,得到目标掩蔽矩阵。嵌入特征矩阵中每个矩阵元素与吸引子之间相似性的度量方法具体可以采用欧氏距离、曼哈顿距离、切比雪夫距离、马氏距离、余弦距离或汉明距离等。

s408,根据目标掩蔽矩阵确定样本语音流所对应的增强频谱。

其中,在现实声学场景中采集的语音信号通常为目标语音中混入了噪声的混合信号。样本语音流对应的增强频谱可以是语音信号中目标语音的增强频谱。

具体地,为了减少桥接在语音分离增强模型之后的鲁棒表征模型的计算量,将高维的嵌入特征矩阵进行降维处理,转换回低维的增强频谱。

s410,基于样本语音流对应的估计频谱与增强频谱之间的均方误差损失对第一神经网络模型进行训练,得到语音分离增强模型。

具体地,计算机设备计算批量样本语音流的增强频谱与目标语音的增强频谱之间的均方误差损失mse,通过该均方误差损失mse来预训练第一神经网络模型:

其中,m为用于训练的混合信号样本语音流的批量大小,i表示训练样本语音流的索引,||.||2表示向量的2-范数,ss表示直接第一神经网络模型输出的样本语音流的估计频谱,表示样本语音流的增强频谱。计算机设备将第一损失函数l1=lmse产生的梯度反向传播至第一神经网络模型的各个网络层,通过小批量随机梯度下降法更新第一神经网络模型的模型参数θextract,当达到预设收敛条件时停止训练,得到语音分离增强模型。

本实施例中,理想比率掩模irm是一种有效的语音分离增强方法,基于irm的理想掩蔽矩阵可以约束语音信号中噪声能量和语音失真能量,结合语音信号对应的高维嵌入特征矩阵以及代表其普遍特征的吸引子对理想掩蔽矩阵进行重构,基于重构的目标掩蔽矩阵进行频谱提取,可以使所提取估计频谱更加接近样本语音流的增强频谱,提高频谱提取有效性。

在一个实施例中,基于第一神经网络模型提取样本语音流的估计频谱和嵌入特征矩阵包括:对样本语音流进行傅里叶变换,得到每个音频帧的语音频谱和语音特征;基于第一神经网络模型对语音频谱进行语音分离和增强,得到估计频谱;基于第一神经网络模型将语音特征映射至嵌入空间,得到嵌入特征矩阵。

其中,在现实声学场景中采集的语音信号通常为混入了噪声的混合信号。可以认为,混合信号x(n)是目标语音信号ss(n)和干扰信号si(n)的线性叠加:x(n)=ss(n)+si(n),其中n为样本语音流的数量。对于混合信号和参考目标语音信号进行短时傅里叶变换stft计算,可以得到混合信号对应的语音频谱和语音特征。语音特征可以是为处于低维的混合信号空间rtf的特征矩阵。通过傅里叶变换提取得到的语音特征的特征维度为txf维。其中,t为帧数,f为梅尔滤波器组mf中梅尔滤波频带的数量。

denet通过bilstm网络将语音特征从混合信号空间rtf映射到更高维的嵌入空间rtf*k,使得输出变更为嵌入特征矩阵:

用于高维映射的嵌入向量维度k可以根据自由设定,如40等。

在一个实施例中,第一神经网络模型可以是将窥孔连接(peepholeconnection)的预设数量bilstm模型与一个全连接层级联得到。窥孔连接是区别与常规级联的一种模型连接方式,可以获取到更多的上下文信息。基本形式的bilstm单元中,前向lstm及后向lstm中门的控制均仅有当前的输入x(t)和前一时刻的短时状态h(t-1)。将不同bilstm窥孔连接,可以把前一时刻的长时状态c(t-1)加入遗忘门和输入门控制的输入,当前时刻的长时状态加入输出门的控制输入,可以让各个控制门窥视一下长时状态,从而能够获取更多的上下文信息。

比如,在一个具体的实施例中,第一神经网络模型可以采用窥孔连接的四层bilstm,每层具有600个隐节点,最后一个bilstm层之后连接一个全连接层。全连接层用于将600维的语音特征向量映射为高维的嵌入特征矩阵。假设嵌入特征矩阵的维度k为40,则可以将600维的语音特征向量映射为24000维的嵌入特征向量。

本实施例中,将语音信号低纬的语音特征映射为高维的嵌入特征矩阵,可以保证第一神经网络模型进行语音分离及增强的效果。

在一个实施例中,根据嵌入特征矩阵及预设理想掩蔽矩阵,确定样本语音流的吸引子包括:根据语音频谱和语音特征确定理想掩蔽矩阵;基于预设的二元阈值矩阵对理想掩蔽矩阵中噪声元素进行过滤;根据嵌入特征矩阵及过滤了噪声元素的理想掩蔽矩阵,确定样本语音流对应的吸引子。

其中,嵌入空间中吸引子的计算公式可以是:

其中,as∈rk,⊙表示矩阵元素乘法,ms=|ss|/|x|为理想掩蔽矩阵,w∈rtf是二元阈值矩阵,二元阈值矩阵计算公式如下:

二元阈值矩阵w用于排除掉理想掩蔽矩阵中能量太小的矩阵元素,以减小噪声干扰。然后,通过计算吸引子与嵌入特征矩阵中每个矩阵元素之间的相似性,可以估计目标语音的掩蔽矩阵,简称目标掩蔽矩阵:

最后,目标语音的增强频谱可以通过下面的计算方式提取出来:

在一个实施例中,在第一神经网络模型训练阶段计算出来的吸引子被存储下来,并计算这些吸引子的均值,将该均值作为测试生产阶段的全局吸引子来提取测试的目标语音流的增强频谱。

本实施例中,过滤掉理想掩蔽矩阵中的噪声元素之后进行吸引子计算,可以提高吸引子计算准确性,使所计算吸引子更好的反映语音数据的语音特征。

在一个实施例中,如图5所示,上述模型训练方法还包括中间模型的构建步骤,具体如下:

s502,获取第二神经网络模型。

其中,第二神经网络模型是桥接在前端语音分离增强模型和后端语音识别模型之间的模型。传统方式虽然存在对前端语音分离增强模型和后端语音识别模型的桥接方式,但基本是参考专家根据经验定义的梅尔滤波器实现桥接。梅尔滤波器基于逐帧仿射变换函数将输入的样本语音流的语音频谱转换为滤波器组fbanks。然而,基于专家经验的梅尔滤波器所能适应的声学场景非常有限。

而本申请所面临的声学环境是非常复杂的,需要在输入的频谱图是包含了谱估计误差和时态失真的有缺陷频谱的情况下,最小化来自前端的语音识别误差影响。此外,帧级别的频谱图提取和音素级别的语音识别任务之间的上下文差异也增加了前后端语音处理任务融合的时间动态复杂性。换言之,本申请提供基于第二神经网络模型桥接训练得到的联合模型能够适应更多复杂的声学环境。

为了有能力适应来自自下而上和自上而下的时间动态影响,本申请的实施例中,第二神经网络模型使用更复杂的recurrent模型架构。典型地recurrent模型架构包括能够使用输入频谱图的上下文来预测输出声学特征空间中的点的模型结构,如深层卷积神经网络cnn、bilstm等。其中,bilstm模型通常称为通用程序近似器,能够通过有效估计完整序列的条件后验概率来学习中间表征,而不需要对其分布做出任何明确的假设。下文以第二神经网络模型采用bilstm模型结构ψbilstm(·)为例进行描述。

在一个实施例中,第二神经网络模型可以是将预设数量bilstm模型窥孔连接得到。比如,在一个具体的实施例中,第二神经网络模型可以采用窥孔连接的两层bilstm,每层具有600个隐节点。

s504,对第二神经网络模型进行非负约束处理,得到非负神经网络模型。

其中,非负约束处理是能够保证第二神经网络模型非负的处理步骤。基于梅尔滤波器桥接前后端模型时,梅尔滤波器输出的滤波器组fbanks是非负的,而标准bilstm的输出是没有非负限制的。为了贴合专家定义的声学特征,本申请的实施例对第二神经网络模型进行非负约束处理。

在一个实施例中,对第二神经网络模型进行非负约束处理包括:对第二神经网络模型进行平方运算;第二神经网络模型包括双向长短期记忆网络模型。

具体地,计算机设备在第二神经网络模型的输出上加上一个平方处理,以匹配fbanks的非负性。经过评测,发现平方处理不但计算逻辑简短,且相比线性整流函数(rectifiedlinearunit,relu)等激活函数对第二神经网络模型进行非线性变换的效果更优。

s506,获取用于对非负神经网络模型输出的声学特征进行听觉适配的微分模型;将微分模型与非负神经网络模型级联,得到中间模型。

其中,听觉适配是指通过模拟人耳运算,使声学特征符合人耳听觉习惯。微分模型是模拟人耳运算的运算公式。经研究发现,对于频谱幅度差值非常大的高幅值语音信号和低幅值语音信号,人耳所能感受到的差异可能并不如幅度差值这么明显。比如,对于幅值1000和10的两个语音信号,人耳能够感知到的差异可能只是诸如3和1的差异。此外,人耳对语音信号中的变化比较敏感。

具体地,计算机设备获取预先构建的微分模型,将微分模型作为对非负神经网络模型输出的声学特征进行听觉匹配优化处理步骤,级联在非负神经网络模型之后,得到中间模型。也就是说,中间模型包括非负神经网络模型和微分模型。如此,将模拟人耳运算的逻辑以微分模型的方式体现,在训练阶段,第二神经网络模型无需进行模拟人耳运算逻辑方面的学习,降低第二神经网络模型学习复杂度,有助于提高中间模型训练效率。

值得强调的是,在另一个实施例中,可以直接基于第二神经网络模型作为中间模型,而无需对第二神经网络模型的非负约束处理,也无需进行微分模型的拼接。此时,在训练阶段,第二神经网络模型需要自行学习模拟人耳运算逻辑。经测试发现,相比根据专家经验确定的非负约束处理逻辑以及微分模型,基于第二神经网络模型自行学习,反而能够学习到更加全面的模拟人耳运算逻辑,实现更好的听觉匹配效果。在测试生产阶段训练完毕的第二神经网络模型(即鲁棒表征模型)能够适应更多更复杂的声学环境。

本实施例中,对第二神经网络模型进行非负约束处理,并拼接用于模拟人耳运算的微分模型,可以使模型输出的声学特征更加贴合实际人耳听觉习惯,进而有助于提高整个ear系统的语音识别性能。

在一个实施例中,上述模型训练方法还包括:获取用于对非负神经网络模型输出的声学特征进行听觉适配的微分模型包括:获取用于对声学特征对应特征向量进行对数运算的对数模型;获取用于对声学特征对应特征向量进行差分运算的差分模型;根据对数模型与差分模型构建微分模型。

其中,对数模型是用于对非负神经网络模型输出的声学特征的特征向量元素进行求对数运算。对数模型可以是任意能够实现元素对数运算的模型,如lgx,lnx等,其中x为声学特征向量元素。如上文,对于频谱幅度差值非常大的高幅值语音信号和低幅值语音信号,人耳所能感受到的差异可能并不如幅度差值这么明显。基于对数模型对声学特征的特征向量元素进行求对数运算,能够弱化赋值之间的差异,使其声学特征不同向量元素之间的差异更好的反应人耳实际所能感受出的信号差异。比如,在上述举例中,对于幅值1000和10的两个语音信号,经过lgx对数运算后,向量元素1000转换为3,向量元素10转换为1,很好的反应了人耳实际所能感受出的信号差异。

差分模型是用于对非负神经网络模型输出的声学特征的特征向量元素记性差分运算。差分模型可以是任意能够实现元素差分运算的模型,如一阶差分运算和二阶差分运算等。如上文,人耳对语音信号中的变化比较敏感。基于差分模型对声学特征的特征向量元素进行差分运算,差分的结果反映了声学特征不同向量元素之间的变化。

具体地,计算机设备可以将对数模型和差分模型作为并列的两个模型构建微分模型,也可以将对数模型和差分模型进行级联构建微分模型。对数模型与差分模型的级联顺序可以是对数模型级联在差分模型之后,也可以是差分模型级联在对数模型之后。可以理解,微分模型还可以包括其他用于听觉适配的模型,对此不作限制。计算机设备在预训练好语音识别模型后,固定语音识别模型的模型参数,继续使用干净语音的频谱作为训练数据,通过直接反向传播识别第二损失函数l2来训练中间模型。

其中,θadapt为中间模型的模型参数,为对第二神经网络模型进行非负约束处理并拼接微分模型得到的中间模型;为第二神经网络模型本身。

在一个实施例中,为了实现更快的收敛和更好的泛化,计算机设备还可以对声学特征的向量元素执行全局均值方差归一化处理。归一化处理所采用的方法具体可以是01标准化、z-score标准化、sigmoid函数标准化等。

在一个实施例中,为了实现更好的语音平滑效果,计算机设备还可以拼接以样本音频流中当前音频帧为中心的2w+1帧的上下文窗口中每个音频帧的声学特征。其中,w表示单侧上下文窗口的大小,具体大小可以根据需求自由设定,如5。

本实施例中,对非负神经网络模型进行求对数运算,可以使语音信号声学特征不同向量元素之间的差异更好的反应人耳实际所能感受出的信号差异;对非负神经网络模型进行差分运算,可以反映声学特征不同向量元素之间的变化,进而适配人耳对语音信号中的变化比较敏感的听觉特征。

在一个实施例中,如图6所示,上述模型训练方法还包括语音识别模型预训练的步骤,具体如下:

s602,获取样本语音流及对应标注的音素类别。

其中,样本语音流中每个音频帧具有对应的标注数据。标注数据包括根据音频帧中目标语音的输出用户或者语音内容而确定的音频帧对应的音素类别。

s604,通过第三神经网络模型提取样本语音流中每个音频帧的深度特征。

其中,在本实施例第三神经网络模型可以是基于cldnn(convolutional,longshort-termmemory,fullyconnecteddeepneuralnetworks,将cnn、lstm和dnn融合得到的网络)实现的声学模型。其中cnn层和lstm层的输出均可以进行批量归一化,已达到更快的收敛和更好的泛化。

具体地,计算机设备通过第三神经网络模型提取样本语音流中每个音频帧的深度特征。第三神经网络模型包括softmax层。计算机设备可以基于softmax层确定鲁棒特征向量元素属于每种音素类别的概率。

在一个实施例中,可以拼接以样本音频流中当前音频帧为中心的2w+1帧的上下文窗口中每个音频帧的深度特征,将拼接结果作为当前音频帧的深度特征。如此,能够获得反映上下文信息的深度特征,有助于提高第三神经网络模型的精确性。

s606,根据所有音素类别的音频帧对应的深度特征,确定样本语音流的中心向量。

s608,基于深度特征和中心向量确定每个音频帧的类间混淆衡量指数与类内距离惩罚指数之间的融合损失。

其中,中心向量用于描述目标类别中所有深度特征的中心。音频帧的类间混淆衡量指数是指用于表征样本语音流归属于目标类别的可能性的参数,能够反映不同目标类别之间的区分性。类间混淆衡量指数越小,表明类间区分性越强。类间混淆衡量指数可以通过欧几里得距离计算得到,也可以采用其他距离类型算法计算得到,比如角度距离等。

类内距离惩罚指数是指用于表征样本语音流的类内分布紧凑性的参数。通过类内距离的惩罚可以增强第三神经网络模型的分类性能,即通过类内分布紧凑来满足类内鉴别性能。类内距离惩罚指数越小,表明类内分布的紧凑性越强,进而可以获得类内鉴别性能的增强。类内距离惩罚指数可以通过中心损失行数实现,但也不局限于此,比如也可通过采用角度距离的contrastive损失函数、triplet损失函数、sphereface损失函数和cosface损失函数等实现。

具体地,计算机设备将类间混淆衡量指数与类内距离惩罚指数融合的方式是按照预设的权重因子,对类间混淆衡量指数与类内距离惩罚指数进行加权计算:

lcl=lce+λcllct

其中,lcl为融合损失,lce为类间混淆衡量指数,lct为类内距离惩罚指数,λcl为权重因子。

s610,基于融合损失对第三神经网络模型进行训练,得到语音识别模型。

具体地,计算机设备按照预设的深度学习优化算法确定目标损失函数产生的全局下降梯度。目标损失函数产生的全局下降梯度从语音识别模型依次反向传播至鲁棒表征模型和语音分离增强模型的网络各层:

ear系统中,基于denet网络的提取器会透过bilstm网络产生高维的嵌入特征矩阵v来预测适合目标语音的目标浮值掩蔽利用可以计算提取器输出的估计频谱和目标语音的增强频谱之间的均方误差mse,并产生针对目标语音的鲁棒特征,鲁棒特征能继续经过适配器和识别器来预测语音单元。为了让提取器的模型参数尽可能在准确估计目标语音频谱的同时减低语音识别的错误率,本申请以多任务联合训练的方式更新denet网络的参数,其中多任务联合损失函数(即目标损失函数)是语音分离任务的第一损失函数和语音识别的第二损失函数的加权组合。由于denet网络的前向过程同时能计算交叉熵和中心损失加权及频谱均方误差,使得能够以反向传播得到各损失函数在模型参数的梯度。在加入加权因子后,能够调整在多任务训练时语音分离任务的“重要性”。

本实施例中,基于中心损失能够学习和更新每个类别在深度特征空间的中心点,通过惩罚深度特征与其对应目标类别的中心点之间的类内距离,可以显著降低语音识别在未见声学环境下的错误率,有效提高了语音识别对噪声可变性的泛化能力,进而在干净语音条件下、训练已见声学环境以及未见声学环境下均可获得较低的错误率;使样本语音流的标准能够在新的声学环境下具有较好鲁棒性,即便在新的声学环境,遇到不同用户基于新的口音和背景噪声,也能够稳定可靠的完整语音识别。

在一个实施例中,基于深度特征和中心向量确定每个音频帧的类间混淆衡量指数与类内距离惩罚指数的融合损失包括:将深度特征输入交叉熵函数,计算得到各音频帧的类间混淆衡量指数;将深度特征和中心向量输入中心损失函数,计算得到每个音频帧的类内距离惩罚指数;将类间混淆衡量指数与类内距离惩罚指数进行融合运算,得到融合损失。

其中,交叉熵函数用于保证深度特征的类间区分性。交叉熵函数的计算公式可以如下:

其中,lce为类间混淆衡量指数,m为用于训练的样本语音流的批量大小,t为样本语音流中音频帧的帧数。为第三神经网络模型输出层进行softmax操作之后对第i个节点的输出,第三神经网络模型中有k个输出节点,代表k个输出类别。

其中,at为第三神经网络模型softmax层的前一层在第t音频帧时刻的输出;为softmax层的前一层第j个结点在第t音频帧时刻的输出,w为softmax层的权重矩阵,b为softmax层的偏置向量。

中心损失函数的计算公式可以如下:

其中,lct为类内距离惩罚指数;为第t帧音频帧的深度特征,即第三神经网络模型中倒数第二层在第t个音频帧时刻的输出;表示第kt类深度特征的中心向量,i为样本语音流的索引。在所进行的中心损失计算过程中,其目标是尽可能减小音频帧的深度特征相对其中心向量的距离,即类内距离ut-ckt越小越好。

具体地,计算机设备将交叉熵损失函数和中心损失函数进行融合,得到语音识别模型对应的第二损失函数。在一个实施例中,将交叉熵损失函数和中心损失函数融合的方式可以是按照预设的权重因子,对交叉熵损失函数和中心损失函数进行加权计算:

lcl=lce+λcllct

其中,lcl为第二损失函数,λcl为控制中心损失函数在第二损失函数中所占权重的超参数。对应的,将类间混淆衡量指数与类内距离惩罚指数融合的方式是按照预设的权重因子λcl,对类间混淆衡量指数与类内距离惩罚指数进行加权计算。

本实施例中,采用中心损失函数能够学习和更新每个类别在深度特征空间的中心点,通过惩罚深度特征与其对应类的中心点之间的距离,从而提高深度特征的区分能力。

在一个具体的实施例中,如图7所示,该语音识别模型训练方法具体包括以下步骤:

s702,对样本语音流进行傅里叶变换,得到每个音频帧的语音频谱和语音特征。

s704,基于第一神经网络模型对语音频谱进行语音分离和增强,得到估计频谱。

s706,基于第一神经网络模型将语音特征映射至嵌入空间,得到嵌入特征矩阵。

s708,根据语音频谱和语音特征确定理想掩蔽矩阵。

s710,基于预设的二元阈值矩阵对理想掩蔽矩阵中噪声元素进行过滤。

s712,根据嵌入特征矩阵及过滤了噪声元素的理想掩蔽矩阵,确定样本语音流对应的吸引子。

s714,通过计算嵌入特征矩阵中每个矩阵元素与吸引子的相似性,得到样本语音流的目标掩蔽矩阵。

s716,根据目标掩蔽矩阵确定样本语音流所对应的增强频谱。

s718,基于第一损失函数计算样本语音流对应的估计频谱与增强频谱之间的均方误差损失。

s720,根据均方误差损失对第一神经网络模型进行训练,得到语音分离增强模型。

s722,获取样本语音流及对应标注的音素类别。

s724,通过第三神经网络模型提取样本语音流中每个音频帧的深度特征。

s726,根据所有音素类别的音频帧对应的深度特征,确定样本语音流的中心向量。

s728,将深度特征输入交叉熵函数,计算得到各音频帧的类间混淆衡量指数。

s730,将深度特征和中心向量输入中心损失函数,计算得到每个音频帧的类内距离惩罚指数。

s732,将类间混淆衡量指数与类内距离惩罚指数进行融合运算,得到基于第二损失函数的融合损失。

s734,基于融合损失对第三神经网络模型进行训练,得到语音识别模型。

s736,获取语音分离增强模型的第一损失函数及语音识别模型的第二损失函数。

s738,获取第二神经网络模型。

s740,对第二神经网络模型进行非负约束处理,得到非负神经网络模型。

s742,获取用于对非负神经网络模型输出的声学特征进行听觉适配的微分模型。

s744,将微分模型与非负神经网络模型级联,得到中间模型。

s746,基于第二损失函数进行反向传播,以对桥接在语音分离增强模型和语音识别模型之间的中间模型进行训练,得到鲁棒表征模型。

s748,对第一损失函数和第二损失函数进行融合,得到目标损失函数。

s750,确定目标损失函数产生的全局下降梯度。

s752,根据全局下降梯度对语音分离增强模型、鲁棒表征模型及语音识别模型分别对应的模型参数进行迭代更新,直至获得目标损失函数的最小化损失值。

经鲁棒表征模块ψbilstm(·)连接前端的语音分离增强模型和后端的语音识别模型,使整个ear系统成为一个可以实现端到端反向传播的网络,并且由于模块化架构,整个ear系统的网络可以采用“课程表”训练方法(curriculumlearning),即基于后端语音识别模型的损失函数反向传播对鲁棒表征模型进行单独训练,然后端到端地对整个ear系统网络进行联合训练。由于可以在预训练的语音分离增强模型和语音识别模型基础上进行训练,采用“课程表”训练方法可以快速实现收敛。

上述语音识别模型训练方法,强大的网络结构以及“课程表”训练方式,使得基于本申请提供的模型训练方法训练得到的联合模型,学习能力极强,通过提取鲁棒有效的语音增强和语音分离表征来提高自动语音识别的性能,能够适应任何具有挑战性的复杂干扰声学环境。

图2、4、5、6和7为一个实施例中模型训练方法的流程示意图。应该理解的是,虽然图2、4、5、6和7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、4、5、6和7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

如图8所示,在一个实施例中,提供了一种语音识别方法。本实施例主要以该方法应用于计算机设备来举例说明,该计算机设备具体可以是上图中的终端110或者服务器120。终端110和服务器120均可单独用于执行本申请实施例中提供的语音识别方法。终端110和服务器120也可协同用于执行本申请实施例中提供的语音识别方法。参照图8,该语音识别方法具体包括如下步骤:

s802,获取目标语音流。

其中,目标语音流可以是在任一实际声学环境采集到的音频数据流。目标语音流可以预先采集并存储在计算机设备的,也可以是计算机设备动态采集得到的。比如,目标语音流可以是基于游戏应用采集的用户在游戏语音通话过程中产生的音频数据流。此时,目标语音流可能为包括游戏背景音乐和远端人声的回声干扰。

具体地,计算机设备获取目标语音流,并按照预设的采样频率在目标语音流中采集音频帧。每个音频帧的帧长以及相邻音频帧之间的帧移均可以根据需求自由设定。在一个具体的实施例中,计算机设备基于16khz的采样频率,25ms的帧长、10ms的帧移进行音频帧采集。

s804,基于语音分离增强模型提取目标语音流中每个音频帧的增强频谱。

其中,语音分离增强模型是一种神经网络模型,具体可以是基于理想比率掩模(idealratiomask,irm)的深度吸引子网络(deepattractornet,danet)和深度提取网络(deepextractornet,denet)简化得到的模型。在一个具体的实施例中,语音分离增强模型可以采用窥孔连接的四层bilstm,每层具有600个隐节点,最后一个bilstm层之后连接一个全连接层。

具体地,计算机设备可以批量对多个目标语音流进行短时傅里叶变换,得到每个目标语音流中的语音特征和语音频谱。计算机设备基于语音分离增强模型将批量目标语音流的语音特征映射至更高维的嵌入空间,在嵌入空间对语音频谱进行语音分离和增强,得到嵌入特征矩阵。计算机设备获取预存储的全局吸引子。在语音分离增强模型训练阶段,计算机设备将根据每次批量样本语音流计算出来的吸引子存储下来,并计算这些吸引子的均值,将该均值作为测试生产阶段的全局吸引子。计算机设备通过计算全局吸引子与目标语音流对应的嵌入特征矩阵中每个矩阵元素之间的相似性,得到目标语音流的目标掩蔽矩阵。基于目标掩蔽矩阵以及嵌入特征矩阵,可以提取得到目标语音流的增强频谱。

s806,基于鲁棒表征模型对增强频谱进行听觉匹配,得到鲁棒特征。

其中,鲁棒表征模型是桥接在前端语音分离增强模型和后端语音识别模型之间的一种神经网络模型,具体可以是基于recurrent模型架构的cnn、bilstm等,有能力适应来自自下而上和自上而下的时间动态影响。在一个具体实施例中,鲁棒表征模型可以是窥孔连接的两层bilstm,每层具有600个隐节点。鲁棒特征是用于对前端的语音分离增强模型输出的增强频谱进行转换,得到的一种中间过渡特征,该中间过渡特征作为后端语音识别模型的输入。

具体地,计算机设备基于鲁棒表征模型在增强频谱的声学特征。为了贴合人耳听觉习惯,鲁棒表征模型对增强频谱的声学特征进行听觉匹配。计算机设备基于鲁棒表征模型对声学特征行非负约束处理,对非负约束处理后的声学特征进行求对数和差分等微分运算,得到鲁棒特征。比如,对于频谱幅度差值非常大的高幅值语音信号和低幅值语音信号,人耳所能感受到的差异可能并不如幅度差值这么明显。基于对数模型对声学特征的特征向量元素进行求对数运算,能够弱化赋值之间的差异,使其声学特征不同向量元素之间的差异更好的反应人耳实际所能感受出的信号差异。人耳对语音信号中的变化比较敏感。基于差分模型对声学特征的特征向量元素进行差分运算,差分的结果反映了声学特征不同向量元素之间的变化。

s808,基于语音识别模型对鲁棒特征进行识别,得到每个音频帧对应的音素;其中,语音分离增强模型、鲁棒表征模型及语音识别模型联合训练得到。

其中,语音识别模型以及上文提及的语音分离增强模型、鲁棒表征模型可以是预先联合训练得到的。前端语音分离增强模型和后端语音识别模型可以预先训练好的。计算机设备获取语音分离增强模型的第一损失函数及语音识别模型的第二损失函数,基于第二损失函数进行反向传播,以对桥接在语音分离增强模型和语音识别模型之间的中间模型进行训练,得到鲁棒表征模型。计算机设备进一步对第一损失函数和第二损失函数进行融合,基于融合得到的目标损失函数对语音分离增强模型、鲁棒表征模型及语音识别模型进行联合训练,在满足预设收敛条件时结束训练。

具体地,计算机设备将鲁棒特征输入语音识别模型,得到目标语音流对应的音素。在本申请的实施例中,语音识别模型能够识别的音素类别约2万种。语音识别模型对输入的批量目标语音流的鲁棒特征进行处理,输出一个约2万维的音素向量。鲁棒特征向量元素和音素向量元素之间存在对应关系。音素向量记录了鲁棒特征向量元素属于每种音素类别的概率,如此可以确定每个鲁棒特征向量元素对应最大概率音素类别对应的音素串,从而实现从音素级别对目标语音流进行语音识别。

上述语音识别方法,提出了一种新型的在前端语音分离增强模型和后端语音识别模型之间引入鲁棒表征模型的端到端网络架构,这种架构通过引入适当的中间过渡表征学习技术,很好的弥合了以人为导向的语音分离任务和以机器为导向的语音识别任务之间的差异;对端到端的网络模型进行联合训练,使得网络架构中每个单独的模型均能够综合学习来自复杂声学环境语音信号中的干扰特征,从而可以保证全局的语音处理任务的性能,提高语音识别准确性;此外,由于网路架构中的每个模型支持灵活独立选择,单独每个模型均可实现最优配置,而无需妥协单独任一模型,从而可以同时兼顾局部的每个语音处理任务的性能,提高语音客观可懂度。

在一个实施例中,语音分离增强模型包括第一神经网络模型;基于语音分离增强模型提取目标语音流中每个音频帧的增强频谱包括:基于第一神经网络模型提取目标语音流中每个音频帧的嵌入特征矩阵;根据嵌入特征矩阵及预设理想掩蔽矩阵,确定目标语音流对应的吸引子;通过计算嵌入特征矩阵中每个矩阵元素与吸引子的相似性,得到目标语音流的目标掩蔽矩阵;根据目标掩蔽矩阵确定目标语音流中每个音频帧所对应的增强频谱。

语音分离增强模型可以是基于第一神经网络模型训练得到的。基于语音分离增强模型提取目标语音流中每个音频帧的增强频谱的过程可参阅上述步骤s402-s410的描述,在此不再赘述。

在一个实施例中,鲁棒表征模型包括第二神经网络模型和微分模型;基于鲁棒表征模型对增强频谱进行听觉匹配,得到鲁棒特征包括:基于第二神经网络模型在增强频谱中提取声学特征;对声学特征进行非负约束处理,得到非负的声学特征;通过微分模型对非负的声学特征进行微分运算,得到与人耳听觉习惯相匹配的鲁棒特征。

中间模型可以是第二神经网络模型和微分模型拼接得到的,对中间模型训练得到鲁棒表征模型。基于鲁棒表征模型提取鲁棒特征可以参考上述步骤s502-s506的描述,在此不再赘述。

在一个实施例中,对来自“受背景音乐干扰”和“受其他说话人干扰”两种声学环境的语音,在五种不同snr信噪比条件下(0db,5db,10db,15db和20db),对基于不同语音识别方法的字错误率(wer)进行测试对比。测试结果可参考图9a所示,基于本申请提出的ear系统进行语音识别,无论是在单任务λss=0状态下,还是在多任务λss≠0(如λss=0.1)下,其字错误率一致地优于其他语音识别系统,如基于干净语音或者有干扰语音训练的语音识别模型asr,语音分离增强模型ss及语音识别模型asr的级联系统。

参考图9b,图9b示出了一个实施例中在单通道多说话人语音识别任务中在不同snr信噪比条件下不同语音识别系统的性能比较示意图。如图9所示,在不同的多任务训练权重下,本申请提出的ear系统相比直接将语音分离增强模型作为语音识别模型预处理步骤进行级联方式,无论短时客观可懂度stoi还是字错误率wer(%)均表现优良,即ear系统可显著提高以机器为导向的语音清晰度(wer)的同时,还能保持反映人类听觉方面的语音可懂度(stoi),可以达到和denet作为专用ss模型的性能相当或甚至更好。

本申请首次揭示了引入适当的中间过渡表征学习在弥合以人为导向和以机器为导向的语音处理任务之间差异过程中的重要性,可以同时保证前端语音分离局部任务和后端语音识别局部任务的最优性能(人的主观听觉可懂度)和全局任务的最优性能(机器的识别准确率指标方面的性能)。比如,在游戏实时语音的应用场景,在组队语音通话时,既有近端讲话的人声也有游戏过程中手机播放的背景音,本文提出的ear系统由于基于鲁棒表征模型更好的进行了噪声约束,可以解决用户在游戏语音通话过程中游戏背景音和远端人声的回声干扰。背景音回声消除保证了用户之间语音通话的质量。除了性能的显著提升外,本申请所提出的ear系统框架具有高灵活性:允许灵活地集成任何先进的语音分离增强模型和语音识别模型替换到ear系统框架中的相应模块,并且我们提出的端到端可训练的框架不会以任何单个模块性能受损作为代价。

在一个具体的实施例中,如图10所示,该语音识别方法具体包括以下步骤:

s1002,获取目标语音流。

s1004,基于语音分离增强模型提取目标语音流中每个音频帧的嵌入特征矩阵。

s1006,根据嵌入特征矩阵及预设理想掩蔽矩阵,确定目标语音流对应的吸引子。

s1008,通过计算嵌入特征矩阵中每个矩阵元素与吸引子的相似性,得到目标语音流的目标掩蔽矩阵。

s1010,根据目标掩蔽矩阵确定目标语音流中每个音频帧所对应的增强频谱。

s1012,获取鲁棒表征模型;鲁棒表征模型包括第二神经网络模型和微分模型。

s1014,基于第二神经网络模型在增强频谱中提取声学特征。

s1016,对声学特征进行非负约束处理,得到非负的声学特征。

s1018,通过微分模型对非负的声学特征进行微分运算,得到与人耳听觉习惯相匹配的鲁棒特征。

s1020,基于语音识别模型对鲁棒特征进行识别,得到每个音频帧对应的音素;其中,语音分离增强模型、鲁棒表征模型及语音识别模型联合训练得到。

上述语音识别方法,提出了一种新型的在前端语音分离增强模型和后端语音识别模型之间引入鲁棒表征模型的端到端网络架构,这种架构通过引入适当的中间过渡表征学习技术,很好的弥合了以人为导向的语音分离任务和以机器为导向的语音识别任务之间的差异;对端到端的网络模型进行联合训练,使得网络架构中每个单独的模型均能够综合学习来自复杂声学环境语音信号中的干扰特征,从而可以保证全局的语音处理任务的性能,提高语音识别准确性;此外,由于网路架构中的每个模型支持灵活独立选择,单独每个模型均可实现最优配置,而无需妥协单独任一模型,从而可以同时兼顾局部的每个语音处理任务的性能,提高语音客观可懂度。

图8和10为一个实施例中语音识别方法的流程示意图。应该理解的是,虽然图8和10的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图8和10中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

如图11所示,在一个实施例中,提供了语音识别模型训练装置1100,包括中间表征学习模块1102、损失融合模块1104和联合训练模块1106,其中,

中间表征学习模块1102,用于获取语音分离增强模型的第一损失函数及语音识别模型的第二损失函数;基于第二损失函数进行反向传播,以对桥接在语音分离增强模型和语音识别模型之间的中间模型进行训练,得到鲁棒表征模型。

损失融合模块1104,用于对第一损失函数和第二损失函数进行融合,得到目标损失函数。

联合训练模块1106,用于基于目标损失函数对语音分离增强模型、鲁棒表征模型及语音识别模型进行联合训练,在满足预设收敛条件时结束训练。

在一个实施例中,如图12所示,上述语音识别模型训练装置1100还包括语音分离增强模型预训练模块1108,用于基于第一神经网络模型提取样本语音流的估计频谱和嵌入特征矩阵;根据嵌入特征矩阵及预设理想掩蔽矩阵,确定样本语音流对应的吸引子;通过计算嵌入特征矩阵中每个矩阵元素与吸引子的相似性,得到样本语音流的目标掩蔽矩阵;根据目标掩蔽矩阵确定样本语音流所对应的增强频谱;基于样本语音流对应的估计频谱与增强频谱之间的均方误差损失对第一神经网络模型进行训练,得到语音分离增强模型。

在一个实施例中,语音分离增强模型预训练模块1108还用于对样本语音流进行傅里叶变换,得到每个音频帧的语音频谱和语音特征;基于第一神经网络模型对语音频谱进行语音分离和增强,得到估计频谱;基于第一神经网络模型将语音特征映射至嵌入空间,得到嵌入特征矩阵。

在一个实施例中,语音分离增强模型预训练模块1108还用于根据语音频谱和语音特征确定理想掩蔽矩阵;基于预设的二元阈值矩阵对理想掩蔽矩阵中噪声元素进行过滤;根据嵌入特征矩阵及过滤了噪声元素的理想掩蔽矩阵,确定样本语音流对应的吸引子。

在一个实施例中,如图12所示,上述语音识别模型训练装置1100还包括中间模型构建模块1110,用于获取第二神经网络模型;对第二神经网络模型进行非负约束处理,得到非负神经网络模型;获取用于对非负神经网络模型输出的声学特征进行听觉适配的微分模型;将微分模型与非负神经网络模型级联,得到中间模型。

在一个实施例中,中间模型构建模块1110还用于获取用于对声学特征对应特征向量进行对数运算的对数模型;获取用于对声学特征对应特征向量进行差分运算的差分模型;根据对数模型与差分模型构建微分模型。

在一个实施例中,如图12所示,上述语音识别模型训练装置1100还包括语音识别模型预训练模块1112,用于获取样本语音流及对应标注的音素类别;通过第三神经网络模型提取样本语音流中每个音频帧的深度特征;根据所有音素类别的音频帧对应的深度特征,确定样本语音流的中心向量;基于深度特征和中心向量确定每个音频帧的类间混淆衡量指数与类内距离惩罚指数之间的融合损失;基于融合损失对第三神经网络模型进行训练,得到语音识别模型。

在一个实施例中,语音识别模型预训练模块1112还用于将深度特征输入交叉熵函数,计算得到各音频帧的类间混淆衡量指数;将深度特征和中心向量输入中心损失函数,计算得到每个音频帧的类内距离惩罚指数;将类间混淆衡量指数与类内距离惩罚指数进行融合运算,得到融合损失。

在一个实施例中,联合训练模块1106还用于确定目标损失函数产生的全局下降梯度;根据全局下降梯度对语音分离增强模型、鲁棒表征模型及语音识别模型分别对应的模型参数进行迭代更新,直至获得目标损失函数的最小化损失值。

上述语音识别模型训练装置,提出了一种新型的在前端语音分离增强模型和后端语音识别模型之间引入用于中间过渡的鲁棒表征模型的端到端网络架构,这种架构通过引入适当的中间过渡表征学习技术,很好的弥合了以人为导向的语音分离任务和以机器为导向的语音识别任务之间的差异;在这种网络架构中,中间模型借助后端语音识别模型的第二损失函数反向传播完成训练,而语音分离增强模型和语音识别模型可以是预选训练好的,如此可以在较少的迭代训练次数后即可达到收敛;基于前后端模型分别对应损失函数的组合对端到端的网络模型进行联合训练,使得网络架构中每个单独的模型均能够综合学习来自复杂声学环境语音信号中的干扰特征,从而可以保证全局的语音处理任务的性能,提高语音识别准确性;此外,由于网路架构中的每个模型支持灵活独立选择,单独每个模型均可实现最优配置,而无需妥协单独任一模型,从而可以同时兼顾局部的每个语音处理任务的性能,提高语音客观可懂度。

如图13所示,在一个实施例中,提供了语音识别装置1300,包括语音分离增强模块1302、中间表征过渡模块1304和语音识别模块1306,其中,

语音分离增强模块1302,用于获取目标语音流;基于语音分离增强模型提取目标语音流中每个音频帧的增强频谱。

中间表征过渡模块1304,用于基于鲁棒表征模型对增强频谱进行听觉匹配,得到鲁棒特征。

语音识别模块1306,用于基于语音识别模型对鲁棒特征进行识别,得到每个音频帧对应的音素;其中,语音分离增强模型、鲁棒表征模型及语音识别模型联合训练得到。

在一个实施例中,语音分离增强模型包括第一神经网络模型;语音分离增强模块1302还用于基于第一神经网络模型提取目标语音流中每个音频帧的嵌入特征矩阵;根据嵌入特征矩阵及预设理想掩蔽矩阵,确定目标语音流对应的吸引子;通过计算嵌入特征矩阵中每个矩阵元素与吸引子的相似性,得到目标语音流的目标掩蔽矩阵;根据目标掩蔽矩阵确定目标语音流中每个音频帧所对应的增强频谱。

在一个实施例中,鲁棒表征模型包括第二神经网络模型和微分模型;语音识别模块1306还用于基于第二神经网络模型在增强频谱中提取声学特征;对声学特征进行非负约束处理,得到非负的声学特征;通过微分模型对非负的声学特征进行微分运算,得到与人耳听觉习惯相匹配的鲁棒特征。

上述语音识别装置,提出了一种新型的在前端语音分离增强模型和后端语音识别模型之间引入鲁棒表征模型的端到端网络架构,这种架构通过引入适当的中间过渡表征学习技术,很好的弥合了以人为导向的语音分离任务和以机器为导向的语音识别任务之间的差异;对端到端的网络模型进行联合训练,使得网络架构中每个单独的模型均能够综合学习来自复杂声学环境语音信号中的干扰特征,从而可以保证全局的语音处理任务的性能,提高语音识别准确性;此外,由于网路架构中的每个模型支持灵活独立选择,单独每个模型均可实现最优配置,而无需妥协单独任一模型,从而可以同时兼顾局部的每个语音处理任务的性能,提高语音客观可懂度。

图14示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110或服务器120。如图14所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现模型训练方法及语音识别方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行模型训练方法及语音识别方法。

本领域技术人员可以理解,图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,本申请提供的模型训练装置可以实现为一种计算机程序的形式,计算机程序可在如图14所示的计算机设备上运行。计算机设备的存储器中可存储组成该模型训练装置的各个程序模块,比如,图11所示的中间表征学习模块、损失融合模块和联合训练模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的模型训练方法中的步骤。

例如,图14所示的计算机设备可以通过如图11所示的模型训练装置中的中间表征学习模块执行步骤s202和s204。计算机设备可通过损失融合模块执行步骤s206。计算机设备可通过联合训练模块执行步骤s208。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述模型训练方法的步骤。此处模型训练方法的步骤可以是上述各个实施例的模型训练方法中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述模型训练方法的步骤。此处模型训练方法的步骤可以是上述各个实施例的模型训练方法中的步骤。

在一个实施例中,本申请提供的语音识别装置可以实现为一种计算机程序的形式,计算机程序可在如图14所示的计算机设备上运行。计算机设备的存储器中可存储组成该语音识别装置的各个程序模块,比如,图13所示的语音分离增强模块、中间表征过渡模块和语音识别模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的语音识别方法中的步骤。

例如,图14所示的计算机设备可以通过如图13所示的语音识别装置中的语音分离增强模块执行步骤s802和s804。计算机设备可通过中间表征过渡模块执行步骤s806。计算机设备可通过语音识别模块执行步骤s808。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述语音识别方法的步骤。此处语音识别方法的步骤可以是上述各个实施例的语音识别方法中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述语音识别方法的步骤。此处语音识别方法的步骤可以是上述各个实施例的语音识别方法中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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