本发明属于语音欺骗检测领域,具体涉及一种基于残差神经网络的语音欺骗检测方法。
背景技术:
自动说话人确认(automaticspeakerverification,asv)是根据人的语音信号来自动确定该说话人身份的技术。许多研究表明说话人确认系统容易受到各种不同的欺骗攻击,如模仿、语音合成、语音转换和重放,这对自动说话人确认系统的可靠性产生了严重威胁。本发明采用残差神经网络捕捉语音帧的前后依赖,对语音进行欺骗检测。残差网络是一种跳跃连接的网络,它通过将前面的激活值跳过中间的网络层而直接传到更后面的网络中。残差网络结构最主要的目的是解决网络层数不断加深时导致的梯度消失问题,使得可以训练更深的网络结构,最终提高欺骗检测系统性能。
技术实现要素:
本发明的目的在于提供一种基于残差神经网络的语音欺骗检测方法。该方法采用高斯概率特征,并使用残差神经网络模型来捕捉语音帧的前后依赖,从而提高语音欺骗检测系统性能。
为实现上述目的,本发明提供了如下方案:本发明提供一种基于残差神经网络的语音欺骗检测方法,包括以下步骤:
采集真实语音信号数据和欺骗语音信号数据,进行特征提取,获得线性频率倒谱系数;对所述线性频率倒谱系数进行训练,获得高斯混合模型;将所述线性频率倒谱系数输入所述高斯混合模型,获得高斯概率特征;构建堆叠残差层模型,将所述高斯概率特征作为输入,输出得到二维矩阵;根据自适应最大池化层对所述二维矩阵进行池化操作后,输入到全连接层进行分类,根据分类结果判断语音是正常语音还是欺骗语音。
优选地,所述高斯混合模型采用期望最大方法进行训练。
优选地,所述高斯混合模型概率分布密度函数的公式为:
其中j=1,2,3…,m,πj是权值因子,表示高斯分量在模型中所占的权重,且
优选地,所述高斯密度函数的公式为:
优选地,获得所述高斯概率特征具体通过将所述线性频率倒谱系数的均值和标准差进行归一化。
优选地,所述高斯概率特征根据公式fi={fij,j=1…512}得到,每个分量fij计算公式为:
fij=log(wj·pj(xi))(2)
其中:xi为语音特征,wj为高斯混合模型的第j个分量权重,pj为特征在高斯混合模型第j个分量上的概率密度值。
优选地,所述堆叠残差层模型至少包括卷积操作层、单位加操作层、批归整化操作层。
优选地,所述卷积操作层包括256个卷积核,每个所述卷积核大小为3。
优选地,所述分类的过程为:
计算语音在真实语音类和欺骗语音类上的得分,若真实语音类得分值大于欺骗语音类得分值,则判定此语音为真实语音;若欺骗语音类得分值大于真实语音类得分值,则判定此语音为欺骗语音。
本发明公开了以下技术效果:
本发明针对高斯混合模型不单独考虑特征向量在各个高斯分量上的得分,采用高斯概率特征用于语音欺骗检测;同时,针对高斯混合模型独立计算所有帧的得分,不考虑相邻帧之间的联系的缺点,采用残差神经网络模型用于语音欺骗检测。本发明采用残差神经网络捕捉语音帧的前后依赖,对语音进行欺骗检测。残差网络是一种跳跃连接的网络,它通过将前面的激活值跳过中间的网络层而直接传到更后面的网络中。本发明通过构建残差神经网络,保证了层间最大的信息流,增强了特征传播能力,提高系统泛化能力,对新型未知的语音合成、语音转换和录音回放等欺骗攻击有良好适应能力。残差网络结构最主要的目的是解决网络层数不断加深时导致的梯度消失问题,使得可以训练更深的网络结构,最终提高欺骗检测系统性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种基于残差神经网络的语音欺骗检测方法流程示意图;
图2为残差模块结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,本发明提供一种基于残差神经网络的语音欺骗检测方法,包括以下步骤:
步骤一、首先对输入的语音做特征提取。利用工具将提取出的线性频率倒谱系数(linearfrequencycepstralcoefficients,lfcc)特征,分别训练真实语音和欺骗语音对应的高斯混合模型。
高斯混合模型(gaussianmixturemodel,gmm)是一种广泛使用的聚类算法,使用期望最大(expectationmaximization,em)算法进行训练。在高斯混合模型中,第j个高斯分量满足正态分布n(μj,σj),对于一个d维的特征向量x,其对应的概率密度函数可以通过公式(1)来表示:
其中j=1,2,3…,m,πj是权值因子,表示高斯分量在模型中所占的权重,且
高斯混合模型可以有效的捕捉特征分布状况,在自动说话人确认欺骗检测中通常用作基线系统。在真实语音数据集和欺骗语音数据集上分别训练得到两个高斯混合模型
步骤二、计算高斯概率特征。
高斯概率特征是以语音特征在各个高斯分量上的分数为基础,并采用所有训练数据集的均值和标准差进行归一化后得到的。对于原始的帧特征xi,新特征fi的大小是高斯混合模型的阶数,分量fij大小表示如下:
fij=ln(πj·pj(xi))(3)
然后进行全局的均值方差归一化:
其中:μf和σf是所述训练集所有语音基于高斯混合模型的概率特征的均值与方差,f'i为最终的高斯概率特征。
步骤三、构建两路堆叠残差层模型,将所述两个高斯概率特征分别作为输入,获得的输出是两个二维矩阵;
堆叠残差层模型的输入是步骤二获得的高斯概率特征,由3个残差块组成,残差块结构如图2所示:
weight是指卷积操作,addition是指单位加操作,bn是批规整化操作,激活函数采用relu函数。公式表示为:
xl 1=xl f(xl,wl)(5)
所述堆叠残差层模块包括3个残差块,每个残差块中卷积核个数设置为256,每个卷积核大小为3。设语音帧数为t,语音的高斯概率特征经过堆叠残差层模块后,得到256*t大小的二维向量。高斯概率特征在高斯混合模型基础上计算得到,系统中包含两个不同的高斯混合模型,生成的高斯概率特征分别输入到两个结构相同的堆叠残差层模块中。
步骤四、利用自适应池化层对堆叠残差层的输出进行最大池化操作,获得固定大小为256的一维向量,将两个一维向量串接起来得到大小为512的向量。
最后采用全连接层进行分类,根据所述分类模块得分判断语音是正常语音还是欺骗语音。全连接层包含256个神经元节点,其中每个节点的输出pi计算公式是:
其中:wi,j是权重矩阵;b是偏移量;f是relu激活函数。
输出层包含2个神经元节点,分别表示真实语音类得分q0和欺骗语音类得分q1;
其中:wi,j是权重矩阵;b是偏移量;h是sigmoid激活函数。
计算所述语音特征在分类模块上的得分,分别是真实语音类得分和欺骗语音类得分;若真实语音类得分值大于欺骗语音类得分值,则判定此语音为真实语音;若欺骗语音类得分值大于真实语音类得分值,则判定此语音为欺骗语音。
为了验证本发明的有效性,本实施例采用asvspoof2019数据集对本发明方案进行验证,该数据集由真实和欺骗语音组成。asvspoof2019挑战专注于文本语音合成(tts)、语音转换(vc)攻击和语音重放这三种欺骗攻击类型进行欺骗检测。asvspoof2019挑战分为逻辑访问(logicalaccess,la)场景和物理访问(physicalaccess,pa)场景这两种评估场景,在这两种场景下又分别包含训练集、开发集和评估集三部分。实验采用等错误率(eer)作为性能指标,训练集用于训练模型参数,评估集用于比较模型的性能。在评估集上的实验结果如表1所示:
表1
从实验结果可以看出,本发明的基于残差神经网络方法的欺骗检测模型性能明显优于传统的高斯混合模型。
以上所述的实施例仅是对本发明优选方式进行的描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
本文用于企业家、创业者技术爱好者查询,结果仅供参考。