论文笔记:语音情感识别(三)手工特征+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特征)。

posted @ 2018-12-17 12:25  PilgrimHui  阅读(11274)  评论(2编辑  收藏  举报