发明名称 一种基于支持向量机的语音情感识别方法
摘要 本发明涉及涉及一种语音情感识别系统及方法。本发明采取特征提取分析模块、SVM训练模块和SVM识别模块;训练过程包括特征提取分析、SVM训练;识别过程包括特征提取分析、SVM识别。特征提取分析有全局结构特征参数选择及性别规整、时序结构特征参数选择、性别规整及元音数目规整;支持向量机(SVM)有支持向量机训练、对高兴、生气、悲伤、恐惧、惊讶五种情感进行识别。解决了矢量分割型马氏距离判法、主元分析法、神经网络法、隐马尔可夫法等的各自缺陷。本发明加强了特征参数的有效性,加入性别规整,用最少支持向量,在错分样本和算法复杂度之间获得最好的语音识别,在单个SVM及多个SVM结合的多模式具有连续输出函数,降低误识率。
申请公布号 CN1975856B 申请公布日期 2011.11.09
申请号 CN200610097301.6 申请日期 2006.10.30
申请人 邹采荣 发明人 赵力;王治平;赵艳;郑文明
分类号 G10L15/00(2006.01)I;G10L15/02(2006.01)I;G10L15/06(2006.01)I;G10L15/08(2006.01)I;G10L15/28(2006.01)I 主分类号 G10L15/00(2006.01)I
代理机构 南京中新达专利代理有限公司 32226 代理人 孙鸥
主权项 1.一种基于支持向量机的语音情感识别方法,其步骤为:建立特征提取分析模块,支持向量机训练模块和支持向量机识别模块;特征提取分析模块包括全局结构特征参数提取和时序结构特征参数提取;首先对原始语音信号预加重和分帧,然后分别进行全局结构特征参数提取和时序结构特征参数提取;(1)全局结构特征参数提取:(1-1)将原始语音信号经高通滤波器预处理,提取发音持续时间和语速参数;(1-2)分帧,加窗;(1-3)应用短时分析技术,分别提取各帧语句主要特征参数:基音频率轨迹,振幅和共振峰频率轨迹;(1-4)提取(1-1)和(1-3)中特征参数的衍生参数作为全局结构特征参数,共8个:平均基音频率,最高基音频率,基音频率平均变化率,平均振幅曲线,振幅动态范围,最高第一共振峰频率曲线,第一共振峰平均变化率和最高第二共振峰频率;(2)时序结构特征参数提取:(2-1)将原始语音信号分帧后,经由24个等带宽的美尔标度频率滤波器滤波,每帧信号以一个能量系数向量表示;(2-2)计算频带能量累积量,用当前帧的美尔标度频率滤波器的平均能量与各个美尔标度频率滤波器的能量做差值,求得所有差值的绝对值的加权和,得到频带能量累积量Sbec(t):<img file="FSB00000434129800011.GIF" wi="891" he="119" />(式1)t表示当前帧,E<sub>i</sub>(t)为第i个美尔标度频率滤波器的能量,<img file="FSB00000434129800012.GIF" wi="86" he="56" />为美尔标度频率滤波器的平均能量,α<sub>i</sub>为第i个美尔标度频率滤波器的权重系数;(2-3)根据频带能量累积量峰值来判定元音位置或元音区间,并用简化能量累积量Rec的分布来确定元音的位置,<img file="FSB00000434129800013.GIF" wi="1168" he="143" />(式2)t表示当前帧,E<sub>i</sub>(t)为第i个美尔标度频率滤波器的能量,<img file="FSB00000434129800014.GIF" wi="86" he="58" />为美尔标度频率滤波器的平均能量,α<sub>i</sub>为第i个美尔标度频率滤波器的权重系数,Rec<sub>LF</sub>为300~1000Hz低频部分对应的Rec值,Rec<sub>HF</sub>为1000~3200Hz高频部分对应的Rec值, 根据Rec值的分布,利用峰值确定元音的位置,Rec值作为判别元音的标准必须满足两个条件:当前语音段必须长于15ms,300~1000Hz的低频部分和1000~3200Hz的高频部分的能量分布必须均衡,即满足下式<img file="FSB00000434129800021.GIF" wi="851" he="126" />(式3)Δt≥15msΔt为当前帧的长度;(2-4)采用短时分析方法,按照性别分别计算情感语句各元音区间的基音轨迹、3个共振峰轨迹和振幅能量轨迹;(2-5)计算情感语句各元音区间的最高基音频率,该基音频率所对应帧的振幅能量,各元音区间的最高振幅能量,该振幅所对应帧的基音频率,各元音区间的持续时间以及前3个共振峰频率,将这8个特征参数作为时序结构特征参数;(2-6)采用均值补齐方法规整元音,即选取情感语句中元音个数最多的句子为基准,将此句元音个数定为基准数,对于元音个数少于基准数的语句在尾部用全句平均值代替、补齐参数向量;将提取的全局结构特征参数、时序结构特征参数规整到相同的空间,得到支持向量机的输入矢量;(3)支持向量机的训练单个支持向量机是一个二分模式的分类器,对支持向量机的训练是在训练样本中寻找支持向量x<sub>i</sub>,支持向量权值系数a<sub>i</sub>和偏移系数b,i=1,2,…,N;支持向量机的训练步骤:(3-1)从情感语句库中选取高兴、生气、悲伤、恐惧、惊讶五种情感语句作为训练样本;(3-2)任意选择五种情感中的一种情感作为识别目标,对于第i条情感语句,抽取第i条情感语句特征参数构成一个特征参数向量,采用符号函数作为判决函数,如果这条语句属于该类情感,则令支持向量机输出参数y<sub>i</sub>=1,否则y<sub>i</sub>=-1;(3-3)利用训练样本的特征参数向量和支持向量机输出参数作为训练集,核函数是径向基函数,采用SMO算法对该情感的支持向量机进行训练,得到该训练集的支持向量x<sub>i</sub>,支持向量权值系数a<sub>i</sub>和偏移系数b,i=1,2,…,N;(3-4)高兴、生气、悲伤、恐惧、惊讶五种情感分别训练五个支持向量机; (4)情感识别(4--1)单个情感识别设有M条待识别语句,提取第j条待识别语句的特征矢量输入到步骤(3)已训练好的支持向量机中,经输出判别函数即符号函数对该语句进行判别,得到支持向量机输出参数y<sub>j</sub>,如果y<sub>j</sub>=1,则该语句属于该类情感,否则不属于该类情感,j=1,2,…,M;(4-2)多情感识别采用One-Against-All支持向量机对高兴、生气、悲伤、恐惧、惊讶五种情感进行识别,与步骤(3)中建立的五个支持向量机对应,对每一个支持向量机,采用具有连续输出的函数作为软判决函数,将具有最大输出值的类别作为最终的输出,<img file="DEST_PATH_FSB00000485883100011.GIF" wi="1319" he="373" />(式4)j为测试语句的标号,j=1,2,…,M,k为不同的情感,k=1,2…,5,K(x<sub>ik</sub>,x)为待识别语句x与第k种情感的第i个支持向量x<sub>ik</sub>的核函数,y<sub>jk</sub>为第j条语句在第k种情感对应的支持向量机中的判别结果,sv为测试样本集合,在计算出每个样本相对于不同情感的判别结果后,识别情感为使(式4)取得最大值的k值。
地址 210096 江苏省南京市四牌楼2号东南大学