本发明属于声纹识别技术领域,特别是涉及一种基于孪生神经网络的声纹比对方法。
背景技术:
声纹特征是生物特征的一种,每个人具有固有的特征。声纹识别技术是仅次于指纹识别、人脸识别和掌纹的生物识别技术,在识别领域具有广泛的研究和应用。
之前研究者所提出的声纹特征大多是基于语音的韵律特征和音质特征,均为人工设计的特征,系统的鲁棒性不高,很容易受到环境的影响。
现提供一种基于孪生神经网络的声纹比对方法,提高声纹识别的准确率。
技术实现要素:
本发明的目的在于提供一种基于孪生神经网络的声纹比对方法,通过基于孪生神经网络的声纹比对方法,提高声纹识别的准确率。
为解决上述技术问题,本发明是通过以下技术方案实现的:
本发明为一种基于孪生神经网络的声纹比对方法,包括以下步骤:
ss01:利用已经标注过说话人身份的语音数据,进行快速傅里叶变换,得到对应语谱图作为孪生神经网络输入;
ss02:组成样本对,并给样本对配上是否来自同一个人的标签;
ss03:以对比损失函数为训练准则,训练孪生神经网络声纹比对模型;
ss04:在声纹比对系统中,验证说话人的身份,验证步骤如下:
s041:采集语音信号;
s042:进行快速傅里叶变换,得到语谱图;
s043:所述语谱图输入训练完成的孪生神经网络声纹比对模型中得到对应的声纹特征;
s044:所述声纹特征和数据库中注册的人的声纹特征向量进行相似度量,验证说话人的身份。
进一步地,所述孪生神经网络声纹比对模型的训练包括如下步骤:
s031:对标注过说话人身份的语音数据进行快速傅里叶变换得到语谱图;
s032:语谱图组成样本对(x1,x2,y),并给样本对配上是否来自同一个人的标签;其中,y=1表示语谱图x1和x2来自同一个人,y=0表示语谱图x1和x2来自不同人;
s033:搭建孪生神经网络声纹比对模型,并初始化模型各层参数;其中,孪生神经网络为两个结构相同并共享网络参数的神经网络,每个网络分别接收语谱图样本对中的一个样本;
s034:随机采样训练样本对并进行前向运算,使用对比损失函数为损失函数并计算损失;
s035:采样随机梯度下降法误差反向传播算法对模型参数进行更新;
s036:模型收敛后保存训练好的孪生神经网络声纹比对模型的参数。
进一步地,所述步骤s044中声纹特征和数据库中注册的人的声纹特征向量进行相似度量的函数定义如下:
ew=||gw(x1)-gw(x2)||;
其中,ew表示两个声纹的欧氏距离相似度,x1表示说话人语音的语谱图,gw()表示孪生神经网络,gw(x1)表示把x1从语谱图特征空间映射到孪生神经网络声纹特征所在的空间,即gw(x1)为x1的声纹特征,gw(x2)表示x2的声纹特征。
进一步地,若两个语音段的声纹特征向量相似度小于阈值t,则说明这两个语音段来自同一人,声纹比对成功;反之则说明这两个语音段来自不同人,声纹比对失败。
进一步地,所述步骤s034中对比损失函数的定义如下:
其中,loss为损失函数,ew,i表示第i对样本对中两个声纹的欧氏距离相似度,q是一个常量;y是第i对样本对的标签。
进一步地,所述的声纹比对方法应用于语言交互终端的声纹识别系统,语言交互终端的声纹识别系统均可训练孪生神经网络声纹比对模型和提取声纹特征,并配置在终端中,语言交互终端包括移动端、个人电脑终端、便携式终端。
本发明具有以下有益效果:
本发明通过利用已经标注过说话人身份的语音数据,进行快速傅里叶变换,得到对应语谱图作为孪生神经网络输入;组成样本对,并给样本对配上是否来自同一个人的标签;以对比损失函数为训练准则,训练孪生神经网络声纹比对模型;在声纹比对系统中,通过训练得到的孪生神经网络模型提取表示说话人身份的声纹特征向量,并和数据库中注册的人的声纹特征向量进行相似度量,验证说话人的身份,降低环境的影响,提高声纹识别的准确率。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明孪生神经网络声纹比对模型的训练示意图;
图2为本发明的孪生神经网络声纹比对网络结构示意图;
图3为本发明实施的声纹比对工作流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明为一种基于孪生神经网络的声纹比对方法,如图1所示,孪生神经网络声纹比对模型的训练包括如下步骤:
s031:对标注过说话人身份的语音数据进行快速傅里叶变换得到语谱图;
s032:语谱图组成样本对(x1,x2,y),并给样本对配上是否来自同一个人的标签;其中,y=1表示语谱图x1和x2来自同一个人,y=0表示语谱图x1和x2来自不同人;
s033:搭建孪生神经网络声纹比对模型,并初始化模型各层参数;其中,孪生神经网络为两个结构相同并共享网络参数的神经网络,每个网络分别接收语谱图样本对中的一个样本;
s034:随机采样训练样本对并进行前向运算,使用对比损失函数(contrastiveloss)为损失函数并计算损失,如图2所示;
s035:采样随机梯度下降法误差反向传播算法对模型参数进行更新;
s036:模型收敛后保存训练好的孪生神经网络声纹比对模型的参数。
其中,步骤s044中声纹特征和数据库中注册的人的声纹特征向量进行相似度量的函数定义如下:
ew=||gw(x1)-gw(x2)||;
其中,ew表示两个声纹的欧氏距离相似度,x1表示说话人语音的语谱图,gw()表示孪生神经网络,gw(x1)表示把x1从语谱图特征空间映射到孪生神经网络声纹特征所在的空间,即gw(x1)为x1的声纹特征,gw(x2)表示x2的声纹特征。
本发明利用已经标注过说话人身份的语音数据,进行快速傅里叶变换,得到对应语谱图作为孪生神经网络输入;组成样本对,并给样本对配上是否来自同一个人的标签;以对比损失函数(contrastiveloss)为训练准则,训练孪生神经网络声纹比对模型;在声纹比对系统中,验证说话人的身份,如图3所示验证步骤如下:
s041:采集语音信号;
s042:进行快速傅里叶变换,得到语谱图;
s043:语谱图输入训练完成的孪生神经网络声纹比对模型中得到对应的声纹特征;
s044:声纹特征和数据库中注册的人的声纹特征向量进行相似度量,验证说话人的身份。
其中,若两个语音段的声纹特征向量相似度小于阈值t,则说明这两个语音段来自同一人,声纹比对成功;反之则说明这两个语音段来自不同人,声纹比对失败。
其中,步骤s034中对比损失函数的定义如下:
其中,loss为损失函数,ew,i表示第i对样本对中两个声纹的欧氏距离相似度,q是一个常量;y是第i对样本对的标签。
其中,声纹比对方法应用于语言交互终端的声纹识别系统,语言交互终端的声纹识别系统均可训练孪生神经网络声纹比对模型和提取声纹特征,并配置在终端中,语言交互终端包括移动端、个人电脑终端、便携式终端或其他语言交互的终端。
本发明利用已经标注过说话人身份的语音数据,进行快速傅里叶变换,得到对应语谱图作为孪生神经网络输入;组成样本对,并给样本对配上是否来自同一个人的标签;以对比损失函数为训练准则,训练孪生神经网络声纹比对模型;在声纹比对系统中,通过训练得到的孪生神经网络模型提取表示说话人身份的声纹特征向量,并和数据库中注册的人的声纹特征向量进行相似度量,验证说话人的身份,降低环境的影响,提高声纹识别的准确率。
在本说明书的描述中,参考术语“一个实施例”、“示例”、“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。