1、第 36 卷 第 2 期2023 年 2 月传 感 技 术 学 报CHINESE JOUNAL OF SENSOS AND ACTUATOSVol.36No.2Feb 2023项目来源:教育部“科教融创”职业教育改革创新课题(HBKC217107);黑龙江省教育厅基本科研业务专项(145209804)收稿日期:20220321修改日期:20220425esearch on SMO-SVM Speaker ecognition Based onPCA-VQ Fusion Dimensionality eduction*XI Qingyun1,3,SUN Tongri2,TAO Bairui3*,
2、YANG Wenbo3,MIAO Fengjuan3(1XingAn League Branch,Inner Mongolia adio and Television University,XingAn League,Inner Mongolia 137400,China;2Computer Science and Information Engineering,Heihe University,Heihe Heilongjiang 164300,China;3College of Communications and Electronics Engineering,Qiqihar Unive
3、rsity,Qiqihar Heilongjiang 161006,China)Abstract:Aiming at the problem of low computational efficiency and instability of the model caused by high dimension of the originalMel Frequency Cepstrum Coefficient(MFCC)characteristic parameters of speaker s speech,the dual problem of the basic form ofSuppo
4、rt Vector Machine(SVM)is solved based on Sequence Minimum Optimization(SMO)efficient algorithm,and SMO-SVM speakerrecognition algorithm with principal component analysis-vector quantization(PCA-VQ)fusion dimensionality reduction is developed Theimproved algorithm is simulated on the MATLAB platform
5、The simulation results show that after optimizing the MFCC featureparameters and reducing the dimension through the PCA-VQ fusion algorithm,the accuracy of SMO-SVM speaker recognition model isimproved by 377%and the training time is saved by 124 s,which has good popularization and application valueK
6、ey words:speaker recognition;PCA;VQ;SMO;SVMEEACC:6130Edoi:103969/jissn10041699202302015PCA-VQ 融合降维的 SMO-SVM 说话人识别研究*席青云1,3,孙同日2,陶佰睿3*,杨文博3,苗凤娟3(1内蒙古广播电视大学兴安盟分校,内蒙古 兴安盟 137400;2黑河学院 计算机与信息工程学院,黑龙江 黑河 164300;3齐齐哈尔大学 通信与电子工程学院,黑龙江 齐齐哈尔 161006)摘要:针对说话人语音原始梅尔频率倒谱系数(MFCC)特征参数维数较高造成的模型计算效率低以及不稳定的问题,基于序列最小优
7、化(SMO)高效算法求解支持向量机(SVM)基本型的对偶问题,开展主成分分析矢量量化(PCA-VQ)融合降维的 SMO-SVM 说话人识别算法研究。改进后的算法在 MATLAB 平台上仿真通过。仿真结果表明:通过 PCA-VQ 融合算法对MFCC 特征参数进行优化降维后,SMO-SVM 说话人识别模型的正确率提高 377%,训练时间节省 124 s,具有较好推广应用价值。关键词:说话人识别;主成分分析;矢量量化;序列最小优化;支持向量机中图分类号:TN9123;TP183文献标识码:A文章编号:10041699(2023)02027505说话人识别作为一种新兴的生物认证技术已经在很多领域得到广
8、泛应用,说话人语音波形中包含的特征参数可以表征说话人的生理信息,通过对这些参数的分析可以准确识别说话人的身份。由于说话人语音信息具有易采集、易存储以及可远程验证等方面的优势,从而使得说话人识别技术逐渐成为人们研究的热点话题。说话人识别语音特征提取部分的研究主要采用梅尔频率倒谱系数(Mel Fre-quency Cepstral Coefficients,MFCC)特征参数,梅尔频率与语音频率的关系为 Mel(f)=1 125 ln(1+f/700),MFCC 可以很好地描述人耳对频率非线性感知的特性,特别是人耳对低频声道的脉冲响应特征,大量实验表明 MFCC 特征参数能比较全面反映说话人的语音
9、特征1。说话人 MFCC 语音特征参数通常具有较高的维度并且其中包含大量的冗余信息,这使得说话人模型训练时间长并且精度不高,导致语音识别存在一定的难度。另一方面,MFCC 特征参数是多维度的,导致其在运算过程中会耗费较多资源,也会因收敛速度或输入权重的随机选取等因素导致输出结果的传感技术学报chinatransducersseueducn第 36 卷不稳定2。为此,本文对传统 MFCC 特征参数通过主成分分析(PCA)和矢量量化(VQ)融合算法对其进行降维,来提高模型的训练效率、准确度和稳定性。说话人识别模式匹配部分的研究主要采用支持向量机(SVM),SVM 作为分类器可以对不同情绪状态进行分
10、类,如愤怒,快乐,悲伤,中性,恐惧等,在语音识别中具有一定的辨识度3。因为其强大的分类能力已经成功应用于说话人识别领域,可以利用帧特征向量在空间分布的高斯混合均值进行识别,但在实际应用中仍然面临着样本小、低维线度不可分等问题,解决这些问题的关键是采用最佳的核函数,特别是在实际求解过程中,SVM 的二次规划问题会导致说话人识别模型计算复杂化,为了解决这一问题,本文采用 SMO 算法优化二次规划问题求解过程,进一步提高说话人模型的训练精度和训练效率4。1说话人识别系统总体设计说话人识别一直是生物特征模式匹配领域研究的热点,包括说话人辨认和说话人确认。声纹识别就是把声信号转换成电信号,再用计算机进行
11、识别,说话人识别系统主要包括声学特征提取、模型训练、匹配分值计算等部分5。基于 PCA-VQ 融合优化的 SMO-SVM 说话人识别算法研究总体流程如图 1 所示。首先将样本数据分为训练数据与测试数据并对样本进行 MFCC 特征参数提取,之后对特征参数进行 VQ 矢量量化与PCA 主成分分析降维,提高模型运行的鲁棒性6。模式匹配过程采用 SMO-SVM 算法通过分类运算进行说话人识别。图 1说话人识别流程设计2MFCC 特征参数提取与降维优化说话人语音特征参数的质量好坏首先决定了说话人识别系统的性能,所以说准确提取语音样本的MFCC 特征参数就显得极为重要。本文语音特征参数选24 维MFCC
12、特征参数,Mel(f)=1 125 ln(1+f/700)计算表明临界频率带宽的变化与 Mel 频率变化趋势一致7。MFCC 特征参数提取流程如图 2 所示。图 2MFCC 特征参数提取流程当完成对语音数据的 MFCC 参数提取后,得到的每条语音的 MFCC 参数向量都具有很高的维数,会使之后的计算具有非常高的空间复杂度,因此本文首先采用矢量量化的方法对得到的 MFCC 参数进行数据压缩,减小因维度太高导致运算的复杂度8。21MFCC 参数进行 VQ 矢量量化矢量量化(Vector Quantization,VQ)的主要思想是通过对标量数据组重来构建新的矢量,然后在矢量空间上对其进行量化优化,
13、这样可以保证在数据压缩的同时不丢失有效信息,本文采用 LBG-VQ 对MFCC 特征参数进行压缩处理,初始 MFCC 特征参数取 24 维9。LBG-VQ 算法步骤:指定训练集 T。假设失真阈值 是一个无穷小的正数。取 N=1(码矢数量),将其作为全部训练样本的均值:c*1=1MMm=1xm;计算总失真度:D*ave=1MkMm=1xmc*12。分裂:对于 i=1,2,N,取扰乱系数 1+和1,其码矢可以分别表示为:c(0)i=(1+)c*i,c(0)N+i=(1)c*i。令 N=2N,每个码矢一分为二,分裂后码矢总量加倍。迭代:设置初始失真度为:D(0)ave=D*ave,计数器i 初始化为
14、 0;A对于训练集中的每一个训练样本 m=1,2,M。首先需要得到xmc(i)n2的最小值,并通过 n*记录当前最小值的索引值,之后就可以通过此码矢代替训练样本:Q(xm)=c(i)n*。B 对 于 n=1,2,N,需 要 通 过 c(i+1)n=Q(xm)=c(i)nxmQ(xm)=c(i)n1来不断获取码矢的最新值,即将所有属于 cn所在的编码区域 Sn的训练样本先做取平均值运算,之后将其作为编码区域的新的码矢。C迭代计数器的值在原有基础上加 1。D计算当前阶段的总失真度:D(i)ave=1MkMm=1xmQ(xm)2。E如果失真度与上一次相比仍大于可接受失真672第 2 期席青云,孙同日
15、等:PCA-VQ 融合降维的 SMO-SVM 说话人识别研究阈值,则应该继续迭代,否则最终失真度为 D*ave=D(i)ave,对于 n=1,2,N,最终码矢为:c*n=c(i)n,不断重复直达码矢的数目达到要求的个数。22主成分分析(PCA)为进一步降低样本空间复杂度,本文通过 PCA算法对样本数据进行降维,主成分分析也称主分量分析,是将多个指标转化成少数几个综合性的指标,是一种简化了的数据采集技术,PCA 算法从原始参量中随机选择 N 个主成分,要求这些主成分之间互不相关,同时尽量保留原始变量所带信息,协方差矩阵维度初值可根据样本空间大小进行设置10。主成分分析算法的核心就是减少数据之间的
16、相关性,其相关性采用数据之间的协方差来衡量。PCA 对MFCC 降维的具体流程如图 3 所示。图 3PCA 降维主要流程3SMO-SVM 说话人识别模型31SMO-SVM 模型总体设计流程支持向量机(SVM)是一种非线性分类器,是一种基于统计学理论的机器学习算法,它是在 SM 原理(Structural isk Minimization Inductive Principle)的基础上构建一个最优决策的超平面,使得该平面两侧样本之间的距离最大化,从而对分类问题提供良好的泛化能力11。原始的 SVM 算法是用来解决二分类的问题,无法直接用于多分类,为此,本文采用 OAO 算法将 SVM 推广到多分类问题,以解决SVM 多分类的问题12。样本空间中划分超平面(w,b)可以通过式(1)所示的线性方程来描述。wTx+b=0(1)式(2)为支持向量机的基本型,其解为具有最大间隔的划分超平面:minw,b12w2yi(wTxi+b)1,i=1,2,m(2)对基本型每条约束添加拉格朗日乘子 i0,可得到支持向量机的对偶问题,如式(3)所示:maxmi=1i12mi=1mj=1ijyiyjxTixjm