1. 引言
情感传递方式是多样的,人们可以使用多种形式共同表达情感态度,以提供更全面的情感信息。随着移动终端技术的不断改进和5G通信的发展,人们表达情感的方式也更加多元化。用户在种类繁多的社交媒体平台发布内容,其形式包括文字、图像、语音,同时还借助视频、表情符号、颜文字等,以多种模态组合的方式表达观点,丰富情感层次。多模态情感分析研究应运而生。多模态情感分析指的是利用两个或多个信息来源,例如文本、语音、图像等,对情感进行分析的方法。与单一文本传递信息的方式相比,利用多种媒体形式能够更好地表达情感,让情感传递更加准确和有力。
据2015年针对推特用户的一项统计调查 [1] ,超过三分之二的被调查者表示会在发布推文时添加图片,以增强情感表达。这进一步说明了多模态情感传递的普遍性和优势。现有的图文模态情感分析方法大多采用双流结构 [2] ,对文本和图片分别提取特征向量,独立地输入到两个不同的特征处理模块,充分挖掘单模态中的信息再进行特征融合,而忽略了图文的关联性。在社交媒体用户所发布的内容中,通常会选择将图片作为一种补充或增强文本所传达情感的载体,但随着社交语言的发展,反讽、图文无关等现象开始广泛出现,同一推文中不同模态所表达的情感不再具有一致性。
本文针对上述问题,设计了一种基于ViLT的社交媒体领域图文情感分析方法(Image-text sentiment analysis in social media domain based on ViLT, SoD-ViLT)。将文本特征与图像特征进行拼接,送入同一个Transformer模块,得到基于图文多模态分析的情感结果,并利用文本与图像自身的特征得出基于单模态的情感分析结果,对三种情感分析结果使用加权融合策略确定最终的情感极性。针对图文情感分析任务和图文方面级情感分析任务分别进行了实验,在公开数据集上验证了本文情感分类方法的有效性。
2. 相关工作
2.1. 多模态图文情感分析
随着社交媒体的快速发展,多模态信息量呈爆发式增长。不同来源的信息,信息的不同形式都可以单独称作一种模态。作为人类情感载体的信息模态有文本、图像、语音、视频、姿态等。不同模态的提供的信息不完全相同,其特征中体现着来自维度和层次差异的情感信息,将不同模态信息进行融合是多模态情感分析的核心。多模态融合是从各种来源接收的数据中过滤、提取和组合所需特征的过程。常见的有早期融合,后期融合和中期融合。
早期融合也称为特征融合,将多个独立的输入模态特征组合在一起形成联合特征向量,如文本、音频或视觉的所有特征组合成单个特征向量,然后将其输入到分类算法中。Xu等人 [3] 提出了一个充分考虑图像和文本之间相互作用的共记忆网络,使用两个内存网络来处理两种模态的数据,利用协同记忆注意机制,使用文本信息来查找视觉关键内容,使用图像信息来定位文本关键字,将最后查找到的关键内容与关键字特征表示连接起来进行情感分类。Zadeh等人 [4] 提出一种多注意力循环网络MARN,对特定于视图的动态以及跨视图动态连续建模。其中两个关键组成部分为长短期混合记忆LSTHM和多注意力块MAB,针对每种模态,使用LSTHM对特定于视图的动态进行建模,在每一个时间步中,使用MAB识别不同的跨视图动态,并根据所有LSTHMs的隐藏状态信息对输出维度进行加权。
在后期融合中,首先对每种模态的特征进行独立处理和分类,然后融合分类结果形成最终的决策向量,从而预测情感,因此这个过程也被称为决策层融合。Cai等人 [5] 采用了一种多个卷积神经网络联合的框架,Multi-CNN以文本卷积神经和图像卷积神经网络联合表示作为输入,分别提取两种表示,通过捕获文本和图像的组合信息,实现了对多媒体情感分析的有效性能。Huang等人 [6] 为了自动关注与情感最相关的区域和重要词汇,利用视觉注意机制自动聚焦图像中情感区域,利用语义注意机制突出文本中最具情感的词语,采用多层感知器来挖掘不同模态特征之间的非线性相关性,最后提出了视觉、语义和多模态注意模型的后期融合方案,以获得情感分类的最终决策。
中期融合又称混合融合,是特征层融合和决策层融合两种策略的结合。You等人 [7] 提出了一个新的端到端联合视觉文本情感分析框架,以结构化的方式集成文本和视觉信息。在树状结构的LSTM中引入了注意力机制,以学习图像区域与描述性单词之间的对齐或对应关系。在树的根节点上获得联合特征,并将其提供给多层感知器用于训练情感分类器。同时还引入了一个辅助任务视觉文本语义嵌入,以帮助注意模型的学习。凌海彬等人 [8] 构造了两类特征,内容特征即微博中除文本以外对情感具有指示作用的隐藏信息,和体现单个用户情感表达特点的用户特征,然后将微博句子和内容特征、用户特征表示为向量矩阵输入到多特征融合的文本情感分类模型中实现文本的情感分类,结合基于迁移学习的图片情感分类模型,最后将文本和图片情感分类模型进行融合。蔡宇扬等人 [9] 提出模态信息交互模型,自适应特征融合去除冗余信息,根据全局特征选择包含情感信息的特征。
基于注意力机制,多模态图文情感分析向着高维度特征融合方向发展,高层特征可以很好的表示模态间的交互信息,但丢失了单模态的内在特征。不同与以上工作,本文在图文融合特征的基础上,根据不同模态的情感可靠性,调整各模态的情感贡献度,同时关注模态内与模态间的信息。
2.2. 多模态方面级情感分析
针对文本内含有多个方面词的情感分类任务又划分多模态方面级情感分析(Multimodal Aspect-Based Sentiment Analysis, MABSA)细粒度任务,又称面向目标的多模态情感分析,或者基于实体的多模态情感分析。多模态方面情感分类旨在对抽取出的每个方面词进行情感分类。Xu等人 [10] 提出了多交互记忆网络,分别考虑方面词对文本和图像的影响,该模型首先获得基于方面词引导的文本特征和视觉特征,为了学习模态间的相关性,将单模态的自注意力特征与跨模态注意力特征按位相加取平均,并采用GRU (Gated Recurrent)单元将当前单模态的特征向量与平均后的特征向量结合起来,得到新的各模态特征向量,将最后一层GRU输出的文本特征和视觉特征连接,作为softmax的输入进行情感极性的分类。Yu等人 [11] 提出了TomBERT模型,设计了目标–图像感知模块,将目标词的特征向量与图像特征进行多头跨模态注意力,获得目标词敏感的图像特征,再与文本特征连接,堆叠额外的编码层融合图文特征。并为两个提供了文本中目标词的多模态数据集Twitter-15和Twitter-17,标注了每个目标词的情感极性。Khan等人 [12] 引入了一种全新的用于多模态情感分析的结构,将图片信息转化为文本信息,利用Transformer生成关于图像的描述性文本,为模型提供更多的文本信息进行辅助训练,并与目标词组合构建成一个辅助句子,最后将图片和目标词所对应的文本与辅助句子送入BERT [13] 预训练模型进行情感分类。为验证本文提出模型的通用性,在多模态方面级情感分析任务上进行实验。与上述工作相比,本文模型在建立目标词与图片关联的基础上,将图片的全局特征送入最后的分类层。
3. 模型介绍
本节详细介绍提出的基于ViLT的社交媒体领域图文情感分析方法,SoD-ViLT的总体框架如图1所示。
模型结构可大致分为三层:特征提取层,特征处理层和情感分类层。SoD-ViLT模型在特征提取层分别对文本和图像进行预处理并提取特征。在特征处理层,SoD-ViLT对文本特征、图像特征和图文特征分别采用了三种不同的方法进行处理,其核心都是基于Transformer的Encoder模块,最后将三部分的情感分类结果加权融合,得到最终的情感极性。
3.1. 特征提取层
3.1.1. 文本特征提取
本文实验针对社交媒体平台的多模态数据,社交语言通常使用口语化的表达方式,且夹杂着缩写、俚语、网络用语和表情符号等元素,也包含一些语法错误或是拼写错误。同时用户的情感表达方式也更直接,情感词语的出现频率更高,且许多推文只包含一句话或一个短语。
考虑到社交文本数据有以上这些特点,不适合采用BERT等相似的基于大规模规范文本语料库训练出来的语言模型。本文实验采用BERTweet [14] 作为文本编码器,BERTweet是第一个用于英语推文的大规模公共预训练语言模型,模型结构与BERT相同。BERTweet的输入序列
为,其中
为句首的[CLS]起始标记,编码后的输出序列为
,N是模型输入的最大文本长度。且编码后的序列,已添加位置嵌入信息。
3.1.2. 图像特征提取
考虑到每个样本中的图片大小不一定相同,将图片尺寸统一调整为384 × 384像素,采用与ViLT相同的图像特征提取方法,对图像切片投影,将图片切分成多个32 × 32大小的图像块,再投影成一维序列,图片特征可表示为:
。增加一位用于分类的[CLS]标志位
,为了将图像块的排列顺序与原图片的二维信息保持一致,在图片特征I上增加图像块的位置编码
,得到图像特征提取模块的输出特征
,如公式(1)。
(1)
3.2. 特征处理层
3.2.1. 文本特征处理
经过文本特征提取模块BERTweet预训练模型得到的特征序列,输入到标准Transformer-Encoder层,单文本特征处理结构如图2所示。
Figure 2. Structure of text feature processing
图2. 单文本特征处理结构
其中,多头注意力头数为12,隐藏层大小为768。在经过Transformer编码器内的多头注意力机制学习后,用[CLS]标志位的特征向量进行基于文本的情感分类,输入全连接层得到情感分类结果
。
3.2.2. 图像特征处理
图像特征
在经过ViT-Transformer编码器内的多头注意力机制学习后,用[CLS]标志位的特征向量进行基于图像的情感分类,输入全连接层得到情感分类结果
,单图像特征处理结构如图3所示。
ViT-Transformer编码器由堆叠的块组成,其中包括一个多头自注意力层(Multi-head self-attention, MSA)和一个多层感知机(Multilayer perceptron, MLP)。ViT-Transformer的编码器与标准Transformer编码器唯一的区别是层归一化(Layer Normalization, LN)的位置,Transformer编码器的LN分别添加在MSA和MLP之后,而ViT-Transformer编码器的LN在MSA和MLP之前。
Figure 3. Structure of image feature processing
图3. 单图像特征处理结构
图片特征的计算公式见公式(2)至公式(5)。
(2)
(3)
(4)
(5)
其中,
为编码器的输入,
表示多头注意力机制的输出,
表示多层感知机的输出,
是第L层输出向量的第0位,即[CLS]分类标志位,L为编码器的层数。
3.2.3. 图文特征处理
图文特征处理使用多层Transformer编码器对多模态特征进行融合,得到基于图文特征的情感分类结果
,结构如图4所示。
Figure 4. Structure of image and text features processing
图4. 图文特征处理结构
为区分文本特征与图片特征,在已提取的文本特征向量T上添加文本类型嵌入向量
,图片特征向量
上添加图片类型嵌入向量
,如公式(6)和公式(7)所示。
(6)
(7)
将文本特征
和图像特征
进行合并,得到多模态特征
,作为多模态特征输入到ViT-Transformer编码器中,编码公式如公式(8)至公式(11)所示。
(8)
(9)
(10)
(11)
其中,
为编码器的输入,
表示多头注意力机制的输出,
表示多层感知机的输出,
是第L层的输出向量第0位,即[CLS]分类标志位,
为线性投影,L为编码器的层数。
3.3. 情感分类层
上述三种特征处理方式分别对单文本、单图像和图文模态特征进行情感分类。在情感分类层,采用加权融合的方式计算情感极性,充分利用模态的内在信息,并将不同模态的语义进行互补,结合三种模型的优势,确定最终的图文对情感类别。计算公式如公式(12)所示。
(12)
其中,
为文本特征情感分类结果的权重,
为图片特征情感分类结果的权重。
4. 实验与结果分析
4.1. 数据集
本文在4个数据集上进行实验,分别为图文情感分析数据集MVSA-Single和MVSA-Multiple,数据集信息如表1所示,以及图文方面级情感分析数据集Twitter-15和Twitter-17,数据集信息如表2所示。
MVSA的两个数据集中每条数据是由单个图像和相应文本组成的,不同之处在于MVSA-Single数据集的图像和文本分别对应一个情感标签,而MVSA-Multiple数据集的每个图文对样本包含三个情感标注标签。MVSA-Single和MVSA-Multiple的训练集、验证集、测试集划分方式,参照前人的工作 [15] ,按照8:1:1的比例随机拆分数据集。
Twitter-15与Twitter-17数据集,分别由Zhang等人 [16] 和Lu等人 [1] 提出,主要包括了2014年至2015年期间和2016年至2017年期间,在Twitter平台上发布的多模态推文。Yu等人 [11] 对每个方面词的情感进行了进一步标注,情感标签为积极、消极和中性三种。Twitter-15、Twitter-17数据集中每个样本D都由上下文S、方面词T和图片I组成。在本文实验中,方面词和上下文的输入格式参照Yu等人的工作,通过插入特殊标记[CLS]和[SEP]将上下文S和方面词T连接起来,文本输入格式为[CLS]T[SEP]S[SEP]。
Table 1. MVSA dataset statistics
表1. MVSA数据集统计
Table 2. Twitter dataset statistics
表2. Twitter数据集统计
4.2. 实验环境与参数设置
本文实验基于Pytorch深度学习平台,Pytorch版本为1.13.1,Python版本为3.7,transformers版本为4.26.1。文本模态参照BERTweet预训练模型的参数配置初始化文本特征。对于图像模态,参考ViLT的图像处理参数设置,将原始图像切分成多个32 × 32大小的图像块,经过线性投影得到图像的特征向量。本文实验的重要参数值设置如表3所示。
Table 3. Parameters of the experiment
表3. 实验参数设置
4.3. 基准方法与评估指标
本文提出了一种基于ViLT的图文情感分析方法,为验证该方法的有效性,针对图文情感分析任务和图文方面级情感分析任务两个不同的任务,选择了两组基准方法。
1) 图文情感分析任务对照组
SentiBank:视觉模态分析模型,选取具有一定检测精度的1200个形容词名词对(Adjective-Noun Pairs, ANP),为每个ANP训练一个分类器,从而实现图像分类,利用形容词–名词对来代表视觉内容的属性。自动检测图像视觉属性,为每个属性分配一个情感得分。
VggNet-19:视觉模态分析模型,采用同样大小的3 × 3尺寸的卷积核,2 × 2尺寸的最大池化,共包含了16个卷积层和3个全连接层的卷积神经网络。
SentiStrenth [17] :文本模态分析模型,利用单词和短语进行情感分析,识别出不同情感的组合,并根据其权重计算出文本的总体情感极性。
LSTM-Attention:文本模态分析模型,利用LSTM对文本序列进行编码,然后通过Attention机制获取文本的上下文信息,最终将编码后的文本向量输入到全连接层中进行情感分类。
BiLSTM-Attention:文本模态分析模型,在LSTM-Attention基础上,利用双向LSTM从正向和反向两个方向对文本序列进行编码,捕捉更全面的上下文信息。
SentiBank + SentiStrenth [18] :多模态分析模型,将SentiBank和SentiStrenth的结果进行决策级的融合。
MLSA [19] :多模态分析模型,利用文本引导的多层次空间注意力对图像进行特征提取。
ViLT:多模态分析模型,将图片切分成图像块投影成一维序列,与文本特征拼接输入Transformer编码器融合多模态特征。
2) 图文方面级情感分析任务对照组
Res-Target:视觉模态分析方法,使用Resnet-152网络提取图像特征,将其与方面词的特征向量拼接,输入BERT模型中进行分类。
IAN [20] :文本模态分析方法,交互式注意网络模型,分别生成上下文和方面词的表示,利用注意力机制进行交互学习,最后将二者拼接预测方面词的情感极性。
RAM [21] :文本模态分析方法,多层注意力和记忆网络模型,用双向LSTM结构建立记忆体,通过多层注意力机制从记忆体中获得加权后的特征。
MGAN [22] :文本模态分析方法,多粒度注意力模型,将方面词整体对文本影响的粗粒度权重,以及方面词中每个单词对文本影响的细粒度权重拼接。
ViLT:图文模态分析方法,视觉和语言预训练模型,将文本特征和图像切片投影后的特征拼接输入Transformer编码器。
mBERT:图文模态分析方法,此模型采取了双流结构,包含图像处理模块与文本处理模块,没有针对方面词增加额外的处理模块。图像处理模块使用了ResNet-152模型来提取图像特征,同时采用BERT模型提取具有上下文感知能力的文本特征。随后,将图像特征和文本特征进行拼接,再在此基础上堆叠一层BERT模型,以建立视觉和文本特征之间的跨模态交互。
TomBERT:此模型以mBERT的文本–图像双流结构为基础,在图像处理部分设计了一个目标实体–图像交互模块,以获得带有目标实体信息的图像特征。采用与mBERT相同的特征融合模块,将图像特征与文本特征拼接输入BERT进行情感分类。
4.4. 实验结果与分析
4.4.1. 图文情感分析实验结果
表4展示了图文情感分析任务中不同的情感分类方法在MVSA-Single和MVSA-Multiple两个数据集上的实验结果。实验结果表明,本文提出的基于ViLT的社交媒体多模态情感分析方法,在MVSA-Single和MVSA-Multiple社交媒体实验数据集上准确率和F1值都有一定提升,验证了本文方法的有效性。根据表4所展示的实验结果可以得出以下结论:
Table 4. Experimental results on MVSA datasets
表4. MVSA数据集实验结果
1) VggNet-19模型在两个实验数据集上的准确率和F1值均远高于基于SentiBank方法的结果。这表明,在图像情感分类方面,深度神经网络相较于其他方法具有更出色的性能。在单文本数据对比试验中,基于神经网络的LSTM-Attention和BILSTM-Attention方法在准确率和F1值方面均优于基于语法的SentiStrenth方法。验证了深度神经网络在特征提取方面的强大性能。利用SentiBank和SentiStrenth相结合的图文多模态分析方法,模型性能也远低于基于神经网络的方法。
2) 单文本模态情感分析方法中的两个神经网络模型,BILSTM-Attention和LSTM-Attention,相较于LSTM,双向LSTM结构可以更好地捕获文本语义,所以BILSTM-Attention模型的实验结果整体优于LSTM-Attention模型。
3) 相比于单模态的情感分类方法,基于多模态特征的情感分类模型在准确率和F1值上都有更高的实验结果,说明利用多种模态数据信息可以更准确地判断情感极性。
4) 本文提出的SoD-ViLT模型与ViLT模型相比,MVSA-Single数据集上的准确率和F1值分别提升了2.73%和2.52%。在MVSA-Multiple数据集上的准确率和F1值分别提升了2.11%和2.77%。SoD-ViLT模型在文本特征提取模块所使用的是BERTweet预训练模型,针对实验数据集的社交媒体领域特点,提供更匹配的初始化权重。且使用加权规则充分利用各模态信息,得到最后的情感极性。这说明SoD-ViLT模型在ViLT模型上增加或改变的模块对提高社交媒体情感分类性能是有效的。
4.4.2. 图文方面级情感分析实验结果
表5展示了图文方面级情感分析任务中不同的情感分类方法在Twitter-15和Twitter-17两个数据集上的实验结果。实验结果表明,本文提出的SoD-ViLT模型在Twitter-15和Twitter-17社交媒体实验数据集上,与基准方法相比准确率和F1值都有一定提升。根据实验结果可以得出以下结论:
Table 5. Experimental results on Twitter-15 and Twitter-17 datasets
表5. Twitter-15和Twitter-17数据集实验结果
1) 单文本模态分析方法的准确率远高于基于视觉模态的Res-Target方法,这说明仅基于图片和方面词信息并不能有效的分析情感极性,图片只能提供辅助信息,文本是预测方面词情感极性的主要信息来源。
2) 基于多模态的方法要优于基于单模态的方法,说明图片和文本能够提供互补信息,图片对文本起到一定的辅助作用。
3) 多模态方法ViLT作为本文实验方法的原型基础,其各项评价指标与其他多模态基准方法相比较差,而本文提出的SoD-ViLT模型性能超过所有基准方法,说明了SoD-ViLT在ViLT的基础上,针对社交媒体的推文特点选择BERTweet作为文本编码器等改进措施的有效性。
4) mBERT与本文提出的SoD-ViLT都没有关注方面词的重要性,在同样丢失方面词信息的情况下,SoD-ViLT的性能超过了mBERT,原因在对图片信息的处理,本文实验采用了与视觉预训练模型ViT相似的图像特征提取方式,生成了更具有泛化能力的图像特征。
5) TomBERT在两个实验数据集上都取得了比本文提出的SoD-ViLT模型更好的结果,与mBERT相比TomBERT增加了方面词与图片匹配模块,说明建立方面词与图片之间关系的重要性,突出图片中与方面词相关区域能有效提高方面级情感分析的结果。
4.4.3. 情感分类权重比例分析
为达到模型的最优性能,本小节在MVSA-Single数据集上,通过网格搜索法确定文本特征情感分类结果权重系数
,和图片特征情感分类结果的权重系数
的取值。由于
,
,同时
,将步长设定为0.1,则
,
。实验结果如图5和图6所示。
从图5可以看出,当
的值即图片特征情感分类结果的权重系数为0.4时,无论
如何变化,模型的准确率都相对较低,说明基于图片分析得到的情感准确率较低,准确率较高的情况集中在
和
值都较小的区域。同样在图6中,当
的取值为0.4时,模型的F1值较小情感分析效果较差。当
和
值都较小时,模型效果与极端取值0.1或0.4相比,整体效果良好。说明在最终的情感极性分析中,图文多模态特征的情感分析结果应占据主导地位,文本和图片的情感分类结果作为辅助模块减小模型偏差。
从图5和图6中可以直观的看出,当
,
的取值均为0.2时,模型的准确率和F1值都达到最高值。在此系数下,文本特征情感结果和图片特征情感结果,对SoD-ViLT模型最终判定的情感极性贡献相同,基于图文多模态特征得到的情感结果贡献值最大。
Figure 5. Accuracy at different weighting factors
图5. 不同权重系数模型准确率
Figure 6. F1 Value at different weighting factors
图6. 不同权重系数模型F1值
5. 结论
本文提出了一种基于ViLT的社交媒体领域图文情感分析方法SoD-ViLT。考虑到社交媒体数据的特点,在文本特征提取模块,引入BRERTweet初始化权重系数。多模态特征融合阶段采用单流结构,将文本特征与图像特征进行拼接,送入同一个Transformer模块,得到基于图文多模态分析的情感结果。利用文本与图像自身的特征得到基于文本特征的情感分析结果和基于图片特征的情感分析结果,对三种情感分析结果使用加权融合策略确定最终的情感极性。SoD-ViLT在MVSA-Single数据集和MVSA-Multiple数据集上的实验结果相较于ViLT模型,准确率分别提高了2.73%和2.52%,F1值分别提高了2.11%和2.77%。在图文方面级情感分析任务中,SoD-ViLT相较于ViLT模型,在Twitter-15和Twitter-17两个实验数据集上,准确率和F1值都有大幅提高。