一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于双层融合深度网络的语音情感识别方法

2022-07-13 05:46:36 来源:中国专利 TAG:


1.本发明属于语音情感识别领域,涉及一种多模态特征融合的语音情感识别算法。


背景技术:

2.目前语音情感识别领域主要分3个研究方向,第一个是基于传统的机器学习方法,通过手工提取情感相关特征,并用机器学习方法进行情感分类。第二是基于深度神经网络的情感识别方法,通过神经网络实现端到端的情感识别系统。第三个就是结合语音和文本进行多模态的情感识别。
3.多模态语音情感识别是近年以来的新的研究热点,引起了广泛关注。多模态语音情感识别目前主要的研究领域是结合语音和文本进行多模态的情感识别,考虑到不同语音特征对情感有不同的影响,为了提升系统的识别率,未来语音情感识别趋势是多模态识别系统框架。
4.语音情感识别是一项具有挑战性的任务,因为情感表达是复杂的、多模态的。提升语音情感识别性能的关键在于首先对情感特征的提取,其次在多模态特征融合时的融合方式。目前针对于特征提取这一块主流方法大都使用深度神经网络来提取情感特征,并在许多研究中得以验证效果有明显的提升。但是在特征融合这一块的创新研究还是有些不够深入,调研发现,大部分方法都是使用简单的相加、拼接等融合方法。显然这些方法都不能完全利用各模态信息之间的互补性。
5.目前在多模态情感识别领域的研究中,胡雅心等人发表的一篇《基于语音文本融合的多模态情感识别》文章中特征融合方法是使用简单的相加、拼接等融合方法。显然这些方法都不能完全利用各模态信息之间情感特征的互补性。


技术实现要素:

6.本发明主要解决的问题是:对现有的语音情感识别方法和系统进行改进,提出了一种可以提高识别率的多模态特征融合方案。为实现该技术目的,本发明采用的技术方案流程为:
7.步骤1:对语音和文本数据进行预处理,使其符合网络模型的输入要求;
8.步骤2:对步骤1预处理后语音和文本特征向量输入到分解双线性池化融合模块(fbp)进行初级特征融合;
9.步骤3:将步骤2fbp模块输出的融合后的初级特征分别经过lstm,gru,dnn三个子模型组成的level-1初级特征编码网络;
10.步骤4:然后level-1三个子网络的输出做二次融合,编码高级特征,融合的方法是hadmard积,然后将融合后的特征输入到level-2的bilstm编码网络,最后接分类输出层,预测情感类别;
11.步骤5:最后训练网络模型。
12.进一步的,所述文本信号预处理是指采用词嵌入方式,使用预训练的glove模型将
每一个单词用一个向量表示。
13.进一步的,所述语音信号预处理是指对音频信号进行加窗、分帧,使用的窗长为25ms的汉明窗,10ms的帧移,然后对其进行傅里叶变换,最后进行梅尔滤波操作得到梅尔频谱特征。
14.进一步的,所述的对齐操作是通过合并和单词相关的语音帧,得到每个单词所对应的语音特征。
15.进一步的,所述网络模型的结构总共包含四个层,第一层是fbp初级特征融合层;第二层是lstm,gru,dnn三个子模型组成的level-1初级特征编码网络层;第三层是hadmard积融合层;第四层是由bilstm组成的高级编码网络层。
16.进一步的,所述融合采用融合算法流程,具体是输入音频和文本特征向量,首先通过fbp融合模块,将音频特征,文本特征做交叉融合,将融合后的特征分别经过lstm,gru,dnn三个子模型组成的level-1初级特征编码网络,然后level-1三个子网络的输出做二次融合,编码高级特征,融合的方法是hadmard积,然后将融合后的特征输入到level-2的bilstm编码网络,最后接分类输出层,预测情感类别。
17.进一步的,所述的网络模型训练方式是采用adam优化器最小化交叉熵损失函数,学习率设置为0.0001,批次为100,并使用l2正则化防止模型过拟合。
18.本发明的有益效果:
19.(1)本发明网络结构采用层级的方式,先用第一层子网络编码初级特征,采用第二层网络将初级特征映射到高级特征,可以有效的建立高低级特征之间的层级结构关系。
20.(2)本发明充分利用了语音和文本信息之间的特征互补性,可以在音频和文本之间捕捉复杂的关联。相比于现有技术的方法,本发明的模型识别率有很大的提升。
附图说明
21.图1是本发明的系统模型图;
22.图2是分解双线性池化特征融合模块(fbp)图;
23.图3是本文提出的算法在iemocap数据集上实验的混淆矩阵;
24.图4模型损失函数变化情况图;
25.图5准确率(precision)、召回率(recall)、f值曲线图。
具体实施方式
26.下面结合附图对本发明的技术方案做进一步的解释。
27.系统模型
28.本发明所提出的模型结构包含三层。第一层是低级特征融合,采用分解双线性池化融合模块(fbp),先让语音特征向量与文本特征向量进行融合。第二层是高级特征融合,将fbp模块输出的低级特征分别经过lstm,gru,dnn三个子模型输出做二次融合,编码高级特征,融合的方法是两两hadmard积拼接组成。第三层是情感分类层,获取到的高级特征向量输入到全连接层,在全连接层对融合的高级情感特征进行降维,最后通过softmax函数输出此时的情感系数并作出情感判别。系统模型图如图1所示。
29.语音信号预处理
30.本发明语音情感特征采用梅尔频谱,梅尔频谱就是一般的频谱图加上梅尔滤波函数。其提取流程如下所示。
31.给定语音信号s,其经过加窗、分帧后,表示为s={s1,s2,s3……
,sn},其中n表示语音分帧的总个数。在本课题该部分使用的窗长为25ms的汉明窗,10ms的帧移。之后,对s中每一帧求傅里叶变换,得到每帧的频域表示x
t
。如公式表示:
[0032][0033]
其中m表示傅里叶变换的个数。x
t
(k)表示x
t
向量中的第k个值。
[0034][0035]
接着按照上式进行mel变换,将x
t
的频率从线性尺度变换成梅尔尺度,其中f表示傅里叶变换后的频率尺度。然后在梅尔尺度上设计一组滤波器对每帧的频谱进行滤波,最后得到梅尔频谱特征。
[0036]
文本信号预处理
[0037]
本发明对于文本信息预处理是将每一个单词用一个向量表示采用著名的glove算法。glove算法的主要思想:通过共现矩阵来直观地表示词i和j之间的关系。进行词的向量化表示,使得向量之间尽可能地蕴含语义和语法的信息。其算法流程如下:
[0038]
1、构建共现矩阵x,并求概率。其数学表达式为:
[0039][0040]
其中p
ij
表示词i和j出现在上下文中的共现概率。
[0041]
2、构建词向量同共现矩阵x之间的近似关系。给定单词k表示可能会出现在它们附近的词,判断它与i和j之间的相关性。
[0042][0043]
可以得到k与i和j之间的相关性。如果相关性小,公式的结果接近于1,如果相关性大,公式的结果远离1。其中p
ik
表示词i和k的共现概率,p
jk
表示词j和k的共现概率。
[0044]
3、构造损失函数
[0045][0046]
其中v表示词表的大小,wi和wj为词向量,bi和bi为偏置,f(x
ij
)为加权函数。
[0047]
权重函数表示如下:
[0048]
[0049]
根据经验glove作者认为x
max
=100,是一个比较好的选择。如果两个词没有共同出现过,权重就是0;f(x)必须是非减函数。
[0050]
4、训练模型
[0051]
对于iemocap数据集中的文本数据,使用训练好的glove词嵌入模型,来进行文本信息的矢量化,维度为300维。保持文本数据最大序列长度为500,最终获得(500,300)维的词向量,用于文本情感分析的研究。
[0052]
语音文本对齐
[0053]
本节主要介绍语音和文本对齐的实现方法。给定语音表示s={s1,...,si,...,sn},其中n表示语音的帧数。给定文本词向量表示t={t1,...,tj,...,sm},其中m表示文本中单词个数。由于一个单词对应多个帧,所以通过合并和单词相关的语音帧,就可以得到每个单词的语音特征,这意味着,每个单词和它相关的语音帧之间有强连接关系。从这点出发,我们首先计算单词和语音帧的相似度,来获取单词和语音帧之间的关系,如公式所示:
[0054][0055]
其中tj表示第j个单词向量,si表示第i个语音帧,a
ij
表示第j个单词向量与第i个语音帧之间的相似度,越大表示两个向量越相似。
[0056]
最后对a
ij
进行归一化操作,得到单词j和语音帧i的概率值。
[0057][0058]
最后对所有帧加权求和,得到和第j个单词对齐后的语音特征uj,对齐后的语音表示为u={u1,...uj,...,um}。
[0059][0060]
数据集介绍
[0061]
iemocap交互式情绪二元运动捕捉数据集是一个广泛采用英文多模态的情绪识别数据集,由南加州大学的sall实验室录制的。共分为5个session部分,其中每个session分别由10个人5男5女组成5组,在语音识别领域被广泛的引用。iemocap多模态数据集中总共包括时长大约为12小时的音频及视频文件,包含音频、语义文本和面部表情三种模态的数据信息。数据集中的语音一共被分为十种情绪:开心、生气、悲伤、沮丧、自然、兴奋、恐惧、厌恶、惊讶和其它。为了和现有的工作保持一致,在我们这项工作中只使用四个情感类:生气、悲伤、开心和自然。其四种情感类别分布如下表所示。
[0062]
本发明融合算法流程
[0063]
1、分解双线性池化融合模块(fbp)如图2所示,x和y表示预处理后语音特征和文本特征,x∈rm,y∈rn。具体操作如下所示。
[0064][0065] 生气开心自然伤心合计
合计11031636170710845531
[0066][0067]
k是分解矩阵潜在的维度,矩阵ui=[u1,

,uk]∈rm×k,vi=[v1,

,vk]∈rn×k,1∈rk。是hadmard积操作。
[0068]
为了获得输出特征z∈ro,要学习的权重是两个三阶张量u=[u1,

,uo]∈rm×k×o和v=[v1,

,vo]∈rn×k×o。我们可以重新制定u和v作为二维矩阵和然后进行重塑操作,公式如下所示。
[0069][0070]
其中函数sumpooling(x,k)表示使用大小为k的一维非重叠窗口在x上执行sumpooling。采用dropout防止过拟合。因为由于引入了逐元素乘法,输出的幅度发生了巨大变化,使用l2归一化将z的能量归一化为1。
[0071][0072]
2、本发明网络框架第二部分采用三种不同的lstm,gru,dnn神经网络对特征进行深度特征的提取得到不同的表示。通过fbp模块输出的初级融合特征向量z
t
分别经过lstm、gru和dnn网络输出用和表示。其公式如下式所示。
[0073][0074][0075][0076]
3、然后高级特征融合输出部分将三类特征通过两两hadmard积整合在一个向量中,输出该时刻的高级融合特征c
t
,如下式所示。
[0077][0078]
其中c
t
={c1,c2,

,cm},m表示单词数。此处符号

表示向量对应元素相乘。
[0079]
4、然后我们将上一步融合后的向量c
t
馈入bilstm网络进行编码,具体操作如下所示。其中正向特征向量反向特征向量
[0080][0081][0082][0083]
5、最后将特征向量导入全连接层进行降维,并使用softmax函数得到用于话语的情感分类,并使用交叉熵损失函数。具体操作如下所示。
[0084][0085][0086]
其中yk表示样本类别的标准分布,是样本类别的预测分布。f
θ
(.)表示参数为θ的全连接层网络。
[0087]
网络训练
[0088]
在训练模型的时候,采用adam优化器最小化交叉熵损失函数,学习率设置为0.0001,批次为100,并使用l2正则化防止模型过拟合。
[0089]
adam优化算法是对交叉熵损失函数的梯度一阶矩、二阶矩进行估计并将其应用于参数更新的一种算法。具体操作如下所示。
[0090]mt
=β1·mt-1
(1-β1)
·gt
[0091][0092][0093]mt
和v
t
分别是对交叉熵损失函数梯度的一阶矩和二阶矩的估计,并由超参数β1和β2控制衰减,g
t
表示函数的梯度,θ
t
为变量更新值,ir表示学习率。
[0094]
网络的参数设置如下表所示:
[0095]
仿真参数表
[0096][0097][0098]
实验结果:
[0099]
针对我们提出的高效融合算法模型在iemocap数据集上的实验结果混淆矩阵如图3所示。从混淆矩阵可以看出在开心、伤心、自然和生气四类情感上的准确率分别为91.69%、73.95%、73.68%和75.16%,整体准确率达到了80.38%。验证了我们提出的方法目前在iemocap数据集上的有效性和可行性。
[0100]
本发明主要采用wa加权精度和ua未加权精度来衡量模型的性能,其中wa是用来评价模型的整体性能,ua用来评价模型对每一类情感分类结果。具体计算公式如下式所示:
[0101]
[0102][0103]
其中l是情感类别的个数,tpi表示预测正确的第i类样本个数,fni表示预测错误的第i类的样本个数。
[0104]
为了进一步衡量本发明提出的语音情感识别模型的性能,采用精确率、召回率和f1分数来凸显模型的性能,精确率、召回率和f1分数的计算公式如下。
[0105][0106][0107][0108]
其中,tp是指预测和标签都为正;fp是指预测正标签为负;tn是指预测和标签都为负;fn是指预测为负标签为正。precision和recall分别指精确率和召回率,并且f1分数为两者的调和平均数,对于f1分数而言,值越大越好。精确率、召回率和f1分数相关实验指标结果如下表所示。
[0109] tpfnfpprecisionrecallf1-scorehappy39736930.81020.91690.8602sad17662310.85020.73950.7910neutral280100820.77350.73680.7547anger11839310.79190.75160.7712average
ꢀꢀꢀ
0.80650.78620.7943
[0110]
与其它方法对比
[0111]
为了更好的验证本文改进算法的有效性和科学性,将本文算法在iemocap数据集上与其它算法模型进行实验结果比较,得到其结果如下表所示。
[0112]
1、hengshun zhou等人使用双线性池化算法做特征融合方式。(acm2021)
[0113]
2、haiyang xu等人使用语音和文本特征拼接融合。(interspeech2019)
[0114]
3、md asif jalal等人使用多个attention输出拼接融合方式(interspeech2020)
[0115]
4、ming chen等人采用混合拼接再拼接单独的方式。(interspeech2020)
[0116]
5、qi cao等人使用语音和文本一致性和上下文注意力机制操作融合方式。(2021)
[0117]
与不同模型的对比情况表
[0118][0119]
如上表所示,本发明所提出的方法在iemocap数据集四分类情感识别实验中,实现了80.38%的wa和78.62%的ua,wa是所有对比实验中最好的实验结果。其中最差的结果是haiyang xu等人采用简单线性拼接的方式进行多模态融合方法,只有70.4%的wa和69.5%的ua,这可能是因为这种简单的拼接方式没能完全捕捉到两种模态之间的互补关系。ming chen等人在haiyang xu等人的基础上并行加上两种单独的特征,考虑到两种模态间与模态内的相关影响,获得到71.06%的wa和72.05%ua,性能有所提高。yuanyuan zhang等人采用双线性池化方式进行两种特征的融合取得不了不错的效果有75.49%wa。本发明在采用双线性池化特征融合的基础上再做一次特征融合,获得丰富的交叉模态特征表示,因此相比于提高了4.89%wa。qi cao等人采用语音和文本一致性和上下文注意力机制融合方式取得了78.74%的wa和79.77%ua,在ua上比我们的方法略高。总而言之,通过以上的对比实验,验证了本发明提出的算法相较于其它算法效果有较为明显的优势。
[0120]
针对目前在多模态情感识别领域特征融合方式的不足,提出了一种基于双层融合深度网络的语音情感识别方法,可以在音频和文本之间捕捉复杂的关联。提出首先基于分解双线性池化融合模块(fbp)做第一次融合,然后再进行二次融合的方式,优于拼接、求和的方式,以较低的时间复杂度使得各模态的特征做更充分的融合。网络结构采用层级的方式,先用第一层子网络编码初级特征,采用第二层网络将初级特征映射到高级特征,可以有效的建立高低级特征之间的层级结构关系。最后在iemocap数据集上进行实验达到了80.38%的wa和78.62%的ua。与其它研究者相关工作相比,识别率有很大的提升,验证了我们提出的高效融合算法的可行性和有效性。
[0121]
本发明的保护范围以权利要求书的记载为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献