1声纹识别系统摘要本文首先通过用层次分析法(AHP)构建了影响声纹识别的八大因素,并将其进行量化处理,得到了合理的权重比。同时构建Mel倒谱系统提取说话人的主要特征倒频谱(MFCC参数),利用提取的MFCC参数训练话者的GMM(高斯混合模型),得到专属某话者的GMM声纹模型。接着通过语音数据对构建的声纹识别模型进行评价。发现得到的模型虽然可以接受,但其准确率不是很高。为了使模型的精确率提高,我们通过利用改进的K-means算法来将模型进行调整。问题一:我们通过层次分析发得出语者的声学特征在语音识别中所占的权重最大,而且限于目前的技术,我们最终将能描绘语者声道结构的Mel倒频谱系数作为语音的特征向量,该方法能很好的模拟人耳对不同频率的感知特性,具有很好的稳定性和准确度。然后我们利用matlab编程将提供的语音数据的MFCC系数提取出来作为声纹识别系统的训练样本。问题二:基于高斯混合模型(GMM),我们用EM算法来估计GMM中的未知参数,由K-means算法来得到EM算法的初始值,通过不断地迭代EM算法更新GMM模型中的权重(w),均值(u)和方差矩阵,直到最终使*()PXPX,取10-5。问题三:根据问题一的MFCC模型和问题二的GMM模型,利用matlab编程,用样本语音数据去训练GMM模型得到样本库,让后用未知的测试语音样本利用模式匹配法去与样本语音库进行匹配,得到一系列的匹配概率,概率最大者对应的语者为测试语音的主人。我们得出的结论是EM算法的初值对最终的识别率有很大影响,用来确定GMM初始值的K-means算法有比较大的误差,需要改进。问题四:基于问题三的测试和查阅的相关资料,我们认为传统的K-means算法忽略特征矢量各维分量对识别的影响,因而无法得到令人满意的识别结果。由数理统计知,方差是用来衡量样本数据的离散程度的。如果特征矢量的分布稀疏,则它的方差就会很大,反之,那些分布较集中的矢量方差比较小。为此,本文提出了基于方差的加权几何距离,在聚类过程中,对特征矢量的各分量按方差大小进行加权,加权因子为矢量方差的倒数。关键字:声纹识别层次分析法(AHP)美尓倒频谱系数(MFCC)高斯混合模型(GMM)期望值最大化算法(EM)K-means算法2一、问题重述生物认证是通过人体特征进行人物身份认证的重要手段,包括人脸识别、虹膜识别、指纹识别、体态识别和声纹识别等方法,它们被广泛地应用于国防、军事和民用等诸多领域,推动着信息产业的蓬勃发展。声纹识别又称说话人识别,是通过分析说话人的语音的特点,利用计算机自动识别说话人的身份。声纹识别又分为文本相关和文本无关说话人的识别两大类。文本无关是指说话人的说话内容不受限制,文本相关是指说话人的说话内容必须是指定的内容。评价声纹识别方法或模型的最重要指标是识别准确率,准确率越高越宜于应用于实际。评价的另外一个重要指标就是识别所花的时间,即输入待识别的说话人语音到识别结果的输出说话的时间,该时间越短约好。请试着利用采集到的说话人语音数据(文本相关和文本无关两类),完成以下几点:1)建立代表说话人身份的语音特征模型,通过编程从语音数据中提取说话人特征;2)利用说话人特征建立说话人模型或声纹识别模型;3)利用语音数据评价你的说话人模型或声纹识别模型评价的好坏;4)分析影响准确率的因素,采取措施进一步提高声纹识别的准确率。二、问题分析问题一:在没有人的主观倾向影响的情况下,人类的听觉系统其实就是比较好的说话人识别系统,具有很高的准确性和抗干扰性。虽然人的听觉系统分辨说话人的机理不一定是最佳的声纹识别方法,但是在目前的技术下,如果能达到人类说话人的水平,也是相当可观的。MFCC是基于短时傅里叶变换谱分析,并考虑人类的听觉特性后得到的一种倒频特征。心理学的研究进一步表明,人类对于声音音调的感觉都不是线性的,这必然导致人们去定义新的频率单位。符合人的听觉特性的频率则以Mel或Bark作为单位;问题二:就声学观点而言,每一位语者声学特征能分出很多类别,诸如:鼻音,摩擦音,元音等,类别还可能更细致,而且每一个声学类别下又有广阔的语音空间,查阅资料发现,高斯混合模型(GMM)能好的二者兼顾,于是可以建立GMM模型对每位语者的声学特征进行仿真。问题三:基于上面两问的模型,用matlab编程对实际的数据进行识别率的分析即可;3问题四:传统的K-means算法在聚类过程中采取几何距离就近原则,这只有当类的自然布为球状或接近于球状时,也就是说当类中各矢量的分布接近于相等时才能取得识别效果。而语音信号是近似椭圆状的正态分布,各矢量的分布不等,若用传统K.means算法作为GMM的初始化方法,将会忽略特征矢量各维分量对识别的影响,无法得到令人满意的识别结果。为此,对传统K。means算法进行了改进,语音信号各矢量的分布不同,且对于不同的说话人这种差别的程度又不一样。好的特征矢量应该对同类语音的离散程度小,对不同类语音的离散程度大。由数理统计知,方差是用来衡量样本数据的离散程度的。如果特征矢量的分布稀疏,则它的方差就会很大,反之,那些分布较集中的矢量方差比较小。为此,本文提出了基于方差的加权几何距离,在聚类过程中,对特征矢量的各分量按方差大小进行加权,加权因子为矢量方差的倒数。三、模型假设与符号说明3.1模型假设:(1)本文选用文本无关的声纹识别文件;(2)假设提供的数据完整、可靠、有效;(3)假设查阅的资料和一些结论正确可靠;3.2符号说明:xn:预处理后的语音信号。Xk:将预处理后的语音信号进行短时傅里叶变换后得到的频谱。Q:频率滤波器个数。Sq:作对数转换后的Mel频谱。Cn:Mel频谱倒谱系数。四、模型的建立及求解4.1问题一模型的建立与求解:4.1.1层次结构模型建立4提取说话人特征沙哑音鼻音语音习惯个人特点声学特征倒频谱频谱基音共振峰词法特征韵律特征口音通道信息图1层次结构示意图首先分析准则层对目标层的影响,设有n个因素(x1,x2,…xn),用aij表示xi和xj对上层目标的影响比。相对重要程度:aij定义1若xi等价于xj:赋值13若xi比xj重要:赋值35若xi比xj重要得多:赋值57若xi远远比xj重要:赋值79若xi是最重要的2,4,6,8重要程度等级介于xi和xj之间1/2,1/3,..,1/9对应于以上等级的xi和xj之间的关系表1相对重要程度aij取值情况5由网络资源查询可对比声学特征,语音习惯,个人特点,鼻音,沙哑音五个元素得到以下系数矩阵:ija沙哑音鼻音个人特点声学特点语音习惯沙哑音11/51/51/91/7鼻音1/5111/51/5个人特点1/5111/51/5声学特点1/91/51/513语音习惯1/71/51/531从而得到正反矩阵:A=13/1557315595/15/11155/15/11157/19/15/15/11利用MATLAB编程求得矩阵A的最大特征值;对正互反矩阵进行一致性检验,采用T.L.Saaty一致性指标:CI=1nn,一致性对比率CR=RICI=12.1087.0=0.07770.1,即通过一致性检验。标准化特征向量a(2)=(0.03080.09270.09270.48390.2999)即当前沙哑音,鼻音,个人特点,声学特征,语音习惯的权重为:(0.03080.09270.09270.48390.2999)6下面构造方案层对准则层的每个准则的正互反矩阵:B1=1155571155575/15/111135/15/111135/15/111137/17/13/13/13/11B2=13/13/15/13113/13113/15331B4=173/17/115/13/151B5=13/113/11313/11所有CRk均小于0.1,均通过一致性检验。我们把各方案对目标的权向量,称为组合权向量。记做W(2)=005.00781.0025.05017.05.01998.005.00953.001998.03598.025.04030.005222.03598.000000814.000000814.000000814.000000361.0所以方案Ck在目标中的组合权中应该为a(2)与a(3)对应向量的两两乘积之和,因此可得C1,C2,C3,C4,C5,C6,C7,C8在目标中的组合权重。从而得到方案层对准则层组合权向量:a(3)=(0.0011,0.0025,0.0025,0.3295,0.2257,0.3826,0.0536)结论:由当前权重比例来看,建立代表说话人身份的语音特征模型中的8个影响因素声学特征占有最大的权重。而语者的声学特征能用Mel倒频谱系数(MFCC)很好的描述。所以接下来通过matlab编程从源语音数据中提取说话人特征(Mel倒频谱系数)从而建立代表语者身份的语音特征模型。4.1.2语音特征模型的建立与求解本文采用识别性能较好且能充分模拟人耳听觉感知特性的Mel频率倒谱系数(MFCC),提取的各过程如下:7图1MFCC系数提取流程图1.由于语音信号的时变特性使得特征参数提取必须在一小段语音上进行,因此在特征参数提取前先对采集到的语音信号进行预加重、加窗和分帧等预处理。此部分的处理用matlab完成,程序代码在附录中。2.将预处理后的语音信号x(n)进行快速傅里叶转变(FFT)得到频谱X(k):N-12/0Xkx(),01jkNnnekN(1)其中,N为傅里叶变换的样点数。本论文中N取2563.求频谱X(k)的平方,即能量谱,然后通过Mel滤波器Hq(k)对频谱进行平滑,并消除谐波,凸显原先语音的共振峰。Hq(k)是一组三角带通滤波器,设计如下:在本论文中区滤波器个数为Q=24,它的图像如下:图2Mel频率滤波器组8q0,(1)(1),(1)()()(1)Hk(1),()(1)(1)()0,(1)kfqkfqfqkfqfqfqfqkfqkfqfqfqkfq(2)式中:f(q),q=1,…,Q是中心频率,Q是滤波器个数。4.对滤波器组的输出取对数:压缩语音频谱的动态范围;将频域中噪声的乘性成分转换为加性成分,对数Mel频谱S(q)为:210SqlnNqkXkHk(3)5.离散余弦变换(DCT)将(3)获得的S(q)变换到时域,结果就是Mel频率倒谱系数(MFCC),第n个系数C(n)的计算如下式:Q1q0nq0.52CnSqcos0nLQQ,(4)其中,L是MFCC阶数,一般为12~16,Q为23~26.MFCC反映了语音信号的静态特性,随时间的变化反映了语音特性的动态特性,用差分公式表示如下:2mCn()MMmiMiMCniii(5)这里M的值一般取2或3。至此,MFCC特征提取结束。在实际过程中,可以根据需要与实验测试来选取维数不同的特征向量,如:12,13,24,26,36,39维等。本文选用24维的MFCC特征向量来作为声纹识别系统的特征提取结果。该模型的matlab代码见附录一。4.2问题二模型的建立和求解:4.2.1基于GMM的声纹识别建立的模型GMM本质上是利用多维概率密度函数对语言信号进行建模。一个具有M阶混合分量的D维GMM表示如下91PXMiiiwfX(6)式(6)表明了样本X属于类别的概率大小,M实际上是表示样本X的类别数。式(6)中,iw为混合权重,且11Miiw。ifX是D维的联合高斯分布,表示为1T1exp22iiiDiXuXufX(7)式中,iu是均值,i是协方差矩阵。GMM的所有参数用表述为,,1,,iii