【论文阅读】A Self-Fusion Network Based on Contrastive Learning for Group Emotion Recognition

【论文阅读】A Self-Fusion Network Based on Contrastive Learning for Group Emotion Recognition

摘要

本篇博客参考IEEE于2023年收录的论文A Self-Fusion Network Based on Contrastive Learning for Group Emotion Recognition,对其主要内容进行总结,以便加深理解和记忆。

1.介绍

1)GER比IER更具挑战性,因为团队中的人和他们所处的环境之间存在复杂的互动关系。群体是由个体组成的,个体的情绪形成了群体情绪状态。如何对GER的个体情绪特征进行聚合是GER研究的一个关键问题。

2)基于注意力的GER方法通常使用分类损失来监督个体情绪特征的学习,使用sigmoid函数的输出作为融合权值来表征个体特征在融合中的重要性,以及使用整个图像的高级特征图进行识别。实验结果表明,基于注意力的方法在识别准确率方面达到了最先进的水平[19],[20],[21]。

3)当前基于注意力的GER方法仍然面临三个挑战:

①个体情绪特征不明显,因为学习过程只受最终分类结果计算的损失的监督。

②用于生成融合权值的s型函数不能提供单个特征重要性的精确表示。如图1所示,sigmoid函数将两个大的缓慢变化区域的输入近似为0或1,以提供GER网络注意模块中单个特征重要性的非常粗略的表示(权重)。

(a) Sigmoid激活函数图。sigmoid函数只将输入x的一个小区域([−3,3])映射到[0,1]的范围,但将输入的两个大区域[(−∞,−3]和[3,+∞)]近似为0或1

(b)使用GroupEmoW[18]数据集的测试集对[19]中注意模块的s形激活输入的直方图。只有一小部分输入值被映射到[0,1]。大多数不同的输入值近似于0或1(缓慢变化的区域)

③虽然被检测对象的语义信息很好地反映了群体情绪,并有可能有助于提高识别的准确性,但尚未在相关的GER研究中使用。

2.相关工作

1)IER

面部表情被认为是IER最强大的信息,也是人类表达情感最直接的方式[26]。这使得面部表情识别(FER)成为自动情绪识别领域的热门研究课题之一。面部表情提供了个人情绪的有力指示。IER技术构成了GER的基础。

  • Levi和Hassner[27]使用LBP特征作为光照不变FER的深度模型的输入。
  • Zhang等[5]使用SIFT特征来提高学习模型对图像缩放和旋转的鲁棒性。
  • Wang等[28]提出了一种多任务FER网络,以减轻姿态变化和身份的影响,并使用对抗鉴别器提取FER的判别特征。
  • Liu等[29]提出了一种增强的深度信念网络(BDBN),将特征表示、特征选择和分类增强集成到一个循环框架中。

2)GER

GER的开创性工作[30]将群体层面的情绪划分为“积极的”、“消极的”或“中性的”,并发布了“群体影响数据库”(Group Affect Database),其中包含了一群人在社会事件中的图像。

EmotiW群体层面的情绪识别子挑战提供了更大的图像数据集,极大地促进了GER研究[31],[32]。

  • Tan等人[14]假设群体情绪是个体情绪的简单叠加,并通过平均对齐和非对齐面孔的预测得出群体层面的情绪。
  • Gupta等人提出了一个注意模型来生成群体中个体的注意权重,并使用个体面部特征的加权平均值作为GER的群体水平特征。
  • [18]和[20]的研究工作也使用了注意力模块[19]的变体来提高他们提出的模型的识别精度。

近年来,更多的聚合技术,如LSTM和GNN,被用于隐式融合单个特征以生成全局表示。

  • Yu等人[16]提出了一种基于lstm的模型来融合面部特征
  • Guo等人[18]提出了一种GNN模型来利用面部、物体和骨骼特征中的情感线索

这些使用内隐融合的方法假设群体中个体之间存在特定的情感互动[16],[17],[18]。基于lstm的模型需要个体与序列关系之间的情感互动[16]。基于gnn的模型认为情感交互图是完全连通的,并不能描述群体中个体的实际情感关系[18]。虽然GER中使用显式融合的方法不需要假设个体之间的关系[14],[18],[20],[33],[34],[35],但由于融合权重学习依赖于全局(场景)特征提取,个体(面部)特征学习和注意模块的利用,因此学习个体特征聚合的有效融合权重仍然具有挑战性。

3)注意机制

在神经网络中,注意机制旨在模仿人类大脑选择性地专注于少数相关信息而忽略其他信息的行为。

到目前为止,针对不同的视觉任务提出了各种成功的注意机制。文献[36]对注意机制的综述将其分为四种基本类型:通道注意[37] (注意什么)、空间注意[38] (注意哪里)、时间注意[39] (注意什么时候)和分支注意[40] (注意什么)。这些类别的目的是分别在通道域、空间域、时间域和多分支网络的特征中学习具有sigmoid函数的权重。

在GER研究中,大多数研究都采用了分支注意力进行特征聚合。这些GER方法使用多分支网络来提取和聚合群体中的个体情绪特征(面部特征),并学习个体特征的注意权重。在这项工作中,作者也使用分支注意来进行单个特征的融合,但提出了一种新的注意机制来更精确地学习单个特征的融合权重。

4)对比学习

对比学习是通过比较不同的输入样本来学习有效的特征表示的技术。

它旨在获得两个“相似”输入(或正对)的嵌入之间的小距离和两个“不相似”输入(或负对)的嵌入之间的大距离。近年来,对比学习已成功应用于计算机视觉、自然语言处理(NLP)等领域。对比学习技术可以分为无监督和有监督两种。无监督对比学习方法,如SimCLR[41]、MoCo[42]和SimSiam[43],学习特征表示,其中数据本身为下游任务提供监督[44]。监督式对比学习方法通过比较标签所表示的正对和负对,来学习更多针对特定任务的判别特征[45],[46],[47]。

文献综述表明,对比学习对于学习显著特征和提高识别网络的性能是非常有效的。在本文中,作者将监督对比学习用于网络训练,并设计了一种新的对比损失来约束网络的训练,以提取GER的情感特定特征。

3.方法

1)FacesNet:使用面部表情进行分类

对比学习用于帮助网络提取鲜明的情感特征。设计了一种新的注意力机制——自融合模块,用于生成精确的面部特征聚合融合权值。

①人脸检测和主干网络:

在预处理阶段从输入图像中检测并裁剪所有人脸。我们选择高性能的人脸检测器MTCNN[48]进行人脸和地标的检测。按照[18]和[20]中提出的规则,我们使用vggface数据集[50]预训练的vgg16网络[49]来预测组中每个人的情绪。对于第I张图像( I i j f I^f_{i j} Iijf)中的第j张裁剪的人脸图像,vggface主干中最后一个全连接层的输出表示体面部特征 x i j f x^f_{i j} xijf, y i j ′ y'_{i j} yij表示其预测的个体情绪

②自融合模块

作者提出了一个自融合模块来学习理想的融合权重,以聚合个体面部特征,从而产生GER的独特特征。具体来说,我们的自融合模块设计有两个目标:

  • 用特征来刻画全局信息和个体情感:作者使用经过训练的SceneNet从整个图像中提取全局信息,并使用SceneNet最后一层的输出作为全局情感特征。同样,我们使用vggface网络从面部表情中学习个体情绪特征,并将最后一层vggface的输出作为个体情绪特征。
  • 评估整体和个体情感特征之间的相似性:作者不是通过构造判别器来生成融合单个面部特征的权重,而是通过利用个体和全局情感特征的余弦相似度来获得融合权重。

考虑到相似度计算中的维数不一致,作者使用全连通层和ReLU激活函数将全局情感特征(场景特征)和个体情感特征(面部特征)分别映射到一个共同的非负子空间中,以确保得到的融合权值在[0,1]范围内。所提出的自融合模块的融合权值计算为:
v i j = w s ( x i s ) ⋅ w f ( x i j f ) ∣ ∣ w s ( x i s ) ∣ ∣ 2 ∣ ∣ w f ( x i j f ) ∣ ∣ 2 v_{ij} = \frac {w_s(x^s_i) · w_f(x^f_{ij})} {||w_s(x^s_i)||_2||w_f(x^f_{ij})||_2} vij=∣∣ws(xis)2∣∣wf(xijf)2ws(xis)wf(xijf)
GER网络中现有的注意模块通过将全局情绪特征和个体面部特征输入到一个具有sigmoid激活函数的节点组成的全连接层中来生成个体的注意权重[19],[20],[21]。所提出的自融合模块与现有的注意模块有很大的不同。如图1所示,现有注意模块中的s型函数可能会将重要的输入值困在一个缓慢变化的状态中,无法描述个体情绪的独特重要性。提出的自融合模块利用个体与全局情感特征之间的余弦相似度对个体特征进行加权。由于自融合模块对输入数据的变化非常敏感,因此可以帮助网络更加关注在余弦相似度方面接近全局情感特征的个体特征。

③FacesNet的损失函数:

在训练过程中,FacesNet的反向传播和更新使用了三个损失函数:

  • IER的交叉熵损失:GER数据集不提供群体中个体情绪的标签。我们按照前人[14]、[19]的方法,对群体情感标签中的个体进行分配,并利用交叉熵损失对骨干网络进行约束。对于第i组,IER的交叉熵损失表示为:

L I E R = − 1 N i ∑ j = 1 N i l o g e W y i j T x i j f ∑ k = 1 C e w k T x i j f L_{IER} = - \frac 1 N_i \sum^{N_i}_{j=1} log \frac {e^{W^T_{yij}x^f_{ij}}} {\sum^C_{k=1}e^{w^T_kx^f_{ij}}} LIER=N1ij=1Nilogk=1CewkTxijfeWyijTxijf

  • 对比学习损失:个体面部特征的融合权值由自融合模块生成。融合权值的取值范围为[0,1]。为了提高个体面部特征的可识别性,我们设计了一个对比学习损失来增强相关和不相关个体情绪学习权重之间的差异。

具体来说,我们将单个人脸图像分为正集和负集。前者包括群体中具有相同情感的个体。消极组包括一个群体中情绪不相同的个体。消极组的样本是从其他具有不同情绪的组中随机抽取的。为了使正样本和负样本之间的特征距离最大化,我们以组中正样本的全局(场景)特征为锚点,使用式(1)计算正样本和负样本的融合权值,并提出对比损失,如下式所示:
L C L = m a x { 0 , θ − ( θ + − θ − ) } L_{CL} = max\{0,θ-(θ^+-θ^-)\} LCL=max{ 0,θ(θ+θ)}

  • GER的交叉熵损失:为了识别群体情绪,我们使用交叉熵损失来约束群体情绪输出,该输出通过融合权重将识别的个体情绪聚集在一起。对于第i组,GER的交叉熵损失表示为:

L G E R = − l o g e P y i T x i a g g ∑ k = 1 C e P k T x i a g g L_{GER} = - log\frac {e^{P^T_{y_i}}x^{agg}_i}{\sum^C_{k=1}e^{P^T_kx^{agg}_i}} LGER=logk=1CePkTxiaggePyiTxiagg

  • 总体损失函数:在所提出的FacesNet的训练阶段,同时使用上述三种损失,第i组样本的总体损失函数计算为:

L o s s = L I E R + L C L + L G E R Loss = L_{IER} + L_{CL} + L_{GER} Loss=LIER+LCL+LGER

④个体标签更新策略:情感多样性被用来描述群体成员在同一社会事件中可能表达不同情绪的情况[51]。如果将群体情绪标签简单地用于标记所有个人情绪,那么不可避免地,来自群体的个人情绪可能会被错误地标记。文献[52]提出了一种将不可靠标签的负面影响降至最低的个人情绪重新标签策略。受此工作的启发,我们设计了一种策略来重新标记最大预测概率显著高于其分配的群体情绪标签的群体中的个体情绪。个体情绪标签的更新策略可表述为:
y i j ∗ = l m a x , i f P m a x − P y i j > u ; l y i j , o t h e r w i s e y^*_{ij} = l_{max}, if P_{max} - P_{y_{ij}} > u ; l_{y_{ij}}, otherwise yij=lmax,ifPmaxPyij>u;lyij,otherwise
2)SceneNet:使用场景信息进行分类

场景特征包含了整个图像的全局信息,包括人、周围物体、背景等,隐含着丰富的群体情感线索。

作者设计了一个名为SceneNet的子网络,从整个图像中提取全局信息。SceneNet由ResNet50-FPN[53]和RoIAlign函数[54]组成,可以在多个尺度上提取全局(场景)特征。SceneNet中使用两个完全连接的层作为GER任务的分类器。场景特征提取的操作定义为: x i s = R o I A l i g n ( ϕ ( I i ) ) x^s_i = RoIAlign(ϕ(I_i)) xis=RoIAlign(ϕ(Ii)),其中s为场景的索引, I i I_i Ii x s I i x^sIi xsIi分别为第i张图像及其对应的全局(场景)特征,其中ϕ(·)为ResNet50-FPN的网络。RoIAlign(·)表示多尺度特征融合函数,在Mask R-CNN[54]中提出,用于将提取的特征与输入正确对齐。进一步,将基于全局(场景)特征的分类器定义为 y s c e n e = ω ( x s ) y_{scene} = ω(x^s) yscene=ω(xs),其中ω(·)表示由两个完全连接层组成的分类器函数, y s c e n e 是 y_scene是 yscene基于全局(场景)特征预测的群体情绪。在训练过程中,利用交叉熵损失对SceneNet进行训练。

3)ObjectsNet:使用对象特征进行分类

ObjectsNet是为了利用对象信息来推断群体情绪而开发的。它包括对象的特征提取、特征聚合和群体情感分类。与以往使用CNN提取目标特征的研究不同,我们使用检测到的语义信息作为目标特征,避免了对图像中所有目标进行特征提取的大量计算。

为了检测组中的对象,我们使用预训练的自下而上[55]网络来检测图像中的对象,并为每个检测到的对象分配语义标签。[55]中的目标检测器采用自下而上的机制(基于Faster R-CNN)检测目标区域并在MSCOCO数据集上进行训练。

作者使用BoW模型将对象语义信息聚合到一个BoW特征中。作者首先对每个图像检测到的语义标签的频率向量进行计数,然后使用术语频率-逆文档频率(TF-IDF)算法[56]来调整频率向量中对象类别的权重。最后,将调整后的频率向量作为BoW特征进行群体情绪分类。

为了根据物体的BoW特征对群体情绪进行分类,我们构建了一个具有三个完全连接层的分类器网络(如图2所示)。输入层的维数与BoW特征相同(设置为1600)。隐藏节点的数量设置为512,输出层的维度与情感类别的数量相同。

最后,利用交叉熵损失进行反向传播。

4)预测集成

在这项工作中,FacesNet、senenet和ObjectsNet产生了三个独立的群体情绪预测。将这三个网络的预测结果整合到最终的识别结果中,计算结果为:
y = a y f a c e s + b y s c e n e + c y o b j e c t s s . t . a , b , c > = 0 a + b + c = 1 y = a y_{faces} + by_{scene} + cy_{objects} \\ s.t. a,b,c >=0 \\ a+b+c=1 y=ayfaces+byscene+cyobjectss.t.a,b,c>=0a+b+c=1

4.实验与讨论

Group Affective 2.0 (GAF2)[31]、Group Affective 3.0 (GAF3)[32]、GroupEmoW[18]

1)实现细节

为了训练FacesNet,我们将裁剪后的人脸图像调整为224 × 224像素,对调整后的人脸图像进行标准数据增强(随机水平翻转,±20旋转),将对比学习损失的超参数δ设置为0.8,并使用学习率为0.001的随机梯度下降(SGD)优化器,每四组反向传播。

对于训练SceneNet,我们只训练了ResNet50-FPN的主干,该主干是用ImageNet进行图像分类预训练的[59]。具体来说,我们将输入图像的大小调整为800 × 800像素,并使用SGD的优化器,学习率为0.001,批大小为1。我们冻结了除RoIAlign和FC层以外的骨干层的参数。

对于训练ObjectsNet,我们使用BoW特征作为输入,该特征由对象的语义信息构成,并使用SGD优化器,学习率为0.001,批大小为512。我们对所有网络执行了50个epoch的优化过程。

所有实验均在Intel至强CPU E5-2673 v4 2.30 GHz和GeForce GTX 2080Ti的Linux服务器上进行。

2)消融实验

①不同线索

②FaceNet:vggface + 自融合;vggface + 自融合 + 对比学习;vggface + 自融合 + 对比学习 + 更新标签

③融合参数

3)结果可视化

为了评估对比学习和自融合在FacesNet中的贡献,我们使用t-SNE算法[61]来可视化学习特征的分布。t-SNE是一种流行的特征降维方法,用于将深度学习模型在二维平面上学习到的特征可视化。我们使用t-SNE来可视化通过融合单个特征获得的表示特征。

猜你喜欢

转载自blog.csdn.net/qq_44930244/article/details/130885011