林巧民,齐柱柱
(1.南京邮电大学 计算机学院,江苏 南京 210023;2.南京邮电大学 教育科学与技术学院,江苏 南京 210003)
语音是人类沟通方式中最快和最自然的方法。研究人员认为语音是一种快速和有效的人机交互方法。然而,这要求机器应具有足够的智能来识别人类声音。自五十年代以来,已经对语音识别进行了大量研究,其中涉及了将人类语音转换为词序列的过程。尽管在语音识别方面的研究已经取得了重大进步,但仍然远远没有实现人与机器之间的自然交互,这是因为机器不能理解说话者的情感状态。因此引入了语音情感识别[1]这一相对较新的领域,即定义为从他或她的语音中提取说话者的情感状态。语音情感识别可以从语音中提取有用的语义,并改进语音识别系统的性能[2]。
目前,大多数研究者都同意“调色板理论”[3],其中指出任何情感都可以分解成主要情感和次要情感。在此将情感分为5种:高兴、惊奇、愤怒、悲伤和中性,并对其进行语音情感识别。在语音情感识别中,算法的优劣决定着识别率的高低。尽管目前研究者已取得大量成果,比如文献[4]仅使用隐马尔可夫模型对语音进行情感识别,文献[5]对传统的神经网络方法进行了分析,文献[6]使用深度神经网络和隐马尔可夫模型相混合的模型,相比单独使用统计模型得到了不错的识别率。因此单一使用某算法进行语音情感识别的效果并不理想。依据HMM对动态时间序列具有的极强的建模能力和较弱的分类决策能力,以及ANN具有的较强的并行处理能力和分类决策能力及不能处理语音动态变化的特征序列等特点,将HMM和ANN两种算法相结合,取长补短,以提高语音情感识别率。
在对语音信号进行特征参数提取之前,首先要对语音信号进行预处理[7],以去除语音信号中掺杂的背景噪音的影响,并且获得计算机能够识别的、较为理想的语音样本数据。语音信号预处理包括反混叠滤波、预加重、分帧加窗和端点检测等操作。
原始语音信号包含各种各样的信息,如语调、文字、情感、韵律等,那么可提取的情感特征参数也是多种多样的。首先要解决的一个关键问题是如何从这些情感特征参数中建立能反映个人情感特征的矢量[8]。因此要取得较好的语音情感识别效果,必须准确选取语音情感特征参数。一个重要的选择策略是:尽可能提取更易于提高语音情感识别率的情感特征参数,并减少语音信号中那些无用的冗余信息[9]。
基因频率是人说话发浊音时声带振动的基本频率,简称基频,通常用F0表示。基频的变化模式称为声调,包含了大量有用的语音情感激活度的信息。在国内外许多有关语音情感识别的研究中,基因频率是重要的参数之一,有助于研究语音情感的变化。
短时能量即音量高低,它是一帧采样点值的加权平方和。短时能量直接反映声音的音量大小,其中清音的能量较小,浊音的能量较高。一个人的情感不同时,其说话的音量也不同。例如在生气或者惊讶时,说话的音量就较大,其短时能量也就越高。
语音信号的振幅特征也是语音情感特征参数的一种,愤怒或惊奇时人们音量变大,语音信号振幅较大,然而当悲伤或者平静时,语音信号具有较小振幅,因此振幅也常被用作语音情感识别中的特征参数。选取发音起始点间的平均振幅的最大值作为最大振幅,同时提取平均振幅和最大振幅做参数。
在语音情感识别中,线性预测倒谱系数(LPCC)常被用作情感特征参数,由线性预测系数(LPC)推导出。LPCC系数的最大优点就是能较彻底地消除语音产生过程中的激励信息,并且能较好地反映声道响应。LPCC系数能很好地模拟人的声道模型,十几个LPCC系数就能良好地描述语音信号的共振峰特性,同时求取LPCC系数时计算量小,易于实现,因此在语音情感识别中能获得良好的识别效果[10]。文中选取10阶LPCC系数作为情感特征参数,表示为Ci1,Ci2,…,Ci12,其中i表示帧数,k=1,2,…,12。
HMM模型[10]的最大优势是有极强的建模能力,尤其对动态时间序列,在语音情感识别中已经取得了相当不错的效果,并大大提高了语音情感识别性能。然而,HMM模型的分类能力弱、模式识别性能差,存在先验假设问题,需要先验统计知识等,先验假设也就是假设语音信号当前的状态只与前一个状态有关[11]。
HMM模型中常用的Baum-Welch训练算法是基于最大似然准则,其分类决策能力较弱,而且仅根据累积概率最大值判断,忽略了其他状态的累积概率和每个模型之间的相似特征,降低了HMM情感识别能力。
ANN模型[12]正好相反,具有极强的分类决策能力,良好的自适应和自学习能力,较强的鲁棒性和容错性,不需要预先假设,广泛应用于语音情感识别。但ANN模型动态特性描述能力较弱,只能解决不涉及时间序列处理的静态模式分类问题。ANN模型是可以训练的,可不断积累学习经验以便提高性能,同时又因具有高度的并发性而能进行快速分类判别。
因此,将有较强动态时序建模能力的HMM和有较强分类决策能力的ANN两种方法进行有机结合[13],充分发挥两者各自的优势,进一步提高语音情感识别的准确率。该方法识别流程如图1所示。
图1 语音识别系统流程
针对HMM和ANN各自的优缺点,将HMM模型的较强动态时序建模能力和ANN模型的较强分类决策能力相混合形成新的模型,HMM模型的输出作为ANN模型的输入,对语音信号进行识别和分类,完成语音情感识别。
将HMM模型与ANN模型融合在一起,这里选择的ANN模型是径向基函数神经网络(RBF),可以充分利用全部情感状态的累积概率,并对信号细节分量加以提取。RBF神经网络是由输入层、输出层和隐含层组成的网络结构,其中输入层节点是线性神经元,输出层节点是线性求和单元,隐含层节点常采用高斯核函数,可以对输入产生局部响应,将输入空间划分为若干小的局部区间,以达到分类和函数逼近的目的。RBF网络结构简单,参数训练易于实现,且不易陷入局部极小的麻烦。
综合两类方法各自的优点,研究HMM和RBF相结合的问题。
RBF模型的训练采用BP算法。经过HMM模型的Viterbi算法解码输出全部情感状态的累积概率,然后利用RBF模型进行非线性映射。HMM/RBF混合模型的训练算法如下:
(1)用Baum-Welch算法训练HMM模型,为每个情感状态分别建立一个HMM模型,获得训练好的HMM参数库。
(2)输入待识别语音样本xi(1≤i≤M),i是语音在语音库中的序号,M为其容量。用HMM模型对语音信号数据进行时间序列处理,采用Viterbi算法解码得到相应HMM参数输出的状态累积概率V=[βT(1),…,βT(j),…,βT(N)](1≤j≤N),这表示状态sj的累积概率。
(4)RBF采用BP学习算法对RBF进行训练,直到满足网络的收敛精度要求为止。神经网路训练算法使用BP学习算法,并且代价函数为修正的互熵函数。假设输出层有N个节点,每个节点的输出为Yn,对应的期望输出为Tn,修正的互熵函数可以表达为:
(1)
当期望输出为1时,互熵函数中的第二项为0,可以加快网络的训练速度。
如图2所示,系统识别过程为:首先待识别样本经过预处理和特征提取操作后,经过HMM模型的Viterbi算法[15]解码产生全部状态的累积概率保存在矢量V中,且不用HMM模型识别;然后对所得矢量进行时间规整,可使用空间正交基函数展开的方法[16],最终生成等维的特征矢量,将其作为RBF模型的输入进行非线性映射,获取识别结果。
Viterbi算法用于生成最佳状态序列,评估给定观察字符号序列与给定HMM模型之间的最佳匹配的可能性,然后实现最优状态序列。指P(S,O/λ)最大时确定的状态序列,即HMM输出一个观察值序列O=o1,o2,…,oT时,使输出概率最大的状态序列S=s1s2…sT就是最佳。算法描述如下:
在使用Viterbi算法求取最佳状态序列时,由于使用递归计算的方法,概率值的连续乘法运算很容易导致下溢现象。为了解决该问题,通常使用两种方法:第一种是增加比例因子,用于求和运算;第二种是对概率值取对数后再进行计算,用于乘积运算。
(2)
矩阵C中每一列可看作为m次多项式系数,公式如下:
(3)
该多项式在0到1空间用正交基函数展开:
(4)
其中,Pn(x)为勒让德多项式;Cn为展开系数。
为了简化计算,仅选择6个勒让德多项式作为正交基。尽管m是变量,但是每个m阶多项式可被扩展为6个系数。因此对于状态i而言,L列的向量通过勒让德多项式展开的系数共有6L个,L是常量。
系统中采用的语音样本来自CASIA汉语情感语料库[17],由四个专业发音人对相同的文本赋予不同的情感来阅读。挑选出愤怒(angry)、高兴(happy)、中性(neutral)、悲伤(sad)、惊奇(surprise)五种情感共300句语音状态作为实验对象。采用多次十折交叉验证的方法,将语音样本分为十份,轮流将其中9份做训练1份做测试,10次结果的均值作为对算法精度的估计。实验中语音信号的采样频率为16 kHz,量化精度为16 bit,信噪比约为35 dB,帧移为5 ms,帧长为16 ms。
表1和表2分别显示了单独使用HMM模型以及HMM/RBF混合模型在5类不同情感状态下的情感识别率。从表1看出,悲伤的识别率最高为82.2%,其平均识别率达到77.86%,由此可知,采用单独HMM模型的识别效果一般。从表2看出,高兴和愤怒的识别率有明显提高,其平均识别率达到了89.5%。
表1 基于HMM的语音情感识别结果
表2 基于HMM和ANN混合模型的语音情感识别结果
由图3可明显看出,混合模型在愤怒、高兴、悲伤、惊奇和中性5种不同情感识别效果上较单独的HMM模型有较为明显的提高。
图3 单独的HMM以及HMM/ANN混合模型的语音情感识别模型比较
目前,多种网络模型相结合是解决语音识别中的问题的有效途径和思路,因此提出了基于HMM/RBF的语音情感识别模型,并介绍了该模型在语音情感识别中的使用方法。实验结果表明,该模型比单一的模式识别在语音情感识别中有更好的识别效果。同时也有许多可以改进的地方,如在特征参数选择提取上,HMM模型训练算法等方面,有待进一步的深入研究。