APP下载

基于3D和1D多特征融合的语音情感识别算法

2021-09-09徐华南周晓彦李大鹏

声学技术 2021年4期
关键词:池化识别率语音

徐华南,周晓彦,姜 万,李大鹏

(南京信息工程大学电子与信息工程学院,江苏南京 210044)

0 引 言

情感识别是情感计算的重要组成部分,目的让计算机模拟与识别人类的情感感知和理解过程,而语音情感作为诸多情感中的最直接的部分,是实现自然人机交互中的重要前提[1-2]。近年来关于语音情感识别的研究,取得了一些令人瞩目的成绩,但由于情感表达的复杂性(比如说话者年龄、性别以及说话者所处的文化和环境背景),语音情感识别仍然面临诸多挑战[3-4]。

随着深度神经网络的发展,大量文献表明深度神经网络比如卷积神经网络(Convolutional Neural Network, CNN)、长短期记忆网络(Long Short-Term Memory, LSTM)等在语音情感识别中能提取更有价值的信息[5-9]。Lim等[5]主要用短时傅里叶变换将语音信号转换为二维信息,利用卷积神经网络和循环神经网络(Recurrent Neural Network, RNN)作为声学模型,在EMO-DB数据库上的准确率分别为86.06%和78.31%,Basu等[6]利用13阶梅尔频率倒谱系数(Mel Frequency Cepstrum Coefficient, MFCC)作为输入,依次输入到卷积神经网络和长短期记忆网络中,得到了将近80%的识别率。文献[5-6]只考虑MFCC、基频等个性化特征,忽略了非个性化特征的影响,并且人与人之间差异较大,携带了大量个人情感信息,不具有通性。Zhao等[7]利用1D 卷积神经网络和长短期记忆网络(CNN-LTSM)中和2D CNN-LTSM 中进行语音情感识别,发现2D CNN-LTSM 比 1D CNN-LTSM 的识别率高,Chen等[8]提出基于3D 卷积-循环神经网络 (Convolutional Recurrent Neural Network, CRNN)的语音情感识别的方法,并通过实验证明,3D 卷积-循环神经网络的识别率要比2D 卷积-循环神经网络高。文献[7-8]可以看出3D网络能捕获更丰富的情感特征信息,但仅提取单一特征未能完全表达情感表征,Luo等[9]提出HSF-CRNN (High Level Statistics Functions-CRNN, HSF-CRNN)框架,将手工特征和深度学习特征级联输入到softmax后进行情感分类,识别率比单层卷积-循环神经网络和多层卷积-循环神经网络分别提高了3.8个百分点和7.6个百分点。但文献[7-9]都没有考虑到对关键的时空依赖关系进行建模。于是本文为消除个性化特征的影响和降低说话者年龄、性别以及说话者所处的文化和环境背景的影响,计算语音信号的对数梅尔特征(Log-Mel)和其一阶差分和二阶差分特征,合并成3D Log-Mel特征集,在文献[9]启发下提出利用双通道网络级联特征,其中一条通道采用3D 卷积-循环神经网络网络,并提出对称型双线性卷积神经网络(Bilinear Convolutional Neural Network, BCNN)模型方案,以平移不变的方式,对局部特征交互进行建模,利用BCNN提取空间特征,LSTM-attention提取判别性强的时间特征后融合得到时空特征,输入到原始的支持向量机(Support Vector Machines,SVM)分类器中分类,同时另外一条通道采用1D 卷积-循环神经网络网络,最后将3D特征和1D特征融合到一起,增加每一个特征的信息量,提高分类精度。

1 基于多特征融合的语音情感识别

提出的语音情感识别系统总体框架如图1所示。在3D部分,首先对输入的语音进行分帧、加窗等预处理操作得到梅尔频率倒谱系数并计算进而其一阶差分、二阶差分,得到3D Log-Mel特征集,随后输入到双线性卷积神经网络中提取频域特征和短时域特征,由于网络共享机制,在BCNN的分流的输出再输入到长短期记忆网络中,提取长时域特征,随后输入到attention模块中得到显著的特征表示,最后连接BCNN的外积输出和attention输出得到3D特征。在1D部分,首先对输入的语音进行分帧、加窗等预处理操作后得到等长度的语音数据,随后输入到一维卷积神经网络中提取频域特征和短时域特征,再输入到长短期记忆网络中得到1D特征。将3D特征和1D特征进行融合后,选择出判别性强的情感特征输入到全连接层中,利用softmax进行语音情感分类。图1中c为CNN网络最后一层卷积层的通道数,M、N为处理后的特征维度,A表示经过CNN网络处理后的特征矩阵。

图1 语音情感识别系统总体框架Fig.1 General framework of speech emotion recognition system

1.1 对数梅尔特征(Log-Mel)

为降低说话者年龄、性别以及说话者所处的文化和环境背景的影响,本文对给出的语音信号进行如下操作:

(1) 将语音信号通过高通滤波器进行预加重处理,高通滤波器表示为

其中,μ的取值范围为0.9~1,通常取0.97。

(2) 对预加重的信号进行零均值和单位方差处理;

(3) 对得到的语音信号进行分帧处理,汉明窗加窗,帧长为25 ms,帧移为10 ms;

(4) 对每一帧进行离散傅里叶(Discrete Fourier Transform, DFT)变换后得到各帧的频谱,并对频谱取模平方得到对应的功率谱,将时域信号转换为频域上的能量分布;

(5) 将功率谱输入到梅尔滤波器组中得到能量值,对于第i个滤波器(0<i≤4 0),能量为pi,对pi进行对数变换后得到倒谱梅尔频率yi=lg(pi);

其中:v=2,经过式(2)~(3)得到3D的特征表示H∈Rt×f×k,t表示时间长度,f表示梅尔滤波器的个数,k表示特征的通道数,分别为静态特征、一阶差分和二阶差分特征,静态特征结合前两阶动态信息足够提高语音情感识别的性能。这里,t=300,f=40,k=3。

1.2 BCNN模型

BCNN模型是一个端对端的训练过程,具有优异的泛化能力,可以产生不同的无序的文字描述,如费希尔向量(Fisher vector)、局部特征聚合描述符(Vector of Locally Aggregated Descriptors, VLAD)和二阶池化(Second-order Pooling, O2P)等,不仅在细粒度图像分类上取得了优异效果,还被用于其他分类任务,如图像识别、语音情感识别等[10]。在语音情感识别领域中,对于前面提到的3D Log-MEL 特征和一阶、二阶差分特征,通过双通道CNN网络后,会得到双路情感特征表示,传统上对于不同的情感特征的融合,常用的方法是进行串联、求和或者最大池化等一阶池化方法,假设利用平均二阶池化情感特征矩阵进行池化改进,对特征图M0中相同位置的情感特征向量与自身的转置求外积从而直接得到两两特征维度之间的相关性:

其中:X=[x1x2…xM]是以空间位置F=[f1f2…fM]为中心点的局部特征向量;M为局部特征的个数。而双线性汇合计算两路情感特征的外积,并对不同空间位置计算平均汇合得到双线性特征,外积捕获了特征通道之间成对的相关关系,提供了比线性模型更强的特征表示。为了简化计算,这里BCNN的前半部分使用相同的CNN模型,成为对称的BCNN,因此只需要训练一个CNN模型即可。BCNN模型的表达形式为

其中:FA为双线性卷积神经网络两个分流的特征提取函数;P是池化函数;Q是分类函数。特征提取函数可看成一个函数映射:f:L×I→Rc×D,3D Log-MEL特征数据经过卷积操作后,再进行最大池化操作,有效减少了网络的参数个数,并保存了有用的情感特征,因此将输入语音I与位置区域L映射为一个c×D维的情感特征向量。特征向量在L位置处使用矩阵外积进行特征组合,选择出判别性强的情感特征,即双线性(bilinear)特征:

由式(4)、(6)可知,两者是等价的。因此二阶池化(对称型BCNN)中的外积运算将特征图相同位置的输出拼接作为局部特征,然后对这个局部特征进行外积运算,将这些结果矩阵转化为特征图。这里bilinear特征为c×c的双线性特征,其中c为CNN模型的通道数,利用池化函数P将所有位置的bilinear特征进行累加汇聚成一个双线性特征xbcnn,函数表达式为

1.3 LSTM模型

为了解决梯度消失和梯度爆炸问题,LSTM模型在循环神经网络RNN中对循环层进行改进,是一种特殊的时间递归神经网络[8],适合处理和预测时间序列。LSTM网络使用输入门、遗忘门和输出门来控制记忆过程。语音信号是时间序列信号,且序列之间的信息是相互关联的,本文选用BLSTM网络对每一个训练序列分别应用一个向前和向后的LSTM网络,使网络充分学习到序列的上下文信息。这里,BLSTM层的单元大小设置为128。

1.4 attention机制

在语音情感识别中,不仅要关注具有情感信息的语音帧,也要考虑到每个情感语音帧的重要程度。因此对于LSTM输出的情感特征,本文并没有对其执行平均或最大池化等操作,而是利用attention机制去寻找显著的话语情感表征特征。在语音情感分类问题上,attention机制已被大量使用在序列对序列的任务中[11]。每一步只关注特定的小区域,抽取区域表征信息,再整合到之前步骤所积累的信息中。attention的任务是对于LSTM网络得到隐层输出序列oi,在每个时间步,模型会根据上一时刻的隐层输出与情感编码序列进行逐一比较得到一个对齐权重,然后按照权重大小将编码序列中的每个编码向量加权求和得到最终的attention数值,即当前的情感语音向量。经过T次时间步后,模型会输出语音数据库中各类情感的判别概率。其中attention层的注意力权重为

其中,f(oi)是评价函数,表达式为f(oi)=WT·oi,W为训练参数。对attention层权重求和得到最后的特征向量为

通过交替迭代训练,attention机制更聚焦目标上细微的有区分性的部分,提取出判别性强的特征表征。

1.5 1D特征表示

为增加特征向量的信息,对给定的语音进行1D CNN和LSTM操作[10]。首先将语音按照300帧划分成等长度的语音片段,对于不足300帧的语音用补0的方式填充,处理后的数据格式为片段个数与维度信息,将处理好的数据输入到CNN和LSTM网络中提取特征。本文选用四层卷积层、四层池化层和一层双向LSTM层,第一层卷积层有64个输出通道,第二层卷积层输出通道有128个,其他卷积层的输出通道为256,卷积核的大小为5,池化层大小为2,步长为2。LSTM层的输出单元大小设为128。

2 实验设置与分析

2.1 情感数据库

为了验证多特征融合模型的有效性,本文选用IEMOCAP和EMO-DB情感数据库进行实验。IEMOCAP是由南加州大学Sail实验室录制的英语数据库,由10名专业演员(5男5女)表演组成[12]。数据库包括5节(session),分别为session1、session2、session3、session4、session5,每一节分为即兴表演和剧本表演,由1男1女表演得到,即每一节包含两位说话者。本文选择即兴表演部分,采用中性、高兴、生气、悲伤四种情感,分别有1 099,284,289和608条语音。EMO-DB数据库是由柏林工业大学录制的德语情感语音库,共535条语音[13],由10名专业的演员(5男5女,数据标注分别为03、08、09、10、11、12、13、14、15、16)分别对7类情感(中性、高兴、生气、悲伤、厌恶、无聊和恐惧)表演得到,采样率为16 kHz。

2.2 参数设置

给定的语音在3D模块中对Log-MEL特征按照300帧分段,不足300帧的通过补0填充;在1D模块中,将语音划分为等长度的片段。本文基于Tensorflow平台来实现1D和3D多特征融合网络,网络参数中,迭代次数(epoch)为500,单次训练用的样本数(batch_size)为40,学习率(learning_rate)为10-4,动量(momentum)为0.99,权重衰减(decay_rate)为0.99,丢弃率(dropout)为0.1。

2.3 实验设置

本文采用非加权平均召回率(Unweighted Average Recall, UAR)作为评价指标,实验协议为“leave one subject out”[14-15],将数据库中的8位说话者作为训练集,一位作为验证集,剩下一位为测试集,为了使实验数据不具有偶然性,对每一人实验5次,求出均值与标准差,最后将10个人的数据求均值得到最后结果。为了验证本文提出的1D和3D融合算法的有效性,本文将本算法和其他方案进行了对比:

(1) CNN-LSTM[16]:对已经提取的特征进行归一化后,输入到局部卷积CNN层、全局卷积CNN层、LSTM层,然后通过反馈层进行情感分类。

(2) DCNN_DTPM[17]:先提取三个通道的梅尔频谱图作为深度卷积神经网络(Deep Convolutional Neural Networks, DCNN)输入,然后使用预先训练的DCNN模型来学习每个片段的高级特征表示。利用判别时间金字塔匹配(Discriminant Temporal Pyramid Matching, DTPM)策略对学习到的分段级特征进行聚类。

(3) ML ELM_AE[18]:用openEAR工具提取特征[19],通过训练ML_ELM_AE层(Multi-Layer Extreme Learning Machines based Auto-Encoder, ML ELM_AE)的级联来学习参数的多层神经网络,权衡系数为100。

2.4 实验结果

本文对提出的1D和3D多特征融合算法进行验证,每人实验5次,求出均值与标准差,然后将10个人的数据求均值。表1为IEMOCAP数据库中每个人的识别率(以session1,2,3,4为例,将数据session1,session2,session3,session4作为训练集,session5中的女性数据作为验证集,男性数据作为测试集时,平均识别率为55.44%,若session5中的女性数据作为测试集时,平均识别率为60.08%)。表2为EMO-DB数据库中每个人的识别率(以验证集为08、测试集为03为例,将08说话者作为验证集,03说话者为测试集,其他为训练集,平均识别率为87.02%),图2为IEMOCAP和EMO-DB数据库的混淆矩阵。

图2 IEMOCAP数据库和EMO-DB数据库的混淆矩阵Fig.2 The confusion matrices of IEMOCAP database(left)and EMO-DB database(right)

表1 IEMOCAP数据库中不同人的识别率Table 1 The recognition rates of different speakers in IEMOCAP database

表2 EMO-DB数据库中不同人的识别率Table 2 The recognition rates of different speakers in EMO-DB database

由实验结果可知,首先,在IEMOCAP数据库上,由于数据集不平衡,会导致识别率相差很大,在将session1,session3,session4,session5作为训练集,session2中的男性作为测试集、女性为验证集时,识别率最高能有69.63%,而最低的识别率在session1,2,3,4作训练集,session5中男性作为测试集时为55.14%,在 EMO-DB数据库上,识别率最好的是09序号的说话者作为测试集时,为94.64%,而最低的识别率在10序号的说话者作为测试集时,为76.77%,将每个人作为测试集分别实验5次,求均值和标准差后再求均值,能消除数据集不平衡的影响,IEMOCAP和EMO-DB数据库最后的平均识别率为61.22%和85.69%。

其次,通过混淆矩阵可以看出:(1) 情感标签为悲伤和生气在两个数据库上都能获得很高的识别率,在IEMOCAP在分别为81%和73%,在EMO-DB数据库上,分别为95%和84%。(2) 在EMO-DB数据库上,情感标签为中性、恐惧、厌恶、无聊识别率很高,分为达到了96%,86%,89%和81%。而在IEMOCAP数据库上中性情感的识别率很低,只有43%,其中有32%的情感被误判成高兴,17%的情感误判成生气。(3) 在两个数据库上,情感标签为高兴的识别率相比其他情感来说较低,分别为46%和77%。在IEMOCAP数据库上,有20%的高兴情感被误判成悲伤,23%的高兴被误判成中性,在EMO-DB数据库上,有12%的高兴情感被误判成生气。

与其他方案比较,不同方案下的语音情感识别率如表3所示。

表3 不同方案下的语音情感识别率Table 3 Speech emotion recognition rate under different schemes

通过表3可知,本文提出的算法与上述方案相比,准确率有了相应的提升。在EMO-DB语音库上,1D+3D多特征融合网络与DCNN_LSTM网络相比,准确率提升了5.09个百分点;与DCNN_DTPM网络相比,准确率提升了2.16个百分点;与ML ELM_AE网络相比,准确率提升了3.69个百分点。本文分别对1D CNN网络和3D BCNN网络分别做了实验,由实验结果可知,1D CNN网络在IEMOCAP和EMO-DB数据库的识别率分别为53.51%、79.56%,3D BCNN网络的识别率分别为58.63%和82.93%。两部分相比较可以发现,3D BCNN网络的识别率比1D CNN网络的识别率分别提高5.12个百分点和3.37个百分点。这是因为在3D部分,本文对语音情感进行零均值和标准差处理并且提取对数梅尔特征减少了说话者之间的差异性。而将两种网络并联连接,在IEMOCAP数据库上识别率分别提高了7.71个百分点和2.59个百分点,在EMO-DB数据库上识别率分别提高了6.13个百分点和2.76个百分点,说明1D和3D特征融合网络提高了整个算法的性能。

3 结 论

目前多特征融合算法是解决语音情感识别问题的有效途径。本文提出的基于3D和1D多特征融合的语音情感识别算法,该算法通过将3D网络和1D网络输出特征融合,使得选择出判别性强的情感特征,相比仅提取单一特征的3D模型和1D模型,在语音情感识别中有更好的识别效果。同时也发现BCNN模型能提高语音情感识别的正确率。本文算法在训练样本的数量、网络模型的训练和1D模型的改进上还有待于进一步的理论和实验研究。

猜你喜欢

池化识别率语音
基于高斯函数的池化算法
卷积神经网络中的自适应加权池化
魔力语音
基于MATLAB的语音信号处理
基于真耳分析的助听器配戴者言语可懂度指数与言语识别率的关系
基于MQ3与MP3的价廉物美的酒驾语音提醒器
听力正常青年人的低通滤波言语测试研究*
基于卷积神经网络和池化算法的表情识别研究
对方正在输入……
提升高速公路MTC二次抓拍车牌识别率方案研究