«上一篇 下一篇»
  计算机工程  2022, Vol. 48 Issue (2): 281-290  DOI: 10.19678/j.issn.1000-3428.0060270
0

引用本文  

乔栋, 陈章进, 邓良, 等. 基于改进语音处理的卷积神经网络中文语音情感识别方法[J]. 计算机工程, 2022, 48(2), 281-290. DOI: 10.19678/j.issn.1000-3428.0060270.
QIAO Dong, CHEN Zhangjin, DENG Liang, et al. Method for Chinese Speech Emotion Recognition Based on Improved Speech-Processing Convolutional Neural Network[J]. Computer Engineering, 2022, 48(2), 281-290. DOI: 10.19678/j.issn.1000-3428.0060270.

基金项目

国家自然科学基金(61674100)

通信作者

陈章进(通信作者),教授、博士

作者简介

乔栋(1995—),男,硕士研究生,主研方向为语音情感识别、集成电路设计;
邓良,硕士研究生;
屠程力,硕士研究生

文章历史

收稿日期:2020-12-14
修回日期:2021-02-01
基于改进语音处理的卷积神经网络中文语音情感识别方法
乔栋1 , 陈章进1,2 , 邓良1 , 屠程力1     
1. 上海大学 微电子研究与开发中心, 上海 200444;
2. 上海大学 计算中心, 上海 200444
摘要:语音情感识别在人机交互中具有重要意义。为解决中文语音情感识别效率和准确率低等问题,提出一种基于Trumpet-6卷积神经网络模型的中文语音情感识别方法。在MFCC特征提取过程中,通过增加分帧加窗操作时采样点的个数,增添每个汉明窗内的特征及减少汉明窗个数,从而缩小MFCC特征图的像素尺寸,提高单次识别的处理效率。在此基础上,使用高斯白噪声对数据集进行数据增强处理,缓解训练过程中的过拟合问题。在CASIA语音情感数据集上的实验结果表明,该方法的测试准确率达95.7%,优于Lenet-5、RNN、LSTM等传统方法,且Trumpet-6卷积神经网络模型采用2 048个采样点,仅需176 550个待训练参数,与采用DCNN的ResNet34和循环神经网络模型相比,参数更少,结构更简单,处理速度更快。
关键词语音情感识别    MFCC特征    高斯白噪声    数据增强    卷积神经网络    
Method for Chinese Speech Emotion Recognition Based on Improved Speech-Processing Convolutional Neural Network
QIAO Dong1 , CHEN Zhangjin1,2 , DENG Liang1 , TU Chengli1     
1. Microelectronics Research and Development Center, Shanghai University, Shanghai 200444, China;
2. Computing Centre, Shanghai University, Shanghai 200444, China
Abstract: Speech emotion recognition is essential in human-computer interaction. In this study, a Chinese speech emotion recognition method based on the Trumpt-6 convolutional neural network model was developed to solve the problem of low efficiency and accuracy of Chinese speech emotion recognition. During the process of extracting the Mel Frequency Cepstral Coefficient (MFCC) feature, the pixel size of the MFCC feature map was reduced to improve the processing efficiency of single recognition. This was achieved by increasing the number of sampling points in the frame windowing operation, adding the features in each Hamming window, and reducing the number of Hamming windows. Gaussian white noise was used to enhance the data set to minimize overfitting during the training process. The experimental results for the CASIA speech emotion data set show that the test accuracy of this method is 95.7%, which is better than those of traditional methods, such as Lenet-5, Recurrent Neural Network(RNN), and Long Short-Term Memory(LSTM). The Trump-6 convolutional neural network model uses 2 048 sampling points and only 176 550 parameters for training. This method has fewer parameters, a simpler structure, and faster processing than ResNet34 and the cyclic neural network model using deep convolutional neural networks.
Key words: speech emotion recognition    MFCC feature    white Gaussian noise    data set enhancement    Convolution Neural Network(CNN)    

开放科学(资源服务)标志码(OSID):

0 概述

语音情感识别作为人机交互领域的重要技术,能使机器理解人类的情感状态,并使智能机器具有感知情感的能力。目前,语音情感识别越来越受到重视[1-3],语音信号中用于情感识别的特征包括能量、音高、过零率、共振峰、语谱图[4-5]、梅尔倒谱系数等[6]。将这些低层特征以语音帧为单位进行提取,并把它们在语音段的全局统计特征值输入到分类器中进行情感识别。传统的语音情感识别方法通常使用人工选取的特征输入浅层机器学习模型进行分类识别,例如高斯混合模型[7]、支持向量机[8]、隐马尔科夫模型[9]等。支持向量机和隐马尔科夫方法在机器学习中经常被使用,具有较高的确定性。而人的情感具有较强的复杂性和不确定性,因此在语音情感识别中表现较差。随着机器学习技术的应用和发展,研究人员开始使用神经网络分类器来执行各种语音情感识别任务,神经网络在处理不确定和非线性映射问题方面具有独特的优势,并且可以检测其他分类技术无法检测到的规律和趋势,是模式识别中使用最广泛且最成功的多层前馈网络。由于语料库中没有统一的标准,因此识别效果差异很大[10-12],人类情感信息的复杂性和不确定性导致卷积神经网络识别中文语音情感的准确率仍然不高。

对标准的中文语音情感库CASIA而言,仅对卷积神经网络进行改进的方法,其识别准确率不足60%[13]。在卷积神经网络的基础上,为缓解过拟合,有研究人员使用参数迁移的方法,并加入了数据增强[14],使其在CASIA数据集上的识别准确率提高到了72.8%。文献[15]通过改进Lenet-5网络,在CASIA数据集上取得了85.7%的识别率[15]。文献[16]在卷积神经网络的基础上加入循环神经网络层,将CASIA数据集上的识别准确率提升至90%左右[16]

为进一步提高中文语音情感的识别效果,本文提出一种基于卷积神经网络的中文语音情感识别方法。通过改进MFCC特征提取方法以及加入高斯白噪声进行数据增强,提高识别效率。同时,建立一种轻量化的Trumpet-6卷积神经网络模型用于中文语音情感识别,提高识别准确率。

1 语音情感识别的相关研究 1.1 语音的MFCC特征提取

在语音识别领域,MFCC是最常用的语音特征之一。通过对人类听觉机制的研究发现,人耳对不同频率的声波具有不同的听觉敏感性,低频率的声音往往会掩盖高频率的声音,低频段声音掩蔽的临界带宽小于高频段。因此,根据从密集到稀疏的临界带宽,从低频到高频设置一组梅尔带通滤波器对输入信号进行滤波[17],以梅尔带通滤波器输出的信号能量作为信号的基本特征,对语音的输入特征进行处理。由于MFCC特征不依赖信号的性质,对输入信号没有任何假设和限制,因此,该参数具有更好的鲁棒性[18],更符合人耳的听觉特性,在信噪比(Signal-to-Noise Ratio,SNR)降低的情况下仍具有良好的识别性能[17]

MFCC特征与频率的关系可用式(1)近似表示:

$ M\left(f\right)={2} {\;}595\times \mathrm{l}\mathrm{g}\left(1+\frac{f}{700}\right) $ (1)

MFCC特征的提取过程如图 1所示。

Download:
图 1 MFCC特征提取过程 Fig. 1 MFCC feature extraction process

分帧操作把N个采样点压缩为1个单位,即1帧,对这1帧加窗(汉明窗等)计算后,再进行后续处理。帧与帧之间有重叠部分,是为了使帧与帧之间平滑过渡,保持其连续性。由于预加重操作实际相当于高通滤波,因此分帧加窗后得到的数据能够为后续时频变换初始化数据。

1.2 高斯白噪声

如果一个噪声的功率谱密度为常数,即功率谱均匀分布,则称其为白噪声;若此白噪声的幅度分布服从高斯分布,则称其为高斯白噪声。本文采用高斯噪音,是为了更好地模拟未知的真实噪音,因为在真实环境中,噪音往往不是由单一源头造成,而是很多不同来源的噪音复合体[19]。假设把真实噪音看成非常多不同概率分布的随机变量加合,并且每一个随机变量均独立,那么根据中心极限定理,其归一化和则随着噪音源数量的上升,呈现高斯分布[20]形态。因此,使用合成的高斯白噪声为合理的近似仿真。

1.3 数据增强

在深度学习中,数据与模型均为影响最终训练结果的重要方面。在神经网络训练之前对数据集进行数据增强,是有效缓解模型过拟合的方式。通过对输入特征图进行数据增强,可以让网络模型将经过处理后的同一幅图片当成多幅图片,扩充数据集的样本数量[21-23]。通过给神经网络模型输入足够的图片,可以保证神经网络模型能够提取足够多的有效信息。

数据增强的传统方法包括对图片进行旋转、平移、翻转等。由于在语音识别领域,图片是提取语音信息后所得数值矩阵产生的图像,因而具有一定的声音特性。例如,对于图像来说,横轴和纵轴没有实际意义,而对于MFCC特征矩阵来说,横轴代表时间,纵轴代表通频带上的滤波器编号。因此,传统数据增强方法在处理图像时所运用的图像旋转、平移、翻转等破坏了语音信号的连续性,导致声音特性出现混淆与丢失的现象,准确率难以提高[14]。而现阶段的研究较少关注中文语音情感识别数据增强方法的改进。

2 基于卷积神经网络的中文语音情感识别方法 2.1 改进的数据处理方法

本文使用的CASIA数据集为短句形式,句子长度约为1~2 s,语音连续特征相对于长语音句较少,因此将语音信号转化为图片,并利用卷积神经网络进行语音情感识别。

本文对语音情感数据集的MFCC特征提取以及预处理方法进行了改进,主要包括分帧加窗的采样点个数选取及高斯白噪声数据增强这两个方面。

2.1.1 分帧加窗的采样点个数选取

分帧加窗对特征图的影响如图 2所示,将语音信号按S个采样点取走分帧,经过后续加窗(汉明窗$ w\left(s\right) $)、快速傅里叶变换等操作,最终变为MFCC特征图中的一列,S的值不同,MFCC矩阵的列数就不同。当S=512时,横轴L的长度为252;当S=2 048时,L仅为63。

Download:
图 2 分帧加窗对特征图的影响 Fig. 2 Influence of framing and windowing on feature map

分帧加窗直接影响特征图大小,经过归纳,计算公式如式(2)所示:

$ L = \left\lceil {\frac{D}{T}} \right\rceil , \;T = \frac{S}{4} $ (2)

其中:L为特征图横轴长度;D为语音信号总的采样点个数,信号长度为2 s时共有32 000个采样点;S为帧长;T为帧移。

对于分帧加窗的采样点个数,以往传统的方式习惯选择2的整数次幂,如256或512。这种较少采样点的设置会使生成的MFCC矩阵的横轴,即代表时间的轴过长,导致神经网络输入特征图过大,而设置过多采样点又会令特征图上每个像素点所代表的压缩后声音特征不明显,识别准确率下降。因此,本文经过实验后,将采样点确定为2 048,并视为单帧可容纳采样点的上限,将其作为帧长。同时,帧移设置为1/4帧长,即512个采样点。将帧内语音信号$ y\left(s\right) $与汉明窗$ w\left(s\right) $叠加[23],得到分帧加窗后的信号$ y{'}\left(s\right) $,计算公式如式(3)所示:

$ y{'}\left(s\right)=y\left(s\right)\times w\left(s\right) $ (3)

将一段语音Y[D]分帧提取MFCC特征的流程如算法1所示。

算法1  分帧加窗提取MFCC流程算法

输入  D个采样点的数据,帧长S

输出  MFCC array

1.if(D≤32 000)

2.D ← {Y[0:D-1],zeros [32 000-D-1]}//长度不足32 000

//时补0

3.get L by formula(2)//通过式(2)求出横轴长L

4.Framing with window by formula(3)//通过式(3)分帧

//加窗

5.get Y[0:L-1]//得到分帧加窗并归一化后的数据

MFCC矩阵纵轴的长度由MFCC特征提取时设定的滤波器个数决定,一般设定为22~26个。本文通过对比发现,将其取整设定为20并无明显性能下降,故最终选择滤波器个数为20。最终,经过归一化得到20像素$ \times $63像素的单通道特征图。

2.1.2 高斯白噪声数据增强

由于训练数据较少,训练出的模型往往泛化性差,容易过拟合,准确率不高。对原有1 200条数据进行数据增强发现,传统的数据增强方法会破坏声音的连续特征,而高斯白噪声则均匀叠加在原有音频上,因此本文采用加入高斯白噪声作为数据增强方法。此外,由于模型是在有噪声的环境下进行训练,因此得到的神经网络模型具有一定的抗噪性。由于原有数据集的信噪比为35 dB,因此加入信噪比大于35 dB的噪声可认为没有噪声。所以,在加入高斯白噪声进行数据增强时,需固定噪声的信噪比,并使其小于35 dB,如此也便于分析加入不同信噪比与样本数量的数据增强实验效果。生成一个标准高斯随机数较为容易,令该噪声(设其声音长度为N)乘以系数k即可得到一个固定信噪比的噪声。计算语音信号的功率PS和生成的噪声功率Pn1的计算公式如式(4)~式(5)所示:

$ {P}_{S}=\frac{\sum \limits_{i=1}^{N}({x}_{i}{)}^{2}}{N} $ (4)
$ {P}_{n1}=\frac{\sum \limits_{i=1}^{N}({n}_{i}{)}^{2}}{N} $ (5)

给定固定信噪比X,求解k值,假设Pn为需要的信噪比的噪声功率,则有:

$ X=10\times \mathrm{l}\mathrm{g}\frac{{P}_{s}}{{P}_{n}} $ (6)

对式(6)进行整理可得:

$ \begin{array}{l}{P}_{n}=\frac{{P}_{s}}{{10}^{X/10}}=\frac{\sum \limits_{i=1}^{N}(k\times {n}_{i}{)}^{2}}{N}=\\ \;\;\;\;\frac{{k}^{2}({{n}_{1}}^{2}+{{n}_{2}}^{2}+\dots +{{n}_{N}}^{2})}{N}={k}^{2}\times {P}_{n1}\end{array} $ (7)

继续整理,得到k值如式(8)所示:

$ \begin{array}{l} k=\sqrt{\frac{{P}_{s}}{{10}^{X/10}\times {P}_{n1}}}\\ k=\sqrt{\frac{{P}_{s}}{{10}^{X/10}\times {P}_{n1}}} \end{array}$ (8)

高斯白噪声数据增强过程如图 3所示,将求出的不同信噪比对应的kii=1,2,…,N)乘以标准高斯噪声,再和纯净音频中提取的MFCC特征图进行线性叠加。由于高斯白噪声为随机值,叠加后的特征图对应像素的值发生了非线性的随机变化,因此可以当作完全不同的图片。随后,将加过噪声的MFCC特征图与纯净MFCC特征图一同送入数据集[24]

Download:
图 3 高斯白噪声数据增强 Fig. 3 Gaussian white noise data augmentation
2.2 卷积神经网络设计

卷积神经网络一直是研究和应用的热门技术。不同于传统的全连接神经网络,卷积神经网络在进入全连接层进行标签的配对之前要先经过若干个卷积层和池化层,并对输入特征进行压缩和提取,从而简化训练过程。卷积操作可以视作滤波,而完成特征提取的卷积核即为滤波器。直接卷积的计算公式如式(9)所示:

$ \begin{array}{l} O(x, y)=\\ f\left(\sum \limits_{{f}_{i}=0}^{{N}_{{f}_{i}}}\left(\sum \limits_{{K}_{x}=0}^{{K}_{x}}\sum \limits_{{K}_{y}=0}^{{K}_{y}}{w}_{{f}_{i}}\left({k}_{x}, {k}_{y}\right)\mathrm{l}\mathrm{n}{\left(x+{k}_{x}, y+{k}_{y}\right)}^{{f}_{i}}+{\beta }^{{f}_{i}}\right)\right) \end{array}$ (9)

其中:f是非线性激活函数;$ {\beta }^{{f}_{i}} $表示偏移值;Oxy)表示输入特征图坐标(xy)处的值;wkxky)表示卷积核坐标(kxky)上的权重值;ln(x+kxy+ky)表示输出特征图坐标(x+kxy+ky)上的输入值;kxky表示卷积核的尺寸;fi表示第i幅输入特征图;Nfi表示输入特征图的数目。

池化通常分为最大池化和均值池化,池化的作用是取局部区域内的某个值,将其他值舍弃,从而达到压缩图像的目的。本模型采用最大池化,其计算公式如式(10)所示:

$ {f}_{i, j}^{\mathrm{o}\mathrm{u}\mathrm{t}}=\underset{p\times p}{\mathrm{m}\mathrm{a}\mathrm{x}}\left({f}_{m, n}^{\mathrm{i}\mathrm{n}}, \cdots, {f}_{m+1, n}^{\mathrm{i}\mathrm{n}}, {f}_{m+1, n+1}^{\mathrm{i}\mathrm{n}}, \cdots, {f}_{m+p-1, n+p-1}^{\mathrm{i}\mathrm{n}}\right) $ (10)

其中:fout表示输出图像(ij)位置的值;fin表示输入图像中(ij)位置的值;p表示池化核的尺寸。

对神经网络来说,理论上通过加深网络的深度,同时选用较小的卷积核可以取得更好的训练效果,但随着卷积神经网络的发展,3$ \times $3大小的卷积核被验证为较合适的尺寸,因此得到广泛使用。本模型采用的卷积方式为二维卷积,卷积核尺寸均采用3$ \times $3,池化层采用最大池化,池化核的尺寸也为3$ \times $3。但是在卷积核已经很小的前提下,加深网络深度会导致待训练参数过多,存在过拟合的风险。

本文设计一种轻量级的Trumpet-6卷积神经网络模型,其处理流程如图 4所示。

Download:
图 4 卷积神经网络处理流程 Fig. 4 Processing flow of convolution neural network

传统经典网络,如Alexnet、MobilenetV2等由于其本身用于图像处理,因此存在输入层卷积核较多、所采用滑动步长较大等特点。例如,Alexnet的输入层有96个卷积核,步长为4,MobilenetV2的输入层步长为2,这两者由于容易造成过拟合,因此均不适用于处理语音信息。但将图像处理领域的经典神经网络迁移至语音处理领域已经是常用方法。因此,有必要设计一个语音情感识别领域的网络。根据语音的特性,在设计之初进行如下改进:1)由于MFCC特征图尺寸相比图像处理领域来说较小,因此输入层选用较少卷积核;2)由于声音特征具有连续性,因此将输入层滑动步长设定为1,而后续图像经过池化层压缩后,才可以将滑动步长提高为3来提升训练效率。为了平衡准确率与训练效率,将第1次池化的插入位置选择在第2个卷积层之后,并通过实验进一步确定网络层数与具体超参数。

将提取到的MFCC特征图送入输入层,卷积神经网络模型的卷积层一般用于提取浅层特征,将全连接层来提取目标的深层次特征。卷积神经网络模型的卷积层数初始设置为2,第1个卷积层作为输入层,这2个卷积层均为32个卷积核,目的是作为特征图输入并提取浅层特征。卷积神经网络进行最大池化后为3层卷积层,均使用64个卷积核。随后再次进入最大池化层进行压缩,最后一层卷积层利用了128个卷积核,能够将之前的特征图进行高层次提取。输入的特征图经过拉直层变为一维图像后,最后输入全连接层进行分类,全连接层有6个神经元,对应6种情感标签。

卷积层感受野只与核大小和滑动步长有关,三者间的关系如式(11)所示:

$ {R}_{i}=({R}_{i+1}-1)\times {S}_{i}+{K}_{i} $ (11)

其中:Ri是第i层卷积层的感受野;Ri+1是(i+1)层上的感受野;si是第i层卷积的步长;Ki是第i层卷积核的大小。这样在卷积核大小已经确定的情况下,在第1次池化后适当增大滑动步长可以增大感受野和提高训练效率。另外,将卷积层和池化层均设置为全零填充,从而尽可能还原输入特征图的尺寸,保留原有信息。全连接层中所用的分类器是softmax分类器[25-26]

$ {P}_{i}\left({o}_{i}\right)=\frac{\mathrm{e}\mathrm{x}\mathrm{p}\left({o}_{i}\right)}{\sum \limits_{i=1}^{n}\mathrm{e}\mathrm{x}\mathrm{p}\left({o}_{i}\right)} $ (12)

其中:oi为全连接层的输出值;Pi是softmax分类器的输出值,共有i个,对应i个标签的概率,本文中i取6,输出值[P1P2P3P4P5P6] 为6种情感分别对应的概率值,取出其中的最大值对应的情感标签并输出,便完成了一次识别。

此外,激活函数全部使用ReLU,将除输入层外的所有卷积层均加入L2正则化,并以0.2的丢弃比例来缓解过拟合,损失函数使用交叉熵,采用Adam优化器,学习率设置为0.001。经过计算,模型共有176 550个待训练参数。网络具体结构如表 1所示。

下载CSV 表 1 Trumpet-6卷积神经网络结构 Table 1 Structure of Trumpet-6 convolutional neural network
3 实验与结果分析 3.1 实验条件

本课题的硬件实验平台为AMD Ryzen 7 3700x +NVDIA GeForce RTX2070 super,CPU主频为3.6 GHz,GPU显存为8 GB。使用Python语言和TensorFlow 2.0的GPU版本对神经网络模型进行搭建。

本文在确定改进方向时设计了3组实验:第一组研究采样点大小对训练时间以及准确率的影响;第二组研究卷积结构对训练效果的影响;第三组研究添加高斯白噪声进行数据增强的方法与传统方法进行数据增强对测试集准确率的影响。

CASIA汉语情感语料库由中国科学院自动化所录制,共包括4个专业发音人,包含生气、高兴、害怕、悲伤、惊讶和中性6种情绪。该数据集录制时采用16 kHz采样和16 bit量化,在信噪比为35 dB的纯净环境中录制,本次实验收集到1 200条语句,其中包含了50句相同文本。

对1 200条的CASIA数据集进行数据乱序。由于本文中所使用的CASIA数据集数据量较小,初始为1 200条,而加入数据增强后最多为4 800条数据。因此,针对较小数据集(数据量在万以下),主流的数据集划分比例为训练集与测试集7∶3,或训练集、验证集、测试集比例为6∶2∶2,其中,验证集主要用于调节卷积核个数、卷积核大小等超参数。由于本文除第2个实验是探究卷积神经网络结构对测试集准确率的影响外,第1组和第3组实验主要是在同一平台上进行纵向比较以确定最佳的改进方向,在这个过程中使用验证集调节超参数无法控制单一变量,因此第1组和第3组实验把数据集划分为训练集与测试集7∶3,而第2组实验数据集划分为训练集、验证集、测试集6∶2∶2。

3.2 实验结果 3.2.1 采样点影响实验

根据采样点个数为2的整数次幂的规则,分别采用了256、512、1 024、2 048、4 096、8 192个采样点进行分帧、加窗。仅对原有数据集进行实验,得到的MFCC特征图经过在2.2节中提出的Trumpet-6神经网络识别,统计模型收敛时的迭代轮数,测试集准确率以及平均单个样本的识别耗时,结果如表 2所示。

下载CSV 表 2 采样点影响实验的结果 Table 2 Result of experiment on the influence of sampling points

通过对比发现,采用256个采样点进行分帧的模型收敛速度最慢,约为50轮,其他5组相近,均在30~40轮左右。经过统计,这6次实验的单个样本训练时间分别约为310 μs、172 μs、101 μs、63 μs、52 μs、42 μs,可以看出,传统的选用256个和512个采样点进行分帧的训练耗时远大于选用1 024个以上采样点的分帧方法。继续增大分帧时采样点大小,如将采样点设置为4 096、8 192,输入特征图尺寸会进一步缩小,进而减少训练时间。但从表 2中可以看出,继续增大采样点个数为4 096、8 192,会使模型的准确率严重下降,即单帧可容纳的采样点到达了一个上限、同时识别速度提升不大。综合考虑,选取2 048个采样点较合适。相比于传统256个采样点分帧的单个样本平均识别约310 μs而言,2 048采样点只需63 μs即可完成一次训练或识别,处理效率提升了79.7%,准确率仅下降1.1个百分点。

3.2.2 模型卷积结构实验

本组实验采用CASIA原始数据集1 200条,分帧采样点选取2 048,特征图尺寸为20$ \times $63,将数据集比例划分为训练集、验证集、测试集6∶2∶2,来对比卷积层数对测试集准确率的影响。具体实验方法为:建立3~10层卷积结构的网络模型,并通过验证集调节超参数,找出其中测试集准确率最高的模型,统计测试集准确率和收敛时迭代轮数,模型的训练结果如表 3所示。

下载CSV 表 3 模型卷积结构实验的结果 Table 3 Result of model convolution structure experiment

表 3可知,6层卷积结构的模型D是相对而言更为优秀的网络结构,继续增加卷积层会使网络模型变复杂,泛化能力变差,从而导致测试集准确率降低。为得到一个较为简化的模型结构,将模型D确定的超参数,如卷积核个数,向下取一个2的整数次幂。经过调整的模型,迭代轮数为35,测试集准确率为70.2%,将其作为2.2节提出的Trumpet-6模型。

3.2.3 数据增强实验

不加噪声的MFCC特征图与加入信噪比为5 dB高斯白噪声后的MFCC特征图对比如图 5所示。由图 5可知,加入噪声后的MFCC特征图的语音特征虽然被噪声淹没,但仍保留了一部分肉眼可见的特征。

Download:
图 5 无噪声与5 dB噪声的MFCC特征图 Fig. 5 MFCC feature maps of non-noise and 5 dB noise

本组实验首先对4种数据增强方法进行了对比,S1~S3是传统数据增强方法,S4为添加高斯白噪声的数据增强方法。S1组实验对MFCC特征图进行旋转(旋转角度为顺时针旋转15°);S2组实验对特征图进行随机平移(水平或竖直平移图片宽度的0~10%);S3组实验对特征图进行随机缩放(缩放比例为0~10%);S4组实验对原音频文件加入信噪比为5 dB的高斯白噪声。数据增强的扩充量与初始数据集相同,为1 200条,即总共2 400条数据,数据增强后的数据集划分方式采用了与文献[24]相同的方式,即扩充全部数据集后再将数据集划分为训练集与测试集7∶3。训练结果如表 4所示。

下载CSV 表 4 数据增强方式对准确率的影响 Table 4 Influence of data enhancement methods on accuracy

表 4可知,高斯白噪声进行数据增强的测试集准确率明显好于平移、缩放等传统数据增强方法。随后,在原有1 200条CASIA数据集的基础上,分别设置不加高斯白噪声的1 200条语音,与加入信噪比为5 dB的噪声进行数据增强的2 400条语音、加入3 dB和5 dB噪声共3 600条语音和同时加入3 dB、5 dB、10 dB噪声的共4 800条语音进行对比,训练结果如表 5所示。

下载CSV 表 5 高斯白噪声数据扩充量对准确率的影响 Table 5 Influence of Gaussian white noise data expansion on accuracy

表 5可知,这4组实验的模型收敛后,测试集准确率分别约为70.2%、80.8%、90.2%和95.7%。在同时加入3 dB、5 dB、10 dB噪声进行数据增强后达到上限,此时共有4 800条数据,继续增强数据收效甚微,此时模型的测试集准确率与训练集准确率基本吻合,有效缓解了过拟合。

3.3 本文方法有效性验证及与其他方法的对比

使用2 048采样点分帧、加窗,输入图尺寸大小为20像素$ \times $63像素,并对初始1 200条CASIA数据集加入3 dB、5 dB、10 dB噪声进行数据增强,共得到4 800条数据,使用网络模型Trumpet-6作为最终的识别方法。最终在CAISA数据集上效果如图 6所示。

Download:
图 6 基于卷积神经网络的中文语音情感识别结果 Fig. 6 Chinese speech emotion recognition results based on convolutional neural network

除了与在CAISA数据集上进行测试外,为进一步验证本文方法的有效性与泛用性,将本文方法分别在采用本小组录制的中文语音情感库与国际上通用的经典语音情感库上进行实验,并对比本文与其他方法在迁移至自建数据集和上经典语音情感数据集上的实验结果。此外,将上述3种库混合,进行方法迁移实验。由于混合库的效果不易于与其他文献所提方法效果直接比较,因此将本文方法与文献所提方法尽量复现并对比,本部分的数据集划分比例依旧为训练集与测试集7∶3。

3.3.1 在CASIA中文语音情感库下的对比结果

由于复现文献中的方法存在一定的困难与误差,因此本节把本文方法与近年来针对CASIA中文语音情感库的识别方法,包括文献[13-16]的结果直接进行对比。其中,文献[13]为1 200条数据,训练集与测试集比例为8∶2,进行20轮左右收敛;文献[14]为1 200条数据,经过数据增强后为3 600条,训练集、验证集、测试集比例为8∶1∶1,未给出其最优方法模型收敛时迭代轮数,但文中模型收敛均在1 000轮左右;文献[15]为1 200条数据,训练集与测试集比例为9∶1;文献[16]为7 200条数据,训练集、验证集、测试集比例为6∶2∶2,且未给出模型收敛时迭代轮数,对比结果如表 6所示。

下载CSV 表 6 不同方法在CASIA中文语音情感库下的效果对比 Table 6 Effect comparison of different methods in CASIA Chinese speech emotion database 

表 6可以看出,文献[13]所提识别方法在模型收敛时的迭代轮数最少且速度最快,但其准确率只有55.8%(文献[13]中采用的指标为错误识别率,为44.2%)。本文所提识别方法的模型收敛速度略低于文献[13]的方法,为50轮,高于其他3种,且准确率最高,达到了95.7%。

3.3.2 迁移至自建情感库的对比结果

本小组成员共5人,对中性、生气、害怕、高兴、悲伤5种情感(CASIA与EMO-DB共有的5种情感),每种录制20条,共500条,建立了自建语音情感库。录制采样率为44.1 kHz,在语音领域内,44.1 kHz的高采样率不适宜进行机器学习方面的识别,需要经过采样压缩为16 kHz,并进行16 bit的量化。由于语音情感识别方面的机器学习算法和语音特征提取方法种类繁多,且多数不易复现,因此本文在对比不同方法的实验结果时,选用相对容易复现的深度学习方法,包括文献[27-29]所提方法。本文方法与参考文献中所提方法在自建情感库的实验对比结果如表 7所示。

下载CSV 表 7 不同方法在自建数据集下的效果对比 Table 7 Effect comparison of different methods in self-built data set 

表 7可知,本文作为针对中文语音情感识别的方法,在中文自建数据集上也保持了较高的测试集准确率,达到90.4%;文献[28]所提方法利用了深度残差神经网络,有34层之多,网络结构复杂度较高,准确率仅次于本文方法且相差无几,达到了90.1%;文献[27]所提方法在卷积神经网络基础上加入了循环神经网络,且输入特征图为三维特征图,但准确率只有77.8%;文献[29]基于循环神经网络加入了更为复杂的长短期记忆网络(Long Short-Term Memory,LSTM)算法,测试集准确率为86.3%。

3.3.3 迁移至EMO-DB情感库的对比结果

EMO-DB数据集是由柏林工业大学录制的经典开源德语情感语音库,由10位演员(5男5女)对10个语句(5长5短)进行7种情感(中性、生气、害怕、高兴、悲伤、厌恶、无聊)的模拟得到,共包含535句语料,采样率为16 kHz,进行16 bit量化。本文方法在EMO-DB数据集的实验结果与文献中的方法的结果对比如表 8所示。

下载CSV 表 8 不同方法在EMO-DB数据集下的效果对比 Table 8 Effect comparison of different methods in EMO-DB data set 

表 8可知,本文方法在德语的EMO-DB数据集上的表现一般,测试集率为83.4%,仅高于文献[27]利用三维卷积循环神经网络的方法,与文献[31]仅利用openSMILE提取语音特征的方法相近。文献[30]使用支持向量机分类器和深度卷积神经网络两种机器学习算法融合后进行的分类最准确,测试集准确率为95.1%。但由于文献[30]方法为两种机器学习算法的融合,参数众多,尤其是支持向量机的详细参数未给出,因此不容易进行复现,仅在本节利用文献中的结论与本文方法在EMO-DB数据集上的实验结果进行了对比。文献[28]利用深度卷积神经网络ResNet34的识别方法由于原本就是在EMO-DB语音情感库训练得到的参数,因此得到了比3.3.2节更高的识别准确率,为92.4%。

3.3.4 迁移至混合语音情感数据集的对比结果

将CAISA数据集与自建语音情感库进行混合,之后再加入EMO-DB经典库进行混合(混合时选取共有的中性、悲伤、害怕、高兴、生气5种情感),分别通过实验验证本文方法在同语言下不同语料库中的效果,和不同语言、不同语料库中的效果,本文方法与参考文献中的方法准确率如表 9表 10所示。

下载CSV 表 9 不同方法在CASIA+自建数据集下的效果对比 Table 9 Effect comparison of different methods in CASIA + self-built data set 
下载CSV 表 10 不同方法在CASIA+自建数据集+ EMO-DB数据集下的效果对比 Table 10 Effect comparison of different methods in CASIA + self-built data set +EMO-DB data set 

表 9可知,本文方法在CASIA数据集与自建数据集进行混合的中文跨语料库中取得了较好的效果,但由于混合库中包含并非专业人录制的语音情感,因此总体结果不如在CASIA数据集上理想,为93.3%。而通过表 10可知,加入EMO-DB德语语音情感库后,识别效果有了一定程度的下降,为88.7%,但因为跨语言、跨语料库实验的数据集中,德语样本只占了大约1/4,所以仍旧能保持较高的识别准确率。从表 9表 10可以看出,将文献[28]与文献[29]所提的两种深度学习方法直接迁移过来并没有对混合库进行参数的调节,所以与在EMO-DB数据集上的结果相比有所下降。但由于模型本身较复杂,参数更多,因此针对不同情况的处理结果稳定性较强。相比之下,文献[27]所提方法在两种混合库中的效果依然较差。

3.3.5 对比实验总结

通过3.3.2节~3.3.4节的迁移实验可知,文献[28]与文献[29]的方法在整个迁移实验过程中结果均比较稳定,其中文献[28]方法在各个实验中表现较好,但由于其采用了ResNet34进行迁移训练,因此网络模型比较复杂,参数过多,不适宜针对性地完成某些任务。而文献[27]与文献[29]的方法在卷积神经网络基础上加入了循环神经网络以及LSTM算法,并没有取得十分理想的效果。这可能是由于本次实验所采用数据集的实验样本均为时长2~3 s的短语音,并没有发挥出循环神经网络在时序预测方面的优势。文献[28, 30]以及本文方法的实验结果充分说明,在较短的时间跨度内使用卷积神经网络的方法进行语音情感识别可行,且效果较好。

本文方法在处理中文语音情感识别时具有较高的识别准确率,但由于本小组录制人员非专业,情感不饱满,所以导致由CASIA库预训练后迁移过来的Trumpet-6模型并未达到和3.3.1节同样的效果,而在混合两种中文语音情感库后,训练集变大,准确率有了一定的提升。此外,通过迁移至EMO-DB库(德语)的实验结果与其他文献所提方法的实验结果对比后发现,本文方法在处理跨语言的语音情感识别方面存在不足,在混合库中文样本较多的情况下,相比于纯德语有一定提高。虽然本文方法不如文献[28]方法在各种情况下的识别结果稳定性强,但作为一种基于CASIA数据集训练而来的方法,针对于中文语音情感识别的方法具有一定的优势,具体对比结果如表 11所示。此外,相比于ResNet34深度残差神经网络而言,本文所改进的语音处理方法以及所设计的Trumpet-6卷积神经网络结构较简单。

下载CSV 表 11 文献[28]方法与本文方法的对比 Table 11 Comparison between the method in reference [28] and in this paper
4 结束语

针对中文语音情感识别效率和准确率低的问题,本文提出一种新型中文语音情感识别方法。通过在MFCC特征提取过程中提高采样点个数,并在改进语音处理方法的基础上使用高斯白噪声对数据集进行数据增强处理,从而提高处理效率及缓解训练过程中的过拟合现象。通过建立Trumpet-6卷积神经网络模型并用于中文语音情感识别,提高识别准确率。在CASIA数据集上的实验结果表明,本文方法的识别准确率达95.7%,优于Lenet-5、RNN、LSTM等传统方法。本文网络模型采用2 048个采样点,仅176 550个待训练参数,与采用DCNN的ResNet34和循环神经网络模型相比,其结构较为优化,处理效率得到大幅提高。但经过迁移至其他语料库训练后发现,本文方法在处理不同语言、跨语料库的情感识别时准确率有待提高,且网络模型尚不能精确提取情感信息并舍去不必要的语言习惯。下一步将进行跨语料库的泛化性研究,并丰富开源语音情感库,促进语音情感识别领域的发展。

参考文献
[1]
ANAGNOSTOPOULOS C N, ILIOU T, GIANNOUKOS I. Features and classifiers for emotion recognition from speech: a survey from 2000 to 2011[J]. Artificial Intelligence Review, 2015, 43(2): 155-177. DOI:10.1007/s10462-012-9368-5
[2]
YILDIRIM S, KAYA Y, KL F. A modified feature selection method based on metaheuristic algorithms for speech emotion recognition[J]. Applied Acoustics, 2021, 173(4): 107721-107732.
[3]
余华, 颜丙聪. 基于CTC-RNN的语音情感识别方法[J]. 电子器件, 2020, 43(4): 934-937.
YU H, YAN B C. Speech emotion recognition method based on CTC-RNN[J]. Electronic devices, 2020, 43(4): 934-937. (in Chinese)
[4]
汪炳元. 基于深度学习的语音情感识别研究[D]. 哈尔滨: 哈尔滨工业大学, 2020.
WANG B Y. Research on speech emotion recognition based on deep learning [D]. Harbin: Harbin Institute of technology, 2020. (in Chinese)
[5]
BRUNI V, TARTAGLIONE M, VITULANO D. An iterative approach for spectrogram reassignment of frequency modulated multicomponent signals[J]. Mathematics and Computers in Simulation, 2020, 176: 96-119. DOI:10.1016/j.matcom.2019.11.006
[6]
AYADI M E, KAMEL M S, KARRAY F. Survey on speech emotion recognition: features, classification schemes, and databases[J]. Pattern Recognition, 2011, 44(3): 572-587. DOI:10.1016/j.patcog.2010.09.020
[7]
VLASSIS N, LIKAS A. A greedy EM algorithm for Gaussian mixture learning[J]. Neural Processing Letters, 2002, 15(1): 77-87. DOI:10.1023/A:1013844811137
[8]
HU H, XU M X, WU W. GMM supervector based SVM with spectral features for speech emotion recognition [C]//Proceedings of 2007 IEEE International Conference on Acoustics. Washington D. C., USA: IEEE Press, 2007: 413-416.
[9]
ADITYA R, FABIO D T, MARK S. Hidden Markov models with random restarts versus boosting for malware detection[J]. Journal of Computer Virology and Hacking Techniques, 2018, 15(4): 97-107.
[10]
MAO Q, DONG M, HUANG Z, et al. Learning salient features for speech emotion recognition using convolutional neural networks[J]. IEEE Transactions on Multimedia, 2014, 16(8): 2203-2213. DOI:10.1109/TMM.2014.2360798
[11]
ZHANG B, QUAN C, REN F. Performance of convolution neural network on the recognition of speech emotion and images [EB/OL]. [2020-11-04]. https://www.semanticscholar.org/paper/Performance-of-Convolution-Neural-Network-on-the-of-Zhang/f649f1a6e9231e96c57e12a5a58072c04d3ff067?p2df.
[12]
ZHENG W Q, YU J S, ZOU Y X. An experimental study of speech emotion recognition based on deep convolutional neural networks [C]//Proceedings of International Conference on Affective Computing and Intelligent Interaction. Washington D. C., USA: IEEE Press, 2015: 827-831.
[13]
曾润华, 张树群. 改进卷积神经网络的语音情感识别方法[J]. 应用科学学报, 2018, 36(5): 837-844.
ZENG R H, ZHANG S Q. Speech emotion recognition based on improved convolutional neural network[J]. Journal of Applied Sciences, 2018, 36(5): 837-844. (in Chinese)
[14]
缪裕青, 邹巍, 刘同来, 等. 基于参数迁移和卷积循环神经网络的语音情感识别[J]. 计算机工程与应用, 2019, 55(10): 135-140, 198.
MIAO Y Q, ZOU W, LIU T L, et al. Speech emotion recognition based on parameter transfer and convolution recurrent neural network[J]. Computer Engineering and Applications, 2019, 55(10): 135-140, 198. (in Chinese)
[15]
姜芃旭, 傅洪亮, 陶华伟, 等. 一种基于卷积神经网络特征表征的语音情感识别方法[J]. 电子器件, 2019, 42(4): 998-1001.
JIANG P X, FU H L, TAO H W, et al. A speech emotion recognition method based on convolutional neural network feature representation[J]. Electronic Devices, 2019, 42(4): 998-1001. (in Chinese)
[16]
冯天艺, 杨震. 采用多任务学习和循环神经网络的语音情感识别算法[J]. 信号处理, 2019, 46(7): 1133-1140.
FENG T Y, YANG Z. Speech emotion recognition algorithm based on multi task learning and recurrent neural network[J]. Signal Processing, 2019, 46(7): 1133-1140. (in Chinese)
[17]
张耿. 多分类支持向量机的研究及在说话人识别中的应用[D]. 长沙: 中南大学, 2007.
ZHANG G. Research on multi class support vector machine and its application in speaker recognition [D]. Changsha: Central South University, 2007. (in Chinese)
[18]
陈旺. 语音端点检测的鲁棒性研究[D]. 广州: 广州大学, 2019.
CHEN W. Robustness of speech endpoint detection [D]. Guangzhou: Guangzhou University, 2019. (in Chinese)
[19]
王林. 基于非局部均值的图像去噪方法研究[D]. 西安: 西安电子科技大学, 2014.
WANG L. research on image denoising method based on nonlocal mean [D]. Xi'an: Xi'an University of Electronic Science and Technology, 2014. (in Chinese)
[20]
任杰, 郭卉, 姜囡. 不同情感的语音声学特征分析[J]. 光电技术应用, 2019, 34(5): 31-36, 62.
REN J, GUO H, JIANG N. Analysis of acoustic characteristics of different emotions[J]. Application of Optoelectronic Technology, 2019, 34(5): 31-36, 62. (in Chinese)
[21]
夏鼎, 徐文涛. 基于生成对抗网络合成噪声的语音增强方法研究[J]. 电子技术应用, 2020, 46(11): 56-59, 64.
XIA D, XU W T. Research on speech enhancement method based on generating counter network synthetic noise[J]. Application of Electronic Technology, 2020, 46(11): 56-59, 64. (in Chinese)
[22]
孔德廷. 一种改进的基于对数谱估计的语音增强算法[J]. 声学技术, 2020, 39(2): 208-213.
KONG D T. An improved speech enhancement algorithm based on logarithmic spectral estimation[J]. Acoustics, 2020, 39(2): 208-213. (in Chinese)
[23]
薛珊, 李广青, 吕琼莹, 等. 基于卷积神经网络的反无人机系统声音识别方法[J]. 工程科学学报, 2020, 42(11): 1516-1524.
XUE S, LI G Q, LV Q Y, et al. Voice recognition method of anti UAV system based on convolutional neural network[J]. Journal of Engineering Science, 2020, 42(11): 1516-1524. (in Chinese)
[24]
LIN H S, JIA C, KE L X, et al. Deep and shallow features fusion based on deep convolutional neural network for speech emotion recognition[J]. International Journal of Speech Technology, 2018, 21(4): 931-940. DOI:10.1007/s10772-018-9551-4
[25]
陈俊芬, 赵佳成, 韩洁, 等. 基于深度特征表示的Softmax聚类算法[J]. 南京大学学报(自然科学), 2020, 56(4): 533-540.
CHEN J F, ZHAO J C, HAN J, et al. Softmax clustering algorithm based on depth feature representation[J]. Journal of Nanjing University (Natural Science), 2020, 56(4): 533-540. (in Chinese)
[26]
万磊, 佟鑫, 盛明伟, 等. Softmax分类器深度学习图像分类方法应用综述[J]. 导航与控制, 2019, 18(6): 1-9, 47.
WAN L, TONG X, SHENG M W, et al. A review of the application of softmax classifier in deep learning image classification methods[J]. Navigation and Control, 2019, 18(6): 1-9, 47. (in Chinese)
[27]
CHEN M, HE X, YANG J, et al. 3D convolutional recurrent neural networks with attention model for speech emotion recognition[J]. IEEE Signal Processing Letters, 2018, 25(10): 1440-1444. DOI:10.1109/LSP.2018.2860246
[28]
JERMSITTIPARSERT K, ABDURRAHMAN A, SIRIATTAKUL P, et al. Pattern recognition and features selection for speech emotion recognition model using deep learning[J]. International Journal of Speech Technology, 2020, 23(4): 799-806. DOI:10.1007/s10772-020-09690-2
[29]
LIM W, JANG D, LEE T. Speech emotion recognition using convolutional and recurrent neural networks[C]//Proceedings of 2016 Asia-Pacific Signal and Information Processing Association Annual Summit and Conference. Washington D. C., USA: IEEE Press, 2016: 1-4.
[30]
FAROOQ M, HUSSAIN F, BALOCH N K, et al. Impact of feature selection algorithm on speech emotion recognition using deep convolutional neural network[J]. Sensors, 2020, 20(21): 6008-6016. DOI:10.3390/s20216008
[31]
ÖZSEVEN T. A novel feature selection method for speech emotion recognition[J]. Applied Acoustics, 2019, 146(6): 320-326.