摘 要: 人类语音的情感识别是近年来新兴的研究课题。针对语音信号特征数据的非线性流形特征,使用有监督的局部线性嵌入(SLLE)流形学习算法对提取的特征参数进行非线性降维。最后,采用支持向量机(SVM)分类器对降维后的低维特征数据进行分类识别,完成语音情感识别实验。实验结果表明,识别效果很好。
关键词: 语音信号;情感识别;流形学习;降维 0 引言随着信息技术的高速发展和人类对计算机的依赖性的不断增强,为了使人类与计算机间能够更加智能更加自然地交互,新型的人机交互HCI(Human Machine Interaction)技术正逐渐成为研究热点。近几年,研究者对语音中的情感信息识别表现出日益浓厚的兴趣。他们从生理、心理学角度等角度出发,建立情感模型并得到语音情感的声学关联特征,以及各种针对语音情感识别和合成的算法、理论展开了深入的研究。对于情感信息的处理技术的研究包括多个方面,主要有情感特征分析、肢体情感识别、面部情感识别、语音情感识别、情感语音的合成,其中语音信号中的情感信息处理与识别的研究正越来越受到研究者的重视。 1语音情感特征参数的提取语音情感特征的选择及如何有效地提取语音信息中重要的特征参数是当前研究语音情感识别最重要的,同时也是最困难的问题之一。情感特征选择的优劣将直接影响到最终识别结果的好坏。目前,大多数国内外研究者如Petrushin、Ang、赵力等人普遍采用的情感特征都是基本的韵律特征,如基音频率、振幅、发音持续时间、语速等[1-4]。Tato从基于“激发维-评价维-强度维”的三维情感维度理论出发指出,若提取的特征信息反映的情感维数越多,就越能更好地区分情感[5]。韵律情感特征仅仅反映了三维情感空间中的“激发维”信息,但是若只使用韵律特征来当情感维数的话并不能很好地区分情感。近年来Gobl 、Johnstone等人的研究证明语音信号中的音质特征也能够很好地表达三维中的“评价维”信息,体现了不同类型情感的发音方式的区别,如生气和高兴发音时由于喉咙的位置不同而引起的喘气和沙哑等方面的不同[6,7]。因此,为了获得更多的三维情感特征信息,本文尝试在提取语音基本的韵律特征的同时,研究提取语音中的音质特征。
根据上面的思想,本文提取的汉语普通话生气、高兴、悲伤和惊奇四种不同情感状态下的情感语音的韵律特征参数和音质特征参数,提取的情感特征参数共47个,分别是26个韵律特征参数和21个音质特征参数。26个基本的韵律特征参数如表1所示,21个音质特征参数如表2所示。
表1 26个基本的韵律特征参数 韵律特征参数 统 计 基音频率 (1)最大值Pmax (2)最小值Pmin (3)极差Pd=Pmax -Pmin (4)上四分位数P0.75
(5)中位数P0.5 (6)下四分位数P0.25(7)内四分极值Pi= P0.75-P0.25(8)平均值mp(9)标准差σp(10)平均绝对斜度Ms (11)基频抖动值Pj 振 幅 (12)平均值ma(13)标准差σa(14)最大值Amax(15)最小值Amin(16)极差Ad=Amax-Amin(17)上四分位数A0.75(18)中位数A0.5(19)下四分位数A0.25
(20)内四分极值Ai 发音持续时间 (21)发音持续总时间TS(22)有声发音持续时间TV
(23)无声发音持续时间TU
(24)有声发音持续时间与发音持续总时间的比值TVR=TV/TS
(25)无声发音持续时间与发音持续总时间的比值TUR=TU/TS 语 速 (26)平均语速MSy 表2 21个新提取的音质特征参数 音质特征参数 统 计 频谱能量参数 (27)0-500Hz的频带能量平均值SED500
(28)500-1000Hz的频带能量平均值SED1000
(29)2500-4000Hz的频带能量平均值SED4000
(30)4000-5000Hz的频带能量平均值SED5000 谐波噪声比 (31)平均值mH(32)标准差σH(33)最小值Hmin(34)最大值Hmax(35)极差Hd 共振峰 (36)第一共振峰F1的平均值mF1(37)第二共振峰F2的平均值mF2
(38)第三共振峰F3的平均值mF3(39)第一共振峰F1的标准差σF1
(40)第二共振峰F2的标准差σF2(41)第三共振峰F3的标准差σF3
(42)第一共振峰F1的中位数F10.75(43)第二共振峰F2的中位数F20.75
(44)第三共振峰F3的中位数F30.75
(45)第一共振峰中位数F10.75所占的带宽BF1
(46)第二共振峰中位数F20.75所占的带宽BF2
(47)第三共振峰中位数F30.75所占的带宽BF3 2 有监督的局部线性嵌入(SLLE)降维在介绍有监督的局部线性嵌入(SLLE)之前,应该介绍局部线性嵌入(LLE)的主要思想:对于一组具有嵌套流形的数据集,在嵌套空间与内在低维空间局部邻域间的点的关系应该不变的。即在嵌套空间每个采样点可以用它的近邻点线性表示,在低维空间中保持每个邻域中的权值不变,重构原数据点, 使重构误差最小。
图2.1局域线性嵌入(LLE)流程图
LLE算法的第一步是预先给定的k值,然后在样本空间中寻找k个领域点。邻域点的确定积极负责,而且必不可少,接着根据欧氏距离来计算点间的距离,当然测地线距离也可以用来计算;根据需要,还可以自适应的调整邻域点数目。一般情况下,选择切好的一定范围的领域点数,对嵌入结果影响不大,因此要有效的保证算法重构的低维流形嵌入质量就必须选择合适的领域点数。
LLE算法的第二步是计算出最优的重构权值矩阵Wij,依据是第一步得到的每个点的相邻域点,因此必须定义最小费用函数如下:
其中,i是高位空间的输入向量,j是低维空间的输出向量。
LLE算法的第三步是求样本点在低维空间中的嵌入映象,使得低维重构无差最小,在保持权值矩阵Wij不变的情况下。在此可以重写最小费用函数为:
其中,显然是一个N×N的稀疏对称矩阵。
上式满足如下两个条件:
据此,可以将变换成如下形式:
将M的所有非零特征值从小到大排列,如果第一个特征值几乎接近于零,那么舍去第一个特征值。通常取Y为M的第2个到第d+1个非零特征值所对应的特征向量,则可以使费用函数达到最小。