1.基于时空多重融合网络的变长语音情感识别方法,其特征在于:该方法包括以下步骤:步骤一:利用短时傅里叶变换和Mel滤波器组将一维语音记录映射为二维的对数Mel滤波能量谱,能量谱包含时域与空域两个维度,并保持能量谱的原始长度;
步骤二:利用BiGRU捕获能量谱时域的上下文关系,注意力机制凸显能量谱时域的显著情感时刻,实现对能量谱时域情感变化的捕捉;
步骤三:利用CNN定位能量谱空域的情感区域,全局平均池化整合空域的全局情感信息,实现对能量谱空域情感触发的定位;
步骤四:利用时域分类器与空域分类器分别输出时域与空域的概率分布,直接连接获得时空域融合特征,并设计融合域分类器输出时空融合域的概率分布,将上述三个域的概率分布采用集成策略整合,实现时域与空域的多重融合,达到时空情感信息的交互;
步骤五:利用多分类交叉熵损失函数作为模型训练的指导,通过最小化损失函数输出的损失值作为训练目标,实现模型参数的更新与优化。
2.根据权利要求1所述的基于时空多重融合网络的变长语音情感识别方法,其特征在于:所述步骤一具体过程包括:首先,将记录的一维语音信号用汉明窗口分为短帧,利用短时傅里叶变换将每一个短帧从一维时域映射为二维频域,并按时间维度拼接,得到语音的线性频谱表示;但是,直接通过短时傅里叶变换得到的线性频谱并不具备人耳听觉特性,且存在着维度过高和信息冗余的问题;
然后,将频谱的线性频率尺度f映射为非线性的Mel尺度M(f),计算如下:此映射过程采用数量为d的Mel滤波器组实现,将每个滤波器范围内的能量相加后取对数,获得更符合人耳听觉特性的对数Mel滤波能量谱,定义为 其中xi表示频谱的第i帧,S表示语音频谱的长度;
最后,为保持能量谱的原始长度并满足神经网络的批次输入要求,将同一批次中长短不一的能量谱零填充为相同长度,定义其中任意能量谱为其中T为能量谱零填充后的时域长度,xS+1,…,xT为零填充帧;
对数Mel滤波能量谱包含时域和空域,时域描述了情感变化的过程,空域描述了情感触发的区域;接下来,将为时域与空域分别设计情感提取网络,分别刻画能量谱时域与空域的独特情感信息。
3.根据权利要求2所述的基于时空多重融合网络的变长语音情感识别方法,其特征在于:所述步骤二具体过程包括:首先,为了避免零填充帧对BiGRU的计算产生影响,输入Xin通过序列压缩函数将零填充部分压缩;具体地,将输入Xin按时间轴依次取出每一帧,忽略零填充帧后拼接成一维向量Xp,采用基于python编译的PyTorch工具实现,它封装的pack_padded_sequence函数对零填充帧实现自动压缩,过程表示如下:Xp=pack_padded_sequence(Xin)然后,将此一维向量Xp经过隐藏神经元数量为dT的BiGRU从能量谱时域的正向和反向捕获上下文关系,获得一维局部时域特征Bv;为了便于后续的特征提取,需将Bv通过序列扩展函数扩展为二维局部时域特征B,上述计算过程表示为:B=pad_packed_sequence(BiGRU(Xp))其中,pad_packed_sequence函数在PyTorch工具中与pack_padded_sequence函数对应,实现零填充的扩展,即将压缩的数据恢复为原始维数;通过以上对零填充的压缩与扩展,避免冗余的零填充信息对BiGRU的特征提取造成影响,节约计算资源;
最后,将二维局部时域特征B送入带有掩码的注意力机制,对每个时间帧赋予权重并忽略零填充帧的权重,计算每一帧对情感识别的贡献程度,得到向量c=[c1,c2,…,ci,…,cM],计算过程如下:利用前馈运算计算第i帧的情感得分hi:
hi=V tanh(Wbi+b)
其中,tanh(·)表示双曲正切激活函数,bi为BiGRU的第i帧输出,V和W均为前馈运算中的可训练权重,b为可训练偏置;
将情感得分hi映射到0~1范围内,得时域特征B每一帧的贡献度:其中,exp(·)是指数函数,αS+1,…,αT是零填充时间段对应的权重;
由于二维局部时域特征B中仍包含了零填充段,为了忽略这部分无效信息,在注意力机制自动选择显著情感帧的时候,需将零填充帧进行遮掩;采用掩码矩阵将零填充帧对应的贡献度置为0,得到新贡献度表示c′=[c′1,c′2,…,c′i,…,c′M],表达式如下:c′=c⊙Mask(Xin)
其中,Mask(Xin)表示输入序列Xin的掩码矩阵;矩阵中,有效部分的值为1,无效部分的值为0;
根据上述所求的贡献度对输入特征进行加权求和,得到全局时域特征
4.根据权利要求3所述的基于时空多重融合网络的变长语音情感识别方法,其特征在于:所述步骤三具体过程包括:首先,由于CNN的计算过程中本身具有零填充操作,故零填充在CNN中的特征提取没有影响,将输入矩阵Xin直接输入CNN;为满足CNN的输入需求,需为Xin添加通道维度,从而得到空域的输入其次,由于语音的频谱是一个时间与频率变化的关系图,不仅包含了与情感相关的局部特征,还包含了与时间相关的序列特征;为了捕捉这种变化关系,在空域网络的第一层,分别对频谱的时间维和频率维设置一组卷积核,而后拼接为新的特征图:
1a 1b
Xc=Concat(conv (X′in),conv (X′in))
1a 1b
其中Xc为第一层卷积的输出,conv (·)和conv (·)分别表示对频谱时间维和频率维的卷积,Concat(·)表示连接操作;
进而,采用多层卷积核大小为3×3的卷积层对Xc进行特征提取,这个过程视作将第一层卷积输出的不同特征信息进行编码,得到局部空域特征Xl:Xl=Conv(Xc)
其中Conv(·)表示一个复合函数,包含4层卷积层;具体地,为减轻过拟合和加快网络收敛速度,每个卷积层包含CNN、批处理归一化BN、修正线性单元ReLU;此外,为在编码过程中实现对特征信息的浓缩,在前三层卷积层之后添加了池化层;
接着,采用全局平均池化将任意维度的局部空域特征Xl映射为全局空域特征US:US=GAP(Xl)
其中GAP(·)表示全局平均池化的过程;
最后,将US的维度变换为dS×1,以便于后续与时域特征UT拼接。
5.根据权利要求4所述的基于时空多重融合网络的变长语音情感识别方法,其特征在于:所述步骤四具体过程包括:为了将上述时域特征和空域特征融合,利用直接融合策略和集成策略组成多重融合;
首先,分别对时域特征和空域特征设计分类器,得到时域的预测概率向量 和空域的预测概率分布YT=softmax(ReLU(BN(W1UT+b1))W2+b2)YS=softmax(WSUS+bS)
其中W1,W2,WS为全连接层的可训练权重,b1,b2,bS为全连接层的可训练偏置,ReLU(·)表示修正线性单元,BN(·)表示批处理归一化;
然后,将上述分别生成的全局时域特征和全局空域特征直接融合,拼接时域特征与空域特征,得到时域与空域的融合特征UF=concat(UT,US)
通过全连接将融合特征映射为预测概率分布
YF=softmax(WFUF+bF)
其中WF为全连接层的权重矩阵,bF为全连接层偏置,Softmax(·)表示Softmax函数,N代表情感分类个数;
最后,综合考虑融合域、时域与空域的预测概率向量,将时域与空域进行二次融合;将三个域的输出进行统计平均,得到最终预测概率向量
6.根据权利要求5所述的基于时空多重融合网络的变长语音情感识别方法,其特征在于:所述步骤五具体过程包括:首先,以多分类交叉熵损失函数作为模型训练的指导,其表达式如下:其中y=[y1,…,yk,…,yN], 分别表示真实概率分布和预测概率分th
布,yk, 分别代表第k 类别的真实概率和预测概率;
然后,通过Adam优化器根据反向传播算法的梯度来对损失函数输出的损失值最小化,实现模型参数的更新与优化,最优化问题表述如下:其中,θ表示神经网络模型的可训练参数,Xin表示输入神经网络的数据,Y表示数据的真实标签。