一种基于特征融合的语音情感识别方法技术

技术编号:33489518 阅读:21 留言:0更新日期:2022-05-19 01:01
一种基于特征融合的语音情感识别方法,包括:步骤1)数据获取与预处理;步骤2)输入本发明专利技术中设计的基于特征融合的语音情感识别网络进行情感识别;步骤3)获得情感识别结果。本发明专利技术利用分类层特征融合的方法对语音情感进行识别,设计并实现了一种将MFCC(梅尔频率倒谱系数)的深层特征与传统的声学特征相融合的方法,用分类层特征融合算法将MFCC深层特征与过零率、梅尔频率、频谱质心进行融合,通过指定的决策融合规则对输出的识别结果进行融合计算,最后选择概率分布中概率最大的作为识别结果。该发明专利技术对语音情感识别,具有较大地应用价值。具有较大地应用价值。具有较大地应用价值。

【技术实现步骤摘要】
一种基于特征融合的语音情感识别方法


[0001]本专利技术涉及一种基于特征融合的语音情感识别方法。

技术介绍

[0002]语音情感识别的过程类似于图像的分类过程,传统的识别过程主要分为三个方面。首先是对语音数据进行预处理,包括归一化,均值化,数据增强等操作。其次是语音特征的提取与选择,常用的语音特征主要有:基因频率、共振峰、梅尔倒谱系数等。最后采用合适的分类器模型对获得的情感相关特征进行分析,识别出语音中包含的情感。对情感识别准确性影响最大的是语音特征的选择和分类器模型的选择。常用的分类器包括支持向量机、高斯混合模型、随机森林等。近年来,随着深度学习的发展这些传统的分类模型逐渐被取代。传统语音特征的选择和提取方法相对单一,提取的特征之间缺乏关联性,特征之间不能包含情感相关信息,由于深度学习在特征提取方面展现出强大的性能,因此越来越多的研究者利用深度学习方法提取语音特征。其中情感识别率提升比较可观的方法是利用神经网络通过卷积等操作获取更多深层特征,这种方法的主要过程包括:首先要选择一种声学特征,然后对这种特征进行分析,最后得到分类结果。虽然这种方法在一定程度上提升了识别率,但是由于语音中的特征众多,该方法只关注了一种声学特征的深层特征却忽略了其他声学特征对准确率的影响。

技术实现思路

[0003]本专利技术要克服现有技术的上述缺点,提供一种基于特征融合的语音情感识别方法。
[0004]本专利技术解决技术问题采用如下技术方案:
[0005]一种基于特征融合的语音情感识别方法,包括以下步骤:
[0006]步骤1:获取及预处理用户语音数据;
[0007]步骤2:将数据放入特征提取器中,提取特征;
[0008]步骤3:输入语音情感识别网络进行情感识别;
[0009]步骤4:获得语音情感识别结果。
[0010]步骤1使用python库函数librosa.load()函数读取需要情感识别的语音,保存为numpy数据类型,通过构造预加重函数以及加窗分帧函数对其进行预处理。
[0011]步骤2具体包括:
[0012]1)使用python库函数librosa.feature.zero_crossing_rate()函数提取已保存数据的过零率;
[0013]2)使用python库函数librosa.feature.melspectrogram()函数提取已保存数据的梅尔频率;
[0014]3)使用python库函数librosa.feature.spectral_centroid()函数提取已保存数据的频谱质心;
[0015]4)使用python库函数librosa.feature.mfcc()函数提取已保存数据的MFCC(梅尔频率倒谱系数)。
[0016]步骤3语音情感识别网络分为三个部分,分别是深度特征提取子网、分类器和分类层特征融合:
[0017]1)深度特征提取子网;
[0018]将步骤2中的MFCC送入CNN(卷积神经网络)中,对该特征进行卷积操作以获取深层特征,该网络结构包括四个卷积部分,每个卷积部分包括一个卷积层、一个池化层、一个归一化层和一个Dropout层,经过该网络的卷积操作得到深层特征。
[0019]2)分类器;
[0020]采用交叉熵损失函数,用该函数来衡量预测值和真实值分布的差异,并将语音的情感划分到中性、生气、害怕、高兴、悲伤、厌恶、无聊这七种情感中。
[0021]3)分类层特征融合;
[0022]根据特征提取器所提取出的语音特征以及深度特征提取子网得到的深度特征进行特征融合,该部分采用的是分类层特征融合算法。
[0023]基于分类层的特征融合算法先对语音信号提取的特征类别记为n类,将这n类特征分别输入到n个分类器中进行训练,再用测试数据得到m类分类结果,测试数据的识别概率用{P
ij
(K),i=1Ln,j=1Lm}表示,再根据指定的决策融合规则对这些识别结果进行融合计算,最后得到m种不同分类结果的概率分布,表示为{q
j
(K),j=1Lm},根据决策融合得到的新的判决概率q
j
(K)的计算方式采用公式(1):
[0024][0025]其中,j代表第j个测试数据,q

j
(K)的计算方式为公式(2):
[0026]q

j
(K)=R(p
ij
(K))
ꢀꢀꢀ⑵
[0027]这里的R函数表示的是分类层融合的规则,最后根据判决概率计算得到的预测标签(3):
[0028]l(K)=argmax(q
j
(K))
ꢀꢀꢀꢀ⑶
[0029][0030]该分类层特征融合算法判决规则使用的是求和方式,如公式(4)所示。
[0031]步骤4:获得语音情感识别结果
[0032]根据步骤3提供的概率分布情况,在这些分类结果集合中选择概率最大的作为最后的分类结果,将识别结果对应到中性、生气、害怕、高兴、悲伤、厌恶、无聊这七种情感中。
[0033]本专利技术具有如下有益效果:
[0034](1)利用卷积神经网络提取声学特征的深层特征,提高了声学特征的特征利用率。
[0035](2)将MFCC的深层特征与其他三种声学特征进行融合,扩大了数据的特征利用范围。
[0036](3)利用分类层特征融合方法有效地利用了分类器识别概率提高了语音情感识别率。
附图说明
[0037]图1是本专利技术的总体流程图。
[0038]图2是本专利技术中分类层特征融合流程图。
具体实施方式
[0039]下面结合附图对本专利技术的技术方案作进一步阐述。
[0040]一种基于特征融合的语音情感识别方法,包括如下步骤:
[0041]步骤1:获取及预处理用户语音数据;
[0042]步骤2:将数据放入特征提取器中,提取特征;
[0043]步骤3:输入语音情感识别网络进行情感识别;
[0044]步骤4:获得语音情感识别结果。
[0045]步骤1使用python库函数librosa.load()函数读取需要情感识别的语音,保存为numpy数据类型,通过构造预加重函数以及加窗分帧函数对其进行预处理。
[0046]步骤2具体包括:
[0047]1)使用python库函数librosa.feature.zero_crossing_rate()函数提取已保存数据的过零率;
[0048]2)使用python库函数librosa.feature.melspectrogram()函数提取已保存数据的梅尔频率;
[0049]3)使用python库函数librosa.feature.spectral_centroid()函数提取已保存数据的频谱质心;
[0050]4)使用python库函数librosa.fea本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于特征融合的语音情感识别方法,包括以下步骤:步骤1:获取及预处理用户语音数据,使用python库函数librosa.load()函数读取需要情感识别的语音,保存为numpy数据类型,通过构造预加重函数以及加窗分帧函数对其进行预处理;步骤2:将数据放入特征提取器中,提取以下四种特征用于后续对特征的深度提取及融合,具体步骤如下:1)使用python库函数librosa.feature.zero_crossing_rate()函数提取已保存数据的过零率;2)使用python库函数librosa.feature.melspectrogram()函数提取已保存数据的梅尔频率;3)使用python库函数librosa.feature.spectral_centroid()函数提取已保存数据的频谱质心;4)使用python库函数librosa.feature.mfcc()函数提取已保存数据的梅尔频率倒谱系数MFCC;步骤3:输入语音情感识别网络进行情感识别;所述的语音情感识别网络包括深度特征提取子网、分类器、分类层特征融合:所述的深度特征提取子网是将上述的MFCC送入卷积神经网络CNN中,对该特征进行卷积操作以获取深层特征,该网络结构包括四个卷积部分,每个卷积部分包括一个卷积层、一个池化层、一个归一化层和一个Dropout层,经过该网络的卷积操作得到深层特征;所述的分类器采用的损失函数是交叉熵损失函数,用该函数来衡量预测值和真实值分布的差异,并将语音的情感划分到中性、生气、害怕、高兴、悲伤、厌恶、无聊这七种情...

【专利技术属性】
技术研发人员:毛科技武佳男钱升港张拓毛严
申请(专利权)人:浙江工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1