标题:基于深度时序特征的多模态情感识别,使用跨模态转换器和自我注意力机制
发表:ICASSP-2023
摘要
多模态语音情感识别(MSER)是一个新兴且充满挑战的研究领域,因其相较于单一模态具有更强的鲁棒性特征。然而,在多模态方法中,利用语音表示的不同模态进行模型构建时,其相互关系尚未得到充分探究。为了解决这一问题,我们提出了一种新的方法,用于捕捉音频和文本的深度时序特征。音频特征通过卷积神经网络(CNN)和双向门控循环单元(Bi-GRU)网络进行学习。文本特征则由GloVe词嵌入结合Bi-GRU表示。设计了一个跨模态变换器模块,用于多模态学习,以便更好地捕捉音频与文本特征之间的交互作用和时序信息。此外,采用自我注意力(SA)网络,从融合的多模态特征中选择更重要的情感信息。我们在IEMOCAP数据集上对所提出的方法进行了评估,该数据集包含四种情感类别(即愤怒、中立、悲伤和快乐)。结果表明,我们的方法在性能上显著优于最近的最先进MSER方法。
1.引言
本文提出了一种基于跨模态Transformer和自注意的情感识别系统,该系统能够有效地处理每个模态的时间信息,并在训练过程中最大限度地减少来自任一模态的情感信息的丢失。该方法首先从两个模态中生成特征向量,然后利用跨模态Transformer网络对特征向量进行学习。在此基础上,融合的多模态特征经过SA层,并使用全连通层对情感进行分类。在强基线条件下,定量分析和比较了所提方法的性能.我们还探索了一个单一模态版本的模型与不同的训练方法。在广泛使用的IEMOCAP数据集上对我们的模型进行了评估。所有实现代码均可在https://github.com/bubaimaji/cmt-mser上找到。
2.提出方法
在这个部分,我们将详细讨论所提出的方案,如图1所示。该模型同时处理文本和音频信息,并因深度时序特征学习的稳健性而展现出更佳的分类性能。架构主要由三个模块组成,每个模块的具体细节如下:
2.1 音频特征提取
为了提取声学特征,所有话语均采样至16 kHz。随后,我们抽取了六种频谱特征,包括64维梅尔频率尺度谱图(Mel-scaled spectrograms)、40维梅尔频率倒谱系数(MFCCs)、谱对比度(SC)、色谱图(chromagram)、零交叉率(ZCR)及均方根(RMS),使用25毫秒窗口大小,重叠10毫秒。所有特征的提取使用了Python库Librosa。最终,对于每段话语,我们提取了总维度为125的段落级声学特征。其中,表示一段话语的序列长度
,以及声学特征的维度
。在提取段落级声学特征后,我们使用一维卷积神经网络(1D-CNN)与平均池化层,之后是两个双向门控循环单元(Bi-GRU)层,以捕捉话语级别的时序依赖性。Bi-GRU层的输出定义为
。
2.2 文本特征提取
数据库提供的转录文本被简单地用作文本特征的词分词处理。在每个句子中,我们假设最多有50个词。每段话语中的每个词都使用300维预训练的Glove词嵌入。因此,对于每段话语,我们抽取了300维的单词级别文本特征 ,其中
定义了给定转录文本中词的序列长度,
是文本特征的维度。为了增加更多的上下文信息,Glove的输出通过一个带有140个隐藏单元的双层Bi-GRU模型,其输出代表了话语级别的文本嵌入
。
2.3 利用跨模态变换器进行多模态特征表示
为了更好地在两种模态的未对齐序列间建模交互,我们使用了跨模态变换器框架。这里,我们采用两个模态(音频)和
(文本),各自带有一系列序列。CNN-BiGRU和Bi-GRU模块分别用于音频和文本特征的抽取,表示为
和
。通常,
和
的维度不相同。首先,我们使用两个一维卷积层将特征维度统一到大小 D,并在这些序列上添加位置编码。对于跨模态交互,我们简单地将
模态的信息传递给
模态,反之亦然。一个模态的键和值与另一个模态的查询通过多个注意力层进行交互。最后,为了突出高层次的时序特征,我们将跨模态变换器的输出拼接起来并表示为话语级别的特征
。然后,将其送入自我注意力层以确定加权的高层次时序特征并生成输出
。
2.4 模型训练
对于分类结果,自我注意力层的最终输出被馈送到全连接网络。为了计算每个情感类别的损失,我们使用softmax函数与交叉熵来计算 K-状态情感类别的概率,定义如下:
其中,
是可训练的权重参数,
和
分别是预测和原始类别的输出。
3.实验
3.1数据集
我们所有的实验都是在互动情感二元运动捕捉(IEMOCAP)表演数据库上进行的[22]。该数据库记录了剧本式和即兴对话,包含了来自10位说英语的演讲者(5男5女)大约12小时的视听数据。对于每段对话,情感信息包括音频、视频、转录文本和运动捕捉录制的数据。本研究仅使用音频和转录文本数据作为输入源。
为了与先前的研究[18, 23, 24, 25]进行比较,我们也使用了四种情感类别(愤怒、悲伤、中立和快乐),这些类别在文献中经常被采用。按照惯例,我们将快乐与兴奋的数据合并,最终得到总共5531个话语片段。情感样本的详细分布列于表1中。
IEMOCAP数据库是一个广泛用于情感识别研究的资源,它不仅提供了丰富的多模态数据,还覆盖了各种情绪状态。由于其多样性和真实性,IEMOCAP成为评估情感识别算法性能的一个重要基准。通过将快乐和兴奋的情绪合并,研究者们可以简化分类任务,专注于更常见和更易区分的情感类别。这种做法有助于清晰地展示算法的性能和有效性,特别是在多模态情感识别领域。表1应该包含了各情感类别在数据集中的具体数量,这有助于理解各类别在总体数据中的分布情况。然而,具体的表1内容并未给出,通常这类表格会列出每一类情感的样本数量,有时还会包括总体的不平衡比率或任何预处理步骤的信息。
3.2实现细节
我们在PyTorch框架下实现了所提出的系统。首先,我们分析了我们提议模型的单一模态。由于模型包含三个模块,因此为每个模块选择超参数对整体性能至关重要。图2(a)展示了在保留数据集上,使用不同数量的Bi-GRU层和不同隐藏单元数目的两种模态的性能报告。基于这些表现,我们固定了对于两种模态来说,Bi-GRU的层数为2,隐藏维度为140。
(a) 不同Bi-GRU网络层数及隐藏层维度下音频和文本模态的性能。(b) 不同数量的Transformer层(TLs)下多模态网络的性能
对于多模态,最终的Transformer层(TLs)配置被选为具有120维隐藏层和10个注意力头。此外,我们也调查了TLs的最佳层数。图2(b)显示的结果表明,当设置TLs模块为3层时,我们的模型性能得到了提升。
为了编译模型,我们采用了Adam优化器,学习率为0.0003,批处理大小设为32。所有模型训练了25个周期,采用早停策略,即如果识别率在连续5个周期内没有提高,则自动停止训练并保存最后一次最高的识别率。
对于模型验证的每个阶段,我们采用了5折、10折交叉验证和Session 5作为测试技术。在5折交叉验证中,我们使用4个会话作为训练集,最后一个会话作为测试集。而在10折中,我们执行了留一说话人外的交叉验证,其中9位说话人用于训练模型,第10位说话人则用于测试。所有的超参数都是基于Session 5作为测试集时每个模态的表现来选择的。在本工作中,为了避免随机性,每个实验结果都是基于10次随机权重初始化的平均值。所有测试会话的平均值被报告为最终准确率。
我们采用了两种广泛使用的评估指标,以遵循之前的研究:加权准确率(WA)——测试数据上的总体识别率;以及未加权准确率(UA)——所有类别的平均召回值。
4.结果
5.结论与未来工作
本文提出了一种新颖的跨模态交互方法,用于基于语音和文本的多模态语音情感识别(MSER)。我们的方法能有效地处理音频-文本模态的时序对齐问题,这有助于在训练过程中减少重要信息的丢失。此外,自我注意力(SA)机制被应用于学习多模态特征间的隐含表示。我们通过实证证明,变换器对齐网络能够促进不同模态间更深层次的交互,从而增强模型的性能。实验结果表明,我们的模型在IEMOCAP数据集上的表现优于近期的语音情感识别(SER)研究。
在未来的工作中,我们计划使用提议的模型探索其他模态,如视觉信息,以及在不同的数据集上的表现。这项研究也将成为构建实时应用的先驱,该应用允许用户根据提议的方法自动检测他们的情感状态。这不仅扩展了模型的应用范围,还将推动情感识别技术在实际场景中的应用,比如心理健康监测、人机交互以及社交媒体分析等领域。通过结合多种模态信息,我们期望能够提供更准确、更全面的情感识别解决方案,进一步推动人工智能在理解人类情感方面的进展。