一种基于深度神经网络的多类声学特征整合方法和系统转让专利

申请号 : CN202010073244.8

文献号 : CN111276131A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李琳李铮洪青阳

申请人 : 厦门大学

摘要 :

本申请公开一种基于深度神经网络的多类声学特征整合方法和系统。包括利用已知语音数据训练并建立基于深度神经网络的多类声学特征整合模型,以确定或更新多类声学特征整合模型的网络参数;将从待测语音中提取的多类声学特征输入已训练好的具有网络参数的多类声学特征整合模型中,并提取帧级别深度整合特征向量或段级别深度整合特征向量。该方案支持语音识别、语音唤醒、语种识别、说话人识别、防录音攻击欺骗等语音任务中多种声学特征整合向量的提取,可根据实际语音任务充分挖掘多种声学特征的内在联系,用于改善语音任务应用的识别精准度和稳定性。

权利要求 :

1.一种基于深度神经网络的多类声学特征整合方法,其特征在于,所述方法包括:

S1:利用已知语音数据训练并建立基于深度神经网络的多类声学特征整合模型,以确定或更新所述多类声学特征整合模型的网络参数;

S2:将从待测语音中提取的多类声学特征输入已训练好的具有所述网络参数的所述多类声学特征整合模型中,并提取帧级别深度整合特征向量或段级别深度整合特征向量。

2.根据权利要求1所述的一种基于深度神经网络的多类声学特征整合方法,其特征在于,所述S1步骤中的所述深度神经网络包括至少两个浅层特征网络分支、支持多个声学特征的特征整合网络、至少两个全连接的隐藏层和一个面向实际语音任务的输出层。

3.根据权利要求2所述的一种基于深度神经网络的多类声学特征整合方法,其特征在于,所述S1步骤具体包括如下子步骤:S11:从所述已知语音数据中的每一个语音样本中提取至少两种不同类型的帧级别声学特征;

S12:将所述至少两种不同类型的所述帧级别声学特征分别输入到每种类型所对应的浅层特征网络分支,获得每个所述浅层特征网络分支输出的所述至少两种不同类型的所述帧级别声学特征对应的帧级别浅层特征向量;

S13:结合注意力机制,将所述帧级别浅层特征向量输入所述特征整合网络,获得一个帧级别深度整合特征向量;

S14:将所述帧级别深度特征整合向量依次输入到所述隐藏层和所述输出层,根据语音任务计算损失函数后,反梯度传播更新所有深度神经网络的网络参数。

4.根据权利要求3所述的一种基于深度神经网络的多类声学特征整合方法,其特征在于,所述S14步骤还可包括:将所述帧级别深度整合特征向量输入统计池化层,以形成段级别深度整合特征向量,其中,所述统计池化层被设置在所述特征整合网络与所述两个全连接隐藏层之间,将所述段级别深度整合特征向量输入到所述隐藏层并传输到所述输出层,根据所述语音任务计算损失函数后,反向梯度传播以更新所述网络参数。

5.根据权利要求3所述的一种基于深度神经网络的多类声学特征整合方法,其特征在于,所述S13中所述帧级别深度整合特征向量的获得方法具体包括:针对至少两种所述帧级别浅层特征向量通过注意力机制进行重要性权重计算,并且在整合层进行加权整合处理后进行降维处理或规整处理,其中,所述特征整合网络由一个基于注意力机制的全连接层、一个整合层和一个全连接层组成。

6.根据权利要求5所述的一种基于深度神经网络的多类声学特征整合方法,其特征在于,所述加权整合处理包括:通过将所述帧级别浅层特征向量和对应的所述重要性权重相乘,并进行拼接或相加处理,拼接处理的具体计算公式如下:I=Concat(a1F1,a2F2,…,aNFN)

其中,I表示所述帧级别初步整合特征向量,函数Concat()表示拼接操作,F1,F2,…,FN分别表示所述帧级别浅层特征向量,a1,a2,…,aN分别表示所述对应的重要性权重,N表示为所述帧级别声学特征的数量;

相加处理的具体计算公式如下:

其中,I表示所述帧级别初步整合特征向量,Fi表示所述帧级别浅层特征向量,ai分别表示所述对应的重要性权重,N表示为所述帧级别声学特征的数量。

7.根据权利要求3所述的一种基于深度神经网络的多类声学特征整合方法,其特征在于,所述S2步骤中,根据实际语音任务,将所述待测语音经过已训练好网络参数的所述多类声学特征整合模型,在所述特征整合网络输出所述待测语音的帧级别深度整合特征向量。

8.根据权利要求4所述的一种基于深度神经网络的多类声学特征整合方法,其特征在于,将所述待测语音经过已训练好网络参数的所述多类声学特征整合模型,通过所述统计池化层输出所述待测语音的段级别深度整合特征向量。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-8中任一所述的方法。

10.一种基于深度神经网络的多类声学特征整合系统,其特征在于,所述系统包括:

声学特征提取单元:配置用于将待测语音进行预处理并提取所述待测语音的至少两种不同类型的帧级别声学特征;

浅层特征单元:配置用于不同类型的浅层特征网络分支分别对应输入所述待测语音的至少两种不同类型的帧级别声学特征,输出每个所述浅层特征网络分支的所述待测语音的至少两种不同类型的帧级别声学特征对应的帧级别浅层特征向量;

特征整合单元:配置用于在一个特征整合网络,结合注意力机制,输入所述待测语音的至少两种不同类型的帧级别浅层特征向量,输出一个所述待测语音的帧级别深度整合特征向量;

语音任务处理单元包括帧级别语音任务处理单元和段级别语音任务处理单元,其中,所述帧级别语音任务处理单元配置用于在隐藏层中输入所述待测语音的帧级别深度整合特征向量,进行神经网络计算,完成特定帧级别语音任务;所述段级别语音任务处理单元配置用于在统计池化层中将所述待测语音的帧级别深度整合特征向量汇聚成段级别深度整合特征向量后输入所述隐藏层进行神经网络计算,完成特定段级别语音任务。

说明书 :

一种基于深度神经网络的多类声学特征整合方法和系统

技术领域

[0001] 本申请涉及语音识别技术领域,具体涉及一种基于深度神经网络的多类声学特征整合方法和系统。

背景技术

[0002] 随着计算机技术的发展和通讯技术的发展,近年来,越来越多语音应用和技术被提出。常见的语音任务包括:语音识别、语音唤醒、语种识别、说话人识别、防录音攻击欺骗等。这些语音任务在很多领域里有着广泛且重要的应用,例如消费者终端的手机语音助手、智能音箱等,以及安全领域的设备声纹锁等。
[0003] 一方面,语音任务应用的工作环境相对复杂,在实际使用中,语音的识别率较低,同时受距离、位置、说话人心理和生理等因素影响,此外,为不同的语音任务配置最合适的声学特征也存在困难,使得现阶段的语音任务应用存在稳定性不强和自适应性弱的问题。
[0004] 另一方面,语音任务应用仅从一段语音中提取某一特定的声学特征作为语音任务的输入数据,虽然声学特征是借由声学领域的专业知识和实验设计的,但是各种语音任务面对复杂多变的使用场景,仅采用单一的、人为设计的声学特征作为语音任务处理系统的输入数据,会存在对语音任务未充分表达的瓶颈问题,进而影响识别精准度和系统鲁棒性,因此,如何挖掘以任务为驱动的语音最本质的特征表达,以训练出高精准度和高稳定性的语音任务模型成为亟需解决的问题。

发明内容

[0005] 本申请的目的在于提出了一种基于深度神经网络的多类声学特征整合方法和系统,通过语音任务中多种声学特征整合向量的提取,根据实际语音任务充分挖掘多种声学特征的内在联系,用于改善语音任务应用的识别精准度和稳定性。
[0006] 第一方面,本申请实施例提供了一种基于深度神经网络的多类声学特征整合方法,该方法包括:
[0007] S1:利用已知语音数据训练并建立基于深度神经网络的多类声学特征整合模型,以确定或更新多类声学特征整合模型的网络参数;
[0008] S2:将从待测语音中提取的多类声学特征输入已训练好的具有网络参数的多类声学特征整合模型中,并提取帧级别深度整合特征向量或段级别深度整合特征向量。
[0009] 在该方法中,利用不同类型的多类帧级别声学特征之间的差异性和互补性,结合具体语音任务训练出具有相关网络参数的多类声学特征整合模型,利用训练出来的多类声学特征整合模型,高精准性和高稳定性地完成特定语音任务。
[0010] 在一些具体实施例中,S1步骤中的深度神经网络包括至少两个浅层特征网络分支、支持多个声学特征的特征整合网络、至少两个全连接的隐藏层和一个面向实际语音任务的输出层。基于神经网络的各个网络结构,实现多类型声学特征整合模型的神经网络结构的构建。
[0011] 在一些具体实施例中,S1步骤具体包括如下子步骤:
[0012] S11:从已知语音数据中的每一个语音样本中提取至少两种不同类型的帧级别声学特征;
[0013] S12:将至少两种不同类型的帧级别声学特征分别输入到每种类型所对应的浅层特征网络分支,获得每个浅层特征网络分支输出的至少两种不同类型的帧级别声学特征对应的帧级别浅层特征向量;
[0014] S13:结合注意力机制,将帧级别浅层特征向量输入特征整合网络,获得一个帧级别深度整合特征向量;
[0015] S14:将帧级别深度特征整合向量依次输入到隐藏层并传输到输出层,根据语音任务计算损失函数后,反梯度传播更新所有深度神经网络的网络参数。
[0016] 在该方法中,通过提取语音样本中的多个不同类型的帧级别声学特征,依次经过浅层特征网络分支、特征整合网络和语音任务处理步骤,获得所有深度神经网络的网络参数,完成多类声学特征整合模型中具体模型参数的确定。
[0017] 在一些具体实施例中,S14步骤还可包括:将帧级别深度整合特征向量输入统计池化层,以形成段级别深度整合特征向量,其中,统计池化层被设置在特征整合网络与两个全连接隐藏层之间,将段级别深度整合特征向量输入到隐藏层并传输到输出层,根据语音任务计算损失函数后,反向梯度传播以更新网络参数。当为段级别语音任务时,在步骤S13后将帧级别浅层特征向量输入统计池化层实现帧级别到段级别的转换,输出段级别深度整合特征向量。
[0018] 在一些具体实施例中,S13中帧级别深度整合特征向量的获得方法具体包括:针对至少两种帧级别浅层特征向量通过注意力机制进行重要性权重计算,并且在整合层进行加权整合处理后进行降维处理或规整处理,其中,特征整合网络由一个基于注意力机制的全连接层、一个整合层和一个全连接层组成。通过降维处理或规整处理使得帧级别初步整合特征向量形成帧级别深度整合特征向量。
[0019] 在一些具体实施例中,加权整合处理包括:通过将帧级别浅层特征向量和对应的重要性权重相乘,并进行拼接或相加处理,拼接处理的具体计算公式如下:
[0020] I=Concat(a1F1,a2F2,...,aNFN)
[0021] 其中,I表示为帧级别初步整合特征向量,函数Concat()表示拼接操作,F1,F2,...,FN分别表示帧级别浅层特征向量,a1,a2,...,aN分别表示对应的重要性权重,N表示为帧级别声学特征的数量。
[0022] 相加处理的具体计算公式如下:
[0023]
[0024] 其中,I表示帧级别初步整合特征向量,Fi表示帧级别浅层特征向量,ai分别表示对应的重要性权重,N表示为帧级别声学特征的数量。
[0025] 在一些具体实施例中,S2步骤中,根据实际语音任务,将待测语音经过已训练好网络参数的多类声学特征整合模型,在特征整合网络输出待测语音的帧级别深度整合特征向量。帧级别深度整合特征向量的输出适用于帧级别语音任务的测试要求。
[0026] 在一些具体实施例中,将待测语音经过已训练好网络参数的多类声学特征整合模型,通过统计池化层输出待测语音的段级别深度整合特征向量。段级别深度整合特征向量的输出适用于段级别语音任务的测试要求。
[0027] 第二方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述实施例的方法。
[0028] 第三方面,本申请实施例提供了基于深度神经网络的多类声学特征整合系统,该系统包括:
[0029] 声学特征提取单元:配置用于将待测语音进行预处理并提取待测语音的至少两种不同类型的帧级别声学特征;
[0030] 浅层特征单元:配置用于不同类型的浅层特征网络分支分别对应输入待测语音的至少两种不同类型的帧级别声学特征,输出每个浅层特征网络分支的待测语音的至少两种不同类型的帧级别声学特征对应的帧级别浅层特征向量;
[0031] 特征整合单元:配置用于在一个特征整合网络,结合注意力机制,输入待测语音的至少两种不同类型的帧级别浅层特征向量,输出一个待测语音的帧级别深度整合特征向量;
[0032] 语音任务处理单元包括帧级别语音任务处理单元和段级别语音任务处理单元,其中,帧级别语音任务处理单元配置用于在隐藏层中输入待测语音的帧级别深度整合特征向量,进行神经网络计算,完成特定的帧级别语音任务;段级别语音任务处理单元配置用于在统计池化层中将待测语音的帧级别深度整合特征向量汇聚成段级别深度整合特征向量后输入隐藏层进行神经网络计算,完成特定的段级别语音任务。
[0033] 本申请提供的一种基于深度神经网络的多类声学特征整合方法和系统,根据具体语音任务,构建具有最优网络参数的多类声学特征整合模型,利用构建好的多类声学特征整合模型获取帧级别深度整合特征向量或段级别深度整合特征向量,将帧级别/段级别深度整合特征向量根据具体语音任务进行神经网络处理,最后完成特定语音任务。其中,多类声学特征整合模型的构建通过利用帧级别声学特征提取步骤、帧级别浅层特征向量获取步骤和帧级别/段级别深度整合特征向量获取步骤,根据语音任务计算损失函数后,反梯度传播更新所有深度神经网络的网络参数。本方案支持语音识别、语音唤醒、语种识别、说话人识别、防录音攻击欺骗等语音任务中多种声学特征整合向量的提取,可根据实际语音任务充分挖掘多种声学特征的内在联系。充分利用不同声学特征之间的差异性和互补性,将声学特征整合过程(Integration Process)融合到整个深度神经网络中优化,从而提高帧级别或段级别深度整合特征向量与语音任务的匹配性,提高语音任务处理系统的性能,可改善实际语音任务应用的精准度和鲁棒性。

附图说明

[0034] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0035] 图1是根据本申请实施例中的深度神经网络的结构示意图;
[0036] 图2是根据本申请实施例中的基于深度神经网络的多类声学特征整合模型的整体示意性流程图;
[0037] 图3是根据本申请实施例中的基于深度神经网络的多类声学特征整合模型的网络参数训练流程图;
[0038] 图4是根据本申请实施例中的基于深度神经网络的多类声学特征整合模型的浅层特征网络分支训练流程图;
[0039] 图5是根据本申请实施例中的基于深度神经网络的多类声学特征整合模型的深度神经网络训练流程图;
[0040] 图6是根据本申请实施例中的基于深度神经网络的多类声学特征整合中模型的语音任务处理训练流程图;
[0041] 图7是根据本申请实施例中的利用深度神经网络的多类声学特征整合模型处理段级别语音任务的网络结构图;
[0042] 图8是根据本申请实施例中的利用深度神经网络的多类声学特征整合模型处理帧级别语音任务的网络结构图;
[0043] 图9是根据本申请实施例中的一种基于深度神经网络的多类声学特征整合系统的示意性结构框图;
[0044] 图10适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。

具体实施方式

[0045] 下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
[0046] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0047] 参考图1和图2,图1示出了根据本申请实施例中的深度神经网络的结构示意图,图2示出了根据本申请实施例中的基于深度神经网络的多类声学特征整合模型的整体示意性流程图。如图所示,本发明中的多类声学特征整合模型的深度神经网络包括至少两个浅层特征网络分支101、一个特征整合网络102、统计池化层103、全连接层104和输出层105。多个浅层特征网络分支101与一个特征整合网络102连接,特征整合网络102可选地与全连接层
104连接后与输出层105连接,或者与统计池化层103连接后,与全连接层104连接,再与输出层105连接。首先将已知语音数据中的语音样本进行分帧预处理步骤后获得不同类型的帧级别声学特征1和帧级别声学特征2,并分别输入对应的浅层特征网络分支101进行神经网络非线性运算处理,获得帧级别浅层特征向量,并输入特征整合网络102中结合注意力机制神经网络获得重要性权重后进行加权整合处理,获得帧级别深度整合特征向量,然后根据具体的语音任务的要求,判断是否需要将帧级别深度整合特征转换成段级别深度整合特征,若“是”,则将帧级别深度整合特征向量输入统计池化层103进行汇聚成段级别深度整合特征向量后,通过全连接层104和输出层105输出;若“否”,则直接将帧级别深度整合特征向量通过全连接层104和输出层105输出。最后根据具体的语音任务计算损失函数后,反向梯度传播以更新网络参数。
[0048] 在一些具体的实施例中,神经网络可选用但不限于:深度神经网络(DNN)、卷积神经网络(CNN)、循环神经网络(RNN)、时延神经网络(TDNN)、残差神经网络(ResNet)等。
[0049] 图3示出了根据本申请实施例中的基于深度神经网络的多类声学特征整合模型的网络参数训练流程图。如图3所示,该方法包括帧级别声学特征,帧级别浅层特征向量、帧级别深度整合特征向量和语音任务处理的步骤。
[0050] 在步骤S11中:从已知语音数据中的每一个语音样本中提取至少两种不同类型的帧级别声学特征。
[0051] 在该步骤中,用于从已知语音数据中提取多个不同类型的帧级别声学特征。帧级别声学特征可以根据具体语音任务选择的适合的类型。目前常见的有梅尔滤波器组特征(FBank)、梅尔倒谱系数特征(MFCC)、感知线性预测特征(PLP)、语谱图特征(spectrogram)等声学特征。
[0052] 在一些具体的实施例中,当语音任务为语音识别和语音唤醒时,常用梅尔滤波器组特征(FBank)和感知线性预测特征(PLP);当语音任务为语种识别时,常用梅尔滤波器组特征(FBank)和感知线性预测特征(PLP);当语音任务为识别说话人时,常用梅尔倒谱系数特征(MFCC)和感知线性预测特征(PLP);当语音任务为防录音攻击欺骗任务时,常用梅尔滤波器组特征(FBank)和语谱图特征(Spectrogram)。提取多个不同类型的帧级别声学特征以便后续步骤中根据具体语音任务进行相关操作,避免使用单一的声学特征造成语音任务应用精准度不高的问题。
[0053] 在一些具体实施例中,利用已知语音数据中的语音样本提取不同类型帧级别声学特征前,需要对语音样本进行预处理步骤,分帧是预处理的其中一个步骤,针对语音样本分帧处理中的具体帧长和帧移参数应当根据具体的语音任务而定。
[0054] 在一些优选的实施例中,当语音任务为识别说话人时,可设置帧长为25毫秒,帧移为10毫秒。
[0055] 在一些具体的实施例中,根据语音任务的需要,以及具体声学特征的性质,预处理步骤还可以包括在分帧后可选地对语音样本进行加窗操作,用于使不同帧之间过渡更加平滑。可采用汉明窗(Hamming Window)或者布莱克曼窗(Blackman Window)等。
[0056] 在一些具体的实施例中,根据具体语音任务的需要,预处理步骤还可以包括在对每一帧计算完帧级别声学特征后,用静音检测算法(Voice Activity Detection,VAD),判断每一帧语音是否为静音帧,可根据语音任务需要,选择保留或者去除被判断为静音帧的语音帧。
[0057] 在步骤S12中:将至少两种不同类型的帧级别声学特征分别输入到每种类型所对应的浅层特征网络分支,获得每个浅层特征网络分支输出的至少两种不同类型的帧级别声学特征对应的帧级别浅层特征向量。
[0058] 在该步骤中,将不同类型的帧级别声学特征输入对应的类型的浅层特征网络分支,进行神经网络非线性运算提取语音任务相关信息的帧级别浅层特征向量。
[0059] 在步骤S13中:结合注意力机制,将帧级别浅层特征向量输入特征整合网络,进行降维或者规整处理后获得一个帧级别深度整合特征向量。
[0060] 在该步骤中,在特征整合网络中,对输入的各个帧级别浅层特征向量先进行重要性权重计算后,再进行加权整合处理和后续的降维处理或者规整处理,获得帧级别深度整合特征向量。
[0061] 在一些具体的实施例中,将经过加权整合处理后的帧级别初步整合特征向量进行降维处理或规整处理,该步骤具体可通过一层或几层全连接层实现,以便获得帧级别深度整合特征向量。
[0062] 在一些具体的实施例中,降维处理和规整处理可以由一个神经网络结构完成,也可由不同的多个神经网络结构完成。
[0063] 在步骤S14-1中:将帧级别深度特征整合向量依次输入到隐藏层并传输到输出层,根据语音任务计算损失函数后,反梯度传播更新所有深度神经网络的网络参数。
[0064] 在步骤S14-2中:将帧级别深度整合特征向量输入统计池化层,以形成段级别深度整合特征向量,其中,统计池化层被设置在特征整合网络与两个全连接隐藏层之间,将段级别深度整合特征向量输入到隐藏层并传输到输出层,根据语音任务计算损失函数后,反向梯度传播以更新网络参数。
[0065] 在该步骤中,根据具体的语音任务的要求,判断是否需要将帧级别深度整合特征转换段级别深度整合特征,若“否”,则执行步骤S14-1直接将帧级别深度整合特征向量通过全连接层和输出层输出;若“是”,则执行步骤S14-2将帧级别深度整合特征向量输入统计池化层进行汇聚成段级别深度整合特征向量后,通过全连接层和输出层输出。并且在执行步骤S14-1或执行步骤S14-2后根据具体的语音任务计算损失函数以更新上述全部神经网络的网络参数,实现整个深度神经网络进行联合优化训练,获得最优的深度神经网络的多类声学特征整合模型。
[0066] 在一些具体实施例中,段级别深度整合特征向量形成步骤具体包括:首先将帧级别深度整合特征向量输入统计池化层,并汇聚一段语音片段的所有帧级别深度整合特征向量;其次,分别计算其中帧级别深度整合特征向量所对应的均值和标准差;最后通过左右拼接均值和标准差向量,得到段级别深度整合特征向量。
[0067] 在一些具体实施例中,在训练阶段,根据具体语音任务识别结果进行判断,并对声学特征提取,浅层特征和特征整合步骤进行联合训练,优化网络参数,获得一个面向具体语音任务的基于深度神经网络的多类声学特征整合模型,以达到本申请在实际语音任务应用中高精准度和高准确识别率的目的。
[0068] 继续参考图4,其示出了根据本申请实施例中的基于深度神经网络的多类声学特征整合模型的浅层特征网络分支训练流程图。具体流程包括以下步骤:
[0069] 步骤121:根据实际语音任务处理要求,对每帧语音都提取适合该语音任务的多种不同类型的帧级别声学特征。
[0070] 在一些具体的实施例中,根据具体的语音任务对已知语音数据中的语音样本提取一段语音的每一帧的不同类型帧级别声学特征,如梅尔滤波器组特征(FBank)、梅尔倒谱系数特征(MFCC)、感知线性预测特征(PLP)、语谱图特征(spectrogram)等,对于每帧语音提取至少两种类型的声学特征,以便获取多种类型的帧级别浅层特征向量步骤。
[0071] 步骤122:选取适合该语音任务且与帧级别声学特征数量一致的同样个数的相同或不同网络结构类型的浅层特征网络分支。
[0072] 在一些具体的实施例中,各个浅层特征网络分支在进行前向传播和反向传播迭代参数的过程中都是互相独立的,且可选用的网络结构也不相同,例如可以选用一个3层的TDNN网络或者一个4层的TDNN网络或者一个4层的CNN网络作为浅层特征网络分支的网络结构。
[0073] 步骤123:根据不同类型帧级别声学特征的性质,将其分别输入到对应类型的浅层特征网络分支,获得对应的帧级别浅层特征向量。
[0074] 在一些具体的实施例中,各浅层特征网络分支的具体网络结构类型选择应该根据具体语音任务的需求而定,其目的是让不同类型的帧级别声学特征经过各自对应最适合的神经网络结构,得到语音任务相关的帧级别浅层特征向量。
[0075] 在一些优选的实施例中,当帧级别声学特征为梅尔倒谱系数特征时,可选取3层TDNN网络的浅层特征网络分支提取帧级别浅层特征向量;当帧级别声学特征为感知预测特征时,可选取4层TDNN网络的浅层特征网络分支提取帧级别浅层特征向量;当帧级别声学特征为语谱图特征时,可选取4层CNN网络的浅层特征网络分支提取帧级别浅层特征向量。
[0076] 在一些具体的实施例中,以三种不同类型的帧级别声学特征和对应的三种浅层特征网络分支为例,利用浅层特征网络分支将同一帧中不同类型的三种帧级别声学特征分别进行神经网络非线性运算处理,具体表达公式如下:
[0077] F1=D(f1)a,F2=D(f2)b,F3=C(f3)
[0078] 其中,fi表示第i种帧级别声学特征,D(fi)表示时延神经网络,D(fi)a表示为一种网络配置情况下(如a配置)的深度时延神经网络,D(fi)b表示为另一种网络配置情况下(如b配置)的深度时延神经网络,C(fi)表示为卷积神经网络,Fi表示第f种帧级别浅层特征向量,i=1,2,3。根据具体语音任务,不同类型的帧级别声学特征采用不同神经网络进行神经网络非线性运算处理,获得对应类型的帧级别浅层特征向量。
[0079] 继续参考图5,其示出了根据本申请实施例中的基于深度神经网络的多类声学特征整合模型的深度神经网络训练流程图。具体流程包括以下步骤:
[0080] 步骤131:通过注意力机制神经网络对各个帧级别浅层特征向量进行处理,得到各个帧级别浅层特征向量的重要性权重。
[0081] 在一些具体的实施例中,重要性权重采用注意力机制(attention mechanism)来计算各帧级别浅层特征向量的重要性。利用神经网络的注意力机制来判断各帧级别浅层特征向量的重要性,具体的计算公式如下:
[0082]
[0083]
[0084] 其中,m表示注意力机制层的输入节点数, 表示行数为m的单位矩阵的转置,函数tanh()表示激活函数,We、be表示为注意力机制可学习的参数,Fi表示第i种帧级别浅层特征向量,N表示为帧级别声学特征的类别数量,ai表示为第i种帧级别声学特征的重要性权重值(概率),ui表示第i种帧级别声学特征的重要性值,i=1,2,…,N,N表示为帧级别声学特征的数量。
[0085] 步骤132:将进行过重要性权重计算的帧级别浅层特征向量按对应的重要性权重进行加权整合,得到一个加权后的帧级别初步整合特征向量。
[0086] 在一些具体的实施例中,帧级别初步整合特征向量可以通过以下两种方式的获得:
[0087] 第一种方式,基于神经网络的注意力机制获得的各帧级别浅层特征向量的重要性权重,对多种类型的帧级别浅层特征向量加权拼接处理,具体计算公式如下:
[0088] I=Concat(a1F1,a2F2,...,aNFN)
[0089] 其中,I表示帧级别初步整合特征向量,函数Concat()表示拼接操作,F1,F2,...,FN分别表示帧级别浅层特征向量,a1,a2,...,aN分别表示对应的重要性权重,N表示为帧级别声学特征的数量。
[0090] 第二种方式,基于神经网络的注意力机制获得的各帧级别浅层特征向量的重要性权重,对多种类型帧级别浅层特征向量加权相加处理,具体计算公式如下:
[0091]
[0092] 其中,I表示帧级别初步整合特征向量,Fi表示帧级别浅层特征向量,ai分别表示对应的重要性权重,N表示为帧级别声学特征的数量。
[0093] 步骤133:将帧级别初步整合特征向量进行降维处理或者规整处理,得到一个帧级别深度整合特征向量。
[0094] 在一些具体的实施例中,将帧级别初步整合特征向量I进行降低维度操作的具体计算公式如下:
[0095] Ilow=L(I)
[0096] 其中,L(I)表示降维操作的函数,Ilow表示降维后的帧级别深度整合特征向量,其维度应该小于等于I的维度,I表示帧级别初步整合特征向量。通过将帧级别初步整合特征向量进行降维处理,获得降维整合后的帧级别深度整合特征向量。
[0097] 在一些具体的实施例中,将帧级别初步整合特征向量I进行规整操作的具体计算公式如下:
[0098]
[0099] 其中,Inorm表示规整后的特征向量,I表示帧级别初步整合特征向量,μ表示I的均值,σ表示I的方差。
[0100] 继续参考图6,其示出了根据本申请实施例中的基于深度神经网络的多类声学特征整合模型的语音任务处理训练流程图。
[0101] 步骤141:将帧级别深度整合特征向量输入语音任务神经网络。
[0102] 步骤142:在语音任务神经网络处理中,根据具体语音任务的不同,将帧级别深度整合特征向量经过相应的神经网络结构进行帧级别或者段级别的语音任务处理,然后计算具体语音任务的损失函数。
[0103] 步骤143:根据具体语音任务计算损失函数后,反向梯度传播以更新网络参数。
[0104] 在一些具体的实施例中,语音任务包括语音识别、语音唤醒、语种识别、说话人识别、防录音攻击欺骗等。语音识别任务(speech recognition)是识别语音的具体文本内容;说话人识别任务(speaker recognition)是判断每一条语音属于哪一个说话人。其中,语音识别任务和语音唤醒任务为帧级别语音处理任务,说话人识别任务、语种识别任务、防录音攻击欺骗任务为段级别语音处理任务。
[0105] 在一些具体的实施例中,当说话人识别任务作为需要处理的段级别语音任务时。相应地可以选择x-vector网络作为说话人识别任务的网络框架。x-vector网络的输入是一帧帧的语音,使用TDNN网络进行处理,在x-vector网络中使用统计池化层(statistics pooling layer)对每一段语音计算均值和标准差,以此来实现从帧级别浅层特征向量(frame level)到段级别深度整合特征向量(segment level)的转换,对每一个段级别的特征计算属于某个说话人的概率。
[0106] 在一些具体的实施例中,当语音任务为处理说话人识别任务,得到相应的语音任务结果,即表示为得到一段语音属于某个说话人的概率。
[0107] 在一些具体的实施例中,处理说话人识别任务,在训练阶段,得到一段语音属于某个说话人的后,利用softmax作为损失函数,再进行反向传播,使用随机梯度下降算法(SGD)对网络参数进行更新,softmax的数学表达式如下:
[0108]
[0109] 其中,n表示训练集中说话人的个数,fi表示针对第i个说话人的最后一层隐藏层的输入, 表示输出层中对应第i个说话人的第y个节点的可学习参数,j表示最后一层隐藏层的第j个输出节点, 表示最后一层隐藏层中对应第j个节点的可学习参数,c表示最后一层隐藏层的输出节点总数,通常c=n。通过softmax函数的计算可以优化语音识别中神经网络的参数。
[0110] 在一些具体的实施例中,处理说话人识别任务的测试阶段,若是说话人识别闭集测试任务(speaker identification),则输入一段语音,得到一段语音属于各个说话人的概率;若是说话人识别开集测试任务(speaker verification),则是输入先一段注册语音,从某个隐藏层提取反射变换层的参数作为说话人的段级别深度整合特征向量,再输入一段测试语音提取待测说话人的段级别深度整合特征向量,然后比较两个段级别深度整合特征向量的相似度,例如可以用余弦距离(cosine距离)判断相似度,得到两条语音属于同一个人的置信度。Cosine距离判断相似的的数学表达式如下:
[0111]
[0112] 其中,sim(X,Y)表示为为X,Y这两条语音属于同一个说话人的置信度得分。表示为为属于语音X的说话人段级别深度整合特征向量,表示为表示为属于语音Y的说话人段级别深度整合特征向量。
[0113] 在一些具体的实施例中,使用语音识别任务作为需要处理的语音任务。在语音识别任务中,语音任务的目标是判断每一帧语音的内容是什么音素或状态。
[0114] 在一些具体的实施例中,使用语音识别任务作为需要处理的帧级别语音任务。为了处理语音识别任务,相应地可以选择DNN-HMM网络(深度神经网络-隐马尔可夫模型)作为语音识别任务的网络架构。DNN-HMM网络的输入是帧级别的语音样本,使用TDNN网络进行处理,在帧级别特征(frame level)进行计算,对每一个帧的帧级别深度整合特征向量计算属于某个音素或状态的概率。
[0115] 在一些具体的实施例中,当语音任务为处理语音识别任务,得到相应的语音任务结果,即表示为得到一帧语音属于某个音素的概率。
[0116] 在一些具体的实施例中,处理语音识别任务,在训练阶段,得到一帧语音属于各个音素或状态的后验概率,计算交叉熵Cross Entropy作为损失函数,再进行反向传播,使用随机梯度下降算法(SGD)对网络参数进行更新,Cross Entropy的数学表达式如下:
[0117]
[0118]
[0119] 其中,θ表示模型参数,M为自然整数,表示训练集中样本的个数,C为自然整数,表示训练集中音素或状态的个数, 表示最后一层隐藏层的输入,表示由网络预测得到的观察向量o属于第i类音素或状态的概率,ypredict=ytruth的条件表示观测序列和标注序列一致的情况,wi是根据条件呈0或1二值分布的权值。
[0120] 在一些具体的实施例中,处理语音识别任务,在测试使用阶段,输入一段语音,网络输出得到一段语音中每一帧属于各个音素或状态的概率。
[0121] 在一些具体的实施例中,在训练阶段中,将声学特征提取步骤、帧级别浅层特征向量步骤、帧级别深度整合特征向量步骤和语音任务处理步骤一起优化训练,优化语音任务处理步骤中的各种神经网络性能,利用损失函数实现同时优化各个步骤的相关网络参数,使各个步骤更加匹配具体语音任务的要求,提高整体多类声学特征整合模型的精确性和稳定性。
[0122] 在一些优选的实施例中,设Ls表示为语音任务处理步骤损失函数,Le表示浅层特征的损失函数,Li表示特征整合的损失函数,Lf表示联合训练的总损失函数,则Lf=Ls,或者Lf=(1-α)Ls+αLe,其中 或者Lf=(1-α-β)Ls+αLe+βLi其中, 且(α+β)<1。
[0123] 继续参考图7,其示出了根据本申请实施例中的利用深度神经网络的多类声学特征整合模型处理帧级别语音任务的网络结构图。如图所示,当语音任务为说话人识别任务、语种识别任务、防录音攻击欺骗任务时,多类声学特征整合模型的语音任务采用段级别语音处理结构。其具体的网络结构包括声学特征提取结构701,帧级别浅层特征向量神经网络结构702、帧级别深度整合特征向量神经网络结构703和段级别语音任务处理神经网络结构704。假设将待测语音输入声学特征提取结构701进行分帧、静音检测处理和加窗等预处理,获得帧级别声学特征1和帧级别声学特征2,帧级别声学特征1和帧级别声学特征2分别进入TDNN浅层特征网络分支和CNN浅层特征网络分支后,分别进入帧级别深度整合特征向量神经网络结构703中的注意力机制进行重要性权重计算,并针对帧级别浅层特征向量对应的权重值进行拼接或者相加整合成一个帧级别深度整合特征向量,在全连接层进行降维或者规整处理,最后利用帧级别语音任务处理神经网络结构704中的统计池化层对每一段语音计算均值和标准差,以此来实现从帧级别深度整合特征向量到段级别深度整合特征向量的转换,再经过全连接层进行语音任务处理,最后输出特定语音任务的识别结果。
[0124] 继续参考图8,其示出了根据本申请实施例中的利用深度神经网络的多类声学特征整合模型处理帧级别语音任务的网络结构图。如图所示,当语音任务为语音识别任务和语音唤醒任务时,多类声学特征整合模型的语音任务采用帧级别语音处理结构。其具体的网络结构包括声学特征提取结构801、帧级别浅层特征向量神经网络结构802、帧级别深度整合特征向量神经网络结构803和帧级别语音任务处理神经网络结构804。由于帧级别语音处理结构中的声学特征提取结构801、帧级别浅层特征向量神经网络结构802和帧级别深度整合特征向量神经网络结构803的具体流程和结构与图7相同,为了说明书的精炼简洁,在此便不再赘述。通过帧级别深度整合特征向量神经网络结构803的全连接层进行降维或者规整处理后,在帧级别语音处理结构中直接输入帧级别语音任务处理神经网络结构804中的全连接层进行语音任务,最后输出每一帧对应因素或状态的概率。
[0125] 此外,本申请还提出了一种基于深度神经网络的多类声学特征整合系统。如图9所示,基于深度神经网络的多类声学特征整合系统900包括声学特征提取单元901、浅层特征单元902、特征整合单元903和语音任务处理单元904。其中,声学特征提取单元901用于对待测语音进行预处理、提取至少两种不同类型的帧级别声学特征;浅层特征单元902用于对输入的待测语音中至少两种不同类型的帧级别声学特征进行神经网络非线性计算,提取语音任务相关信息的帧级别浅层特征向量;整合特征单元903在一个特征整合网络,结合注意力机制,输入待测语音的至少两种不同类型的帧级别浅层特征向量,输出一个待测语音的帧级别深度整合特征向量;最后语音识别单元904包括帧级别语音任务处理单元9041和段级别语音任务处理单元9042,其中,帧级别语音任务处理单元9041用于在隐藏层中输入待测语音的帧级别深度整合特征向量,进行神经网络计算,完成帧级别特定语音任务;段级别语音任务处理单元9042用于在统计池化层中将待测语音的帧级别深度整合特征向量汇聚成段级别深度整合特征向量后输入全连接层进行神经网络计算,完成段级别特定语音任务。
[0126] 下面参考图10,其示出了适于用来实现本申请实施例的电子设备的计算机系统1000的结构示意图。图10示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
[0127] 如图10所示,计算机系统1000包括中央处理单元(CPU)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理。在RAM 1003中,还存储有系统1000操作所需的各种程序和数据。CPU 1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
[0128] 以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1003;包括诸如、液晶显示器(LCD)等以及扬声器等的输出部分1004;包括硬盘等的存储部分1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也可以根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
[0129] 特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本申请的方法中限定的上述功能。
[0130] 需要说明的是,本申请的计算机可读介质可以是计算机可读信号介质或者计算机可读介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
[0131] 可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++、Python,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0132] 附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0133] 描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括声学特征提取单元、浅层特征单元、特征整合单元和语音任务处理单元。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,声学特征提取单元还可以被描述为“将待测语音进行预处理并提取待测语音的至少两种不同类型的帧级别声学特征”。
[0134] 作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:将待测语音进行预处理并提取待测语音的至少两种不同类型的帧级别声学特征;不同类型的浅层特征网络分支分别对应输入待测语音的至少两种不同类型的帧级别声学特征,输出每个浅层特征网络分支的待测语音的至少两种不同类型的帧级别声学特征对应的帧级别浅层特征向量;在一个特征整合网络,结合注意力机制,输入待测语音的至少两种不同类型的帧级别浅层特征向量,输出一个待测语音的帧级别深度整合特征向量;用于在隐藏层中输入待测语音的帧级别深度整合特征向量,进行神经网络计算,完成特定帧级别语音任务;或者用于在统计池化层中将待测语音的帧级别深度整合特征向量汇聚成段级别深度整合特征向量后输入全连接隐藏层进行神经网络计算,完成特定段级别语音任务。
[0135] 以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。