说话人识别方法(精选7篇)
说话人识别方法 篇1
摘要:在说话人识别技术中,特征参数的提取对语音训练和识别有着非常重要的作用。而Mel频标倒谱系数MFCC是一种常用的特征,它能对语音信号进行分析处理,去除对语音识别无关紧要的冗余信息,获得影响语音识别的重要信息。同时由于语音信号具有时变和混沌特性,以非线性随机共振理论和人类对听觉的理解为基础,提出了一种基于随机共振的MFCC特征参数提取方法。通过实验比较两种方法的结果,论证了改进方法的可行性以及优越性,为说话人识别技术中特征参数提取提供了一条新的研究方向。
关键词:说话人识别,特征提取,MFCC参数,随机共振
语音特征提取是指从语音信号中获取一组能够描述语音信号特征参数的过程。在理想情况下,这些特征应该具有以下特点:相对保持稳定;不易被模仿;尽量不随时间和空间变化等。MFCC参数具有良好的识别性能和抗噪能力,在目前的语音识别和说话人识别中极为常用。同时由于语音信号具有类混沌的特性[1],因而,部分学者利用随机共振原理对语音信号进行处理[2]。本文尝试了一种根据人耳听觉机理和随机共振理论[3,4]相结合的方法,将随机共振理论运用到提取MFCC参数的过程中。对标准MFCC参数提取过程和改进的MFCC参数提取过程进行研究,并对其在说话人识别中的效果做出了实验比较。
1标准的MFCC参数提取方法[5,6]
在语音识别和说话人识别中,MFCC(Mel频标倒谱系数)参数是将人耳的听觉感知特性和语音的产生的机理相结合,是目前大多数语音识别中广泛使用的特征参数。人耳具有一些特殊的功能,这些功能使得人耳在嘈杂的环境中,以及各种变异情况下仍能够正常地分辨出各种语音,其中耳蜗起了关键的作用。耳蜗实质上相当于一个滤波器组,耳蜗的滤波作用是在对数频率尺度上进行的,在1 000 Hz以下为线性尺度,而在1 000 Hz以上为对数尺度,这使得人耳对低频信号比对高频信号更加敏感。根据这一原则,研究者根据心理实验得到了类似于耳蜗作用的一组滤波器组,这就是Mel滤波器组。
MFCC参数的提取流程框图如图1所示,具体计算步骤如下。
(1) 语音信号经过预加重、加窗分帧处理后变为短时信号,用FFT将这些时域信号转化为频域信号。
(2) 求出频谱平方,即能量谱,并通过Mel频率滤波器组得到Mel频谱,并通过对数能量的处理得到对数频谱。
(3) 将上述对数频谱经过离散余弦变换(DCT)得到L个Mel频率倒谱系数。MFCC系数为
undefined。
(4) 将这种直接得到的MFCC特征作为静态特征,再将这种静态特征做一阶和二阶差分,得到相应的动态特征。
2 改进的MFCC参数提取方法
2.1 基本原理
世界上所有的声音都是物体振动产生的声波在介质中传递的结果,因此声音的产生离不开振动的动力、振动的源头和振动的共鸣腔。语音说到底也是一种声音,因而也离不开振动的动力、源头和共鸣腔,只不过语音是由人类的发音器官各部分协同动作所产生的,比如说由声带颤动而产生的声带音是通过喉腔、咽腔、口腔、唇腔和鼻腔这五个共振腔才传到人的耳朵里。
同时,人的听觉器官内耳中的耳蜗也相当于一个共振器。耳蜗是一螺旋形骨管,绕蜗轴卷曲两周半。整个耳蜗由耳蜗隔膜隔成三个区域,中间的隔膜叫基底膜,上部为瑞士膜,中间区域称为耳蜗导管,上下两个区域分别称为前庭阶和鼓阶,前庭阶和鼓阶在尖端部分相通。1960年Von Bekesy用正弦信号对基底膜进行了详细的研究,原来,基底膜的听觉响应与刺激的频率有关,频率较低时,靠近耳蜗底部的基底膜产生响应,反之,频率较高时,靠近圆形窗的窄而紧的基底膜产生响应 [7]。
根据人的发音机理和听觉机理,我们认为可以用随机共振的原理对语音信号进行处理。从信号处理的角度来讲,在非线性系统中,当输入带噪信号时,以适宜的物理量来衡量系统特性,如信噪比等,通过调节输入噪声强度或系统参数[8],使系统特性达到一个最大值,此时,我们称信号、噪声和非线性随机系统产生的协同现象为随机共振。由于说话人语音信号自身的特性——语音信号中包含有准周期性信号和类噪声信号。因而,从理论上利用随机共振理论,是可以获得说话人语音信号的基本特征。
2.2 改进的MFCC参数提取过程
从上述基本原理,我们考虑将随机共振的原理运用到MFCC参数的提取过程中,这样就更加符合人耳的听觉特性,以期能够分辨多种语音,它的提取过程如图2所示,具体步骤如下。
(1) 抗混叠滤波指滤除高于1/2采样频率的信号成分或噪声,一般用低通滤波器实现。典型的抗混叠滤波器的技术指标是:通带内波动绝对值小于1 dB,通带带宽3 400 Hz,阻带衰减50 dB以上。
(2) 抗混叠滤波后,为了提升高频部分,使信号的频谱变得平坦,将滤波后的信号经过预加重数字滤波器H(z)=1-0.937 5 z-1。
(3) 将预加重后的信号,经过非线性随机共振系统(如图3),然后进行加窗分帧,这里使用的是汉明窗,再经过FFT变换得到频谱,并计算其短时功率谱。
(4) Mel滤波器组的设计。将短时功率谱从频域映射到Mel域,这里采用的24阶Mel滤波器组。
(5) 将短时功率谱经过滤波器后再作对数运算和DCT,就可以得到MFCC参数了。
3 实验和分析
实验采用自己录制的语音,录音人数为10人,其中6男4女。录音内容为贵州大学校训“明德至善,博学笃行”,长度为7 s。 将标准的和改进的MFCC参数提取方法在MATLAB2010b环境下进行仿真设计。图4为非线性随机共振系统的传输函数的特性。
以1号女生的语音信号作为测试语音,其他语音信号处理方法同1号。其测试结果如图5,图6,图7,图8。
从图7和图8可以看出,改进的MFCC参数输出线条更加清晰,更容易读取其特性。
同时,实验还对相同说话人和不同说话人进行仿真对比,其结果如图9和图10。
分别将标准的MFCC参数和改进的MFCC参数作为特征矢量通过识别系统,通过实验得到两种参数下系统的识别率如表1所示。
实验结果表明,改进的MFCC参数提取方法所得到的特征矢量提高了系统的识别率,说明基于随机共振的MFCC参数提取方法可行且非常有效。
4 总结和展望
本文介绍了说话人识别中MFCC参数的提取方法及其基于随机共振的改进方法,并对两种方法进行了比较,得出改进的MFCC参数提取方法在说话人识别中起到了更好的识别效果。在以后的实验和仿真过程中,将不断改进提取过程中的算法,可以进一步提高说话人识别的识别率。
参考文献
[1] Kumar A,Mullick S K.Nonlinear dynamical analysis of speech.JAcoust Soc Am,1996:615—628
[2]潘平,杨平,何朝霞.基于随机共振的说话人识别方法.电信科学,2010;(52):
[3]聂春燕.混沌系统与弱信号检测.北京:清华大学出版社,2009
[4]王俊国,周建中,付波,等.基于Duffing振子的微弱信号混沌检测.电子器件,2007:1380—1383
[5]韩纪庆,张磊,郑浩然.语音信号处理.北京:清华大学出版社,2008:84—85
[6]王炳锡,屈丹,彭煊.实用语音识别基础.北京:国防工业出版社,2004:148—149
[7]陈伟兵,周凌宏,肖中举.耳蜗基底膜振动模型的建立与应用.中国医学物理学杂志,2007:221—223
[8]陈晓霞,王辅忠.利用参数调节随机共振检测大参数信号.天津工业大学学报,2008:60—64
说话人识别综述 篇2
说话人识别(Speaker Recognition:SR)又称话者识别[1],是指通过对说话人语音信号的分析处理,自动确认说话人的技术。以其独特的方便性、经济性和准确性等优势,日益成为人们日常生活和工作中的重要且普及的身份验证方式。有着广阔的市场应用前景。通过说话人识别技术[2,3],可以利用人本身的生物特性进行身份鉴别,例如为公安部门进行语音验证、为一般用户提供防盗门开启功能等等。在互联网应用及通信领域,SR技术可以应用于诸如声音拨号、电话银行、电话购物、数据库访问、信息服务、语音E-mail、安全控制、计算机远程登录等领域。在呼叫中心应用上,说话人识别技术同样可以提供更加个性化的人机交互界面。当顾客以电话方式对呼叫中心进行请求时,系统能够根据话音判断出来者的身份,从而提供更个性化、更贴心的服务。
2 识别原理
说话人识别要求从语音信号中提取个体差异[4],提取出能反映说话人是谁的信息,从而进行说话人识别。其基本原理是为每一个说话人建立一个能够描述这一说话人个性特征的模型,作为此说话人个性特征的描述(如图1)。说话人辨识时,取与测试语音匹配距离最小的说话人模型所对应的说话人作为说话人辨识的结果,说话人确认时,用测试语音与所声称的说话人模型进行匹配,若匹配距离小于规定的阀值,则该说话人得到证实,否则该说话人不是他所声称的说话人。实现说话人系统需要解决三个问题:1)语音信号的预处理和特征提取;2)说话人模型的建立和模型参数的训练;3)测试语音与说话人模型的匹配距离计算。
2.1 特征提取
特征提取即是对语音信号波形进行分析处理,提取特征矢量。这些特征矢量应该能够充分体现说话人个体间较大的差异,而对说话人自身的差异的体现不明显,能够长期的保持稳定,可以经常表现出来。一般将提取的说话人特征分为来时域特征矢量和变换域矢量。
2.1.1 时域特征矢量
通常将一帧语音信号中的各个时域采样直接构成一个矢量;如时域上的幅度(或能量)、平均过零率等。这类特征由于其不稳定性和不能很好的表征语音特征,现在已应用很少。
2.1.2 变换域矢量
对一帧语音信号进行某种变换以后产生的相应矢量,如线性预测系数(Linear Prediction Coefficient,LPC)、LPC倒谱系数(Linear Prediction Cepstrum Coefficient,LPCC)、线谱对参数(Line Spectral Pair,LSP)、共振峰率(前三个共振峰)、短时谱、Mel频率倒谱系数(Mel Frequency Cepstrum Coefficient,MFCC)[5]。倒谱系数描述了人的声道特征,其中基于声道全极点模型的LPC倒谱系数(LPCC)在语音识别中具有广泛的应用,但它对噪声特别敏感。人耳能够从嘈杂的背景噪声中听到语音信号,这是因为人耳基膜对外来信号会产生调节作用,对不同的频率,在相应的临界带宽内的信号会引起基膜上不同位置的振动。由此可用带通滤波器组来模仿人耳听觉,基于符合人耳听觉的Mel频率尺度提取出的倒谱系数MFCC比LPCC具有更好的识别性能。
近年来,由于小波变换分辨率可变、无平稳要求和在时频两域突出信号局部特征的能力等优点,在说话人识别中得到越来越多的应用,特别是在语音增强和去噪方面取得了很好的效果[6,7,8]。
2.2 说话人识别模型
目前说话人识别技术主流方法大致有:1)基于模板模型的方法;2)基于概率模型的方法;3)基于人工神经网络(Artificial Neura Network,ANN)的方法;4)基于支持向量机(Support Vector Machine,SVM)的方法;5)融合方法。
2.2.1 基于模板模型的方法
模版匹配法包括动态时间归正法(Dynamic Time Warping,DTW)和矢量量化法(Vector Quantization,VQ)。
1)动态时间规正方法(DTW):这是一种最传统的说话人识别方法,也是比较成熟的方法。基于这种方法的识别,是将待识别的说话人的语音特征序列与系统中记录的已知说话人的语音特征序列进行比较得出结论,因而这种方法同时也是与文本相关的说话人识别方法之一。
2)矢量量化方法(VQ)[9,10]:矢量量化方法也是一种比较传统的方法,它既可以是与文本相关的,也可以是与文本无关的。具体应用如下:首先利用每个人的训练语音,建立参考模型码本,设有N帧语音信号的K维特征矢量X={X1,X2,…,XN},其中第i个矢量可记为:XI={X1,X2,…,XK},K=1,2,…,N,把K维特征矢量划分为J个互不相交的子空间R1,R2,…,RJ,这些子空间Rj称为胞腔,在每个子空间Rj中找一个代表矢量Yj,则J个代表矢量就可以组成矢量集为:Y={Y1,Y2,…,YJ}就组成了矢量量化器,一般采用LGB算法来实现码书的生成。把每一个说话者所提取的特征参数进行分类,产生不同码子所组成的码书,标记为Ym={Y1m,Y2m,…,YJm},m为第m个说话人,J为码子数。对于每一个说话人,都有J个码子代表着个人的参数模型,在识别阶段,从待测语音中提取特征矢量序列,用系统已有的码本依次对之进行矢量量化,计算各自的平均量化失真,平均量化误差最小的码本对应的话者即为识别结果。该方法比较简单,实时性好,数据的存储量小,但其鲁棒性不是很好,所以近几年的研究中一般把它与别的识别方法结合使用。
2.2.2 基于概率模型的方法
包括隐马尔可夫模型法(Hidden Markov Model,HMM)和高斯混合模型法(Gaussian mixture model,GMM)。
2.2.2. 1 HMM方法
HMM是一种既能描述语音信号特征的动态变化,又能很好地描述语音特征统计分布的统计模型,是准平稳时变语音信号分析和说话人识别的有力工具。HMM中的一个重要概念是状态转移,状态可大致对应于语音中的音节,因此该方法对关键词的识别效果很好[11]。
具体应用如下:在说话人识别中,语音段用一串特征矢量表示,这就是一个观察矢量序列,记为O=O1O2…OT,它是一种随机序列,设它有N个状态(记为S1,S2,…,SN),用隐马尔可夫模型三元参数组λ={π,A,B}来表示,用于描述这一种随机序列的统计特性的概率模型。
1)初始分布π={π1,π2,…πN},用于描述观察序列O在t=1时刻所处状态q1属于模型中各状态的概率分布,即:
2)状态转移概率矩阵A={aij:i,j=1,2,…,N},只考虑一阶隐马尔可夫模型,当前所处状态qt只与前一时刻所处状态qt-1有关。满足:
3)B为观察序列O的概率密度估计,在离散HMM型中,B为概率矩阵:,j为状态序号,M为观测序列总数。在连续HMM情况下,观察序列为矢量序列(设为D维),B就是N个D维的概率密度函数的集合,B={bj(o),j=1,2,…,N},其中O为观察矢量空间中的任一矢量,每一个概率密度函数都满足归一化的条件,即,Ωj表示第j个状态的观察概率空间,它可以是矢量O所在的全空间,也可以是其中的一个子空间或一个区域。在给出初始的HMM参数后,HMM的训练常用迭代法或最佳梯度法。
2.2.2. 2 GMM方法
GMM也是概率模型法中的一种,是HMM的特例,只是去掉了HMM中的状态转移的概念,可视为是只有一个状态的HMM。它不考虑说话人语音之间的语义信息,只考虑语音信号统计分布信息,被广泛应用于说话人识别系统,其性能较好,方法简单,在基于文本无关的说话人识别中,是目前最好的说话人识别模型之一。在VQ方法中,码书只描述了说话人帧特征在特征空间中的聚类中心,是对帧特征的不完整描述。在GMMM中,每一说话人对应一个特征分布的概率密度函数,也就是这一说话人的模型,是对这种分布的完整描述。基于GMM的说话人识别方法是目前最成熟和最有效的方法[12,13]。
2.2.3 基于人工神经网络(ANN)的方法
人工神经网络以类比生物神经系统处理信息的方式,用大量简单的处理单元并行连接而构成一种独具特点的、复杂的信息处理系统。这种系统具有自组织、自学习的能力,它可以随着经验的积累而改善自身的性能。在说话人识别系统中,人工神经网络主要应用在说话人个性特征抽取和说话人识别这两个层次上。用于说话人识别的人工神经网络大部分集中在多层感知器结构的神经网络结构上,如反向传播人工神经网络、人工神经预测网络、径向基函数神经网络、时间延迟人工神经网络等。说话人识别中,待识人群往往很大。随着待识人群数目的增加。说话人特征分布间重叠区域增加,说话人识别率将降低。换句话说,在识别过程中不可避免地存在着说话人特征参数的有限性与说话人特征空间无穷划分之间的矛盾,这是所有说话人识别方法所面临的共同问题。在神经网络中,这一问题又以新的形式显现出来。当人群数目增加时,网络的训练时间急剧增加,理论上当人群数目很大时将无法完成网络的训练,因此在使用神经网络进行说话人识别时,更加迫切地需要解决这一大人群识别问题。从总体上讲,基于人工神经网络法的说话人识别技术的研究目前还处于研究与实验阶段。
2.2.4 基于支持向量机(SVM)的方法
SVM是Vapnik提出的一种基于结构风险最小化二元分类器[14],通过非线性变换将原始集合映射到高维空间,转化为某个高维空间中的线性问题,寻找最优分类面,具有很好的泛化和分类能力,在手写/文字识别、文本分类和人脸识别等模式识别领域中取到了成功的应用。在说话人识别中也逐渐得到应用[25],并取得了很好的效果。
SVM实际上是一种辨别模式,一般情况下它只能辨别两类数据,因此需要正反两类数据进行训练。因此可SVM在说话人识别中应用,必须要解决多类分类问题。解决说话人识别的多分类问题[15,16]的主要有三种形式:
1)为每个人建立一个SVM,训练数据由目标说话人和背景说话人的语音分别构成“+”、“-”数;
2)为每一对说话人建立一个SVM,有N个人则建立N*(N-1)/2个SVM。
3)决策数分类:决策树上每一个节点将多个说话人分为两个子集,或者是一个说话人(叶结点)。
2.2.5 融合方法
任何一种识别方法都有一定的优点和缺点,因此利用各种方法的优点进行融合,在目前的说话人中得到广泛的应用。
维数约简与识别方法结合:局部PCA和GMM结合的说话人识别系统[17],PCA约简了特征矢量的维数,减少了GMM的训练时间;局部模糊PCA和GMM结合的说话人识别系统[18,24],核PCA与GMM结合的说话人识别系统[19],引入核概念抽取特征,即避免了高维空间的复杂计算,大大减少了由于约简而损失的信息。用KL变换和KFD变换约简维数在说话人识别中也得到了广泛的应用,且取得很好的效果[20,21]。即提高了训练速度又达到了很高的识别率。
聚类与识别方式的结合:传统常用的聚类有K-均值聚类,模糊聚类,但是这些方法都是在原始数据之间进行的聚类,而最近在说话人识别中用到的核聚类,是在高维空间进行聚类,具有比传统聚类更好的聚类效果,计算量并没有太大的增加,使用此聚类方式识别率有所提高。
识别方式的结合:这种结合方式主要是SVM分类器与别的识别方式结合,如与GMM结合的说话人识别系统[22,23]。GMM能够处理连续信号,SVM适合分类,GMM的结果反映了同类样本的相似度,而SVM的输出结果则体现了异类样本间的差异,他们的结合达到了很好的效果充分利用此两个分类器的优点,取得很好的识别效果。
3 结论和讨论
如今说话人识别技术已经逐渐投入实际应用但是要在实际中广泛的应用,还存在很大的技术问题:
1)仍然没有找到一种参数,能完全代表说话人个性特征的参数,如:能够处理声音的短期变化的问题。例如:短期病变(生病)、情绪、疲劳等;能够描述语音信号的动态变化;能区分相似的语音信号等。
基于改进VQ算法的说话人识别 篇3
说话人识别(Speaker Recognition,简称SR)是指对说话人语音进行相应的分析处理,提取相应的特征或建立相应的模型,以此做出判断,确定说话人是否在所记录的说话人集合中,进而确定说话人是谁的过程。它与语音识别的区别在于,它不注重包含在语音信号中的文字符号以及语意内容信息,而是着眼于包含在语音信号中的个性特征,提取说话人的这些个人信息特征,以达到识别说话人的目的。
1矢量量化技术
矢量量化技术(Vector Quantization,简称VQ)在说话人识别中有着重要的应用,VQ方法中模型匹配不依赖于参数的时间顺序,因而匹配过程中无需动态时间归整(DTW)技术,而且比DTW方法的参考模型存储量小。当用于训练的数据量较小时,VQ方法比隐马尔可夫(HMM)方法有更大的鲁棒性。由于VQ方法比较简单,实时性也较好,因此是说话人识别中最常用的识别方法之一。图1为应用VQ算法的说话人识别系统示意图。
矢量量化的设计算法多采用LBG算法,此算法是由Linde、Buzo和Gray 3个人在1980年首次提出的,故被称为LBG算法。运用LBG算法时常采用分裂法来选取初始码本。但是在分裂过程中,有可能会产生空胞腔,致使一些码字很少被利用,从而降低了生成码本的质量。本文针对这种情况提出了一种优化分裂算法,并将这种优化算法应用到了说话人识别的研究中。
2特征参数选取
Mel倒谱系数(Mel Frequency Cepstrum Coefficient,简称MFCC)是在Mel标度频率域提取出来的倒谱参数。Mel标度描述了人耳对频率感知的非线性特性,在此计作Mel,它与频率f(Hz)的关系可用公式(1)近似表示:
Mel(f)=1 125ln(1+f/700) 。 (1)
MFCC参数的提取过程如下:
(1) 将语音信号x(n)通过一个高通滤波器:
H(z)=1-0.97(1/z) 。 (2)
(2) 每帧采样256点,帧移128点,加汉明窗:
undefined
。 (3)
其中:N为采样帧数。
设分帧后的信号为S(n),则加窗后的信号S′(n)为:
S′(n)=S(n)W(n) n=0,1,…,N-1 。 (4)
(3) 对加窗后的语音帧时域信号S′(n)进行离散傅立叶变换后得到线性频谱X(k) (0≤k≤N-1)。
(4)求频谱幅度|X(k)|的平方,得到能量谱|X(k)|2,用一组三角带通滤波器在频域对能量进行滤波,求得每个滤波器输出的对数能量S(m)。值得注意的是,这组滤波器在Mel频率上是平均分布的,每个滤波器两个底点的频率分别等于相邻两个滤波器的中心频率。滤波器的个数P取24。每个滤波器的传递函数为:
undefined
。 (5)
其中,f[m]是三角滤波器的中心频率,满足下面的关系式:
Hm(f[m+1])-Hm(f[m])=Hm(f[m])-Hm(f[m-1]) 。 (6)
得到的对数频谱S(m)为:
undefined。 (7)
(5) 将上述得到的S(m)进行离散余弦转换,求出L阶的Mel参数c(n),L通常取12。离散余弦转换的公式如下:
undefined。 (8)
(6) 一个帧的能量也是语音的重要特征,因此通常再加上一个帧的对数能量,使得每一帧的语音特征有13维,其中包含了12维的Mel参数和1维的对数能量。
3VQ方法在语音识别中的应用
将每个待识别的说话人看作是一个信源,从这些说话人的训练序列中提取特征矢量,利用VQ聚类成码本。对待识别的语音段提取特征矢量序列,利用系统建立的N个码本进行矢量量化,计算各自的平均量化失真Di:
undefined。 (9)
其中:yundefined(r=1,2,…,R;i=1,2,…,N)是指第i个码书中的第r个码字;xm是从测试语音中提取的特征矢量序列;M是特征序列的长度,本文采用前述的12维MFCC倒谱系数和对数能量作为特征矢量;d(xm,yundefined)为待测矢量xm和码字yundefined之间的距离,本文中d(xm,yundefined)采用欧氏距离。满足Di最小的那个码书所对应的i即为系统识别的结果。
3.1 常规分裂法
训练过程用LBG算法,由说话人语音的训练样本序列聚类生成码本。本文采用分裂法,并针对分裂过程有可能产生空胞腔的问题,提出了用2个小胞腔替代1个大胞腔的优化算法。分裂法的步骤如下:
(1)首先令码书尺寸Q=1,即初始码书中只包含一个码字,然后计算所有训练序列的形心,将所得的形心作为第一个码字Y(0)1。
(2)将Yundefined乘以扰乱系数1±ε,得到两个初始码字Yundefined=Yundefined(1-ε),Yundefined=Yundefined(1+ε),用LBG算法设计仅含2个码字的码书undefined,其中的上标(0)表示初始码字,(n)表示得到的码字。
(3)将码书undefined(n)2中的2个码字Yundefined和Yundefined乘以扰乱系数分裂成4个码字,重复上述过程,经过log2Q次设计就得到所要求的有Q个码字的初始码书undefined。
3.2 改进的去空胞腔分裂法
先把某空胞腔的形心去掉,然后将最大胞腔SM分裂为2个小胞腔SM1、SM2。分裂方法如下:
(1) 用扰乱系数1±ε分别乘以形心YM,得到2个码字:
YM1=(1+ε)YM,YM2=(1-ε)YM 。
(2)以Yundefined、Yundefined2个码字来划分这个大胞腔,构成2个小胞腔,它们分别为:
SM1={X|d(X,YM1)≤d(X,YM2),X∈SM} ,
SM2={X|d(X,YM2)≤d(X,YM1),X∈SM} 。
采用去空胞腔的优化方法,能够解决码本中可能存在的空胞腔和有些码字利用率低的问题,减小了失真。但是它的迭代时间稍长,算法也要复杂些。
4实验结果及分析
实验中使用CoolEdit录音软件录制语音数据,共采集3个人的语音数据,每人发音30次,其中20次作为训练数据,10次作为测试数据。信号采样频率为16kHz,量化为16bit。提取参数时,窗宽度为30ms,每帧采样点为256,帧移为128点,提取12维MFCC系数和对数能量作为特征矢量。本文分别采用分裂法和去空胞腔分裂法对语音进行识别,两种方法识别结果见表1。
表1的结果表明了识别率与待识别语音长度的关系,待识别的语音段越长,识别率越高。当待识别语音超过5s时,去空胞腔分裂法的识别率可达到100%。而传统的分裂法在5s后识别率变化缓慢,直到10s之后才能达到100%。由实验可知,将改进的码本生成算法用于码本训练,能在更短的时间内得到更好的识别效果,提高了系统的性能。
摘要:介绍了基于改进矢量量化(VQ)方法的说话人识别系统。该系统采用了能够反映人对语音感知特性的Mel频率倒谱系数(MFCC)作为特征参数,对VQ训练时码书的形成算法作了一些改进,并提出了一种去空胞腔分裂法的优化算法。实验证明,此优化算法减少了矢量量化失真,同时改善了量化的性能。
关键词:矢量量化,说话人识别,去空胞腔分裂法
参考文献
[1]胡光锐.语音处理与识别[M].上海:上海科学技术文献出版社,1994.
[2]杨行峻,迟惠生.语音信号数字处理[M].北京:电子工业出版社,1995.
基于动态环境下的说话人识别 篇4
关键词:动态环境,GMM,说话人识别
说话人识别很久以来就是一个即有巨大吸引力而又有相当困难的课题[1,2]。传统的GMM采用最大似然 (ML) 估计对模型参数进行优化。然而ML估计是一种局部搜索算法, 本质上采用爬山技术来寻找最优解。为了克服上述缺点, 人们提出了各种算法对目标函数进行优化, 主要有模糊聚类[3], 遗传算法[4,5], PSO算法[6]等。
PSO算法着眼于如何更有效地用一个粒子群在解空间中搜索最优解。但是分析不难发现, 粒子们在搜索时, 总是追逐当前全局最优点, 和自己迄今搜索到的最优点, 因此粒子们向全局最优点飞行时, 越接近全局最优点, 速度越小, 粒子们的速度很快降到接近于0, 并快速收敛于全局最优点。当环境发生变化时, 即将PSO算法应用到动态环境中去时, 粒子在原来的搜索区域内停滞不前, 容易陷入局部最优解。所以, 需要控制好群体粒子间的飞行距离, 使其能以较大的分布度在整个解空间中进行快速搜索。而采用小生境的方法形成和维持了稳定的多样化子种群, 可在搜索空间的不同区域中并行地进化搜索, 故将小生境应用于PSO能解决当PSO处于动态环境的问题。
而在说话人识别中, 由于语音数据库是在不同时间建立的。就是说, 说话人识别处于动态的环境之中, 因此可以将小生境粒子群算法应用于动态环境的说话人识别之中。
本文把小波分析和TEO结合起来, 形成DWT-TEO参数。通过不同尺度的小波基把输入含噪信号分解于不同频段中, 然后在各个频段分别通过TEO去噪。针对说话人识别的特点, 在小波重构时对各小波系数进行了加权处理。最后再把各个频段的输出通过小波重构恢复信号。最后通过Mel滤波器组把小波系数转换成MFCC。为了解决动态环境下的说话人识别的辨认率问题, 在识别阶段, 把小生境粒子群算法应用于GMM之中。从实验得出, 采用我们提出的DWT-TEO参数对于说话人识别的效果较好。采用基于小生境粒子群的高斯混合模型进一步提高了识别性能。
1 特征参数提取
本文把小波分析和TEO结合起来, 形成DWT-TEO参数。通过不同尺度的小波基把输入含噪信号分解于不同频段中, 然后在各个频段分别通过TEO去噪。针对说话人识别的特点, 在小波重构时对各小波系数进行了加权处理。最后再把各个频段的输出通过小波重构恢复信号。最后通过Mel滤波器组把小波系数转换成MFCC。
2 基于小生境粒子群的高斯混合模型
基于小生境粒子群的说话人算法步骤如下。
2.1 初始化设置算法各参数
包括粒子的初始速度、最大位置、最小位置、最大速度、最小速度。
2.2 初始粒子群
每个粒子的位置为
随机选取M特征矢量作为初始聚类中心, 然后有K-均值法来初始化GMM模型参数, 再用ML算法重估3次, 从而得到粒子群各微粒的初始位置。
2.3 更新速度和位置
式 (1) 中ωi为权重, 在算法运行初期, ωi通常较大以保证对整个解空间有较强的搜索能力, 而在运行后期, 其值较小, 保证算法的收敛。
Xi+1=Xi+Vi+1 (2)
PSO算法着眼于如何更有效地用一个粒子群在解空间中搜索最优解。但是分析式 (1) 和式 (2) 不难发现, 粒子们在搜索时, 总是追逐当前全局最优点, 和自己迄今搜索到的最优点, 因此粒子们向全局最优点飞行时, 越接近全局最优点, 速度越小, 粒子们的速度很快降到接近于0, 并快速收敛于全局最优点。当环境发生变化时, 即将PSO算法应用到动态环境中去时, 粒子在原来的搜索区域内停滞不前, 容易陷入局部最优解。
2.4 改进的小生境粒子群算法
首先将种群按照适应值降序排序, 然后应用聚类分析将种群分割为q个小生境。如果一组个体之间的距离小于小生境半径, 这些个体则属于同一小生境。其中个体之间的距离公式用欧几里德距离测度。然后在每一个小生境内部, 找出最好的粒子作为感应粒子, 采用分布式评价策略对环境进行响应。判断环境是否发生变化, 如果发生变化, 重新初始化感应粒子所在的子群。每个微粒执行飞行操作, 到达新的位置, 并计算新的适应度。对粒子群中每个粒子更新其速度;根据求得的每个粒子的更新速度, 重新计算其新的位置变量值。对粒子执行局部极值排挤操作, 调整分布度;计算每个粒子的目标函数值, 更新个体极值。这样整个群体的搜索趋势也随之改变, 粒子群将追随新的群体最优在新的空间进行搜索, 使群体避免在原来的搜索区域内停滞不前。
2.5 对粒子群进行参数重估计算
2.6 如果已经满足迭代次数, 则停止迭代, 否则转2.3
3 实验及结果
与文本无关的说话人辨识是通过鉴定一个说话人发出任何测试文本来鉴别或确认说话人的身份。实验由30个说话人组成, 每个说话人说出6个句子, 其中每个说话人随机选取3个句子组成训练集, 剩下的3个句子组成测试集。采用的语音是在三个月内分三次进行录制的。采样率为11 025 Hz, 帧长为30 ms, 帧移为15 ms, 进行 (1-0.95) z-1预加重。采用纯净语音进行训练, 辨认采用纯净语音附加各种信噪比的高斯白噪声, 用汉明窗加窗。训练语音时长为10 s, 用时长为2 s的语音进行辨认。
首先对训练集进行分帧、预加重和加窗, 提取12阶MFCC, 然后对于每一个人, 建立一个GMM, GMM中的混合数为64, 把所得的数据存储下来;同样对测试集进行分帧、预加重和加窗, 然后提取12阶MFCC, 求出该MFCC与训练集中的每个说话人的GMM的似然得分, 其中获得似然得分最大的说话人作为正确的辨认人。
根据语音数据库的建立时间, 进行了三次实验。第一次的语音数据库是第一次采集的;第二次的语音数据库采用第二次采集的数据库补充到第一次中去;第三次的语音数据库采用三次采集的语音数据。实验结果分别见表1、表2和表3。
从实验得出, 采用我们提出的DWT-TEO参数对于说话人识别的效果较好。采用基于小生境粒子群的高斯混合模型进一步提高了识别性能和鲁棒性。
4 结论
由于语音数据库是在不同时间建立的, 就是说, 说话人识别处于动态环境之中, 因此可以将小生境粒子群算法应用于动态环境的说话人识别之中。实验证明, 本文提出的系统在动态环境中表现出较高的辨认率和较好的鲁棒性。
参考文献
[1]邱政权, 范小春, 王俊年。基于维纳滤波和混合模型的说话人识别.仪器仪表学报, 2009;7 (7) :1436—1440
[2]Sakka Z, Kachouri A, Mezghani A, et al.A new method for speech de-noising and speaker verification using sub-band architecture.Control, Communications and Signal Processing, 2004.First Interna-tional Symposium on, 2004:37—40
[3]Hong W Y, Kwong S.A genetic classification method for speaker recognition.Engineering Applications of Artificial Intelligence, 2005;18 (1) :13—19
[4]林琳, 王树勋.基于自适应小生境混合遗传算法的说话人识别.电子学报, 2007;35 (1) :8—12
[5]刘健辰, 沈洪远, 姚屏, 等.一种基于聚类分析的小生境微粒群优化算法.湖南科技大学学报 (自然科学版) , 2006;3 (1) :73—76
说话人识别方法 篇5
说话人识别(Speaker Recognition,SR)是语音识别的一种,是通过话音区分说话人,从而进行身份鉴别与认证的技术。与其他生物认证技术如指纹识别、掌型识别、虹膜识别等相比,具有独特的方便性、经济性和准确性,并逐渐成为人们日常生活和工作中重要且普及的安全验证方式[1]。
Matlab是使用最为广泛的科学计算软件之一,在说话人识别中有着广泛应用。但在实际应用中仍存在如下不足:其语音处理工具箱仅仅提供了基本函数,并未针对一类问题给出一整套设计方案;一般Matlab控制台程序以命令形式调用语音处理工具箱函数,这种形式不像人机交互界面那样直观,也不易数据处理。正因为这些困难与不足,有必要设计基于Matlab GUI的说话人识别测试平台[2]。
1 GUI说话人识别测试平台实现
1.1 系统框架设计
说话人识别系统框图如图1所示,主要由以下模块组成:
(1)预处理模块:完成对语音信号的采样与量化、预加重处理、加窗、端点检测等;
(2)特征提取模块:测试音和训练音都必须经特征提取,提取出表征说话人个性的语音信号特征,以方便后续处理;
(3)参考模板模块:对模型参数进行估计和优化,建立说话人模型;
(4)模式匹配模块:测试音经特征提取,将提取出的特征参数和训练时产生的模型进行匹配,计算匹配距离;
(5)判决模块:根据匹配距离大小,依照某种相似性准则形成判决[3]。
对上面5个模块编写程序,在程序中调用了语音处理工具箱中的enframe,melcepst,melbankm等函数[4]。对所有程序进行优化和整合,设计出说话人识别系统测试平台。
1.2 人机交互界面设计
说话人识别测试平台主界面如图2所示。设置各控件属性,通过回调函数实现系统功能。
1.2.1 控件属性值设置
图2主界面中,包括如下控件类型:Static Text,,,,,Mpanel等。表1为各控件类型的主要属性设置情况[5]。
1.2.2 系统各部分功能的实现
主界面主要包括录音、测试及结果分析3部分。
(1)录音部分:首先设置语音采样点数,然后录音,可通过PLOT按钮观看录制的语音波形,或通过PLAY按钮听录制语音的声音[6],以保证录制语音质量。录音按钮回调函数为:
function pushbutton9_Callback(h Object,eventdata,handles)
(2)测试部分:首先选择人数、发音的字数、帧长、帧移、是否选择有端点检测,然后选择采用的语音特征参数是MFCC或MFCC+ΔMFCC,通过The Path of Train按钮,输入训练语音路径,以输入训练语音,再按TRAIN按钮,当Edit text框中显示training has been completed表明训练已完成。再按The Path Of Test按钮,输入测试语音路径,以输入测试语音,再按TEST按钮以进行测试,其测试结果显示在Edit text框中,最后识别率显示在Identify rate窗口。训练按钮回调函数为:
function train_Callback(h Object,eventdata,handles)3
(3)结果分析部分:对几个影响识别率的因素进行了分析。主要因素有:帧长、人数、字数、MFCC阶数、是否采用端点检测等,其结果和理论结论一致。
2 测试实例
测试实例参数设置及测试结果如图3所示。特征参数采用MFCC+差分MFCC;识别模型为矢量量化模型;测试环境为实验室环境。人数为50人,每个人训练、测试时分别说12个汉字,中文普通话。识别率窗口显示系统识别率为96%,效果较好,表明了该测试平台的有效性。
3 结语
本文所设计的基于Matlab GUI说话人识别测试平台,充分利用Matlab软件中的GUI技术及语音处理工具箱中内置函数,功能完善,包括录音、测试及结果分析部分。该平台提供了良好的人机交互环境,便于用户在各种参数条件下的测试实验,例如用户可方便设置采样点数、人数、字数、及帧长、帧移、MFCC的阶数等测试条件,系统识别率高,为进一步开发说话人识别系统提供一定的仿真环境及参考价值。
参考文献
[1]吴朝晖.说话人识别模型与方法[M].北京:清华大学出版社,2009.
[2]秦辉.基于Matlab GUI的预测控制仿真平台设计[J].系统仿真学报,2006,18(10):2778-2779.
[3]甄斌,吴玺宏,刘志敏.语音识别和说话人识别中各倒谱分量的相对重要性[J].北京大学学报:自然科学版,2001,37(3):371-378.
[4]陈炜杰.噪声环境下的说话人识别技术研究[D].杭州:浙江工业大学,2008.
[5]郑阿奇.Matlab实用教程[M].北京:电子工业出版社,2005.
矢量量化在说话人识别中的应用 篇6
所谓说话人识别,就是根据输入语音确定发音者的身份,即用待识语音和预先提取的说话人特征来确定或鉴别说话人的身份[1]。主要讨论了说话人识别技术的原理及其实现方法,做了一个基于矢量量化(VQ)的说话人识别系统,并对仿真实验数据进行了分析。
2 基于矢量量化(VQ)的说话人识别方法及其算法实现
2.1 矢量量化的基本原理
矢量量化的基本原理是:将若干个标量数据组成一个矢量(或是从一帧语音数据中提取的特征矢量)在多维空间给与整体量化,从而可以在信息量损失较小的情况下压缩数据量,这是仙农信息论中“率-失真理论”在信源编码中的重要应用。矢量量化有效地应用了各元素间的相关性,因此比标量量化具有更好的压缩效果[2]。
2.2 矢量量化在语音识别中的应用
通过矢量量化可以把大量分布在特征空间中的向量投射到这个空间中的有限点上,既压缩了数据又不会对精度造成太大的影响。将矢量量化用于说话人识别系统的建模中,这时的特征空间是由说话人的声学特征向量构成的,经过矢量量化后,每个说话人最具有代表性的特征向量的集合就构成了相应的说话人模型(码书或码本)。其中,构成码本的单个特征向量称为码字。在矢量量化系统中,每个说话人的码本就是它的参考模型。首先,用矢量量化的码本作为说话人识别的参考模板,即为输入的语音中的每一个词或字做一个码本作为该词或字的参考模板,识别时对于任意输入的语音特征序列,计算该序列对每个码本的总平均的失真量化误差,即语音每一帧特征矢量与码本的失真之和除以该语音的长度(帧数)。总平均误差最小的码本所对应的词或字即为识别结果。
3 基于矢量量化(VQ)的说话人识别系统的仿真结果与分析
3.1 说话人识别系统的建立
所用的语音数据均在相对安静的教室环境下,采用设计的说话人识别系统通过笔记本电脑采集,声卡自动完成语音波形的A/D转换,获得WAV文件。采样率为11025Hz,量化值为16bit。获得的WAV文件,为后续的处理提供测试数据。笔记本电脑硬件系统如下:
CPU:Ce2.0;内存:785776KB
麦克风:SHURE,MODEL PROLOGUE14H-LC,Frequency Response:40-13000Hz
声卡:Creative,Sound Blaster Audigy Platinum e X
预处理前要进行语音信号的端点检测,端点检测主要是为了区分语音的有声段和无声段,找出语音的起始端点和结束端点,把语音信号的有效部分从输入信号中找出来。有效的端点检测不仅能使处理时间减到最小,而且能排除无声段的噪声干扰,从而使识别系统具有良好的识别性能。在背景噪声较小时用平均能量识别较为有效,在背景噪声较大时用平均过零率识别较为有效。采用短时能量与短时过零率相结合的方法来确定语音的起始点。预处理阶段主要是对语音信号进行预加重,加窗,分帧等。
预加重的目的在于消除唇辐射的影响,提升语音高频部分,使语音信号的频谱区域平坦,预加重滤波器采用下式实现:
分帧,即把语音信号分成帧长为N,帧移为M的短时语音帧序列。取256点(23.2ms)为一帧,帧移128点(11.6ms)。
加窗,采用汉明窗(Hamming window)来消除由于分帧引起的信号边缘蜕变。汉明窗计算公式如下:
的说话人识别系统是基于MATLAB搭建的,其工作界面如图1所示。此系统主要用于说话人辨认实验。
3.2 基于矢量量化的说话人辨认实验
为了测试所建立的说话人识别系统的有效性,同时也为了进一步了解识别模型的识别性能和特点,我们在安静的教室环境下选择10个说话人(6男4女)进行干净语音的提取并进行说话人辨认实验,实验中使用的语音特征参数为MFCC+△MFCC。
实验一:
a.采集10个说话人的语音作为训练样本,内容为汉语“说话人识别”,不同的人说同样的内容;
b.再次采集这10个人的语音作为测试样本,测试样本一的语音内容为汉语“说话人识别”,测试样本二的语音内容为5位阿拉伯数字“12345”。
在基于矢量量化(VQ)的说话人识别系统中进行实验一,实验数据如表1所示。
表1的实验数据可以看出,训练者个数越多,识别率越好,在相同的训练样本个数下,待识别者的语音长度越长识别性能越好,但并不要求无限长,从表中可以看出,3s和5s的识别率几乎是相当的,都能达到几乎100%的识别率。
4 结论
说话人识别技术具有广泛的应用前景,矢量量化技术是仙农信息论中“率-失真理论”在信源编码中的重要应用。通过上面的实验证明了设计的说话人识别系统是可行的,并能实现较好的说话人识别,而基于矢量量化的说话人识别系统也具有相当高的识别率。
摘要:说话人识别技术是根据待识别人的语音与预先提取的说话人语音特征是否相匹配来鉴别说话人身份的一种生物认证技术,具有广泛的应用前景。采用矢量量化(VQ)方法,可以在信息量损失较小的情况下更好地压缩数据量,从而增高说话人识别系统的识别率。研究了VQ在说话人识别中的应用,提出并设计了一个基于VQ的说话人识别系统,当用于训练的数据量较小时,可以得到比较稳定的识别性能。
关键词:说话人识别,特征提取,矢量量化
参考文献
[1]臧晓昱.基于改进的高斯混合模型说话人识别方法的研究[R].西安:武警工程学院,2006.
说话人识别方法 篇7
语音是人类日常生活中相互之间交流的最自然、最简便的主要方式。语音中包含了多种信息,有表达的语义信息、说话人身份信息、语种信息、信道信息等等[1]。随着计算机技术的发展和应用的需求,人们希望能够通过计算机自动提取语音中的这些信息,因此从语音信号中提取语义信息的语音识别和提取语种信息的语种识别研究都取得了迅速的进步,并且开始进入实际应用阶段。本文探讨的说话人识别就是自动提取语音信号中说话人信息的技术。
快速的说话人识别技术对国防安全有着重要的意义,但话音内容、噪声干扰、以及传输信道之间的差异,给技术的应用带来挑战。传统的说话人识别系统,往往对给定的目标说话人进行建模,然后通过似然概率计算或距离的度量,直接给出判决。本文基于美国国家科学技术标准局(National Institute of Science and Technology, NIST)的说话人识别评测(Speaker Recognition Evaluation, SRE)任务[2],设计并实现了一个快速的说话人识别系统,实现了高斯超向量方法。该系统以高斯混合模型的参数作为特征,建立超向量,并采用支持向量机进行分类,并给出判决。为了增加超向量对目标说话人的描述能力,系统对分类器进行了设计,引入了鲁棒性技术。系统结合了高斯混合模型的统计特性和支持向量机的分类特性,在提高精度的同时,并没有引入更多的计算复杂度。
本文将分以下几个部分来介绍快速说话人识别系统:第二部分介绍说话人识别技术原理,包括:高斯混合建模和支持向量机分类;第三部分具体介绍说话人识别系统的设计和实现;第四部分将对系统进行测试,给出其性能结果;最后第五部分为本文的结论和展望。
2 说话人识别技术
2.1 高斯混合建模
使用高斯混合模型对说话人进行建模主要基于两个出发点。第一,高斯混合模型中的高斯分量能够描述一些广义的语音学特征。对于说话人识别任务来说,其语音体现了多种声学特征信息组合,每一类特征都近似对应一类语音学特征(如擦音,塞音,鼻音,或者某种舌位和口型),这些语音学特征能够描述不同说话人的发音情况。第二,线性加权的高斯密度函数可以逼近任意形状的概率分布,能比较准确的拟合说话人特征分布情况,比使用单高斯拟合和矢量量化方法都有更好的建模优势。因此可以用混合高斯模型描述不同说话人的发声特征概率分布情况。
高斯混合模型可以描述为一个由M个高斯分量组成的高斯混合密度函数,是M个高斯密度函数的加权和:
undefined
undefined其中,undefined是一帧语音的特征矢量,undefined是混合密度中各个分量的密度函数,而wi(i=1,....M)是各个高斯分量的权重,这些权重满足关系式:
undefined
其中λ为GMM模型参数,每个高斯分量的密度函数为如下形式的高斯函数:
这里undefined是高斯函数的均值矢量,Σi为高斯函数的协方差矩阵,D是特征矢量维数。
undefined在高斯混合模型中,每一个高斯概率密度分量bi(x)都可以用其权重wi,均值ui和协方差Σi描述,这样,一个M分量的高斯混合模型可以由以下集合表示:
undefined
在说话人识别应用中,目标说话人的高斯混合模型通常由一个全局背景模型(Universal Background Model, UBM)自适应得到[3]。这里提到的自适应,采用了基于最大后验概率估计(Maximum a Posteriori, MAP)的方法[4]。这种方法在说话人识别领域经常采用,优点是可以用比较少的数据来较为准确的估计模型。通过对输入语音进行自适应,可以得到对应超向量[5]:
2.2 支持向量机
支持向量机(Support Vector Machine,SVM)一种最大间隔分类器,它通过最大间隔超平面将在特征空间中线性可分的训练数据分开[6]。支持向量机(Support Vector Machine,SVM)训练理论是基于最大边界距离概念之上的。对于一个在SVM空间可以分开的两类样本集(正样本集和负样本集),通过找到两个具有最大边界距离的超平面来确定分类平面。在边界上的训练样本矢量则被称为支持向量。SVM分类器由一组支持向量组成:
undefined
其中xi为支持向量,αi为支持向量权重,ti为支持向量的理想输出(+1对于正样本支持向量,-1对于负样本支持向量),并且有undefined。K(x,xi)为核函数。对于一个测试样本x,当得分f(x)大于阈值时,分类器判决为属于正样本,小于阈值时,则判决属于负样本。其中,核函数表示为
K(x,y)=b(x)tb(y)
其中b(x)为将矢量由矢量空间映射到SVM空间的函数。K(x,y)选择有多种选择,如多项式函数,线性核函数,高斯RBF(radial basis function)函数[7]等。本文我们采用基于高斯混合模型的超向量核函数[8]。
undefined
3 系统设计与实现
3.1 系统框架
本文提出的说话人识别系统框架如图1所示,主要包括前端预处理,有效语音检测、特征提取、非线性映射方法、后端分类器以及多系统判决技术。整个系统处理流程分4个阶段:P1,P2,P3和P4。P1阶段主要完成一系列预处理工作,首先检测输入语音中的有效数据,然后提取语音特征参数。在P2阶段,选择了不同的映射策略,目的是将底层的语音倒谱特征,经过非线性的变换,映射成高层的特征向量。在此过程中,我们采用高斯混合建模的非线性映射,生成高斯超向量。P3阶段在超向量的高维特征空间中,使用支持向量机进行分类,并将分类得分转换成各个目标人的后验概率。P4阶段基于假设检验的思想,通过门限进行识别结果判决。
3.4 实现流程
系统采用模块化的设计方法,软件流程包括建模过程和识别过程,系统软件设计流程如图2所示。
建模过程包括两个部分:首先离线采集大量的训练数据,这些数据尽可能地包含各种信道,覆盖各种发音内容,采用最大期望算法训练通用背景模型。其次将目标说话人训练数据和反样本数据在通用背景模型的基础上,采用最大后验概率自适应算法得到各自的超向量,通过支持向量机,训练得到目标说话人的分类模型。
识别过程包括以下几个部分:首先,对输入语音进行特征分析,加窗后生成单高斯进行距离测算,将距离大于门限的窗进行分段,并判决是否为有效语音,完成对有效语音进行特征提取;其次,合并有效语音段的声学特征,在背景模型的基础上进行最大后验概率自适应得到高斯超向量;接着,将测试语音的超向量与各目标说话人的分类模型进行分类,同时完成信道分析消除信道影响;最后,对支持向量机分类得到的距离得分进行处理,将其转换成对各个目标人的后验概率得分,并通过门限比较给出系统判决。
4 性能测试
4.1 测试指标
NIST说话人识别评测任务中,都是给定一个测试语音和一个目标人,系统要判断当前语音是否属于该目标人,就是所谓的测试任务样本。一个测试任务样本的答案无非有两种“是”或“否”。 所以,在说话人确认中经常会出现两种错误:漏报和误警。如果待测试语音是给定目标人的话音,系统确认为“否”,那么就代表系统没有检测出该目标人,这种错误称为漏报(False Rejection,FR);反之,如果待测试语音不是给定目标人的话音,系统确认为“是”,那么就代表系统检测出的结果出错,这种错误称为误警(False Alarm,FA)。
漏报和误警是此消彼长的关系,为了降低漏报,就必须降低判决阈值,这样就带来更多的误警;为了降低误警,就必须提高判决阈值,而这样又带来了更多的漏报。因此,衡量一个系统的性能,通常必须同时考虑漏报率和误警率两个方面的因素。由于针对海量数据语种识别应用,为了快速进行评估系统性能好坏,本文采用相对简单的等错误率EER(Equal Error Rate, EER)值[9]。等错误率值,即漏报和误警相等时的值。
4.2 测试数据
本文的任务集包含两个部分,分别采用了NIST说话人识别评测2008年和2010年的“电话-电话”测试任务集,标记为“SRE08”和“SRE10”。这些语音数据均从电话信道下进行采集,并且绝大部分都是英语发音,可以排除由于语言不同对说话人识别性能造成的影响。在众多国内外研究单位发表的文章中,都选择了这两个数据集作为测试对象。
4.3 测试结果
为了与传统高斯混合建模方法比较,首先建立高斯混合系统,采用了18维MFCC特征,并做一次差分变换,建模方法采用了基于最大似然准则,选择高斯分量数目为512。在超向量系统中,高斯超向量的产生同高斯混合系统中目标人建模过程一致。表1给出了超向量说话人识别系统的等错率指标,可以看出采用高斯超向量作为输入样本的快速系统,其性能比传统高斯混合系统提高了很多。这是因为,一方面,本文采用的高斯混合建模能够描述目标说话人的声音特性;另一方面,作为区分性分类器,支持向量机能够在最优条件下把目标说话人与非目标人分开。超向量系统结合两种技术的优点,取得了较好的性能。同时,表1给出了说话人识别系统的速度指标,“倍实时”的含义就是1小时可以识别的语音数据量,即“16.1倍实时”代表1小时可以处理16.1小时的语音数据。可以看出,由于超向量系统后端只进行分类计算,计算速度要快于高斯混合系统中的似然概率计算。其中测试机器的硬件配置为Intel单核CPU,主频2.26GHz,4G内存。
5 结束语
本文研究目的是针对电话自然口语语音实现快速并且实用的说话人识别技术。结合美国国家技术标准局的说话人识别评测任务,本文提出了一个快速说话人识别系统框架。该框架包含对原始语音信号的预处理、声学特征提取、高斯混合建模、超向量生成、支持向量机分类和系统判决等过程。本文对系统框架中使用的技术进行阐述,实现了应用系统,并对该系统进行了性能测试,达到了应用要求。在未来的工作中,我们将进一步消除电话信道影响,提高系统的鲁棒性,进一步提高系统性能。
参考文献
[1]杨行峻,迟惠生.语音信号数字处理,北京:电子工业出版社,1995.
[2]The NIST Speaker Recognition Evaluation Plans.http://nist.gov/itl/iad/mig/sre.cfm.
[3]R.Gopinath.Maximum Likelihood Modeling with Gaussian Distributions for Classification,ICASSP,1998,661-664
[4]D.A.Reynolds,T.F.Quatieri,R.B.Dunn.Speaker Verification using Adapted Gaussian Mixture Models,Digital Signal Pro-cessing,2000(10):19-41
[5]W.M.Campbell,J.P.Campbell,D.A.Reynolds,E.Singer.Support vector machines for speaker and language recognition,Computer Speech and Language,2006(20):210-229
[6]忻栋.支持向量机的研究及在说话人识别上的应用[D].浙江大学硕士学位论文,2002.
[7]C.C.Chang,C.J.Lin.LIBSVM:a library for support vector machines.from http://www.csie.ntu.edu.tw/~cjlin/libsvm.(2001).
[8]H.B.Suo,M.Li,P.Lu,Y.H.Yan,Automatic Language Identification with Discriminative Lanugage Characterization Basedon SVM,IEICE Transaction on Information and System,2008(E91-D):567-575.
【说话人识别方法】推荐阅读:
说话人识别01-24
说话人识别技术07-25
学美国人说话05-18
孔子教人如何说话01-18
说话办事方法12-21
职场人说话的八个禁忌06-14
和不熟的人说话的杂文随笔06-17
不会说话的人怎么搞好人际关系02-07
说话训练的作用及方法论文03-26