【《基于声纹识别的说话人辨识与说话人确认的实验探析案例》5300字(论文)】_第1页
【《基于声纹识别的说话人辨识与说话人确认的实验探析案例》5300字(论文)】_第2页
【《基于声纹识别的说话人辨识与说话人确认的实验探析案例》5300字(论文)】_第3页
【《基于声纹识别的说话人辨识与说话人确认的实验探析案例》5300字(论文)】_第4页
【《基于声纹识别的说话人辨识与说话人确认的实验探析案例》5300字(论文)】_第5页
已阅读5页,还剩10页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于声纹识别的说话人辨识与说话人确认的实验探析案例目录TOC\o"1-3"\h\u3794基于声纹识别的说话人辨识与说话人确认的实验探析案例 15712一、说话人辨识与说话人确认 13736(一)语音特征提取——Mel频率倒谱系数 214440(二)说话人辨识——高斯混合模型 415861.单高斯模型 4290772.混合高斯模型 519933(三)说话人确认——人工卷积神经网络 618335二、实验过程与实验结果 912474(一)实验环境与配置 911193(二)人声分离与特征提取 911127(三)模型训练与实验结果 1224313(四)人机交互界面设计 13一、说话人辨识与说话人确认声纹识别,即说话人识别的最终任务可分为两个大类:说话人辨识(SpeakerIdentification,SI)与说话人确认(SpeakerVerification,SV)。这两种任务的本质均为根据测试者在测试环境下说出的测试语句或关键词所获得测试语音,以及从测试语音信号中所提取出的特征参数判定说话人的身份。主要方法是将提取出的特征参数与存储在数据库中用户的注册特征参数进行比对,进而判断测试者的身份。说话人辨识任务与说话人确认任务的不同之处在于:说话人辨识任务需要根据测试语音,在指定的一群人当中,通常是在所有注册用户的数据库中,判断出该语音由哪一位用户说出,如图3-1所示,该过程可表示为;而说话人确认任务则只需要根据给定的测试语音,与用户的注册特征参数,给出“是”或“否”的判断,如图3-2所示,该过程可以表示为。1图3-1说话人辨识示意图图3-2说话人确认示意图在两种说话人识别系统中,说话人辨识类型的系统,由于需要对多个用户的特征库进行比对,其准确率会随用户数量的增加而下降。由于说话人确认系统实际上可以看作说话人辨识系统在只有一个用户时的特殊情况,因此在准确性方面,说话人确认系统要明显高于说话人辨识系统。在准确度较高的同时,说话人确认系统却无法应用于多用户的情景。在说话人识别任务中,两种方法各有特点,因此本文提出了一种先辨识,后确认的说话人识别模型。取得用户测试语音后,首先经过对语音的预处理并提取其特征参数,本文采用语音信号的Mel倒谱系数——MFCC作为特征参数。随后将该参数通过概率统计的方法,即高斯混合模型(GaussianMixtureModel,GMM),分别计算出该测试语音与数据库中用户特征参数匹配的概率,根据概率大小对其进行排序,并根据设置的门限阈值筛选出“可能”的用户。筛选出“可能”的用户后,再通过由卷积神经网络设计的说话人确认系统最终确定测试语音说话者的身份。(一)语音特征提取——Mel频率倒谱系数人类的听觉系统是通过感受空气等声音传播介质的振动信号来获取声音的,但其对不同频率的信号感知却呈现非线性关系:人耳对1000Hz以下的声音信号感知呈现近似线性相关的关系,但对于更高频率的信号感知的近似线性关系却转换到了对数尺度上。通过大量实验研究,人们此关系设计出了Mel滤波器组,并得出语音信号的一种重要特征参数——Mel频率倒谱系数(MelFrequencyCepstralCoefficients,MFCC),其示意图如图5-3所示。图3-3Mel滤波器组示意图根据声音的这一特性,科学家们又提出了一种名为Mel频率的概念。Mel频率与普通频率的关系如式3-1与图3-4所示。(3-1)图3-4Mel频率与普通频率关系图Mel频率倒谱系数的提取过程如下:(1).完成对声音信号的分帧与加窗工作,并将每帧的声音信号通过快速傅里叶变换(FastFourierTransform,FFT)将其从时域转换到频域,得到声音信号的频谱。(2).求频谱平方得到其谱线能量。(3).将谱线能量通过Mel滤波器组,并对其结果求对数后进行离散余弦变换,最终获得声音信号的Mel倒谱系数——MFCC。图3-5MFCC提取过程示意图(二)说话人辨识——高斯混合模型在说话人辨识时,需要进行模型匹配相似度分析,以此判断用户身份。高斯混合模型是一种常用的变量分布模型,可以较好的模拟任意形状的分布。研究表明,声纹很少严格遵从某个特定分布,但是大部分分布可以用高斯混合模型近似模拟。高斯混合模型有单高斯模型和混合高斯模型两类,混合高斯模型基于单高斯模型,在其基础上进行加权延伸。1.单高斯模型单高斯模型的多维高斯(正态)分布概率密度函数定义如下:(3-2)其中,为单高斯模型的期望,为该模型的方差该模型有如下的几何意义:在二维空间下,单高斯模型的数据主要集中在一个椭圆内部,在三维空间下,数据集中在椭球内部,如图3-6所示。图3-6单高斯模型示意图2.混合高斯模型在上一小节中,单高斯模型适用于同一类别的样本处于同一椭圆或椭球的情况,但是实际生活中,数据很难满足如此分布,如图3-7(a)所示假设数据是由单高斯分布产生,以此训练得出的高斯分布模型如图3-7(b)所示。若此模型正确,由概率统计相关内容可知,样本数据应该集中在椭圆中心。而图3-7(c)中的采样数据却明显更集中分布于拟合出椭圆形状的外围。所以显然在此情形下,单高斯分布的假设并不能很好地体现出。大部分数据很难拟合为单高斯模型,但是可以由若干个高斯模型混合而成。实际上,本图就是两个不同的高斯分布产生的数据,如图3-7(c)所示,因此必然无法通过单一的高斯模型完成较为合适的模型拟合工作。(a)(b)(c)图3-7单高斯模型与混合高斯模型高斯混合模型(GaussianMixedModel,GMM)是单一高斯模型密度函数的延伸。它求解若干个高斯模型,然后通过一定权重将其混合为一个模型,称为高斯混合分布。这些数据的分布可以有通过如下方式进行加权:(3-1)(3-2)其中是各个数据的权重,每个高斯分布叫做一个积累元。理论上可以取至无穷大,该模型也可以逼近无限复杂,逼近任意连续的概率密度分布。用此模型去差别样本所属的分类需要以下步骤:(1).随机选择一个聚类元,其概率为(2).将样本代入训练后的聚类元中代入并判断是否是这个类别,若不是则重复以上步骤。若假设数据点服从某个分布,则需要确定参数的数值。此时需要用到似然函数,即通过使得样本集的联合概率最大进行参数估计,从而选择最佳的分布模型。似然函数每个数据的概率很小,易造成计算不便,所以一般取对数为对此式求导并令其为0,得出的参数就是最佳的高斯分布对应的参数。要找到最值的模型参数,还需要用最大化期望算法(Expectation-Maximizationalgorithm,EM)求解。(三)说话人确认——人工卷积神经网络传统的说话人确认模型,包括概率统计与普通的全连接神经网络在工作时,只是通过结果对数据进行近似的拟合,却并未考虑数据本身各元素之间的关联。常用声音信号的特征参数MFCC有多个阶,且每一阶的信号都是根据时间进行排列的向量,因此推断出其对应相邻元素之间存在一定关联。而具有相似特征的一种常见实验即为图像识别实验。受图像识别实验的启发,本文选择卷积神经网络(ConvolutionalNeuralNetworks,CNN)完成说话人确认工作。卷积神经网络的是指含有卷积层(ConvolutionalLayer)的神经网络,其中最常见的为二维卷积层。但由于直接进行卷积其计算量过于庞大,因此本文采用二维互相关运算代替卷积运算,二维互相关运算示意图如图3-8所示。卷积神经网络中通常还涉及池化操作,在神经网络中加入池化层以缓解卷积层对位置的过度敏感性。本文采用最大池化的方法,其过程如图3-9所示。图3-8互相关运算示意图图3-9池化过程示意图其中,二维互相关运算的过程为,通过一个名为“卷积核”的卷积窗口,从左到右,从上到下一次在输入矩阵上进行滑动。每滑动到一个位置则对卷积窗口内的输入子矩阵按元素进行相乘并求和,得到相应位置的元素。图3-8所示互相关运算过程可如式(3-3)所示。同卷积层一样,池化层每次对输入数据的一个固定形状窗口(又称池化窗口)中的元素计算输出。不同于卷积层里计算输入和核的互相关性,池化层直接计算池化窗口内元素的最大值。图3-9所示池化运算过程可如式(3-4)所示。(3-3)(3-4)图3-10卷积神经网络示意图最终,卷积神经网络中通常还会加入全连接层来丰富网络的结构内容,最终形成的卷积神经网络模型可如图3-10所示。

二、实验过程与实验结果完成理论方面的准备工作后,则需要进行编程与模型训练等实际操作。本文通过采集十个不同用户的语音特征,共采集到9000条语音数据作为数据集,其中6000条作为训练集,3000条作为测试集。完成模型的训练与验证后,再采集这十位用户的100条数据作为验证集。(一)实验环境与配置本文项目在实验时,处于Windows10Education操作系统下的Python编程环境,Python版本为Python3.7,通过Anaconda搭建虚拟编程环境,CUDA作为运算加速,主要应用的第三方编程包(Package)与其对应工作如表4-1所示。实验硬件环境为:中央处理器Intel(R)Core(TM)i7-9750HCPU@2.60GHz2.59GHz,CUDA运算处理器NVIDIAGeForceRTX20806G,系统运行内存64G。表4-1Python编程包以及应用详情编程包名实验工作版本xlrd表格文件读取2.0.1xlwt表格文件写入1.3.0numpy通用数学数据处理、矩阵运算、数据文件读写与储存1.20.1scipy高斯混合模型训练与运算1.6.2torch提供神经网络深度学习框架,完成梯度反向传播与参数优化1.8.1torchaudio声音文件读写、声音数据集建立、声音文件与张量转换0.8.1matplotlib数据可视化3.3.4(二)人声分离与特征提取完成实验环境的准备工作后,即要开始实验的第一步,人声分离与语音数据的特征提取。本文采用第二章第一节所介绍的卷积时域音频分离网络Conv-TasNet进行人声分离。由于在说话人识别任务中,人声分离只需将测试人的声音与环境噪音等分离开,因此Conv-TasNet模型中声源数量()参数仅需设置为2。卷积自动编码器的窗移采用50%的帧长,即连续帧之间有50%的重叠。其余参数模型参数如表4-2所示。表4-2Conv-TasNet模型参数参数名参数含义数据类型取值需要分离的声音源的数量整型(int)2编码器/解码器卷积核大小整型(int)16传递给掩码生成器的特征尺寸整型(int)512掩码生成器的卷积内核大小整型(int)3掩码生成器中卷积块的输入/输出特征尺寸整型(int)128掩码生成器的卷积块的内部特征尺寸整型(int)512掩码生成器的卷积块层数整型(int)8掩码生成器中卷积块的数量整型(int)3完成人声分离后,需对分离得到的语音信号进行分帧加窗等预处理,最后计算得到测试语音的短时能量和短时过零率,图4-1为随机选取的第一段测试语音的时域信号波形图,及其短时能量与短时过零率。图4-2则为完成端点检测后的检测结果。完成端点检测后,本文会将静音部分从语音序列截取删除,只留下测试用户发音的信号部分,然后将其进行拼接,最后截取2s时长的片段进行语音信号的特征提取与特征识别。(a)原始语音信号时域波形(b)语音信号短时能量(c)语音信号短时过零率图4-1一段测试语音的时域波形与短时能量、短时过零率图4-2语音信号端点检测结果完成语音片段的剪取任务后,即完成了语音信号的预处理工作。完成预处理工作后便可对处理后的语音信号进行特征提取,本文采用Mel倒谱系数的特征参数,由于特征系数提取结果矩阵形状过于庞大难以直接通过数值形式展示,因此本文通过光谱图的形式展示对应结果。本节进行端点检测的同一段测试语音的MFCC光谱图如图4-3所示。图4-3语音信号MFCC光谱图(三)模型训练与实验结果完成特征提取工作后,即可利用提取出的MFCC数据进行说话人辨识与说话人确认的工作。为弥补两种模型各自的不足并取其所长,本文采用的方法为:(1).将测试语音的特征数据通过由高斯混合模型组成的说话人辨识模块,但说话人辨识模块却直接输出辨识结果,而是直接输出测试语音所对应用户的概率数据。(2).将输出的概率数据及对应用户索引安装从高到低的顺序排序,组成验证序列。(3).按照序列顺序将测试特征与用户索引特征数据输入说话人确认模块,若确认成功则输出对应用户,若确认失败且确认次数少于门限次数(本文中设置为3)则输入下一个用户索引并重复步骤(3),若确认失败且确认次数大于门限次数则输出测试用户不属于注册用户集。高斯混合模型的训练工作通过Sci-kitLearn[11,12]工具箱中的scipy编程包完成,需要确定的超参数为模型中混合高斯的数量,该参数本文通过贝叶斯信息准则(BayesianInformationCriterion,BIC)进行评价。本文设定一个循环,使用不同的高斯混合数量对说话人辨识模型进行训练并输出其BIC数值如图4-4所示。图4-4混合高斯模型BIC变化图观察图4-4可知,当混合高斯数量达到10之后便再无明显下降,因此本文模型中取10作为混合高斯数量。说话人确认模块,本文通过卷积神经网络的方式进行实现。网络的输入为两个MFCC特征矩阵,分别为测试语音的MFCC矩阵与用户注册是存留的标签MFCC矩阵。卷积神经网络要完成的任务为,判断输入的两个MFCC矩阵是否来自同一个使用者。本文采用网络结构为:一个输入层,两个卷积层,一个池化层,一个全连接层。在模型训练过程中,初始学习率设置为0.001,若在3个连续的迭

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论