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

一种声纹提取模型构建方法、声纹识别方法及其相关设备

文献发布时间:2023-06-19 11:52:33


一种声纹提取模型构建方法、声纹识别方法及其相关设备

技术领域

本申请涉及语音识别技术领域,尤其涉及一种声纹提取模型构建方法、声纹识别方法及其相关设备。

背景技术

声纹识别,又称说话人识别(Speaker Recognition),是一种根据说话人的语音来识别该说话人身份的技术。其中,声纹是指言语信息的声波频谱。

在一些应用场景(如,跨语种的复杂说话人识别场景)中,说话人的语音可能是由该说话人按照不同语种(如,粤语、普通话等)进行录制的,但是因现有的声纹识别技术在语种干扰下易呈现出较差的声纹识别性能,如此导致其在上述应用场景下的声纹识别准确性较低。

发明内容

本申请实施例的主要目的在于提供一种声纹提取模型构建方法、声纹识别方法及其相关设备,能够有效地降低语种干扰对声纹识别过程造成的不良影响,从而能够有效地提高声纹识别的准确性。

本申请实施例提供了一种声纹提取模型构建方法,所述方法包括:

获取样本语音、所述样本语音的实际说话人和所述样本语音的实际语种;

对所述样本语音进行声学特征提取,得到所述样本语音的声学特征;

将所述样本语音的声学特征输入待训练模型,得到所述待训练模型输出的所述样本语音的预测说话人和所述样本语音的预测语种;

根据所述样本语音的预测说话人、所述样本语音的实际说话人、所述样本语音的预测语种和所述样本语音的实际语种,更新所述待训练模型,并继续执行所述将所述样本语音的声学特征输入待训练模型的步骤,直至在达到预设停止条件时,根据所述待训练模型,构建声纹提取模型。

在一种可能的实施方式中,所述待训练模型包括特征生成层、说话人识别层和语种识别层;

所述样本语音的预测说话人和所述样本语音的预测语种的确定过程,包括:

将所述样本语音的声学特征输入所述特征生成层,得到所述特征生成层输出的所述样本语音的待使用特征;

将所述样本语音的待使用特征输入所述说话人识别层,得到所述说话人识别层输出的所述样本语音的预测说话人;

将所述样本语音的待使用特征输入所述语种识别层,得到所述语种识别层输出的所述样本语音的预测语种。

在一种可能的实施方式中,所述特征生成层包括第一预设层数的时延神经网络;

所述样本语音的待使用特征的确定过程,包括:

将所述样本语音的声学特征输入所述第一预设层数的时延神经网络,得到所述第一预设层数的时延神经网络输出的所述样本语音的待使用特征。

在一种可能的实施方式中,所述说话人识别层包括说话人特征提取子层和说话人确定子层;

所述样本语音的预测说话人的确定过程,包括:

将所述样本语音的待使用特征输入所述说话人特征提取子层,得到所述说话人特征提取子层输出的所述样本语音的说话人特征;

将所述样本语音的说话人特征输入所述说话人确定子层,得到所述说话人确定子层输出的所述样本语音的预测说话人。

在一种可能的实施方式中,所述说话人特征提取子层包括统计池化子层和第二预设层数的线性子层;

所述样本语音的说话人特征的确定过程,包括:

将所述样本语音的待使用特征输入所述统计池化子层,得到所述统计池化子层输出的所述样本语音的统计特征;

将所述样本语音的统计特征输入所述第二预设层数的线性子层,得到所述第二预设层数的线性子层输出的所述样本语音的说话人特征。

在一种可能的实施方式中,所述语种识别层包括语种特征提取子层和语种确定子层;

所述样本语音的预测语种的确定过程,包括:

将所述样本语音的待使用特征输入所述语种特征提取子层,得到所述语种特征提取子层输出的所述样本语音的语种特征;

将所述样本语音的语种特征输入所述语种确定子层,得到所述语种确定子层输出的所述样本语音的预测语种。

在一种可能的实施方式中,所述语种特征提取子层包括第三预设层数的双向长短时记忆网络、线性子层和统计子层;

所述样本语音的语种特征的确定过程,包括:

将所述样本语音的待使用特征输入所述第三预设层数的双向长短时记忆网络,得到所述第三预设层数的双向长短时记忆网络输出的所述样本语音的语种提取信息;

将所述样本语音的语种提取信息输入所述线性子层,得到所述线性子层输出的所述样本语音的语种变换信息;

将所述样本语音的语种变换信息输入所述统计子层,得到所述统计子层输出的所述样本语音的语种特征。

在一种可能的实施方式中,所述待训练模型包括特征生成层、说话人识别层和语种识别层;其中,所述说话人识别层的输入数据包括所述特征生成层的输出数据;所述语种识别层的输入数据包括所述特征生成层的输出数据;

若所述待训练模型是利用反向传播算法进行更新的,则所述待训练模型的更新过程包括:

根据所述样本语音的预测说话人、所述样本语音的实际说话人、所述样本语音的预测语种和所述样本语音的实际语种,确定由说话人识别层向特征生成层回传的梯度和由语种识别层向特征生成层回传的梯度;

将所述由语种识别层向特征生成层回传的梯度与负值参数进行相乘,得到由语种识别层向特征生成层回传的校正梯度;

根据所述由说话人识别层向特征生成层回传的梯度和所述由语种识别层向特征生成层回传的校正梯度,对所述特征生成层进行更新。

在一种可能的实施方式中,在所述将所述由语种识别层向特征生成层回传的梯度与负值参数进行相乘之前,所述方法还包括:

获取所述待训练模型的更新次数;

根据所述待训练模型的更新次数,确定所述负值参数。

在一种可能的实施方式中,所述负值参数的确定公式为:

式中,W

在一种可能的实施方式中,所述待训练模型包括特征生成层、说话人识别层和语种识别层;其中,所述说话人识别层的输入数据包括所述特征生成层的输出数据;所述语种识别层的输入数据包括所述特征生成层的输出数据;

所述根据所述待训练模型,构建声纹提取模型,包括:

根据所述特征生成层和所述说话人识别层,构建声纹提取模型。

在一种可能的实施方式中,所述说话人识别层包括说话人特征提取子层和说话人确定子层,且所述说话人确定子层的输入数据包括所述说话人特征提取子层的输出数据;

若所述声纹提取模型包括声纹信息提取层和声纹特征生成层,且所述声纹特征生成层的输入数据包括所述声纹信息提取层的输出数据,则所述根据所述特征生成层和所述说话人识别层,构建声纹提取模型,包括:

根据所述特征生成层确定所述声纹信息提取层,并根据所述说话人特征提取子层确定所述声纹特征生成层。

在一种可能的实施方式中,所述方法还包括:

将所述样本语音按照至少一个预设倍速进行变速处理,得到所述样本语音的至少一个变速语音;

对所述样本语音的至少一个变速语音分别进行声学特征提取,得到所述样本语音的至少一个变速特征;

所述将所述样本语音的声学特征输入待训练模型,得到所述待训练模型输出的所述样本语音的预测说话人和所述样本语音的预测语种,包括:

将所述样本语音的声学特征和所述样本语音的至少一个变速特征输入待训练模型,得到所述待训练模型输出的所述样本语音的预测说话人和所述样本语音的预测语种。

本申请实施例还提供了一种声纹识别方法,所述方法包括:

获取待识别语音;

对所述待识别语音进行声学特征提取,得到所述待识别语音的声学特征;

根据所述待识别语音的声学特征和预先构建的声纹提取模型,确定所述待识别语音的声纹特征;其中,所述声纹提取模型是利用本申请实施例提供的声纹提取模型构建方法的任一实施方式进行构建的;

根据所述待识别语音的声纹特征,确定所述待识别语音的说话人。

本申请实施例还提供了一种声纹提取模型构建装置,包括:

样本获取单元,用于获取样本语音、所述样本语音的实际说话人和所述样本语音的实际语种;

第一提取单元,用于对所述样本语音进行声学特征提取,得到所述样本语音的声学特征;

样本预测单元,用于将所述样本语音的声学特征输入待训练模型,得到所述待训练模型输出的所述样本语音的预测说话人和所述样本语音的预测语种;

模型更新单元,用于根据所述样本语音的预测说话人、所述样本语音的实际说话人、所述样本语音的预测语种和所述样本语音的实际语种,更新所述待训练模型,并返回所述样本预测单元执行所述将所述样本语音的声学特征输入待训练模型,直至在达到预设停止条件时,根据所述待训练模型,构建声纹提取模型。

本申请实施例还提供了一种声纹识别装置,包括:

语音获取单元,用于获取待识别语音;

第二提取单元,用于对所述待识别语音进行声学特征提取,得到所述待识别语音的声学特征;

声纹预测单元,用于根据所述待识别语音的声学特征和预先构建的声纹提取模型,确定所述待识别语音的声纹特征;其中,所述声纹提取模型是利用本申请实施例提供的声纹提取模型构建方法的任一实施方式进行构建的;

声纹识别单元,用于根据所述待识别语音的声纹特征,确定所述待识别语音的说话人。

本申请实施例还提供了一种设备,所述设备包括:处理器、存储器、系统总线;

所述处理器以及所述存储器通过所述系统总线相连;

所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行本申请实施例提供的声纹提取模型构建方法的任一实施方式,或者执行本申请实施例提供的声纹识别方法的任一实施方式。

本申请实施例还提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行本申请实施例提供的声纹提取模型构建方法的任一实施方式,或者执行本申请实施例提供的声纹识别方法的任一实施方式。

本申请实施例还提供了一种计算机程序产品,其特征在于,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行本申请实施例提供的声纹提取模型构建方法的任一实施方式,或者执行本申请实施例提供的声纹识别方法的任一实施方式。

基于上述技术方案,本申请具有以下有益效果:

本申请提供的技术方案中,先根据样本语音、该样本语音的实际说话人和该样本语音的实际语种,构建声纹提取模型,以使构建好的声纹提取模型能够在不受语种干扰的情况下进行声纹特征提取;再利用该声纹提取模型针对待识别语音进行声纹特征提取,并根据该待识别语音的声纹特征,确定该待识别语音的说话人。

其中,因声纹提取模型是根据样本语音的实际说话人以及实际语种进行构建的,使得构建好的声纹提取模型在进行声纹特征提取时几乎不受语种干扰,从而使得构建好的声纹提取模型具有较好的声纹特征提取性能,如此使得后续利用该声纹提取模型针对待识别语音提取的声纹特征能够准确地表示出该待识别语音的说话人信息,从而使得基于该提取的声纹特征确定出的该待识别语音的说话人更准确。可见,本申请提供的技术方案能够有效地降低语种对声纹识别过程造成的干扰,从而能够有效地提高声纹识别的准确性。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种声纹提取模型构建方法的流程图;

图2为本申请实施例提供的一种待训练模型的结构示意图;

图3为本申请实施例提供的另一种待训练模型的结构示意图;

图4为本申请实施例提供的一种声纹识别方法的流程图;

图5为本申请实施例提供的一种声纹提取模型构建装置的结构示意图;

图6为本申请实施例提供的一种声纹识别装置的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

为了便于理解本申请的技术方案,下面先介绍声纹提取模型的构建过程(也就是,声纹提取模型构建方法),再介绍声纹提取模型的使用过程(也就是,声纹识别方法)。

参见图1,该图为本申请实施例提供的一种声纹提取模型构建方法的流程图。

本申请实施例提供的声纹提取模型构建方法,包括S101-S106:

S101:获取样本语音、该样本语音的实际说话人和该样本语音的实际语种。

其中,样本语音是指构建声纹提取模型时所需使用的语音。另外,本申请实施例不限定样本语音的个数。

样本语音的实际说话人是指录制该样本语音的真实的说话人;而且,本申请实施例不限定样本语音的实际说话人的表示方式,例如,样本语音的实际说话人可以利用该样本语音的实际说话人的标识(如,身份标识或者类别序号)进行表示。

样本语音的实际语种是指该样本语音的实际说话人在录制该样本语音时所使用的语种(如,粤语、普通话、闽南语等)。另外,本申请实施例不限定样本语音的实际语种的表示方式,例如,该样本语音的实际语种可以利用该样本语音的实际语种的标识(如,名称或者类别序号)进行表示。

S102:对样本语音进行声学特征提取,得到样本语音的声学特征。

其中,样本语音的声学特征用于表示该样本语音携带的信息。另外,本申请不限定样本语音的声学特征,例如,该样本语音的声学特征可以包括该样本语音的48维滤波器组特征(Filterbank,FB)。

此外,本申请实施例也不限定声学特征提取过程,例如,可以采用48维滤波器组特征提取过程进行实施。

S103:将样本语音的声学特征输入待训练模型,得到该待训练模型输出的该样本语音的预测说话人和该样本语音的预测语种。

其中,样本语音的预测说话人是由待训练模型根据该样本语音的声学特征进行说话人预测得到的。

样本语音的预测语种是由待训练模型根据该样本语音的声学特征进行语种预测得到的。

待训练模型用于根据该待训练模型的输入数据进行说话人预测以及语种预测。

另外,本申请实施例不限定待训练模型,例如,为了提高声纹提取模型的抗语种干扰能力,该待训练模型可以采用网络对抗技术进行构建。

此外,本申请实施例不限定待训练模型的结构,例如,如图2所示,待训练模型200可以包括特征生成层201、说话人识别层202和语种识别层203。其中,说话人识别层202的输入数据包括特征生成层201的输出数据;而且语种识别层203的输入数据包括特征生成层201的输出数据。

为了便于理解图2所示的待训练模型的工作原理,下面以样本语音的预测说话人以及预测语种的确定过程为例进行说明。

作为示例,若待训练模型为图2所示的待训练模型,则样本语音的预测说话人和该样本语音的预测语种的确定过程,可以包括步骤11-步骤13:

步骤11:将样本语音的声学特征输入特征生成层201,得到该特征生成层201输出的该样本语音的待使用特征。

其中,样本语音的待使用特征是由特征生成层针对该样本语音的声学特征进行特征提取得到的。

特征生成层201用于针对该特征生成层201的输入数据进行特征提取。另外,本申请实施例不限定特征生成层201,例如,为了保证样本语音的待使用特征能够尽可能多的保留该样本语音中的时序信息以及语种信息,该特征生成层201可以包括第一预设层数的时延神经网络(time delay neural network,TDNN)。其中,第一预设层数可以预先设定,例如,第一预设层数可以是5。

为了便于理解特征生成层201的工作原理,下面以样本语音的待使用特征的确定过程为例进行说明。

作为示例,若特征生成层201包括第一预设层数的时延神经网络,则该样本语音的待使用特征的确定过程,可以包括:将样本语音的声学特征输入该第一预设层数的时延神经网络,得到该第一预设层数的时延神经网络输出的该样本语音的待使用特征。

也就是,若第一预设层数为M

基于上述步骤11的相关内容可知,对于待训练模型200来说,在将样本语音的声学特征输入该待训练模型200之后,可以由该待训练模型200中特征生成层201针对该样本语音的声学特征进行特征提取,得到并输出该样本语音的待使用特征,以使该样本语音的待使用特征能够尽可能多表示出该样本语音携带的时序信息、语种信息以及说话人表征信息等等。

步骤12:将样本语音的待使用特征输入说话人识别层202,得到该说话人识别层202输出的该样本语音的预测说话人。

其中,说话人识别层202用于依据该说话人识别层202的输入数据进行说话人预测(如,说话人分类)。

另外,本申请实施例不限定说话人识别层202的结构,例如,该说话人识别层202可以包括说话人特征提取子层和说话人确定子层;而且该说话人确定子层的输入数据包括该说话人特征提取子层的输出数据。

为了便于理解说话人识别层202的工作原理,下面以样本语音的预测说话人的确定过程为例进行说明。

作为示例,若说话人识别层202包括说话人特征提取子层和说话人确定子层,则样本语音的预测说话人的确定过程可以包括步骤21-步骤22:

步骤21:将样本语音的待使用特征输入说话人特征提取子层,得到该说话人特征提取子层输出的该样本语音的说话人特征。

其中,样本语音的说话人特征是由说话人特征提取子层针对该样本语音的待使用特征进行说话人特征提取得到的;而且该样本语音的说话人特征用于表征该样本语音携带的说话人信息。

说话人特征提取子层用于对该说话人特征提取子层的输入数据进行说话人特征提取。另外,本申请实施例不限定说话人特征提取子层,例如,该说话人特征提取子层可以包括统计池化(statistic pooling)子层和第二预设层数的线性子层。其中,第二预设层数可以预先设定,例如,该第二预设层数可以是2。

为了便于理解说话人特征提取子层的工作原理,下面以样本语音的说话人特征的确定过程为例进行说明。

作为示例,若说话人特征提取子层包括统计池化子层和第二预设层数的线性子层,则样本语音的说话人特征的确定过程包括步骤31-步骤32:

步骤31:将样本语音的待使用特征输入统计池化子层,得到该统计池化子层输出的该样本语音的统计特征。

其中,统计池化子层用于针对该统计池化子层的输入数据进行第一预设统计处理。另外,本申请实施例不限定第一预设统计处理,例如,第一预设统计处理可以是包括一阶统计量计算(如,均值计算)和二阶统计量计算(如,标准差计算)。

样本语音的统计特征是由统计池化子层针对该样本语音的待使用特征进行第一预设统计处理得到的。

步骤32:将样本语音的统计特征输入第二预设层数的线性子层,得到第二预设层数的线性子层输出的样本语音的说话人特征。

其中,第二预设层数的线性子层用于进行线性变换。

为了便于理解第二预设层数的线性子层的工作原理,下面以样本语音的说话人特征的确定过程进行说明。

作为示例,若第二预设层数为M

此外,本申请实施例不限定各层线性子层的结构,例如,若第二预设层数为M

基于上述步骤31至步骤32的相关内容可知,对于包括统计池化子层和第二预设层数的线性子层的说话人特征提取子层来说,在将样本语音的待使用特征输入说话人特征提取子层之后,可以先由该统计池化子层针对该样本语音的待使用特征进行第一预设统计处理,得到并输出该样本语音的统计特征;再由该第二预设层数的线性子层针对该样本语音的统计特征进行线性变换,得到并输出该样本语音的说话人特征。

基于上述步骤21的相关内容可知,在将样本语音的待使用特征输入说话人特征提取子层之后,可以由该说话人特征提取子层针对该样本语音的待使用特征进行说话人特征提取,得到并输出该样本语音的说话人特征,以使该样本语音的说话人特征能够表征出该样本语音携带的说话人信息。

步骤22:将样本语音的说话人特征输入说话人确定子层,得到该说话人确定子层输出的该样本语音的预测说话人。

其中,说话人确定子层用于依据该说话人确定子层的输入数据进行说话人确定(如,进行说话人分类)。另外,本申请实施例不限定说话人确定子层,例如,该说话人确定子层可以是任一种分类层(如,softmax层)。

需要说明的是,若说话人确定子层是任一种分类层,则该说话人确定子层输出的神经元个数可以与该待训练模型的训练集中说话人标签个数保持一致。其中,待训练模型的训练集包括至少一个样本语音。

基于上述步骤21至步骤22的相关内容可知,对于包括说话人特征提取子层和说话人确定子层的说话人识别层202来说,在将样本语音的待使用特征输入该说话人识别层202之后,可以先由该说话人特征提取子层针对该样本语音的待使用特征进行说话人特征提取,得到输出该样本语音的说话人特征;再由该说话人确定子层依据该样本语音的说话人特征进行说话人预测(如,进行说话人分类),得到并输出该样本语音的预测说话人。

基于上述步骤12的相关内容可知,对于待训练模型200来说,在由该待训练模型200中特征生成层201输出样本语音的待使用特征之后,可以由该待训练模型200中说话人识别层202依据该样本语音的待使用特征进行说话人预测(如,说话人分类),得到并输出该样本语音的预测说话人,以便后续能够依据该样本语音的预测说话人,确定该待训练模型200的说话人预测性能。

步骤13:将样本语音的待使用特征输入语种识别层203,得到该语种识别层203输出的该样本语音的预测语种。

其中,语种识别层203用于依据该语种识别层203的输入数据进行语种预测(如,语种分类)。

另外,本申请实施例不限定语种识别层203的结构,例如,该语种识别层203可以包括语种特征提取子层和语种确定子层;而且该语种确定子层的输入数据包括该语种特征提取子层的输出数据。

为了便于理解语种识别层203的工作原理,下面以样本语音的预测语种的确定过程为例进行说明。

作为示例,若语种识别层203包括语种特征提取子层和语种确定子层,则样本语音的预测语种的确定过程可以包括步骤41-步骤42:

步骤41:将样本语音的待使用特征输入语种特征提取子层,得到该语种特征提取子层输出的该样本语音的语种特征。

其中,样本语音的语种特征是由语种特征提取子层针对该样本语音的待使用特征进行语种特征提取得到的;而且该样本语音的语种特征用于表征该样本语音携带的语种信息。

语种特征提取子层用于针对该语种特征提取子层的输入数据进行语种特征提取。另外,本申请实施例不限定语种特征提取子层,例如,该语种特征提取子层可以包括第三预设层数的双向长短时记忆网络(Long Short-Term Memory,LSTM)、线性子层和统计子层。其中,线性子层的输入数据包括第三预设层数的双向长短时记忆网络的输出数据;而且统计子层的输入数据包括线性子层的输出数据。第三预设层数可以预先设定,例如,第三预设层数可以是2。

为了便于理解语种特征提取子层的工作原理,下面以样本语音的语种特征的确定过程作为示例进行说明。

作为示例,若语种特征提取子层可以包括第三预设层数的双向长短时记忆网络、线性子层和统计子层,则样本语音的语种特征的确定过程可以包括步骤51-步骤53:

步骤51:将样本语音的待使用特征输入第三预设层数的双向长短时记忆网络,得到该第三预设层数的双向长短时记忆网络输出的该样本语音的语种提取信息。

其中,样本语音的语种提取信息是由第三预设层数的双向长短时记忆网络针对该样本语音的待使用特征进行语种信息提取得到的;而且该样本语音的语种提取信息用于表示该样本语音携带的语种信息。

为了便于理解第三预设层数的双向长短时记忆网络的工作原理,下面以样本语音的语种提取信息的确定过程为例进行说明。

作为示例,若第三预设层数为M

步骤52:将样本语音的语种提取信息输入线性子层,得到该线性子层输出的该样本语音的语种变换信息。

其中,线性子层用于针对该线性子层的输入数据进行信息变换;而且本申请实施例不限定线性子层,例如,该线性子层可以是现有的或者未来出现的任一种线性层(或者,全连接层)。

样本语音的语种变换信息是由线性子层针对该样本语音的语种提取信息进行信息变换得到的。

步骤53:将样本语音的语种变换信息输入统计子层,得到该统计子层输出的该样本语音的语种特征。

其中,统计子层用于针对该统计子层的输入数据进行第二预设统计处理。另外,本申请实施例不限定第二预设统计处理,例如,第二预设统计处理可以包括一阶统计量计算(如,均值计算)。

基于上述步骤51至步骤53的相关内容可知,对于包括第三预设层数的双向长短时记忆网络、线性子层和统计子层的语种特征提取子层来说,在将样本语音的待使用特征输入该语种特征提取子层之后,可以先由该第三预设层数的双向长短时记忆网络针对该样本语音的待使用特征进行语种信息提取,得到并输出该样本语音的语种提取信息;再由该线性子层针对该样本语音的语种提取信息进行信息变换,得到并输出该样本语音的语种变换信息;最后,由统计子层针对该样本语音的语种变换信息进行第二预设统计处理,得到并输出该样本语音的语种特征。

基于上述步骤41的相关内容可知,在将样本语音的待使用特征输入该语种特征提取子层之后,可以由该语种特征提取子层针对该样本语音的待使用特征进行语种特征提取,得到并输出该样本语音的语种特征,以使该样本语音的语种特征能够表征出该样本语音携带的语种信息。

步骤42:将样本语音的语种特征输入语种确定子层,得到该语种确定子层输出的该样本语音的预测语种。

其中,语种确定子层用于针对该语种确定子层的输入数据进行语种确定(如,语种分类)。另外,本申请实施例不限定语种确定子层,例如,该语种确定子层可以是任一种分类层(如,softmax层)。

需要说明的是,若语种确定子层是任一种分类层,则该语种确定子层输出的神经元个数可以与该待训练模型的训练集中语种标签个数保持一致。

基于上述步骤41至步骤42的相关内容可知,对于包括语种特征提取子层和语种确定子层的语种识别层203来说,在将样本语音的待使用特征输入该语种识别层203之后,可以先由该语种特征提取子层针对该样本语音的待使用特征进行语种特征提取,得到并输出该样本语音的语种特征;再由该语种确定子层依据该样本语音的语种特征进行语种预测(如,语种分类),得到并输出该样本语音的预测语种。

基于上述步骤13的相关内容可知,对于待训练模型200来说,在由该待训练模型200中特征生成层201输出样本语音的待使用特征之后,可以由该待训练模型200中语种识别层203依据该样本语音的待使用特征进行语种预测(如,语种分类),得到并输出该样本语音的预测语种,以便后续能够依据该样本语音的预测语种,确定该待训练模型200的语种预测性能。

基于上述S103的相关内容可知,在获取到样本语音的声学特征(或者,在针对待训练模型完成一次更新)之后,可以将该样本语音的声学特征输入待训练模型(例如,图3所示的待训练模型),以使该待训练模型可以依据该样本语音的声学特征分别进行说话人预测以及语种预测,得到并输出该样本语音的预测说话人以及预测语种,以便后续能够基于该样本语音的预测说话人以及预测语种,确定该待训练模型的预测性能。

S104:判断是否达到预设停止条件,若是,则执行S106;若否,则执行S105。

其中,预设停止条件可以预先设定,例如,预设停止条件可以是待训练模型的损失值低于预设损失阈值,也可以是待训练模型的损失值的变化率低于预设变化率阈值(也就是,待训练模型达到收敛),还可以是待训练模型的更新次数达到预设次数阈值。

另外,本申请实施例不限定待训练模型的损失值的计算方式(如,可以利用交叉熵损失函数计算待训练模型的损失值)。作为示例,若样本语音的预测说话人是通过说话人分类得到的,且该样本语音的预测语是通过语种分类得到的,则该待训练模型的损失值可以利用公式(1)-(3)进行计算。

E

式中,E

基于上述S104的相关内容可知,对于当前轮的待训练模型来说,可以判断该当前轮的待训练模型是否达到预设停止条件;若达到预设停止条件,则可以确定当前轮的待训练模型具有较好的预测性能,从而可以确定当前轮的待训练模型在进行说话人识别时几乎不受语种干扰,进而可以确定当前轮的待训练模型具有较好的声纹特征提取性能,故可以依据当前轮的待训练模型构建声纹提取模型;若没有达到预设停止条件,则可以确定当前轮的待训练模型的预测性能依旧比较差,故可以利用样本语音的预测说话人、实际说话人、预测语种以及实际语种对待训练模型进行一轮更新,以使更新后的待训练模型具有更好的预测性能。

S105:根据样本语音的预测说话人、该样本语音的实际说话人、该样本语音的预测语种和该样本语音的实际语种,更新待训练模型,并返回执行S103。

本申请实施例不限定待训练模型的更新过程,例如,可以利用反向传播算法进行实施。

实际上,为了尽可能地降低语种信息对说话人识别过程造成的干扰,本申请实施例还提供了更新待训练模型的一种可能的实施方式,在该实施方式中,若待训练模型包括特征生成层、说话人识别层和语种识别层,且该待训练模型是利用反向传播算法进行更新的,则该待训练模型的更新过程可以包括步骤61-步骤64:

步骤61:根据样本语音的预测说话人、该样本语音的实际说话人、该样本语音的预测语种和该样本语音的实际语种,更新说话人识别层和语种识别层。

需要说明的是,本申请实施例不限定步骤61的实施方式,可以采用现有的或者未来出现的任一种能够在反向传播过程中依据样本语音的预测说话人、该样本语音的实际说话人、该样本语音的预测语种和该样本语音的实际语种,针对说话人识别层和语种识别层进行更新的方法进行实施。

步骤62:根据样本语音的预测说话人、该样本语音的实际说话人、该样本语音的预测语种和该样本语音的实际语种,确定由说话人识别层向特征生成层回传的梯度和由语种识别层向特征生成层回传的梯度。

需要说明的是,本申请实施例不限定步骤62的实施方式,可以采用现有的或者未来出现的任一种能够在反向传播过程中计算两个网络层之间回传梯度的方法进行实施。

步骤63:将由语种识别层向特征生成层回传的梯度与负值参数进行相乘,得到由语种识别层向特征生成层回传的校正梯度。

其中,负值参数用于实现说话人识别层与语种识别层之间的对抗效果。

另外,本申请实施例不限定负值参数的获取方式,例如,可以预先设定。又如,为了进一步提高对抗效果,该负值参数的确定过程可以包括步骤71-步骤72:

步骤71:获取待训练模型的更新次数。

其中,待训练模型的更新次数是指当前轮的待训练模型已经经历过的更新次数(也就是,截止当前轮的模型训练过程针对待训练模型完成的更新次数)。

步骤72:根据待训练模型的更新次数,确定负值参数。

负值参数与待训练模型的更新次数负相关;而且本申请实施例不限定负值参数的确定过程(也就是步骤72的实施方式)。例如,负值参数可以利用公式(4)-(5)进行计算。

p=F

式中,W

需要说明的是,本申请实施例不限定r,例如,r可以预先确定(如,r=10)。又如,r也可以作为一个超参数。另外,本申请实施例不限定F

式中,p表示负值参数的动态变化因子;a表示底数,且0<a<1;N

基于上述公式(4)-(5)的相关内容可知,因p随着待训练模型的更新次数增加逐渐由0变为1,使得在针对待训练模型的训练过程的开始阶段,语种预测损失梯度(也就是,由语种识别层向特征生成层回传的梯度)暂时不会回传至特征生成层中,只有在针对待训练模型的训练过程达到一定程度之后,语种预测损失梯度才会回传至特征生成层中,而且在语种预测损失梯度能够正常回传至特征生成层中之后,将会逐渐增加该语种预测损失梯度对特征生成层的更新过程的影响权重,如此能够逐渐增加说话人识别层与语种识别层之间的对抗程度,如此有利于进一步提高对抗效果。

基于上述步骤63的相关内容可知,对于待训练模型的更新过程来说,在获取到由语种识别层向特征生成层回传的梯度之后,可以将该由语种识别层向特征生成层回传的梯度与负值参数之间的乘积,确定为由语种识别层向特征生成层回传的校正梯度,以便后续能够基于该由语种识别层向特征生成层回传的校正梯度针对该特征生成层进行更新。

步骤64:根据由说话人识别层向特征生成层回传的梯度和由语种识别层向特征生成层回传的校正梯度,对特征生成层进行更新。

本申请实施例不限定特征生成层的更新过程,可以采用现有的或者未来出现的任一种能够在反向传播过程中依据由语种识别层向特征生成层回传的梯度和由说话人识别层向特征生成层回传的校正梯度针对特征生成层进行更新的方法进行实施。

基于上述步骤61至步骤64的相关内容可知,对于包括特征生成层、说话人识别层和语种识别层的待训练模型的更新过程来说,在获取到由说话人识别层向特征生成层回传的梯度和由语种识别层向特征生成层回传的梯度之后,可以先将由语种识别层向特征生成层回传的梯度乘以一个负值参数,得到由语种识别层向特征生成层回传的校正梯度;再根据该由说话人识别层向特征生成层回传的梯度和该由语种识别层向特征生成层回传的校正梯度,对特征生成层进行更新。

基于上述S105的相关内容可知,在确定当前轮的待训练模型没有达到预设停止条件之后,可以依据该样本语音的预测说话人、该样本语音的实际说话人、该样本语音的预测语种和该样本语音的实际语种,对待训练模型进行更新,以使更新后的待训练模型具有更好的预测性能,并继续执行S103及其后续步骤。

S106:根据待训练模型,构建声纹提取模型。

本申请实施例不限定S106的实施方式,例如,在一种可能的实施方式下,若待训练模型包括特征生成层、说话人识别层和语种识别层,则S106具体可以包括:根据特征生成层和说话人识别层,构建声纹提取模型。

为了便于理解上述S106的实施方式,下面结合示例进行说明。

作为示例,假设说话人识别层包括说话人特征提取子层和说话人确定子层,声纹提取模型包括声纹信息提取层和声纹特征生成层,且该声纹特征生成层的输入数据包括该声纹信息提取层的输出数据,则该声纹提取模型的构建过程可以包括步骤81-步骤82:

步骤81:根据特征生成层确定声纹信息提取层。

为了便于理解步骤81,下面结合两个示例介绍步骤81。

示例1,步骤81具体可以包括:将特征生成层确定为声纹信息提取层。

可见,对于包括特征生成层、说话人识别层和语种识别层的待训练模型来说,在确定当前轮的待训练模型达到预设停止条件之后,可以直接将当前轮的待训练模型中特征生成层,确定为声纹提取模型中声纹信息提取层,以使该声纹信息提取层能够具有该特征生成层所具有的声纹信息提取性能。

示例2,步骤81具体可以包括:根据特征生成层的结构及其参数,确定声纹信息提取层的结构及其参数,以使该声纹信息提取层的结构及其参数与该特征生成层的结构及其参数保持相同。

可见,对于包括特征生成层、说话人识别层和语种识别层的待训练模型来说,在确定当前轮的待训练模型达到预设停止条件之后,可以根据当前轮的待训练模型中特征生成层的结构以及参数,确定声纹提取模型中声纹信息提取层的结构以及参数,以使该声纹信息提取层的结构及其参数与该特征生成层的结构及其参数保持相同,从而使得该声纹信息提取层能够具有该特征生成层所达到的声纹信息提取性能。

步骤82:根据说话人特征提取子层确定声纹特征生成层。

为了便于理解步骤82,下面结合两个示例介绍步骤82。

示例1,步骤82具体可以包括:将说话人特征提取子层确定为声纹特征生成层。

可见,若待训练模型中说话人识别层包括说话人特征提取子层和说话人确定子层,则在确定当前轮的待训练模型达到预设停止条件之后,可以直接将当前轮的待训练模型中说话人特征提取子层,确定为声纹提取模型中声纹特征生成层,以使该声纹特征生成层能够具有该说话人特征提取子层所达到的声纹特征生成性能。

示例2,步骤82具体可以包括:根据说话人特征提取子层的结构及其参数,确定声纹特征生成层的结构及其参数,以使该声纹特征生成层的结构及其参数与该说话人特征提取子层的结构及其参数保持相同。

可见,若待训练模型中说话人识别层包括说话人特征提取子层和说话人确定子层,则在确定当前轮的待训练模型达到预设停止条件之后,可以直接将当前轮的待训练模型中说话人特征提取子层的结构及其参数,确定声纹提取模型中声纹特征生成层的结构及其参数,以使该声纹特征生成层的结构及其参数与该说话人特征提取子层的结构及其参数保持相同,从而使得该声纹特征生成层能够具有该说话人特征提取子层所达到的声纹特征生成性能。

基于上述S101至S106的相关内容可知,本申请实施例中,在获取到样本语音、该样本语音的实际说话人和该样本语音的实际语种之后,可以先利用该样本语音、该样本语音的实际说话人和该样本语音的实际语种训练待训练模型,以使训练好的待训练模型具有较好的预测性能,从而使得训练好的待训练模型在进行说话人预测时(尤其是在进行声纹特征提取时)几乎不受语种干扰,如此使得训练好的待训练模型具有较好的声纹特征提取性能;再依据训练好的待训练模型构建声纹提取模型,以使构建好的声纹提取模型在进行声纹特征提取时几乎不受语种干扰,如此有利于提高声纹提取模型的声纹特征提取准确性。

为了进一步提高声纹特征提取准确性,本申请实施例还提供了声纹提取模型构建方法的另一种可能的实施方式,其具体包括步骤91-步骤98:

步骤91:获取样本语音、该样本语音的实际说话人和该样本语音的实际语种。

步骤92:对样本语音进行声学特征提取,得到样本语音的声学特征。

需要说明的是,步骤91和步骤92的内容请分别参见上文S101和S102。

步骤93:将样本语音按照至少一个预设倍速进行变速处理,得到该样本语音的至少一个变速语音。

其中,至少一个预设倍速可以预先设定,例如,该至少一个预设倍速可以包括0.8倍速、0.9倍速、1.1倍速和1.2倍速。

变速处理用于改变一段语音的播放速度。另外,本申请实施例不限定变速处理,可以采用现有的或者未来出现的任一种能够针对语音进行变速的方法进行实施。

基于上述步骤93的相关内容可知,若预设倍速的个数为M

步骤94:对样本语音的至少一个变速语音分别进行声学特征提取,得到该样本语音的至少一个变速特征。

本申请实施例中,在获取到样本语音的第1个变速语音至第M

步骤95:将样本语音的声学特征和该样本语音的至少一个变速特征输入待训练模型,得到该待训练模型输出的该样本语音的预测说话人和样本语音的预测语种。

需要说明的是,步骤95可以采用上文S103的任一实施方式进行实施,只需将上文S103的任一实施方式中待训练模型的输入数据替换为“样本语音的声学特征和该样本语音的至少一个变速特征”即可。

为了便于理解,下面结合示例进行说明。

作为示例,若待训练模型包括特征生成层、说话人特征提取子层、说话人确定子层、语种特征提取子层和语种确定子层,且至少一个变速特征的个数为M

步骤101:将样本语音的声学特征和该样本语音的M

其中,特征生成层的相关内容请参见上文步骤11中特征生成层201的相关内容。

基于步骤101的相关内容可知,在将样本语音的声学特征及其M

步骤102:将样本语音对应的M

其中,说话人特征提取子层的相关内容可以参见上文步骤21的相关内容。

基于步骤102的相关内容可知,在由特征生成层输出样本语音对应的M

步骤103:将样本语音对应的M

其中,说话人确定子层的相关内容可以参见上文步骤22的相关内容。

另外,为了进一步提高说话人预测准确性,本申请实施例还提供了说话人确定子层的另一种可能的实施方式,例如,该说话人确定子层可以包括第一融合子层和说话人预测子层;而且该说话人预测子层的输入数据包括该第一融合子层的输出数据。

为了便于理解,下面以样本语音的预测说话人的确定过程为例进行说明。

作为示例,若说话人确定子层包括第一融合子层和说话人预测子层,则样本语音的预测说话人的确定过程可以包括步骤111-步骤112:

步骤111:将样本语音对应的M

其中,第一融合子层用于将该第一融合子层的输入数据进行特征融合。另外,本申请实施例不限定第一融合子层的工作原理,例如,若第一融合子层的输入数据包括

式中,

样本语音对应的说话人融合特征是由第一融合子层针对该样本语音对应的M

步骤112:将样本语音对应的说话人融合特征输入说话人预测子层,得到该说话人预测子层输出的该样本语音的预测说话人。

其中,说话人预测子层用于针对该说话人预测子层的输入数据进行说话人确定(如,说话人分类)。另外,本申请实施例不限定说话人预测子层,例如,该说话人预测子层可以是任一种分类层(如,softmax层)。

需要说明的是,若说话人预测子层是任一种分类层,则该说话人预测子层输出的神经元个数可以与该待训练模型的训练集中说话人标签个数保持一致。

基于上述步骤103的相关内容可知,在由说话人特征提取子层输出样本语音对应的第1个说话人提取特征至第M

步骤104:将样本语音对应的M

其中,语种特征提取子层的相关内容请参见上文步骤41。

基于上述步骤104的相关内容可知,在由特征生成层输出样本语音对应的M

步骤105:将样本语音对应的M

其中,语种确定子层的相关内容请参见上文步骤42的相关内容。

另外,为了进一步提高语种预测准确性,本申请实施例还提供了语种确定子层的另一种可能的实施方式,例如,该语种确定子层可以包括第二融合子层和语种预测子层;而且该语种预测子层的输入数据包括该第二融合子层的输出数据。

为了便于理解,下面以样本语音的预测语种的确定过程为例进行说明。

作为示例,若语种确定子层包括第二融合子层和语种预测子层,则样本语音的预测语种的确定过程可以包括步骤121-步骤122:

步骤121:将样本语音对应的M

其中,第二融合子层用于将该第二融合子层的输入数据进行特征融合。另外,本申请实施例不限定第二融合子层的工作原理,例如,若第二融合子层的输入数据包括

式中,

样本语音对应的语种融合特征是由第二融合子层针对该样本语音对应的M

步骤122:将样本语音对应的语种融合特征输入语种预测子层,得到该语种预测子层输出的该样本语音的预测语种。

其中,语种预测子层用于针对该语种预测子层的输入数据进行语种确定(如,语种分类)。另外,本申请实施例不限定语种预测子层,例如,该语种预测子层可以是任一种分类层(如,softmax层)。

需要说明的是,若语种预测子层是任一种分类层,则该语种预测子层输出的神经元个数可以与该待训练模型的训练集中语种标签个数保持一致。

基于上述步骤105的相关内容可知,在由语种特征提取子层输出样本语音对应的第1个语种提取特征至第M

基于上述步骤95的相关内容可知,在获取到样本语音的声学特征和该样本语音的至少一个变速特征之后,可以将该样本语音的声学特征及其至少一个变速特征输入待训练模型,以使该待训练模型依据该样本语音的声学特征及其至少一个变速特征进行说话人预测以及语种预测,得到并输出该样本语音的预测说话人和样本语音的预测语种。

步骤96:判断是否达到预设停止条件,若是,则执行步骤98;若否,则执行步骤97。

步骤97:根据样本语音的预测说话人、该样本语音的实际说话人、该样本语音的预测语种和该样本语音的实际语种,更新待训练模型,并返回执行步骤95。

步骤98:根据待训练模型,构建声纹提取模型。

需要说明的是,步骤96、步骤97和步骤98的内容请分别参见上文S104、S105和S106。

基于上述步骤91至步骤98的相关内容可知,本申请实施例中,在获取到样本语音之后,可以先按照至少一个预设倍速对该样本语音进行变速处理,得到该样本语音的至少一个变速语音;再对样本语音及其至少一个变速语音分别进行声学特征提取,得到该样本语音的声学特征及其至少一个变速特征;最后,利用该样本语音的声学特征及其至少一个变速特征、该样本语音的实际说话人和该样本语音的实际语种,构建声纹提取模型。其中,因样本语音的声学特征及其至少一个变速特征能够更全面地表示出该样本语音携带的信息,使得基于该样本语音的声学特征及其至少一个变速特征构建的声纹提取模型具有更好的声纹特征提取性能。

基于上述声纹提取模型构建方法的相关内容,本申请实施例还提供了一种声纹识别方法,下面结合附图进行说明。

参见图4,该图为本申请实施例提供的一种声纹识别方法的流程图。

本申请实施例提供的声纹识别方法,包括S401-S404:

S401:获取待识别语音。

其中,待识别语音是指需要进行声纹识别的语音。

S402:对待识别语音进行声学特征提取,得到待识别语音的声学特征。

其中,待识别语音的声学特征用于表示该待识别语音携带的信息。

需要说明的是,S402可以采用上文S102的任一实施方式进行实施,只需将上文S102的任一实施方式中“样本语音”替换为“待识别语音”即可。

S403:根据待识别语音的声学特征和预先构建的声纹提取模型,确定该待识别语音的声纹特征。

其中,声纹提取模型可以利用本申请实施例提供的声纹提取模型构建方法的任一实施方式进行构建。

为了便于理解S403,下面结合两个示例进行说明。

示例1,若声纹提取模型是根据样本语音的声学特征、该样本语音的实际说话人和该样本语音的实际语种构建的(也就是,声纹提取模型是利用上文S101-S106的任一实施方式进行构建的),则S403具体可以包括:将待识别语音的声学特征输入预先构建的声纹提取模型,得到该声纹提取模型输出的该待识别语音的声纹特征。

示例2,若声纹提取模型是根据样本语音的声学特征、该样本语音的M

S4031:将待识别语音按照M

S4032:对待识别语音的M

需要说明的是,S4031和S4032可以分别采用上文步骤93和步骤94的任一实施方式进行实施,只需将上文步骤93和步骤94的任一实施方式中“样本语音”替换为“待识别语音”即可。

S4033:将待识别语音的声学特征和该待识别语音的M

本申请实施例中,在将待识别语音的声学特征和该待识别语音的M

S4034:根据待识别语音对应的M

本申请实施例中,在获取到待识别语音对应的M

式中,

基于上述S403的相关内容可知,在获取到待识别语音的声学特征之后,可以利用该待识别语音的声学特征以及预先构建的声纹提取模型,确定该待识别语音的声纹特征,以使该待识别语音的声纹特征几乎不携带该待识别语音携带的语种信息,从而使得该待识别语音的声纹特征能够更准确地表示出该待识别语音携带的说话人信息。

S404:根据待识别语音的声纹特征,确定待识别语音的说话人。

本申请实施例不限定S404的实施方式,而且在不同应用场景下,S404可以采用不同的实施方式。下面结合示例进行说明。

作为示例,在一些应用场景下,可以通过声纹比对来确定待识别语音的说话人。基于此可知,S404具体可以为:计算待识别语音的声纹特征与待比对语音的声纹特征之间的相似度;若该相似度高于预设相似度阈值,则确定该待识别语音的说话人与该待比对语音的说话人相同;若该相似度低于预设相似度阈值,则确定该待识别语音的说话人不同于该待比对语音的说话人。

其中,待比对语音是指在确定待识别语音的说话人时需要参考的语音。另外,待比对语音的声纹特征可以采用上文S401-S403的任一实施方式进行实施,只需将上文S401-S403的任一实施方式中“待识别语音”替换为“待比对语音”即可。

另外,本申请实施例不限定上文“相似度”的计算方式,例如,可以利用余弦距离进行计算(如公式(10)所示)。

式中,Similarity表示待识别语音的声纹特征与待比对语音的声纹特征之间的相似度;

基于上述S401至S404的相关内容可知,本申请实施例中,在获取到待识别语音之后,可以先对该待识别语音进行声学特征提取,得到并输出该待识别语音的声学特征;再根据该待识别语音的声学特征和预先构建的声纹提取模型,确定该待识别语音的声纹特征;最后,依据该待识别语音的声纹特征,确定待识别语音的说话人。其中,因预先构建的声纹提取模型在进行声纹特征提取时几乎不受语种干扰,使得构建好的声纹提取模型具有较好的声纹特征提取性能,从而使得利用该声纹提取模型针对待识别语音提取的声纹特征能够准确地表示出该待识别语音的说话人信息,如此使得基于该提取的声纹特征确定出的该待识别语音的说话人更准确。

基于上述方法实施例提供的声纹提取模型构建方法,本申请实施例还提供了一种声纹提取模型构建装置,下面结合附图进行解释和说明。

装置实施例对声纹提取模型构建装置进行介绍,相关内容请参见上述方法实施例。

参见图4,该图为本申请实施例提供的一种声纹提取模型构建装置的结构示意图。

本申请实施例提供的声纹提取模型构建装置500,包括:

样本获取单元501,用于获取样本语音、所述样本语音的实际说话人和所述样本语音的实际语种;

第一提取单元502,用于对所述样本语音进行声学特征提取,得到所述样本语音的声学特征;

样本预测单元503,用于将所述样本语音的声学特征输入待训练模型,得到所述待训练模型输出的所述样本语音的预测说话人和所述样本语音的预测语种;

模型更新单元504,用于根据所述样本语音的预测说话人、所述样本语音的实际说话人、所述样本语音的预测语种和所述样本语音的实际语种,更新所述待训练模型,并返回所述样本预测单元执行所述将所述样本语音的声学特征输入待训练模型,直至在达到预设停止条件时,根据所述待训练模型,构建声纹提取模型。

在一种可能的实施方式中,所述待训练模型包括特征生成层、说话人识别层和语种识别层;

所述样本语音的预测说话人和所述样本语音的预测语种的确定过程,包括:

将所述样本语音的声学特征输入所述特征生成层,得到所述特征生成层输出的所述样本语音的待使用特征;

将所述样本语音的待使用特征输入所述说话人识别层,得到所述说话人识别层输出的所述样本语音的预测说话人;

将所述样本语音的待使用特征输入所述语种识别层,得到所述语种识别层输出的所述样本语音的预测语种。

在一种可能的实施方式中,所述特征生成层包括第一预设层数的时延神经网络;

所述样本语音的待使用特征的确定过程,包括:

将所述样本语音的声学特征输入所述第一预设层数的时延神经网络,得到所述第一预设层数的时延神经网络输出的所述样本语音的待使用特征。

在一种可能的实施方式中,所述说话人识别层包括说话人特征提取子层和说话人确定子层;

所述样本语音的预测说话人的确定过程,包括:

将所述样本语音的待使用特征输入所述说话人特征提取子层,得到所述说话人特征提取子层输出的所述样本语音的说话人特征;

将所述样本语音的说话人特征输入所述说话人确定子层,得到所述说话人确定子层输出的所述样本语音的预测说话人。

在一种可能的实施方式中,所述说话人特征提取子层包括统计池化子层和第二预设层数的线性子层;

所述样本语音的说话人特征的确定过程,包括:

将所述样本语音的待使用特征输入所述统计池化子层,得到所述统计池化子层输出的所述样本语音的统计特征;

将所述样本语音的统计特征输入所述第二预设层数的线性子层,得到所述第二预设层数的线性子层输出的所述样本语音的说话人特征。

在一种可能的实施方式中,所述语种识别层包括语种特征提取子层和语种确定子层;

所述样本语音的预测语种的确定过程,包括:

将所述样本语音的待使用特征输入所述语种特征提取子层,得到所述语种特征提取子层输出的所述样本语音的语种特征;

将所述样本语音的语种特征输入所述语种确定子层,得到所述语种确定子层输出的所述样本语音的预测语种。

在一种可能的实施方式中,所述语种特征提取子层包括第三预设层数的双向长短时记忆网络、线性子层和统计子层;

所述样本语音的语种特征的确定过程,包括:

将所述样本语音的待使用特征输入所述第三预设层数的双向长短时记忆网络,得到所述第三预设层数的双向长短时记忆网络输出的所述样本语音的语种提取信息;

将所述样本语音的语种提取信息输入所述线性子层,得到所述线性子层输出的所述样本语音的语种变换信息;

将所述样本语音的语种变换信息输入所述统计子层,得到所述统计子层输出的所述样本语音的语种特征。

在一种可能的实施方式中,所述待训练模型包括特征生成层、说话人识别层和语种识别层;其中,所述说话人识别层的输入数据包括所述特征生成层的输出数据;所述语种识别层的输入数据包括所述特征生成层的输出数据;

所述模型更新单元504,包括:

第一确定子单元,用于若所述待训练模型是利用反向传播算法进行更新的,则根据所述样本语音的预测说话人、所述样本语音的实际说话人、所述样本语音的预测语种和所述样本语音的实际语种,确定由说话人识别层向特征生成层回传的梯度和由语种识别层向特征生成层回传的梯度;

第二确定子单元,用于将所述由语种识别层向特征生成层回传的梯度与负值参数进行相乘,得到由语种识别层向特征生成层回传的校正梯度;

层更新子单元,用于根据所述由说话人识别层向特征生成层回传的梯度和所述由语种识别层向特征生成层回传的校正梯度,对所述特征生成层进行更新。

在一种可能的实施方式中,所述模型更新单元504,还包括:

获取子单元,用于获取所述待训练模型的更新次数;

第三确定子单元,用于根据所述待训练模型的更新次数,确定所述负值参数。

在一种可能的实施方式中,所述负值参数的确定公式为:

式中,W

在一种可能的实施方式中,所述待训练模型包括特征生成层、说话人识别层和语种识别层;其中,所述说话人识别层的输入数据包括所述特征生成层的输出数据;所述语种识别层的输入数据包括所述特征生成层的输出数据;

所述模型更新单元504,包括:

模型构建子单元,用于根据所述特征生成层和所述说话人识别层,构建声纹提取模型。

在一种可能的实施方式中,所述说话人识别层包括说话人特征提取子层和说话人确定子层,且所述说话人确定子层的输入数据包括所述说话人特征提取子层的输出数据;

模型构建子单元,具体用于:若所述声纹提取模型包括声纹信息提取层和声纹特征生成层,且所述声纹特征生成层的输入数据包括所述声纹信息提取层的输出数据,则根据所述特征生成层确定所述声纹信息提取层,并根据所述说话人特征提取子层确定所述声纹特征生成层。

在一种可能的实施方式中,所述声纹提取模型构建装置500还包括:

变速处理单元,用于将所述样本语音按照至少一个预设倍速进行变速处理,得到所述样本语音的至少一个变速语音;

第三提取单元,用于对所述样本语音的至少一个变速语音分别进行声学特征提取,得到所述样本语音的至少一个变速特征;

所述样本预测单元503,具体用于:将所述样本语音的声学特征和所述样本语音的至少一个变速特征输入待训练模型,得到所述待训练模型输出的所述样本语音的预测说话人和所述样本语音的预测语种。

基于上述方法实施例提供的声纹识别方法,本申请实施例还提供了一种声纹识别装置,下面结合附图进行解释和说明。

装置实施例对声纹识别装置进行介绍,相关内容请参见上述方法实施例。

参见图5,该图为本申请实施例提供的一种声纹识别装置的结构示意图。

本申请实施例提供的声纹识别装置600,包括:

语音获取单元601,用于获取待识别语音;

第二提取单元602,用于对所述待识别语音进行声学特征提取,得到所述待识别语音的声学特征;

声纹预测单元603,用于根据所述待识别语音的声学特征和预先构建的声纹提取模型,确定所述待识别语音的声纹特征;其中,所述声纹提取模型是利用本申请实施例提供的声纹提取模型构建方法的任一实施方式进行构建的;

声纹识别单元604,用于根据所述待识别语音的声纹特征,确定所述待识别语音的说话人。

进一步地,本申请实施例还提供了一种设备,包括:处理器、存储器、系统总线;

所述处理器以及所述存储器通过所述系统总线相连;

所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述声纹提取模型构建方法的任一种实现方法,或者执行上述声纹识别方法的任一种实现方法。

进一步地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述声纹提取模型构建方法的任一种实现方法,或者执行上述声纹识别方法的任一种实现方法。

进一步地,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行上述声纹提取模型构建方法的任一种实现方法,或者执行上述声纹识别方法的任一种实现方法。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备,等等)执行本申请各个实施例或者实施例的某些部分所述的方法。

需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

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

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

相关技术
  • 一种声纹提取模型构建方法、声纹识别方法及其相关设备
  • 声纹识别模型训练方法、声纹识别方法及相关设备
技术分类

06120113081601