论文笔记:语音情感识别(三)手工特征+CRNN
一:Emotion Recognition from Human Speech Using Temporal Information and Deep Learning(2018 InterSpeech)
(1)分帧加窗,每一帧采用的特征向量为eGeMAPS特征集中的20个特征,每个utterance使用裁剪和padding的做法使得定长512帧,所以输入为20x512的矩阵。每个样本归一化到0均值1标准差(根据对应的说话人)。使用的数据集为EmoDB。
(2)准确率为88.9%
二:Speech Emotion Recognition from Variable-Length Inputs with Triplet Loss Function(2018 InterSpeech)
(1)语音情感识别方面的前人工作主要集中于特征和模型的探索,本文将triplet loss应用到模型中,输入三个样本,用LSTM提取特征,训练。最后从loss层的前一层取出特征向量送到SVM分类。使用的特征基于ComParE特征集,使用openSMILE库提取了147个LLDs(Low level Descriptors)。数据集用的IEMOCAP。
(2)通常获得等长输入的做法有:计算一个utterance上很多帧特征,然后对这些帧做一个统计(比如均值,最大值等等);做裁剪和padding使得等长;全卷积加全局池化。
(3)本文使用了三种padding策略,第一种就是按最后一帧的值pad直到达到指定长度,称为pad mode。第二种就是按原序列从头到尾的值进行pad,如果不够长就继续从原序列的头到尾序列pad,重新多次,直到长度大于指定长度,取的时候从中间随机选择,称为cycle mode,实验证明cycle mode效果最好。第三种跟第二种类似,只不过是重复第一帧的值来pad,然后重复第二帧的值来pad,直到最后一帧的值,取的时候也是从中间随机选择。
(4)数据集使用的IEMOCAP,值得一提的是这篇论文只是提出了新颖的方法(triplet loss和cycle mode),在实验中的方法对比上并没有凸出模型表现的优势。
三:Exploring Spatio-Temporal Representations by Integrating Attention-based Bidirectional-LSTM-RNNs and FCNs for Speech Emotion Recognition(2018 InterSpeech)
(1)输入的特征是用YAAFE库提取可获得的所有27种特征,每帧计算下来后是743维特征向量,每帧长度为1024,之后再做PCA白化。使用基于attention的双向LSTM-全卷积网络,在CHEAVD和IEMOCAP做了实验,可以获得更准确的预测。
四:Learning Spontaneity to Improve Emotion Recognition in Speech(2018 InterSpeech)
(1)数据集为IEMOCAP,在识别情感之前先做一个自发性检测,之后对于自发性的情感和念稿子的情感分别训练不同的SVM分类器。发现这么做可以提高表现,而且自发性情感的准确率会更高。
(2)特征集使用的是InterSpeech 2009 挑战赛的特征集,主要有MFCC,ZCR,VP,F0等,共k维特征(每帧)。然后做平滑后计算一阶delta,变成2k维。对这些特征计算12种统计量,最后得到24k维的向量。
五:Automatic Speech Emotion Recognition Using Recurrent Neural Network with Local Attention(2017 ICASSP)
(1)SER比较流行的传统做法是在LLDs做统计得到HSFs然后喂给分类器(比如最常用的SVM),常用的LLDs和HSFs如下图所示。但是有个挑战就是如何平衡这二者,因为LLDs是在短时帧上计算的静态特征,HSFs是在一个utterance上对多个帧做统计聚合得到的动态特征,如果只使用HSFs的话会忽略“句子中有些沉默段或非感情段是无效区”这个事实,只使用LLDs的话特征层次太低,而且也没有做显著性区域捕捉。数据集为IEMOCAP。
(2)论文提出了Weighted Pooling的方法,对比通常的几种做法,发现这么做可以提高准确率。如下图(a)就是传统的做法通过计算HSFs然后喂给分类器的做法,图(b)是给每一帧都分类标签然后计算损失,图(c)是只取最后一个(和第一个)时间步的输出,图(d)是对所有时间步的输出取均值,图(e)就是利用注意力机制来做加权求和,图(f)只是在(e)的基础上把注意力的计算抽象成一个Attention Model。
(3)数据集是IEMOCAP,输入的特征使用了两种,一种是原始声谱(257维的FFT向量),一种是手工LLDs。论文还做了原始声谱+DNN(下图图a的模型)和手工LLDs+SVM的对比,发现由DNN自己学习特征的模型可以得到更高的准确率。
六:An End-to-End Deep Learning Framework with Speech Emotion Recognition of Atypical Individuals(2018 InterSpeech)
(1)数据集为EmotAsS,由2018 InterSpeech挑战赛提供,是非典型人群(残疾人)的语音情感数据。
(2)论文调查了三种特征,原始信号,CQT声谱图,STFT声谱图,发现STFT声谱图最好。
(3)论文比较了三种模型,CRNN,ResNet,CNN结合扩展特征(openSMILE提取的)。发现做了数据平衡后,CRNN的效果最好。没做数据平衡前,CNN结合扩展特征的效果最好。
(4)论文使用了数据增强和数据平衡技术,可以提高模型表现。其中数据增强时speed rate为0.9时效果最好(模型为CRNN)。
(5)因为挑战赛的baseline中,使用各种特征的SVM都打败了端到端的框架,所以论文还做了SVM的实验来证明论文的模型比SVM好,SVM使用的特征集分别有ComparE和BoAW。
(6)以上的结果都是在验证集上得到的结果。
七:What is my Dog Trying to Tell me? The Automatic Recognition of The Context and Perceived Emotion of Dog Barks(2018 ICASSP)
(1)通过狗吠声来识别狗的情感和状态,情感Emotion有五种,状态Context有七种(Alone,Ball,Fight,Food等),数据集称为EmoDog。
(2)论文使用的特征有eGeMAPS特征,ComparE特征,MFCC和一阶差分,二阶差分。做实验时候把ComparE分成两种:ComparE Pros(prosodic韵律学的)和ComparE Spec(spectral和cepstral频谱和倒谱)。另外还使用了BoAW的模式来计算特征(使用openXBOW库获得)。
(3)下图是不同特征在SVM上的分类结果,调用liblinear库实现。另外论文还做了回归预测的实验,预测情感强度,调用libsvm库来实现SVR。
八:Towards Temporal Modelling of Categorical Speech Emotion Recognition(2018 InterSpeech)
(1)LSTM的输出长度和标签长度不匹配,通常有三种做法,final-pooling取最后一帧输出,mean-pooling对所有帧取平均,weighted-pooling利用注意力机制加权求和。本文使用了CTC的机制,实验表明比之前三种方法要好。数据集为IEMOCAP。对于CTC的介绍见另一篇笔记CTC介绍。
(2)输入的帧水平特征为238个LLDs(以GeMAPS和2016 InterSpeech挑战特征集ComparE为基础),通过openSMILE库获得。
九:Emotion Identification from raw speech signals using DNNs(2018 InterSpeech)
(1)比较了不同的特征提取方法:MFCC,时域特征,频域特征,模型用TDNN-Statistics Pooling(时延网络),发现用时域特征获得了最好结果。其中时域特征和频域特征是由raw signal输入到一个前端网络获得的。
(2)比较了不同模型:TDNN-Statistics Pooling,TDNN-LSTM,TDNN-LSTM-Attention,LSTM,LSTM-Attention,发现TDNN-LSTM-Attention获得了最好结果。
(3)比较了不同的utterance(语音段)组织方法:一帧一个标签或者一utterance一个标签,发现一帧一个标签的结果更好。
(4)还做了数据增强,对振幅和速度做了绕动,发现可以提升效果。
(5)数据集用的IEMOCAP。所有实验用kaldi完成,论文作者中就有kaldi的作者daniel povey。这篇论文的一些具体细节其实没怎么看懂,先这样了解大概,后面有需要再回来咀嚼。
其它分析
一:What Do Classifiers Actually Learn A Case Study on Emotion Recognition Datasets(2018 InterSpeech)
(1)监督学习中,为了确保一个分类器有良好的泛化能力,典型的做法是把数据分为训练集,验证集和测试集。我们相信测试集上的结果可以作为一个正确的评价。
(2)本文分析了两个数据集,在eNTERFACE数据集上,当数据划分发生小小的改变时,准确率会下降55%,在这个数据集上分类器并没有学到情感分类,而是学习到了句子的语义信息,所以不应该用这个数据集来训练情感分类器。但是数据仍然包含情感内容所以可以用来测试和验证。
(3)对于第二个数据集IEMOCAP则没有这个问题,可以用来训练分类器并对分类器做比较。
二:Attentive Convolutional Neural Network based Speech Emotion Recognition: A Study on the Impact of Input Features, Signal Length, and Acted Speech(2017 InterSpeech)
(1)论文主要是通过实验来对比不同输入特征,输入长度,不同类型的数据集对模型表现的影响,得出以下几点结论。
(2)对于CNN而言,特征的选择(论文实验用的是logMel,MFCC,eGeMAPS等)没有“模型,训练集大小”那么重要,因为这几个特征得到的结果都差不多。
(3)样本输入长度的提高(只要不是太长)可以提升模型表现。
(4)improvised(即兴的)的语音比scripted(念稿子的)的语音效果更好。
三:Deep Temporal Models using Identity Skip-Connections for Speech Emotion Recognition(2017 ACM MM)
(1)把identity跳连接应用到语音情感识别的CNN,LSTM和FCN中进行增强。模型主要分三部分:局部特征提取块(从频域中的低水平特征中提取高水平特征),LSTM块(捕捉长时依赖)和全局特征提取块(对局部特征和长时依赖进行增强)。由于无法获得较大的语料库,聚集了六个语音情感数据集FAU-AIBO,EmoDB,eNTERFACE,LDC Emotional Prosody,IEMOCAP和SEMAINE。
(2)如下图的主要区别是局部特征提取块不同,第一个用的Convolutional Highway Layer(本文提出),第二个用的跳连接(借鉴ResNet),实验发现第一个模型表现更好。使用的特征有原始信号(1维卷积),对数声谱图log-spectrogram(2维卷积),低水平特征(基频F0,声音概率,过零率,MFCC和其一阶差分共32个baseline特征)。
论文笔记:语音情感识别(三)手工特征+CRNN的更多相关文章
- 论文笔记:语音情感识别(四)语音特征之声谱图,log梅尔谱,MFCC,deltas
一:原始信号 从音频文件中读取出来的原始语音信号通常称为raw waveform,是一个一维数组,长度是由音频长度和采样率决定,比如采样率Fs为16KHz,表示一秒钟内采样16000个点,这个时候如果 ...
- 论文笔记:语音情感识别(五)语音特征集之eGeMAPS,ComParE,09IS,BoAW
一:LLDs特征和HSFs特征 (1)首先区分一下frame和utterance,frame就是一帧语音.utterance是一段语音,是比帧高一级的语音单位,通常指一句话,一个语音样本.uttera ...
- 论文笔记:语音情感识别(二)声谱图+CRNN
一:An Attention Pooling based Representation Learning Method for Speech Emotion Recognition(2018 Inte ...
- Deep Learning论文笔记之(一)K-means特征学习
Deep Learning论文笔记之(一)K-means特征学习 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感 ...
- INTERSPEECH2020 语音情感分析论文之我见
摘要:本文为大家带来InterSpeech2020 语音情感分析25篇论文中的其中8篇的总结. 本文分享自华为云社区<INTERSPEECH2020 语音情感分析论文总结一>,原文作者:T ...
- Deep Learning论文笔记之(三)单层非监督学习网络分析
Deep Learning论文笔记之(三)单层非监督学习网络分析 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感 ...
- 论文笔记:Emotion Recognition From Speech With Recurrent Neural Networks
动机(Motivation) 在自动语音识别(Automated Speech Recognition, ASR)中,只是把语音内容转成文字,但是人们对话过程中除了文本还有其它重要的信息,比如语调,情 ...
- 论文笔记(1):Deep Learning.
论文笔记1:Deep Learning 2015年,深度学习三位大牛(Yann LeCun,Yoshua Bengio & Geoffrey Hinton),合作在Nature ...
- 论文笔记:目标检测算法(R-CNN,Fast R-CNN,Faster R-CNN,FPN,YOLOv1-v3)
R-CNN(Region-based CNN) motivation:之前的视觉任务大多数考虑使用SIFT和HOG特征,而近年来CNN和ImageNet的出现使得图像分类问题取得重大突破,那么这方面的 ...
随机推荐
- 几个解决k染色问题的指数级做法
几个解决k染色问题的指数级做法 ——以及CF908H题解 给你一张n个点的普通无向图,让你给每个点染上k种颜色中的一种,要求对于每条边,两个端点的颜色不能相同,问你是否存在一种可行方案,或是让你输出一 ...
- 玩node-images模块---Node.js轻量级跨平台图像编解码库
Node.js轻量级跨平台图像编解码库 github:https://github.com/zhangyuanwei/node-images Features 功能特性 轻量级:无需安装任何图像处理库 ...
- where are you from
where are you from 如果问美国人这句话的话,他们一般会说: I'm from California. I'm from Pennsylvanian. 一般是说州,而不是说Americ ...
- java.exe和javaw.exe有什么区别
- Java实现验证码的产生和验证
大家都知道为了防止我们的网站被有些人和黑客恶意攻击,比如我们网站的注册页面,如果我们在用户注册的时候不加上一个验证码框的话,别人就可以写一个脚本对你的网站进行恶意的注册,比如每分钟对你的网站进行n次的 ...
- 疯狂java讲义 第三版 笔记
java7新加特性: 0B010101 二进制数 int c=0B0111_1111; 数值中使用下划线分隔 switch 支持String类型 字符串常量放在常量池 String s0 ...
- ArcGIS API for javascript开发笔记(四)——GP服务调用之GP模型的规范化制作详解
感谢一路走来默默陪伴和支持的你~~~ -------------------欢迎来访,拒绝转载------------------- 在之前的利用Python分析GP服务运行结果的输出路径 & ...
- Java Native Interface 基于JNI的嵌入式手机软件开发实例
1.通过JNI和c/c++的库组件.其他代码交互 2.java和c不能互通的原因时数据类型问题 Introduction https://docs.oracle.com/javase/8/docs/t ...
- ddt ddl dml
data-definition language 数据定义语言 data-manipulation language 数据操纵语言 data type definition 文档类型定义
- MyBatis返回插入的主键ID(Mysql数据库)
1.Java代码: 1.1 entity类: User.java public class User { private int userId; private String userName; pr ...