[0062] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0063] 在多特征情感识别方面,对于同一组情感语音库,不同的特征有不同的识别方法,但是不同的特征之间也存在一定的联系。本发明就是利用预测的融合方法将不同的特征联系在一起。本发明通过不同特征的融合以及基于预测的融合方法,即使用基于预测的方法融合不同特征下的老人语音情感分类,得到更好的分类正确率。
[0064] 预测在近来的大脑计算模型中起着关键作用,并且已经提出大脑不断地进行多感觉时空预测。受这些发现的启发,本发明从基于预测的新视角解决了多特征融合的问题。本发明训练预测模型,通过学习每个类(即情感类别)对语音情感的识别来比较不同特征方法对同一语音的识别率高低。类似地,本发明训练预测模型,通过学习同一个类中对不同语音情感的识别来总结出更好的识别方法。在分类中,所有类特定的回归模型产生预期的特征预测,并且它们的预测误差被组合用于每个类。选择最好地识别视听特征(即导致最低预测误差)的类特定回归的集合来标记输入帧。在几乎所有情况下,基于预测的融合始终胜过两种最常用的融合方法,决策级和特征级融合。现有技术中,目前还没有发现将上述方法运用于多特征情感融合的实践尝试。
[0065] 请参阅图1,本发明的基于预测的多特征融合的老人语音情感识别方法主要包括五个大步骤:
[0066] 第一步:获取空巢老人语音情感数据库;
[0067] 第二步:对所述数据库进行处理,分别对所述数据库中的每条语音和表情提取不同的特征参数;
[0068] 第三步:采用基于预测的方法对多特征进行融合;
[0069] 第四步:用SVM进行特征识别;
[0070] 第五步:输出同一段语音下预测的最高准确率的情感类型(情感类别),得到识别结果。
[0071] 下面做进一步的详细说明,本发明的基于预测的多特征融合的老人语音情感识别方法的实现,主要包含以下步骤。
[0072] 第一步:获取空巢老人语音情感数据库,所述数据库中包含多种情绪(即情感类别)和多个人物形象。
[0073] 在本实施例中,数据库中包含7种情绪和11个人物形象。7种情绪:angry(生气),anxiety(焦虑),boredom(无聊),disgust(厌恶),happy(高兴),neutral(中性),sad(伤心)。11个人物形象,每一个人物表达出自己的情感类别,每一种情感类别里有不同的样本数。
[0074] 第二步:对所述数据库进行处理,分别对所述数据库中的每条语音和表情提取不同的特征参数。
[0075] 特征提取是从语音信号中提取出对语音识别有用的信息,它对语音信号进行分析处理,去掉与语音识别无关的冗余信息,获得影响语音识别的重要信息。每条语音带有对应的情感类别,与相应语音对应的人物形象带有对应的表情。
[0076] 第一种特征:小波系数。利用小波变换对语音进行分解,舍弃语音高频带小波系数,实现降噪目的,然后选取语音基频带的小波系数进行方差分析,进而预测带噪语音的基音周期。
[0077] 第二种特征:傅立叶系数。傅里叶变换是一种信号的整体变换,在得到加窗的每一帧信号后,需要知道此帧信号在不同频段的能量分布。从一个离散信号(采样信号)中提取离散频段频谱信息的工具就是离散傅里叶变换(DFT)。
[0078] 第三种特征:Mel频率倒谱系数。梅尔倒谱系数(Mel-scale Frequency Cepstral Coefficients,简称MFCC)是在Mel标度频率域提取出来的倒谱参数。提取过程如下:(1)对输入的语音信号进行分帧、加窗,然后作离散傅立叶变换,获得频谱分布信息;(2)再求频谱幅度的平方,得到能量谱;(3)将能量谱通过一组Mel尺度的三角形滤波器组;(4)计算每个滤波器组输出的对数能量;(5)经离散余弦变换得到MFCC系数。
[0079] 第三步:采用基于预测的方法对多特征进行融合。基于预测的融合框架主要由两个组件组成。
[0080] 第一个是跨特征预测组件,其通过建模它们之间的关系来组合小波、傅立叶、Mfcc特征,此组件对应于特征级融合,其中三个特征的连接由预测器替代,分别学习语音情感类别的三个特征参数之间的映射。
[0081] 在对特征进行预测的第一组预测器中,小波X、傅立叶F和MfccM特征之间的关系分别由六个回归因子fX→F、fX→M、fF→M、fF→X、fM→X、fM→F建模。六个预测器分别将三组特征作为输入,并在相同帧t处预测对应的识别率,如以下等式所示:
[0082] fX→F(X[t-kXF,t])=FX→F[t]≈F[t] (1)
[0083] fX→M(X[t-kXM,t])=MX→M[t]≈M[t] (2)
[0084] fF→M(F[t-kFM,t])=MF→M[t]≈M1[t] (3)
[0085] fM→F(M[t-kMF,t])=FM→F[t]≈F1[t] (4)
[0086] fM→X(M[t-kMX,t])=XM→X[t]≈X[t] (5)
[0087] fF→X(F[t-kFX,t])=XF→X[t]≈X1[t] (6)
[0088] 在6个等式中,窗口k的大小取决于映射类型和建模类。
[0089] 第二个是特征内预测组件,分别对三个特征的时间演进进行建模,该组件对应于决策级融合,其中每个特征由两个预测器建模,这两个预测器分别学习每个类的过去和当前特征之间的映射。
[0090] 在第二组预测器中,其在每个特征内进行预测,每个类的过去和未来特征之间的关系由三个回归因子fX→X、fF→F和fM→M建模。三个预测器将过去的特征作为输入,并且在帧t处预测对应的特征,如下:
[0091] fX→X(X[t-kXX,t-1])=XX→X[t]≈X[t] (7)
[0092] fF→F(F[t-kFF,t-1])=FF→F[t]≈F[t] (8)
[0093] fM→M(M[t-kMM,t-1])=MM→M[t]≈M[t] (9)
[0094] 在上述3个等式中,窗口k的大小取决于映射类型和建模类。
[0095] 最后,这两个组件以分层方式组合。在第一层中,跨特征预测分量的三个预测器被组合以便考虑特征之间的双向关系。类似地,特征内预测分量的三个预测器被组合以便合并关于特征的时间演进的信息。在第二层中,组合特征内和跨特征预测分量,以便研究特征关系和它们的时间演进。这对应于特征级和决策级融合的组合。
[0096] 重要的是要指出,所有预测变量都是类特定的,因为他们分别学习每个类的特征关系。关键思想是对应于新输入序列的真实类的类特异性预测因子将产生比对应于其他类的模型更好的特征估计,因为它们已经在目标类的特征上训练。
[0097] 一旦训练完成并且预测器f被学习,它们可以用于分类。当新的序列可用时,计算三个特征,其被馈送到由等式定义的所有预测器(1)-(9),导致每个类的每帧有九个预测误差。我们考虑的预测误差测量是均方误差,平均绝对误差(MAE)和误差的L2范数(L2-E)。每个预测器的总误差通过对所有帧N上的误差求和来计算,导致每个类的每个序列有9个预测误差。类的9个预测器误差使用以下等式计算。
[0098]
[0099]
[0100]
[0101]
[0102]
[0103]
[0104]
[0105]
[0106]
[0107] 其中Err是均方误差或平均绝对误差或误差的L2范数。
[0108] 然后,组合六个交叉特征预测模型(等式(10)-(15)),以考虑如等式(19)中所示的受到等式(20)约束的特征双向关系。
[0109] eCP=ωXF*eX→F+ωXM*eX→M+ωFM*eF→M+ωMF*eM→F+ωMX*eM→X+ωFX*eF→X (19)[0110] ωXF+ωXM+ωFM+ωMF+ωMX+ωFX=1 (20)
[0111] 其中eCP是总的跨特征预测误差,ωXF、ωXM、ωFM、ωMF、ωMX和ωFX是跨特征预测分量的权重。
[0112] 类似地,将三个时间演化模型(等式(16)、(17)、(18))组合以便考虑特征之间的过去到未来关系,等式(21)受到等式(22)的约束。
[0113] eIP=ωXX*eX→X+ωMM*eM→M+ωFF*eF→F (21)
[0114] ωXX+ωMM+ωFF=1 (22)
[0115] 其中eIP是总体特征内预测误差,ωXX、ωMM和ωFF是特征内预测分量的权重。
[0116] 最后,为了合并来自两个基于预测模型的信息,将两个分量的预测误差组合,如等式23所示,受到等式24的约束。
[0117] ec=ωCP*eCP+ωIP*eIP (23)
[0118] ωCP+ωIP=1 (24)
[0119] 其中ec是总预测误差,ωCP和ωIP分别是交叉特征预测和特征内预测融合分量的权重。本发明选择了以分层方式组合子系统,因为它允许更轻松地优化权重。
[0120] 等式(19)、(21)、(23)中,预测误差在没有被正规化的情况下被组合。预示着预测器建模不同的关系,误差也将是不同程度的。因此,权重意味着每个预测器的相对重要性并且也充当比例因子。
[0121] 另一种方法是通过softmax标准化来转换相同尺度的预测误差。等式(19)、(21)、(23)使用softmax函数进行归一化,使得它们的和等于1。在这种情况下,权重简单地指示每个预测器的相对重要性。在本研究中,都考虑softmax标准化和无标准化。
[0122] 在最后一步中,基于误差向输入序列分配标签(如等式(23)),这是通过选择对应于最低误差的标签来完成的。换句话说,最佳地解释特征关系(即导致最低预测误差)的类特定模型相应地标记新序列,如等式(25)所示。PredictedClass=arg min ec (25),其中,c=1....C,C指的是情感类别。
[0123] 在我们希望仅使用交叉特征预测融合或特征内预测融合来执行分类的情况下,可以通过用等式(19)、(21)中的交叉特征预测误差eCP或特征内预测误差eIP替换等式(25)中的总预测误差ec来实现。
[0124] 第四步:用SVM进行特征识别。
[0125] 分别使用老人库中的1个人物样本用于测试,其余10个人物样本用于训练,得到识别的准确率。实验中,所有算法都是在Matlab平台运行。
[0126] 第五步,输出同一段语音下预测的最高准确率的情感类型(即情感类别),得到识别结果。
[0127] 现有技术中,每一种特征下的情感类别测试,每一种情感类别的识别率都层次不齐,不能确保每一种情感类别识别都有较高的准确率。本申请则很好的改善了这个问题,输入一段语音后,计算不同特征下的识别率,比较每一种特征下的识别结果,输出识别率最高的情感类别,保证使数据库能够进行最好的情感分类。
[0128] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。