基于多层LSTM融合的多模态情绪识别

2022-06-21 07:47张亚伟吴良庆王晶晶李寿山
中文信息学报 2022年5期
关键词:模态样本情绪

张亚伟, 吴良庆, 王晶晶, 李寿山

(苏州大学 计算机科学与技术学院,江苏 苏州 215006)

0 引言

情绪分析一直是自然语言处理的研究热点,当今大数据时代,各大网络平台上每天增长着数以亿计的不同情绪观点的数据,例如,对商品的评价、对事件的看法,又或者是一条简单的朋友圈等,准确把握用户发布数据所蕴含的情绪一直是情绪分析领域的工作重心。目前,文本的情绪分类已经发展得较为成熟,但是对于多模态数据,单独使用文本来对多模态数据进行情绪分析,不能准确把握文本背后所蕴含的情绪,具有一定的片面性。如图1中例子所示,一个人说话的文本是“我很开心!”,但是图像中该人皱着眉头,声音强度和音调都是非常低沉,单从文本模态分析很有可能判断此人的情绪是“高兴”,但是从三个模态协同分析可以发现该人的情绪大概率是“悲伤”。因此多模态情绪分析就需要使用多个模态进行融合分析。如何更好地融合信息,也是多模态情绪分类目前面临的一个挑战。

图1 单模态和多模态情绪识别对比

分析人类多模态语言是自然语言处理领域的一个新兴研究领域[1]。多模态情绪分析把基于文本的单个模态的情绪分析扩展到多个模态进行融合分析。目前,常见的模态有文本、语音和图像,多模态与单模态相比,难点在于不仅要捕获每个模态内部的特征信息,也要把握模态之间的交互特征信息。目前已经出现了一些关于多模态情绪识别的融合模型,例如,张量融合网络(Tensor Fusion Network,TFN)[2]、记忆融合网络(Memory Fusion Network,MFN)[3]以及动态融合图(Dynamic Fusion Graph,DFG)[1]等,这些模型在单模态的基础上加入了多模态信息特征的交互,并且在情绪识别的结果上都取得了不错的效果。考虑到三个模态的信息都是连续的时间序列信息,不同模态的信息在相同时间段上是一一对应的,且前后时间段的信息对当前时间段也具有一定的影响,上述方法在多模态时间信息特性的挖掘方面没有进一步深入。

基于上述问题,本文提出了分层LSTM的多模态融合网络(Multi-LSTMs Fusion Network,MLFN)来进行多模态情绪识别。该模型使用的是文本、语音和图像三个模态,将文本数据、语音数据以及图像数据作为网络的输入: ①首先使用单模态LSTM特征提取层捕获三个模态内部的时间序列数据的特征; ②接着将三个单模态的t-1和t时刻的特征信息进行两两交互,结果作为第二层双模态LSTM特征融合层的输入,进行双模态信息融合; ③然后将双模态信息的输出再进行交互,结果作为三模态LSTM特征融合层的输入; ④最后将多模态信息的融合结果输入到门控记忆网络和分类预测层得到最终的情绪识别结果。

本文的组织结构如下: 第1节将介绍多模态情绪识别的相关工作;第2节详细介绍分层LSTM融合网络的具体实现方法;第3节介绍实验结果数据以及结果分析;最后一节对本文进行总结并提出对未来的展望。

1 相关工作

近年来,神经网络飞速发展,其为许多问题带来了新的解决方法,特别是高维非结构化数据的领域,如计算机视觉、语音和自然语言处理等,有着不可否认的成功[4]。

情绪识别一直是自然语言处理(NLP)的研究热点。如今,文本情绪识别已经发展得相当成熟。随着研究的推进,多模态情绪识别进入研究人员的视野。与单一模态相比,多通道数据可以产生丰富的信息,进而提升情绪识别任务的性能[4]。

多模态情绪识别方法发展至今,涌现了很多优秀的融合方法。早期的多模态融合方法大多是将多个模态输入特征进行简单的拼接,如Wang等[5]提出SAL (Select-Additive Learning)以及Poria等[6]提出的卷积MKL的多模态情绪分析。早期融合可以看作是多模态研究人员进行多模态表示学习的初步尝试,因为它利用每种模态的底层特征之间的相关性,在融合上只是对输入特征的简单串联连接,将多个独立的模态信息融合成一个单一的特征向量,因为不需要特定的模型的设计,所以往往无法充分利用多个模态数据间的互补性,同时也会造成融合的数据包含大量的冗余信息,并且它的融合特性通常会忽略时间因素。后来的多模态融合方法是将不同模态数据训练好的分类器输出打分(决策)进行融合,如Wöllme的信息获取分析[7]和Nojavanasghari的深度多模态融合[8]等方法。这些方法的优点是融合模型的错误来自不同的分类器,而来自不同分类器的错误往往互不相关、互不影响,因此不会造成错误的进一步累加,在特定模态的模内信息建模方面很强,但是它们在多模态模间特征交互方面有明显的不足,因为这些交互信息通常比决策投票更复杂[9]。最近的研究则更加侧重模态内的信息和模态间的信息的结合。Zadeh先后提出了张量融合网络TFN[2]、记忆融合网络MFN[3]以及动态融合图DFG[1],它们能够很好地融合模态内和模态间的特征信息,在多模态情绪分类上取得了显著效果,但是对于各个模态的时间特性的捕获和融合没有进一步深入。

基于以上问题,本文提出了多层LSTM融合模型(Multi-LSTMs Fusion Model,MLFN)。不同于早期融合,它不是对输入数据特性的简单融合,MLFN在模态内(intra-modal)以及模态间(inter-modal)进行特征提取。同时它也不同于晚期融合,MLFN对于每种特定的模态进行明确的建模,并且在模态间使用分层LSTM融合网络,能够更好、更稳定地提取跨模态信息。最后它也不同于最近的模态内和模态间信息研究中出现的模型,MLFN在各个模态、各个融合层使用分层LSTM能够更加深入地把握各个模态以及模态间的相互对应时序特性的捕获和融合,在CMU-MOSEI(Multimodal Opinion Sentiment and Emotion Intensity)数据集上取得了更好的效果。

2 方法

本文实现分层LSTM的多模态融合,并且提出了相应的模型MLFN。如图2所示,它主要由四个部分组成: ①特征输入层,接收三个模态的输入数据; ②分层LSTM融合网络层,由三层不同模态的LSTM组成,用于多模态的融合; ③门控神经网络层,采用一种多模态联合时序的存储结构,它的存储随着时间变化进行跨模态交互[3]; ④预测层,根据最后融合的信息得出情绪分类结果。

图2 MLFN网络

2.1 特征输入层

输入由三个模态的特征数据组成,分为文本数据、语音数据和图像数据。数据集是基于视频分段截取,我们对每段的信息进行三个模态特征提取,因此三个模态的数据是对齐,即三个模态的数据是第一维长度一致但是第二维长度不一致的二维向量。

文本数据: 文本数据使用GloVe向量来作为特征输入词向量,维度是300。

语音数据: 按照每秒30帧的频率截取语音信息,再由COVAREP语音分析框架得到特征输入向量[10],维度是74。

图像数据: 按照每秒100帧的频率截取视频当前的图像信息,再通过FACET面部表情分析框架进行抽取,得到图像特征输入向量[11],维度是35。

2.2 分层LSTM融合网络层

如图3所示,分层LSTM融合网络层由单模态特征提取层,以及双模态和三模态特征融合层组成。

图3 多模态分层LSTM特征融合网络的整体框架结构

(1) 单模态特征提取层。对于每个模态的特征输入,将t-1时刻的C以及t时刻的x结合作为t时刻的单模态LSTM输入,如式(1)~式(3)所示。

(4)

(5)

(6)

(7)

(8)

(9)

(13)

(14)

(15)

其中,N3表示三模态融合的序列,N3={(t,a,v)}。(4) 分层LSTM模态融合网络的输出,将单模态、双模态以及三模态的输整合起来,加强模态融合的特征表现,具体如式(16)所示。

(16)

其中,N={t,a,v,(t,a),(t,v),(a,v),(t,a,v)},分别表示单模态、双模态和三模态的组合。2.3 门控记忆网络门控记忆网络由多个神经网络组成。多模态门控内存ut是存储跨模态交互随时间变化的历史信息的网络组件。它是记忆网络的统一存储器[3]。具体如式(17)~式(20)所示。

2.4 MLFN的输出

(21)

其中,P是最终情绪识别的概率,判断该样本对应的情绪类别。

2.5 优化策略

分层LSTM融合网络采用交叉熵(Cross-Entropy)作为损失函数,如式(22)所示。

(22)

3 实验

本节将系统介绍本文方法在多模态情绪识别数据集上的效果。

3.1 数据集

本文所使用的数据集是CMU-MOSEI。CMU-MOSEI是多模态情绪分析中规模最大的数据集。该数据集包含了超过1 000名YouTube在线演讲者的大约23 500个句子表达视频。数据集是性别平衡的,所有的句子都是从各种话题和独白视频中随机挑选出来的。视频被转录和适当地加标点,表1展示的是数据集的各个部分的统计。

表1 CMU-MOSEI数据集信息统计

CMU-MOSEI中包含6种不同的情绪,分别是angry(愤怒)、disgust(厌恶)、fear(害怕)、happy(开心)、sad(悲伤)和surprise(惊讶)。数据集中将每个情绪的强度分成-3~3的范围,在实验中本文将0~3范围的归为正样本,-3~0范围的归为负样本。数据集中每条数据对应的标签是一个6维向量,分别对应上述的6种情绪,在实验中分析不同的情绪时,我们将6维向量改变成0或1的标量,方便后续的情绪分类。其中,对于标签向量中对应情绪位置的值大于或等于0的向量,改成标量1,设为正样本;反之改成标量0,设为负样本。

表2展示的是经过上述预处理后的各个情绪正负样本的数量,其中,P代表正样本,N代表负样本。可以看出,预处理后的正负样本的个数存在严重的偏差,比如angry的训练负样本有1 1847个,但是正样本只有3 443个,这样的样本严重失衡会影响情绪识别的准确率,因此实验中采用降采样的方法,将随机打乱后负样本的个数向下减少,使得正负样本的个数一致,从而使得实验能够较为正常地进行情绪识别。

表2 本文处理后的MOSEI的6种情绪数据

由于测试样本的严重失衡,常用的测评标准不能很好地展现实验效果,因此这里采用的是F1的标准以及根据Tong提出的WA(Weight Accuracy)[13]标准,其计算如式(22)所示。

(22)

其中,TP是分类结果为正样本,且该样本本身实际也为正样本的样本个数;TN是分类结果为负样本,且样本本身实际也为负样本的样本个数;P是正样本的个数,N是负样本的个数。实验证明,WA标准在数据集严重不平衡的情况下比不加权重的准确率能更准确地反映实验的实际效果。

3.2 实验结果

我们将提出的方法和以下方法进行对比。

单模态的方法:

(1) CNN-LSTM[14](α): 该模型将图像特征捕获的方法利用到文本序列上,CNN将序列的每个时间戳的特征信息通过卷积核进行卷积,得出的结果再输入到LSTM中进行。

(2) DAN[15](γ): 结合了unordered的训练速度快、代价小和syntactic在句法上信息提取的特点,是一种采用词的分布表示的深度平均网络。

(3) DHN[16](δ): 深度高速路神经网络,在很大程度上解决了深度神经网络由于层次过深导致的梯度消失问题。

(4) DynamicCNN(ε): 模型采用动态K-max pooling取出得分top-k的特征值,能处理不同长度的句子,并在句子中归纳出一个特征图,可以捕捉短期和长期的关系,并且该模型不依赖解析树,适用于任何语言。

(5) RHN[17](ζ): 循环的高速神经网络,同时它吸收了LSTM易于训练的特性。

(6) Adieu-Net[18](η): 是一种端到端的语音情绪识别神经网络。

(7)SER-LSTM[19](ξ): 是一种基于音频频谱图的卷积的递归神经网络。

多模态方法:

(8) RF[20](ν): 随机森林,使用了CART决策树作为弱学习器,并且随机选择节点上的一部分作为样本特征。

(9) EF-LSTM[21](β): 将LSTM运用多模态融合的模型方法,属于早期融合,改模型将每个时间戳的特征信息进行简单的连接。

(10) MV-LSTM(θ): 采用双向LSTM处理两个句子,然后对LSTM隐藏层的输出两两计算匹配度,这是一个Multi-View(MV)的过程,能够考察每个单词在不同语境下的含义。同时用双向LSTM处理句子,相当于用变长的窗口逐步解读句子,实现多颗粒度考察句子的效果。

(11 )TFN[2](ϑ): 张量融合网络,用于多模态情感分析,将三个模态的时间序列简单地乘法融合。

(12)DFG-MFN[1](ι): 动态融合图,改进于记忆融合网络(MFN),将MFN的Delta记忆注意力网络改进为多层融合网络,用于多模态情感分析。

(13) SVM[22](κ): 支持向量机,是一类按监督学习方式对数据进行二元分类的广义线性分类器,其决策边界是对学习样本求解的最大边距超平面。

(14) MFN[3](λ): 记忆融合网络,是对张量融合网络的改进,由LSTM特征提取层、Delta记忆注意力网络层以及门控记忆网络层组成,用于多模态情感分析。

(15) DF[23](μ): 深度融合,通过多输入的每一个模态分别训练一个深度模型,并且最终进行决策。

(16) MARN[24](ο): 通过分配多个注意力系数,对模态内和模态间进行建模。模态内和模态间的交互存储在一个混合的LSTM组件中。

具体实验结果如表3所示,其中SOTA1和SOTA2分别表示当前性能最好的以及性能第二的模型。模型括号中的符号与表中的结果上标符号相对应。

表3 MLFN与目前最好方法的比较

通过表3可以看出,无论对比单模态方法还是多模态方法,该文采用的模型大部分有着明显更好的效果。MLFN模型是基于DFG-MFN模型进行改进的,主要是将动态融合图DFG部分改成分层LSTM多模态融合网络。DFG-MFN模型采用的融合是简单的多模态融合,只是考虑到模态内和模态间的浅层交互,而MLFN模型采用的融合不仅考虑了模态内和模态间的交互,同时对模态时序特征信息的捕获更加深刻。采用分层LSTM融合网络,一方面,对特征的提取会进一步加深;另一方面,与DFG-MFN不同,考虑多模态之间时序特征信息对应关联的情况,在当前时段的信息融入上下文信息的同时融合对应其他模态的信息,相辅相成进一步提高多模态情绪识别的效果。从表3可以看出,整体提升非常明显,其中WA最高的达到7%的效果提升,最低的提升效果不是很明显,原因是该情绪相比较其他情绪对应的样本过少,学习不充分,同时样本质量相较于其他情绪的样本稍差,样本特征表现不像其他情绪对应的样本那样明显。

3.3 实验例子分析

本节给出一个样本来解释本文所提出模型具体进行多模态情绪分析的过程,展示如图4所示。

图4 单模态分析的片面性和多模态分析的全面性的比较

可以看出,图4中的男人在说“Oh, well done, you’re really clever.”,如果单从文本单模态来进行分析,大概率会被判断成“高兴”的情绪。然而再看图像模态,可以发现说话者皱着眉头,表现出不高兴的情绪。再结合语音模态的特点,音调偏高,但从语音模态不好判断这个人是高兴还是不高兴,这就体现了单模态去进行情绪分析的片面性,然而结合三种模态可以看出,一个皱着眉头音调偏高地说“你真聪明”可以大概率判断出这个人的情绪是不高兴的。结合图4可以看出,在采用了多模态信息融合后,模型综合考虑了三个模态的特征信息并且相互交融,能够正确判断出样本的情绪是“愤怒”。

4 总结

本文提出的方法是从时间序列上下文以及不同模态之间相应时间段信息有着一一对应关系的角度去考虑模态内特征信息和模态间交互特征信息的,模型通过单模态特征提取层来捕获每个模态内部的特征信息,再通过双模态融合层捕获两个模态之间的特征交互,最后通过三模态融合层捕获三个模态之间的特征交互,实验结果表明,本文方法能够充分融合多模态信息,明显提升多模态情绪识别的准确性。

猜你喜欢
模态样本情绪
基于BERT-VGG16的多模态情感分析模型
多模态超声监测DBD移植肾的临床应用
跨模态通信理论及关键技术初探
用样本估计总体复习点拨
规划·样本
小情绪
小情绪
小情绪
随机微分方程的样本Lyapunov二次型估计
情绪认同