当前位置: 首页 > news >正文

Hierarchical Supervised Contrastive Learning for Multimodal Sentiment Analysis

文章目录

  • HSCL:多模态情感分析的分层监督对比学习
    • 文章信息
    • 研究目的
    • 研究内容
    • 研究方法
      • 1.总体结构
      • 2.单模态表征提取
      • 3.双模态表征融合
      • 4.情感预测
    • 实验分析

HSCL:多模态情感分析的分层监督对比学习

总结:采用了层次化对比学习结构,以有效对齐和融合各种模态。此外,通过监督对比回归,旨在定义一个嵌入根据标签接近性对齐的子空间。这一策略在多个层次上丰富了表征。

文章信息

作者:Kezhou Chen,Shuo Wang

单位:中国科学技术大学-教育部脑启发智能感知与认知重点实验室

会议/期刊:MultiMedia Modeling(CCF C)

题目:Hierarchical Supervised Contrastive Learning for Multimodal Sentiment Analysis

发布日期:2024 年 1 月 28 日

代码:https://github.com/Turdidae810/HSCL

数据集:CMU-MOSI、CMU-MOSEI

算力要求:Nvidia RTX 3090 GPU(24G)

研究目的

弥补各种模态之间存在的语义差异,解决模态异构性的问题。

研究内容

将监督对比学习(SCL)引入 MSA 任务,提出了一种层次化监督对比学习方法(HSCL),以对齐来自不同模态的内容,包括单模态表征和双模态融合特征。同时,使用标签来约束对齐的表征,以保留丰富的情感语义。

  • 引入了有监督的对比学习,并提出了一种分层训练策略,即从低层和高层特征表征中捕捉情感。
  • 设计了self-attention和cross-attention模块,以融合来自不同模态数据的表征,从而提供更有效的情感内容。
  • 结果表明,HSCL 在两个公开的多模态情感分析数据集上取得了最先进的性能。

研究方法

1.总体结构

对于三种不同类型的数据,采用不同的特征提取器将这些数据转换成具有代表性的特征。随后,采用有监督的对比回归来调整这些单模态表征。同时,设计了两种跨模态注意力结构来融合不同的表征,并使用高级监督对比学习来衡量模态间的关系。最后,这一过程会产生任务对齐的多模态表征,可以有效预测给定视频中的情感。

在这里插入图片描述

2.单模态表征提取

首先,使用BERT提取文本模态特征,使用COVAREP以及Facet结合Transformer提取音频模态和视觉模态特征。
E t = B E R T ( X t ; θ t B E R T ) , E m = Transformer ( X m ; θ m T r a n s f o r m e r ) , m ∈ { a , v } , \begin{aligned}&\mathbf{E}_t=\mathrm{BERT}(\mathbf{X}_t;\theta_t^\mathrm{BERT}),\\&\mathbf{E}_m=\text{Transformer}(\mathbf{X}_m;\theta_m^\mathrm{Transformer}),m\in\{a,v\},\end{aligned} Et=BERT(Xt;θtBERT),Em=Transformer(Xm;θmTransformer),m{a,v},
然后,利用对比学习对齐不同模态。为了将每个单模态表征投射到同一维度上,将其通过一个全连接层。( R m R_m Rm代表每个序列开始的 [cls] token)
R ^ m = F C m ( R m ; θ m F C ) , m ∈ { a , v , m } , \hat{R}_m=\mathrm{FC}_m(R_m;\theta_m^{\mathrm{FC}}),m\in\{a,v,m\}, R^m=FCm(Rm;θmFC),m{a,v,m},
接着在文本-语音模态、文本-视觉模态之间采用监督对比回归方法,来构造一个多模态嵌入空间。样本对构建如下图所示:

image-20241010095854336

锚点-负样本之间的距离大于锚点-正样本之间的距离:
A ( k ) = { k ≠ i , ∣ y i − y k ∣ ≥ ∣ y i − y j ∣ ; k ∈ { 1 , 2 , … , 2 N } } \mathbb{A}(k)=\{k\neq i,|\boldsymbol{y}_i-\boldsymbol{y}_k|\geq|\boldsymbol{y}_i-\boldsymbol{y}_j|;k\in\{1,2,\ldots,2N\}\} A(k)={k=i,yiykyiyj;k{1,2,,2N}}
基于有监督的对比回归分析,单模态表征 R ^ t \hat{R}_{t} R^t R ^ a \hat{R}_{a} R^a 之间的对比学习操作可计算为:
L t a S u p C R = − 1 2 N ∑ i = 1 2 N 1 2 N − 1 ∑ j = 1 , j ≠ i 2 N exp ⁡ ( R ^ m , i ⋅ R ^ m , j / τ ) ∑ k ∈ A ( k ) exp ⁡ ( R ^ m , i ⋅ R ^ m , k / τ ) , \mathcal{L}_{ta}^{SupCR}=-\frac1{2N}\sum_{i=1}^{2N}\frac1{2N-1}\sum_{j=1,j\neq i}^{2N}\frac{\exp\left(\hat{R}_{m,i}\cdot\hat{R}_{m,j}/\tau\right)}{\sum_{k\in\mathbb{A}(k)}\exp\left(\hat{R}_{m,i}\cdot\hat{R}_{m,k}/\tau\right)}, LtaSupCR=2N1i=12N2N11j=1,j=i2NkA(k)exp(R^m,iR^m,k/τ)exp(R^m,iR^m,j/τ),
由于不同模态数据存在异质性,对比损失可能无法工作,因此需要为不同模态建立一个共同的子空间。通过构造一个相似性损失函数来实现:
L t a s i m = ∥ R ^ t − R ^ a ∥ 2 2 . \mathcal{L}_{ta}^{sim}=\left\|\hat{R}_t-\hat{R}_a\right\|_2^2. Ltasim= R^tR^a 22.
最后,将相似性损失和对比损失结合起来实现双模态的对齐。
L t a = L t a S u p C R + α L t a s i m . \mathcal{L}_{ta}=\mathcal{L}_{ta}^{SupCR}+\alpha\mathcal{L}_{ta}^{sim}. Lta=LtaSupCR+αLtasim.

符号含义
m m m文本模态和音频模态
N N Nbatch size
i , j , k i,j,k i,j,k锚点、正样本和负样本
A ( k ) \mathbb{A}(k) A(k)负样本指数集
∣ ⋅ ∣ 2 2 |\cdot|_2^2 22L2 正则化

3.双模态表征融合

双模态融合过程由三个子层组成:自注意力(Self-Attention)、交叉注意力(CrossAttention)和前馈网络(Feed-Forward)。(每个子层都包含一个残差连接,每层都进行正则化)

首先,将编码文本通过自注意力层:
H t = Add ⁡ & Norm ⁡ ( Self-Attention ⁡ ( E t ) ) = Add ⁡ & Norm ⁡ ( softmax ⁡ ( E ⁡ t W Q W K ⊤ E t ⊤ d t ) E t W V ) ) \begin{aligned} \mathbf{H}_t& =\operatorname{Add}\&\operatorname{Norm}\left(\operatorname{Self-Attention}(\mathbf{E}_t)\right) \\ &=\operatorname{Add}\&\operatorname{Norm}\left(\operatorname{softmax}\left(\frac{\operatorname{E}_t\mathbf{W}_Q\mathbf{W}_K^\top\mathbf{E}_t^\top}{\sqrt{d_t}}\right)\mathbf{E}_t\mathbf{W}_V)\right) \end{aligned} Ht=Add&Norm(Self-Attention(Et))=Add&Norm(softmax(dt EtWQWKEt)EtWV))
其次,采用交叉注意力将文本与其他模态进行融合:
F m t = Add & Norm ( Cross-Attention m → t ( H t , E m ) ) , = A d d & N o r m ( s o f t m a x ( H t W Q t W K m ⊤ E m ⊤ d t ) E m W V m ) , \begin{aligned} \mathbf{F}_{mt}& =\text{Add}\&\text{Norm}\left(\text{ Cross-Attention}_{m\to t}(\mathbf{H}_t,\mathbf{E}_m)\right), \\ &=\mathrm{Add}\And\mathrm{Norm}\left(\mathrm{~softmax}\left(\frac{\mathrm{H}_t\mathrm{W}_{Q_t}\mathrm{W}_{K_m}^\top\mathrm{E}_m^\top}{\sqrt{d_t}}\right)\mathrm{E}_m\mathrm{W}_{V_m}\right), \end{aligned} Fmt=Add&Norm( Cross-Attentionmt(Ht,Em)),=Add&Norm( softmax(dt HtWQtWKmEm)EmWVm),
然后,通过一个前馈网络层:
Y m t = Add ⁡ & Norm ⁡ ( ReLU ⁡ ( F m t W 1 + b 1 ) W 2 + b 2 ) , \mathbf{Y}_{mt}=\operatorname{Add}\&\operatorname{Norm}\left(\operatorname{ReLU}(\mathbf{F}_{mt}\mathbf{W}_1+b_1)\mathbf{W}_2+b_2\right), Ymt=Add&Norm(ReLU(FmtW1+b1)W2+b2),
获得融合特征 Y m t Y_{mt} Ymt后,同样将 [cls] 令牌作为双模态表征 R m t R_{mt} Rmt,然后将它们传递到一个全连接层:
R ^ m t = F C ( R m t ; θ m t F C ) \hat{R}_{\boldsymbol{mt}}=\mathrm{FC}(R_{\boldsymbol{mt}};\theta_{\boldsymbol{mt}}^{FC}) R^mt=FC(Rmt;θmtFC)
最后,同样应用监督对比损失:
L f u s i o n = − 1 2 N ∑ i = 1 2 N 1 2 N − 1 ∑ j = 1 , j ≠ i 2 N exp ⁡ ( R ^ m t , i ⋅ R ^ m t , j / τ ) ∑ k ∈ A ( k ) exp ⁡ ( R ^ m t , i ⋅ R ^ m t , k / τ ) \mathcal{L}_{fusion}=-\frac1{2N}\sum_{i=1}^{2N}\frac1{2N-1}\sum_{j=1,j\neq i}^{2N}\frac{\exp\left(\hat{R}_{mt,i}\cdot\hat{R}_{mt,j}/\tau\right)}{\sum_{k\in\mathbb{A}(k)}\exp\left(\hat{R}_{mt,i}\cdot\hat{R}_{mt,k}/\tau\right)} Lfusion=2N1i=12N2N11j=1,j=i2NkA(k)exp(R^mt,iR^mt,k/τ)exp(R^mt,iR^mt,j/τ)

4.情感预测

最后通过一个MLP进行情感分析:
y ^ = M L P ( 1 2 ( R a t ⊕ R v t ) ; θ M L P ) , \boldsymbol{\hat{y}}=\mathrm{MLP}\left(\frac12(R_{at}\oplus R_{vt});\theta^{MLP}\right), y^=MLP(21(RatRvt);θMLP),
预测损失:
L task  = 1 N ∑ i = 1 N ∣ y i − y ^ i ∣ , \mathcal{L}_\text{task }=\frac1N\sum_{i=1}^N\lvert y_i-\hat{y}_i\rvert, Ltask =N1i=1Nyiy^i,
总损失:
L = L t a s k + ω 1 ( L t a + L t v ) + ω 2 L f u s i o n , \mathcal{L}=\mathcal{L}_{task}+\omega_1(\mathcal{L}_{ta}+\mathcal{L}_{tv})+\omega_2\mathcal{L}_{fusion}, L=Ltask+ω1(Lta+Ltv)+ω2Lfusion,

实验分析

  • 对比实验。HSCL 在 CMU-MOSI 与 CMU-MOSEI 数据集上进行了实验,结果表明 HSCL 在多数指标上优于基线模型。

image-20241010144352115

  • 消融实验。进行了一系列的消融实验,探究不同模态的影响、层次对比学习的影响、标签信息在对齐过程中的影响。

image-20241010145331823

image-20241010145403006

😃😃😃


http://www.mrgr.cn/news/61783.html

相关文章:

  • Nginx 的讲解和案例示范
  • 【鸿蒙HarmonyOS实战:通过华为应用市场上架测试版App实现HBuilder X打包的UniApp项目的app转hap教程(邀请码)方式教程详解】
  • Python毕业设计选题:基于Web学生会网站的设计与实现-django
  • 一篇文章入门傅里叶变换
  • 10个你应该立即卸载的VS Code扩展
  • 《机器学习by周志华》学习笔记-神经网络-03多层网络学习算法之误差逆传播算法
  • 没有对象来和我手撕红黑树吧
  • keepalived+脚本抢占模式和非抢占模式
  • ComfyUI 轻松实现二次元线稿上色,快速生成精美动漫图像(附工作流)
  • 直播美颜SDK平台开发指南:美颜API的应用与性能提升方案详解
  • 图解Redis 07 | HyperLogLog数据类型的原理及应用场景
  • 供需指标(Supply and Demand ),供给与需求,寻找支撑压力位神器 MT4免费公式!
  • DICOM标准:深入详解DICOM数据模型,理解DICOM数据模型
  • SAP系统与快递100系统集成案例
  • Helm全链路精通:从入门到实战,Kubernetes应用管理新高度
  • 机器学习中回归任务、分类任务常用的算法
  • CSP/信奥赛C++刷题训练:经典前缀和例题(4):洛谷P3662:Why Did the Cow Cross the Road II S
  • 技术星河中的璀璨灯塔 —— 青云交的非凡成长之路
  • 2024网鼎杯青龙组Web+Misc部分WP
  • 群控系统服务端开发模式-应用开发-业务架构逻辑开发Base开发总结
  • 【测试】——接口测试入门
  • 双十一狂欢节有哪些数码好物值得入手,盘点五款入手不亏的好物!
  • 从0开始搭建一个生产级SpringBoot2.0.X项目(二)SpringBoot应用连接数据库集成mybatis-plus
  • 计算结构力学:多自由度振动系统
  • 研究线性模型训练中损失变化的规律和最优学习率的影响
  • 2024 Rust现代实用教程:1.3获取rust的库国内源以及windows下的操作