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

声纹识别方法、声纹提取网络的训练方法及相关装置

文献发布时间:2023-06-19 16:04:54



技术领域

本申请属于声纹识别技术领域,具体涉及一种声纹识别方法、声纹提取网络的训练方法及相关装置。

背景技术

说话人识别,又称为声纹识别,是一种根据人的语音来区分说话人身份的技术。声纹是指语音信息的声波频谱,本质上是一种时域信息和频域信息的结合。声纹识别的理论基础是每一个声音都具有独特的特征,通过该特征能将不同人的声音进行有效的区分。

近年来,在说话人识别领域,随着深度学习方法的兴起,研究人员提出了多种声纹提取网络。但是目前的声纹提取网络存在泛化能力低,识别准确率低的问题。

发明内容

本申请提供一种声纹识别方法、声纹提取网络的训练方法及相关装置,以提高声纹提取网络的泛化能力,提高识别准确率。

为解决上述技术问题,本申请采用的一个技术方案是:提供一种声纹识别方法,包括:对待识别音频进行特征提取,以获得待识别音频特征;将所述待识别音频特征输入至训练后的声纹提取网络中,以获得待识别声纹特征;其中,训练所述声纹提取网络时基于有说话人标签的语音数据和无说话人标签的语音数据,且训练所述声纹提取网络时所采用的总损失与有监督损失和半监督损失相关;基于所述待识别声纹特征确定与所述待识别音频对应的说话人。

为解决上述技术问题,本申请采用的另一个技术方案是:提供一种声纹提取网络的训练方法,包括:构建第一样本集和第二样本集;其中,所述第一样本集中包含多个第一音频样本,且每个所述第一音频样本设置有说话人标签;所述第二样本集中包含多个第二音频样本,且每个所述第二音频样本未设置说话人标签;对多个所述第一音频样本分别进行特征提取以获得多个第一音频特征、以及对多个所述第二音频样本分别进行特征提取以获得多个第二音频特征;将多个所述第一音频特征和多个所述第二音频特征输入至第一声纹提取网络中以获得每个音频特征对应的第一后验概率、以及将多个所述第一音频特征和多个所述第二音频特征输入至第二声纹提取网络中以获得每个音频特征对应的第二后验概率;基于所有所述第一音频特征的第一后验概率和第二后验概率获得所述有监督损失、以及基于所有第二音频特征的第一后验概率和第二后验概率获得所述半监督损失;基于所述有监督损失和所述半监督损失获得总损失,并基于所述总损失分别调整所述第一声纹提取网络和所述第二声纹提取网络中的参数;响应于达到停止训练条件,将所述第一声纹提取网络和所述第二声纹提取网络中的一个作为训练后的声纹提取网络输出。

为解决上述技术问题,本申请采用的另一个技术方案是:提供一种声纹识别装置,包括:第一提取模块,用于对待识别音频进行特征提取,以获得待识别音频特征;第二提取模块,与所述第一提取模块连接,用于将所述待识别音频特征输入至训练后的声纹提取网络中,以获得待识别声纹特征;其中,训练所述声纹提取网络时基于有说话人标签的语音数据和无说话人标签的语音数据,且训练所述声纹提取网络时所采用的总损失与有监督损失和半监督损失相关;确定模块,与所述第二提取模块连接,用于基于所述待识别声纹特征确定与所述待识别音频对应的说话人。

为解决上述技术问题,本申请采用的另一个技术方案是:提供一种电子设备,包括相互耦接的存储器和处理器,所述存储器中存储有程序指令,所述处理器用于执行所述程序指令以实现上述任一实施例中所述的声纹识别方法。

为解决上述技术问题,本申请采用的另一个技术方案是:提供一种存储装置,存储有能够被处理器运行的程序指令,所述程序指令用于实现上述任一实施例中所述的声纹识别方法。

区别于现有技术情况,本申请的有益效果是:本申请所提供的声纹识别方法中利用训练后的声纹提取网络来提取获得待识别声纹特征;其中,在训练该声纹提取网络时,利用较易获取且成本较低的海量无说话人标签的语音数据和少量带说话人标签的语音数据进行训练,且采用有监督损失函数和半监督损失函数的组合作为目标函数进行训练。相比现有技术中,只利用少量带说话人标签的语音数据进行训练的方式相比,其鲁棒性更好,能够更多的学习到海量无说话人标签的语音数据中说话人相关的信息,显著提升声纹提取网络的识别性能,提升说话人识别的准确率。

附图说明

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

图1为本申请声纹识别方法一实施方式的流程示意图;

图2为Xvector网络模型一实施方式的结构示意图;

图3为本申请声纹提取网络的训练方法一实施方式的流程示意图;

图4为图3中声纹提取网络的训练方法一实施方式的结构示意图;

图5为图3中步骤S206之后一实施方式的流程示意图;

图6为本申请声纹识别装置一实施方式的结构示意图;

图7为本申请电子设备一实施方式的结构示意图;

图8为本申请存储装置一实施方式的结构示意图。

具体实施方式

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

请参阅图1,图1为本申请声纹识别方法一实施方式的流程示意图,该声纹识别方法包括:

S101:对待识别音频进行特征提取,以获得待识别音频特征。

具体地,上述待识别音频特征可以为FB特征(即频域特征),上述步骤S101的具体实现过程可以为:对待识别音频依次进行预加重、分帧、加窗、短时傅里叶变换(STFT)、Mel滤波、去均值等步骤以获得待识别音频特征。例如,该待识别音频特征可以为48维FB特征。

S102:将待识别音频特征输入至训练后的声纹提取网络中,以获得待识别声纹特征;其中,训练声纹提取网络时基于有说话人标签的语音数据和无说话人标签的语音数据,且训练声纹提取网络时所采用的总损失与有监督损失和半监督损失相关。

具体地,上述声纹提取网络可以为基于时延神经网络(TDNN)结构的Xvector网络模型。该模型可以提取音频特征在时域上的一阶和二阶统计量信息,并且通过时延神经网络的延时映射机制,建立起时域和频域之间的关联关系。在许多论文实验结果中,利用TDNN对语音信号的时序结构进行建模的方法,相比起传统的全变量系统模型,在说话人识别领域中有着显著的优势。请参阅图2,图2为Xvector网络模型一实施方式的结构示意图。Xvector网络模型一般包含多层帧级别的TDNN层(例如,图2中包含五层TDNN,分别为TDNN1,…,TDNN5)、一个统计池化层(例如,图2中Statistic Pooling)、两层句子级别的全连接层(例如,图2中Linear1和Linear2)、以及一层激活函数层(例如,图2中Softmax);其中,待识别声纹特征为Linear2的输出。

S103:基于待识别声纹特征确定与待识别音频对应的说话人。

具体地,上述步骤S103的具体实现过程可以为:将待识别声纹特征与数据库中已有声纹特征进行相似度比对,并将相似度最高且超过阈值的已有声纹特征对应的说话人作为该待识别音频对应的说话人。其中,数据库中已有声纹特征的获取方式可以为:将具有说话人标签的已有语音数据输入至训练后的声纹提取网络中获得。

可选地,在本实施例中,待识别声纹特征和已有声纹特征可以采用余弦距离进行相似度比对,以公式表示如下:

其中,Similarity为相似度,

在上述设计方式中,本申请利用训练后的声纹提取网络来提取获得待识别声纹特征;其中,在训练该声纹提取网络时,利用较易获取且成本较低的海量无说话人标签的语音数据和少量带说话人标签的语音数据进行训练,且采用有监督损失函数和半监督损失函数组合作为目标函数进行训练。相比现有技术中,只利用少量带说话人标签的语音数据进行训练的方式相比,其鲁棒性更好,能够更多的学习到海量无说话人标签的语音数据中说话人相关的信息,显著提升声纹提取网络的识别性能,提升说话人识别的准确率。

下面对上述声纹提取网络的训练过程作详细说明。请参阅图3和图4,图3为本申请声纹提取网络的训练方法一实施方式的流程示意图,图4为图3中声纹提取网络的训练方法一实施方式的结构示意图。该训练过程包括:

S201:构建第一样本集和第二样本集;其中,第一样本集中包含多个第一音频样本,且每个第一音频样本设置有说话人标签;第二样本集中包含多个第二音频样本,且每个第二音频样本未设置说话人标签。

具体地,在本实施例中,上述第一音频样本的个数可以少于第二音频样本的个数,第二音频样本可以利用网络等方式获取到。

S202:对多个第一音频样本分别进行特征提取以获得多个第一音频特征、以及对多个第二音频样本分别进行特征提取以获得多个第二音频特征。

具体地,第一音频特征和第二音频特征可以为FB特征(即频域特征),其提取过程与上述步骤S101中获得待识别音频特征的过程类似,在此不再赘述。

S203:将多个第一音频特征和多个第二音频特征输入至第一声纹提取网络10(如图4所示)中以获得每个音频特征对应的第一后验概率、以及将多个第一音频特征和多个第二音频特征输入至第二声纹提取网络12(如图4所示)中以获得每个音频特征对应的第二后验概率。

具体地,本申请中半监督训练过程是由两个并行的第一声纹提取网络10和第二声纹提取网络12组成,且第一声纹提取网络10和第二声纹提取网络12具有相同的网络结构,但随机初始化参数不同。可选地,第一声纹提取网络10和第二声纹提取网络12均为基于时延神经网络(TDNN)结构的Xvector网络模型,第一声纹提取网络10和第二声纹提取网络12的网络结构可以如图2中所示。其中,第一后验概率可以为第一声纹提取网络10中Softmax归一化后的网络输出,第二后验概率可以为第二声纹提取网络12中Softmax归一化后的网络输出。

S204:基于所有第一音频特征的第一后验概率和第二后验概率获得有监督损失、以及基于所有第二音频特征的第一后验概率和第二后验概率获得半监督损失。

具体地,上述半监督损失与无说话人标签的第二音频特征相关,上述有监督损失与有说话人标签的第一音频特征相关。

在一个实施方式中,上述步骤S204中基于所有第二音频特征的第一后验概率和第二后验概率获得半监督损失的过程可以为:A、基于每个第二音频样本的第一后验概率获得对应的第一伪说话人标签、以及基于每个第二音频样本的第二后验概率获得对应的第二伪说话人标签。具体地,可以通过第一后验概率预测获得对应的第一伪说话人标签、以及通过第二后验概率预测获得对应的第二伪说话人标签。B、基于同一第二音频样本的第一后验概率和第二伪说话人标签获得第一子损失、以及基于同一第二音频样本的第二后验概率和第一伪说话人标签获得第二子损失。该步骤的目的是以其中一个声纹提取网络输出的伪标签来监督另一个声纹提取网络输出的后验概率。C、获得所有第二音频样本的第一子损失和第二子损失的第一和值,并将第一和值与第二音频样本的个数的第一比值作为半监督损失。以公式表示如下:

其中,Lssl为半监督损失、score1为第一后验概率、Pseudolabel2为第二伪说话人标签、score2为第二后验概率、Pseudolabel1为第一伪说话人标签、D

另外,在上述实施例中,是基于L

其中,N为当前样本数量的大小,cosθ

在另一个实施方式中,上述步骤S204中基于所有第一音频特征的第一后验概率和第二后验概率获得有监督损失的步骤,包括:A、基于每个第一音频样本的第一后验概率和对应的说话人标签获得第三子损失、以及基于每个第一音频样本的第二后验概率和对应的说话人标签获得第四子损失。B、获得所有第一音频样本的第三子损失和第四子损失的第二和值,并将第二和值与第一音频样本的个数的第二比值作为有监督损失。以公式表示如下:

其中,Ls为有监督损失、score1为第一后验概率、label为对应的说话人标签、score2为第二后验概率、D

S205:基于有监督损失和半监督损失获得总损失,并基于总损失分别调整第一声纹提取网络和第二声纹提取网络中的参数。

具体地,可以将上述有监督损失和半监督损失之和作为总损失。或者,在其他实施例中,也可将有监督损失乘以第一权重后获得第一乘积、将半监督损失乘以第二权重后获得第二乘积,并将第一乘积和第二乘积之和作为总损失。

S206:响应于达到停止训练条件,将第一声纹提取网络和第二声纹提取网络中的一个作为训练后的声纹提取网络输出。

具体地,上述停止训练条件可以为总损失收敛、或者达到预设训练次数等。当停止训练后,可以截取训练后的第一声纹提取网络和第二声纹提取网络中的一个作为训练后的声纹提取网络输出。

可选地,具体截取方式可以为:获得停止训练时与第一声纹提取网络10相关的第二子损失和第三子损失的第三和值、以及获得停止训练时与第二声纹提取网络12相关的第一子损失和第四子损失的第四和值;将第三和值和第四和值中较小的一个所对应的声纹提取网络输出。

此外,在经过图3中的步骤预训练完成后,还可对输出的训练后的声纹提取网络进行下一步微调。具体请参阅图5,图5为图3中步骤S206之后一实施方式的流程示意图,上述步骤S206之后还包括:

S301:构建第三样本集;其中,第三样本集中包含多个第三音频样本,且每个第三音频样本设置有说话人标签,同一说话人标签对应有至少一个第三音频样本。

具体地,一般而言,由于带说话人标签的语音数据有限,因此我们可以通过变调不变速操作对语音数据进行增广。具体来说,音调是由基频决定的,即基频越高,音调越高,基频越低,音调越低。因此,语音变调不变速就是指改变说话人基频的大小,同时保持语速和语义不变,即保持短时频谱包络(共振峰的位置和带宽)和时间过程基本不变。此操作主要思路是将同一人所有语音音调调整为原来的N倍,然后认为是一个新的说话人,这里N取0.8/0.9/1.1/1.2,即说话人数目多了4倍,训练样本数也多了4倍,丰富了训练样本,扩充了声纹样本空间,提升其说话人信息的含量,有助于训练说话人模型。

对应的,其具体过程可以为:A、获得多个第三音频样本,且每个第三音频样本设置有说话人标签;可选地,该第三音频样本可以为步骤S201中所采用的第一音频样本。B、调整至少部分第三音频样本的音调以形成新的第三音频样本,且调整后的第三音频样本的说话人标签与调整前的第三音频样本的说话人标签不同;C、基于调整前的所有第三音频样本和调整后的所有第三音频样本构建第三样本集。

S302:利用训练后的声纹提取网络从第三样本集中筛选出子样本集;其中,子样本集中包含多个相似度超过阈值且具有不同说话人标签的第三音频样本。

具体地,上述步骤S302的具体实现过程可以为:

A、利用训练后的声纹提取网络获得与第三样本集中每个说话人标签对应的类中心矩阵。具体地,可以将第三样本集中的多个第三音频样本输入至训练后的声纹提取网络中;在声纹提取网络中输出后验概率之前有个虚拟层,虚拟层可以输出当前第三音频样本对应的中心矢量,将具有相同说话人标签的中心矢量进行汇总以形成对应的类中心矩阵。

B、获得第三样本集中每个说话人标签的类中心矩阵与其余说话人标签的类中心矩阵之间的相似度矩阵。具体地,可以针对第三样本集中的每个说话人标签,获得当前说话人标签的类中心矩阵与其余说话人标签的类中心矩阵之间的余弦相似度,进而构建获得相似度矩阵。

C、从第三样本集中随机选择至少一个说话人标签作为第一目标标签,从每个第一目标标签的相似度矩阵中获得相似度值较大的至少一个其余说话人标签作为第二目标标签。

D、针对每个第二目标标签,随机挑选出具有第二目标标签的第三音频样本加入子样本集。

具体地,可以从第三样本集中随机选定N个说话人标签作为第一目标标签;针对每个第一目标标签,根据与之相关的相似度矩阵,获得与之相关的M个最相似的说话人标签作为第二目标标签;然后从具有第二目标标签的样本中随机选择一条加入到子样本集中,最终子样本集中包含N*M个样本。

S303:基于子样本集对应的损失调整训练后的声纹提取网络。

具体地,获得子样本集对应的L

此外,上述步骤S301-步骤S303的训练过程可以多次进行,且在训练周期中,每代开始都会更新相似度矩阵,并进行topM相似样例的重新采样。

上述设计方式中,在上一步预训练完成后,使用变调增广后的带说话人标签的训练数据进行网络微调,采用困难样例挖掘的方式,进行有监督训练的微调方式。困难样例挖掘可挑选出数据中最相似的说话人,并采样相似的说话人数据作为困难样例,进行重点训练。此方法可增强模型对音色相近的声纹的区分能力,增强模型的鲁棒性和声纹识别性能。

请参阅图6,图6为本申请声纹识别装置一实施方式的结构示意图,该声纹识别装置具体包括:第一提取模块20、第二提取模块22和确定模块24。其中,第一提取模块20用于对待识别音频进行特征提取,以获得待识别音频特征。第二提取模块22与第一提取模块20连接,用于将待识别音频特征输入至训练后的声纹提取网络中,以获得待识别声纹特征;其中,训练声纹提取网络时基于有说话人标签的语音数据和无说话人标签的语音数据,且训练声纹提取网络时所采用的总损失与有监督损失和半监督损失相关。确定模块24与第二提取模块22连接,用于基于待识别声纹特征确定与待识别音频对应的说话人。

请继续参阅图6,本申请所提供的声纹识别装置还包括第一训练模块26,第一训练模块26与第二提取模块22连接,用于构建第一样本集和第二样本集;其中,第一样本集中包含多个第一音频样本,且每个第一音频样本设置有说话人标签;第二样本集中包含多个第二音频样本,且每个第二音频样本未设置说话人标签;对多个第一音频样本分别进行特征提取以获得多个第一音频特征、以及对多个第二音频样本分别进行特征提取以获得多个第二音频特征;将多个第一音频特征和多个第二音频特征输入至第一声纹提取网络中以获得每个音频特征对应的第一后验概率、以及将多个第一音频特征和多个第二音频特征输入至第二声纹提取网络中以获得每个音频特征对应的第二后验概率;基于所有第一音频特征的第一后验概率和第二后验概率获得有监督损失、以及基于所有第二音频特征的第一后验概率和第二后验概率获得半监督损失;基于有监督损失和半监督损失获得总损失,并基于总损失分别调整第一声纹提取网络和第二声纹提取网络中的参数;响应于达到停止训练条件,将第一声纹提取网络和第二声纹提取网络中的一个作为训练后的声纹提取网络输出。

其中,上述基于所有第二音频特征的第一后验概率和第二后验概率获得半监督损失的步骤,包括:基于每个第二音频样本的第一后验概率获得对应的第一伪说话人标签、以及基于每个第二音频样本的第二后验概率获得对应的第二伪说话人标签;基于同一第二音频样本的第一后验概率和第二伪说话人标签获得第一子损失、以及基于同一第二音频样本的第二后验概率和第一伪说话人标签获得第二子损失;获得所有第二音频样本的第一子损失和第二子损失的第一和值,并将第一和值与第二音频样本的个数的第一比值作为半监督损失。

上述基于所有第一音频特征的第一后验概率和第二后验概率获得有监督损失的步骤,包括:基于每个第一音频样本的第一后验概率和对应的说话人标签获得第三子损失、以及基于每个第一音频样本的第二后验概率和对应的说话人标签获得第四子损失;获得所有第一音频样本的第三子损失和第四子损失的第二和值,并将第二和值与第一音频样本的个数的第二比值作为有监督损失。

请继续参阅图6,本申请所提供的声纹识别装置还包括第二训练模块28,连接于第一训练模块26和第二提取模块22之间,用于在第一训练模块26训练完毕后,构建第三样本集;其中,第三样本集中包含多个第三音频样本,且每个第三音频样本设置有说话人标签,且同一说话人标签对应有至少一个第三音频样本;利用训练后的声纹提取网络从第三样本集中筛选出子样本集;其中,子样本集中包含多个相似度超过阈值且具有不同说话人标签的第三音频样本;基于子样本集对应的损失调整训练后的声纹提取网络。

其中,利用训练后的声纹提取网络从第三样本集中筛选出子样本集的步骤,包括:利用训练后的声纹提取网络获得与第三样本集中每个说话人标签对应的类中心矩阵;获得第三样本集中每个说话人标签的类中心矩阵与其余说话人标签的类中心矩阵之间的相似度矩阵;从第三样本集中随机选择至少一个说话人标签作为第一目标标签,从每个第一目标标签的相似度矩阵中获得相似度值较大的至少一个其余说话人标签作为第二目标标签;针对每个第二目标标签,随机挑选出具有第二目标标签的第三音频样本加入子样本集。

其中,构建第三样本集的步骤,包括:获得多个第三音频样本,且每个第三音频样本设置有说话人标签;调整至少部分第三音频样本的音调以形成新的第三音频样本,且调整后的第三音频样本的说话人标签与调整前的第三音频样本的说话人标签不同;基于调整前的所有第三音频样本和调整后的所有第三音频样本构建第三样本集。

请参阅图7,图7为本申请电子设备一实施方式的结构示意图。该电子设备包括:相互耦接的存储器32和处理器30,存储器32中存储有程序指令,处理器30用于执行程序指令以实现上述任一实施例中的方法。具体地,电子设备包括但不限于:台式计算机、笔记本电脑、平板电脑、服务器等,在此不做限定。此外,处理器30还可以称为CPU(CenterProcessing Unit,中央处理单元)。处理器30可能是一种集成电路芯片,具有信号处理能力。处理器30还可以是、通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器30可以由集成电路芯片共同实现。

请参阅图8,图8为本申请存储装置一实施方式的结构示意图,该存储装置40存储有能够被处理器运行的程序指令400,程序指令400用于实现上述任一实施例中的方法。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。

技术分类

06120114693445