Clustering-Based Speech Emotion Recognition by Incorporating Learned Features and Deep BiLSTM

IEEE Access - South Korea, Pakistan

关键词:语音情感识别、深度双向LSTM、关键片段、序列选择、CNN特征归一化、RBFN


摘要

传统SER主要注重手工特征和使用传统CNN模型来提取高阶特征,增加识别准确率和整个模型的复杂度。本文提出了新的框架:

  1. 采用基于RBFN的聚类方法选择一个关键序列,目的是:减少计算复杂度
  2. STFT得到频谱图,经过CNN模型提取显著特征,后对其进行归一化保证识别准确率,目的是:特征提取后进行处理保证更加容易提取时空信息
  3. 归一化后传入Deep BiLSTM学习时序信息并预测最终情感标签

SER简介

  • SER背景
  • 传统方法用的是手工提取的特征
  • 2-D CNN本来是用在图像处理领域,现在也应用于SER
  • CNN-LSTM提取空间-时间特征
  • 但是CNN的使用会增加计算复杂度和网络参数
  • 所以使用K-means聚类,采用RBF(为什么非要用RBF不用其他的?)作为相似度度量,从每个簇抽取一个片段
  • 后将抽取的片段经过STFT算法得到频谱图,随后放入CNN(Resnet模型的FC-1000层
  • CNN的输出通过均值方差正则化,并输入深度BiLSTM网络提取时序信息并通过softmax层输出预测结果
  • 本文的创新点:
  1. 采用CNN-BiLSTM框架捕捉时序信息,所用的CNN模型是第一次被应用在这个领域,采用ResNet101特征结合序列学习机制
  2. 提出一个用RBFN作为相似度量的抽取和选择序列的方法,选择距离簇心最近的作为代表,能够减少处理时间
  3. 均值方差归一化能够提升性能,这也是框架的主要贡献之一
  4. 实验表明结果比较不错,适合识别实时情感。

SER调研

SER系统分为两个部分:特征选择和分类,特征提取有CNN或者高斯混合模型等等。CNN最近在特征提取兴起,有采用预训练模型做迁移学习提取特征的,LSTM-RNN用来学习时序信息,还有不需要手工特征输入的端到端的方法。
CNN-LSTM结合的方法用来捕捉高阶特征和时序信息,有文章采用预训练CNN和SVM结合做情感分类。


提出的SER方法

框架分为三个模块,第一个模块有两个部分:
第一个,将音频文件分成多个片段并找出连续片段只差,获得的差值通过一个阈值确保相似度并通过shot边界检测(这里好像是图像处理的相关内容,这里是怎么用的呢?)找到聚类所使用的K值。若两帧之差大于阈值,K值加一。每一簇都找到一个距离中心最近的关键片段,我们采用RBF作为聚类算法的相似度估计。
第二部分,用STFT画出所选择关键序列的频谱图,后采用预训练的Resnet101中的FC-1000层提取特征。具体的网络结构在表1中给出:

学习到的特征通过均值和标准差进行归一化,最后通过深度双向LSTM学习时序信息,获得序列信息,并预测最终情感分类。网络结构如下:

A. 预处理和序列选择

首先将语音分帧,窗长为500ms,每个片段的标签是整个语段的标签,后通过K均值聚类。采用RBF代替K-Means中的欧几里得距离矩阵,K值的选择并不是随机的,而是通过shot边界检测动态的估计相似性。(这里需要注意,每个文件的K值是不同的)

B. 基于RBF的相似度度量

RBF是计算片段之间相似性的非线性方法,人类大脑通过非线性过程识别和分辨模式。本文模型是基于RBFN的非线性模型,我们使用映射函数来找到两语音片段间的相似性,其中也用到归一化的概念。一维高斯模型是一个很好的选择,因为其可以平滑映射函数。

函数中心为z,宽度参数是σ\sigmaσ,这个函数用来度量x和中心z之间的相似程度,RBFN中有不同的RBF,用来进行非线性估计:

拓展的映射函数如下:

其有N个RBF,说明有多个中心z,为了减少网络计算量,这里每一个片段仅仅采用了一维的高斯RBF:

x表示语音信号片段,z表示每个片段的RBF中心,σ\sigmaσ表示每个片段的RBF宽度。其中宽度是可变的,共有P个RBF,参数调整、非线性加权和样本方差估计如下:

如果特定语音信号片段更相关,标准差会很小,如果标准差很大意味着片段不想管,较小的σ\sigmaσ值对距离的变化更加敏感。

C. CNN特征提取和RNN

本文采用CNN提取语音片段特征,RNN提取时序特征,后采用预训练的CNN提取特征,提取的每个片段特征作为RNN的一个时间步,RNN最后一个时间步的输出作为情感分类的最终结果。训练大量复杂序列信息只用LSTM是不能正确识别的,本文采用多层深度Bi-LSTM进行序列识别,内部结构和记忆模块信息如图:

D. 双向LSTM

本文采用多层LSTM的概念,采用前向和后向结合的Bi-LSTM网络进行训练,其中20%数据作为验证集,从训练数据中分离,并且通过交叉验证计算错误率,优化器采用Adam,学习率为0.001。


实验设置和结果

实验数据集: IEMOCAP、Emo-DB、RAVDESS三个。IEMOCAP数据集包含10个人,有五个session,每个session是两两对话,每个语音片段长度约3~15s,共使用了4种情绪,采样率16KHz;Emo-DB有10人,5男5女,每个语音片段约2~3s,包含7种情绪,采样率16KHz;RAVDESS包含24人,12男12女,共有8种情绪,训练数据分布除了neutral数量相同,采样率48000Hz。这三个数据库在speaker independent的实验中均采用五折交叉验证,80%用于训练其余用来测试。
实验评估: 本文通过speaker independent和speaker dependent两种方式评估,将每一个语段按照时间t分成片段,有25%重叠部分(具体这个时间t应该取多少?)。基于RBF的相似度度量采用K均值聚类在每一簇选择关键片段(距离聚类中心最近的一个片段)。选择好关键片段后,通过Resnet101模型的FC-1000进行高阶特征提取,选择全局平均值和标准差来归一化提高整个模型的准确率。归一化的特征输入到BiLATM中,经过softmax层后,输出预测概率。系统使用MATLAB 2019b中的神经网络工具箱进行特征提取、模型训练和评估。数据被分为80%用于训练和20%用于测试。
模型优化: 选择Adam作为优化器,实验中比较了特征归一化和没有归一化结果的差异,选择了512作为batch-size,0.001作为学习率,实验表明,归一化使得预测准确率有所提升。(文中是三个数据库的结果,这里只给出了一个IEMOCAP的),SD和SI分别代表speaker dependent和speaker independent。

实验还对数据的训练和测试时间进行了比较,该模型因为从数据中选取关键片段作为训练数据,大大减少了数据处理时间。
SI实验: 五折交叉验证,80%的speaker作为训练数据,20%的speaker作为测试数据,结果如下:


貌似这里没有和baseline进行相应的比较,其中happy、neutral和sad情绪容易和其他情绪进行混淆。
SD实验: 将所有文件混合为一个集合, 随机选取80%的数据进行训练,20%用于测试和验证。结果如下:


同样,似乎happy情绪是最容易进行混淆的情绪,可能是因为训练数据数量受限,语音数据较图像、视频等数据少得多,容易识别错误。


讨论

和其他很多baseline进行比较后,我们会发现,该模型能够大幅度提高识别准确率:

同时还将该模型和其他预训练的CNN模型进行比较,结果如下:


上面结果可以看出本文模型的效果远大于其它CNN模型的效果。


我想对本文进行复现,复现的内容在以后的博客中给出,也希望大家阅读后指出我阅读过程中的错误,多多交流,谢谢大家阅读。

【论文笔记】基于聚类特征深度LSTM的语音情感识别相关推荐

  1. 基于音频和文本的多模态语音情感识别(一篇极好的论文,值得一看哦!)

    基于音频和文本的多模态语音情感识别 语音情感识别是一项具有挑战性的任务,在构建性能良好的分类器时,广泛依赖于使用音频功能的模型.本文提出了一种新的深度双循环编码器模型,该模型同时利用文本数据和音频信号 ...

  2. 【论文阅读】多粒度特征融合的维度语音情感识别方法

    陈婧, 李海峰, 马琳, et al. 多粒度特征融合的维度语音情感识别方法[J]. 信号处理, 2017(3). 主要内容:针对传统维度语音情感识别系统采用全局统计特征造成韵律学细节信息丢失以及特征 ...

  3. 基于静态和动态特征融合的语音情感识别层次网络

    题目 Hierarchical Network based on the Fusion of Static and Dynamic Features for Speech Emotion Recogn ...

  4. SER 语音情感识别-论文笔记3

    SER 语音情感识别-论文笔记3 <SPEECH EMOTION RECOGNITION USING SEMANTIC INFORMATION> 2021年ICASSP Code avai ...

  5. SER 语音情感识别-论文笔记5

    SER 语音情感识别-论文笔记5 <MULTI-HEAD ATTENTION FOR SPEECH EMOTION RECOGNITION WITH AUXILIARY LEARNING OF ...

  6. 基于Attention机制的BiLSTM语音情感识别研究与系统实现

    1.摘要 以往的情感分类大多是基于粗粒度进行的,针对七分类情感语料进行的研究不多,且最终的情感分类结果只包含一种情感,很少对多情感共存现象进行研究,因此不能完全体现用户情感的丰富性. 针对这些不足,本 ...

  7. 基于CNN+MFCC的语音情感识别

    个人博客:http://www.chenjianqu.com/ 原文链接:http://www.chenjianqu.com/show-45.html 近年来 ,随着信息技术的飞速发展 ,智能设备正在 ...

  8. 【情感识别】基于matlab BP神经网络语音情感识别【含Matlab源码 349期】

    一.BP神经网络语音情感识别简介 0 引言 随着科技的迅速发展, 人机交互显得尤为重要.语音是语言的载体, 是人与人之间交流的重要媒介.相较于其它交流方式而言, 语音交流更加直接.便捷.近年来, 随着 ...

  9. 【论文阅读】智能设备中基于深度特征的语音情感识别

    Badshah A M , Rahim N , Ullah N , et al. Deep features-based speech emotion recognition for smart af ...

  10. 论文笔记:语音情感识别(三)手工特征+CRNN

    一:Emotion Recognition from Human Speech Using Temporal Information and Deep Learning(2018 InterSpeec ...

最新文章

  1. SQL:EXISTS的用法理解(转)
  2. 从Docker 到Jenkins 到Ansible的部署经验
  3. android 上键,在Android键盘上设置Return键
  4. Web云笔记--CSS
  5. java 停止for_java线程for循环没有循环完成就停止了,这是为什么?
  6. 深入浅出React Native 1: 环境配置
  7. STM32 (零)--------STM32介绍
  8. POJ 1154题解,此题不难理解方法就是DFS,属于水题。不过有一些细节要注意。...
  9. TypeScript笔记(3)—— 使用WebPack工具
  10. iphone NSString 字符串处理:截取字符串、匹配字符串、分隔字符串
  11. plt.rcParams[‘font.sans-serif‘] = [‘SimHei‘] 和plt.rcParams[‘axes.unicode_minus‘] = False
  12. python拟合曲线求方程,曲线拟合方程python
  13. 大繁至简,首度揭秘阿里云飞天洛神系统
  14. python constants_Python constants包_程序模块 - PyPI - Python中文网
  15. 木纤维(WF)保温材料UKCA认证—EN 13171
  16. 你的私密照片可能正被“合法”观看
  17. 前端面试日记(4)- 学而思(笔试+一面+二面)
  18. LINUX新手入门及安装配置FAQ(http://bbs.blueidea.com/viewthread.php?tid=635906amp;page=)
  19. 廖雪峰官方网站python学习笔记:第一个Pyhon程序
  20. spring-data-redis 使用pipeline批量设置过期时间的bug

热门文章

  1. 软件测试工程师常用网站整理汇总
  2. 2020年美赛C题(题目翻译+参考论文)
  3. 地理空间数据云下载遥感影像
  4. PASCAL VOC2012数据集内容解读
  5. Nginx源码目录介绍
  6. nohub java -jar xx.jar /dev/null 21 以及/dev/null是什么 21又是什么?
  7. 关于html 音乐播放器代码|音乐播放器网页代码大全(转),关于HTML 音乐播放器代码|音乐播放器网页代码大全...
  8. 网易公开课专辑下载脚本python
  9. 用友A8 mysql配置文件_用友nc 读取配置文件方法
  10. 用友NC CLOUD 工具