目录
1. CLGSI: A Multimodal Sentiment Analysis Framework based on Contrastive Learning Guided by Sentiment Intensity
- 期刊/会议:NAACL 2024
- 代码:https://github.com/AZYoung233/CLGSI
优化点
· 不同样本对的情感强度差异
。大多数基于对比学习的现有MSA方法在对比学习的表示空间中,对不同样本对的学习一视同仁,缺乏对表示空间中具有 不同情感强度差异的样本对 分布的深入学习,应针对情感强度差异不同的样本对给予 不同程度的关注。
· 表示信息的融合
。通过对比学习训练得到的模态表示仅进行 简单拼接 后输入MLP,可能限制模型的泛化性能,应进一步探索表示信息融合的方式。
主要思想
· Contrastive Learning Guided by Sentiment Intensity (CLGSI,情感强度主导的对比学习)
:对比学习的正、负样本对根据 情感强度差异 进行选择,并相应地 分配权重,从而在对比学习过程中引入更细粒度的信息。
· Global-Local-Fine-Knowledge(GLFK,全局-局部-精细知识)
:多模态表示融合机制。融合通过对比学习训练得到的各模态表示,以提取 不同模态间的共有特征。同时,使用 MLP 处理每个模态编码器的输出,以提取 各模态的特定特征。最终,通过对共有特征和特定特征的联合学习来预测情感强度。
模型整体结构
F
c
∗
F_{c}^{*}
Fc∗表示共有特征,
I
v
s
I_{v}^{s}
Ivs、
I
t
s
I_{t}^{s}
Its和
I
a
s
I_{a}^{s}
Ias分别表示与每个模态相关的特定特征。
公式
I t ∈ R l t × d t I_{t} \in \mathbb{R}^{l_{t} \times d_{t}} It∈Rlt×dt、 I v ∈ R l v × d v I_{v} \in \mathbb{R}^{l_{v} \times d_{v}} Iv∈Rlv×dv和 I a ∈ R l a × d a I_{a} \in \mathbb{R}^{l_{a} \times d_{a}} Ia∈Rla×da分别表示样本的文本、视频和音频模态的编码表示。其中, l m ∈ { t , v , a } l_{m_{\in}\{t, v, a\}} lm∈{t,v,a}表示每种模态的序列长度, d m ∈ { t , v , a } d_{m_{\in}\{t, v, a\}} dm∈{t,v,a}表示对应的特征向量维度。
【Common Feature Extraction】:主要目的是 将来自不同模态的信息投影到同一表示空间中。
· 对于文本模态,使用 BERT 的 [CLS] 向量
I
t
c
∈
R
1
×
d
t
I_{t}^{c} \in \mathbb{R}^{1 \times d_{t}}
Itc∈R1×dt 作为公共向量表示。
· 对于视频和音频模态,分别使用Transformer编码器最后一层的最后一个输出向量
I
v
c
∈
R
1
×
d
v
I_{v}^{c} \in \mathbb{R}^{1 \times d_{v}}
Ivc∈R1×dv 和
I
a
c
∈
R
1
×
d
a
I_{a}^{c} \in \mathbb{R}^{1 \times d_{a}}
Iac∈R1×da 作为公共向量表示。
· 这三个向量经过全连接(FC)层和 ReLU 激活函数转换为相同维度
T
c
∈
R
d
c
×
1
T_{c} \in \mathbb{R}^{d_{c} \times 1}
Tc∈Rdc×1、
V
c
∈
R
d
c
×
1
V_{c} \in \mathbb{R}^{d_{c} \times 1}
Vc∈Rdc×1 和
A
c
∈
R
d
c
×
1
A_{c} \in \mathbb{R}^{d_{c} \times 1}
Ac∈Rdc×1。
· 将
V
c
V_{c}
Vc、
T
c
T_{c}
Tc 和
A
c
A_{c}
Ac 堆叠成一个新的矩阵
F
c
=
[
V
c
,
T
c
,
A
c
]
∈
R
d
c
×
3
F_{c}=\left[V_{c}, T_{c}, A_{c}\right] \in \mathbb{R}^{d_{c} \times 3}
Fc=[Vc,Tc,Ac]∈Rdc×3,作为GLFK的输入,从而有利于提取不同模态之间的共同特征。
GLFK 是一种受人类认知过程启发的新颖表示融合机制,由四个组成部分构成:全局(Global)、局部(Local)、精细(Fine)和知识(Knowledge)。
- 阅读摘要,获取对研究的 整体认知。这对应于 GLFK 的
全局(Global)
组件,在该组件中,我们使用 1×1 卷积操作对信息进行全局压缩。因此,矩阵 F c ∈ R d c × 3 F_{c} \in \mathbb{R}^{d_{c} \times 3} Fc∈Rdc×3 被压缩为 F c 1 ∈ R d c × 1 F_{c}^{1} \in \mathbb{R}^{d_{c} \times 1} Fc1∈Rdc×1,从而有助于整体内容的理解。 - 快速浏览 论文,以掌握主要工作,然后进行 深入阅读,以理解技术细节。这对应于 GLFK 的
局部(Local)
和精细(Fine)
组件。具体而言,我们利用两个 1×1 卷积操作,将 F c 1 ∈ R d c × 1 F_{c}^{1} \in \mathbb{R}^{d_{c} \times 1} Fc1∈Rdc×1 扩展为 F c 2 ∈ R d c × β / 2 F_{c}^{2} \in \mathbb{R}^{d_{c} \times \beta / 2} Fc2∈Rdc×β/2,随后进一步扩展为 F c 3 ∈ R d c × β F_{c}^{3} \in \mathbb{R}^{d_{c} \times \beta} Fc3∈Rdc×β,其中超参数 β \beta β 在本文中设定为 16。 - 读者已对论文形成深刻理解并掌握了相关知识,最后对知识进行 总结,以获得精炼的见解。这一过程对应于 GLFK 的
知识(Knowledge)
组件,在此阶段,我们使用 1×1 卷积操作将 F c 3 ∈ R d c × β F_{c}^{3} \in \mathbb{R}^{d_{c} \times \beta} Fc3∈Rdc×β 还原为 F c ∗ ∈ R d c × 1 F_{c}^{*} \in \mathbb{R}^{d_{c} \times 1} Fc∗∈Rdc×1。 F c ∗ F_{c}^{*} Fc∗ 为不同模态之间的公共特征。
【Specific Feature Extraction】:主要目的是 高效捕捉单一模态内的全面信息。
· 对于给定的模态
I
m
∈
R
l
m
×
d
m
,
m
∈
{
t
,
v
,
a
}
I_{m} \in \mathbb{R}^{l_{m} \times d_{m}}, m \in\{t, v, a\}
Im∈Rlm×dm,m∈{t,v,a},我们首先沿着序列长度方向使用 全局平均池化(GAP),将
I
m
I_{m}
Im 压缩为
I
m
1
∈
R
1
×
d
m
I_{m}^{1} \in \mathbb{R}^{1 \times d_{m}}
Im1∈R1×dm。
· 应用两步非线性变换,将
I
m
1
I_{m}^{1}
Im1 投影到一个新的低维空间。
I
m
s
=
σ
2
(
W
2
σ
1
(
W
1
I
m
1
T
)
)
,
m
∈
{
t
,
v
,
a
}
I_{m}^{s}=\sigma_{2}\left(W_{2} \sigma_{1}\left(W_{1} I_{m}^{1 \mathrm{~T}}\right)\right), m \in\{t, v, a\}
Ims=σ2(W2σ1(W1Im1 T)),m∈{t,v,a} 其中,
W
1
∈
R
(
d
m
/
8
)
×
d
m
,
W
2
∈
R
d
s
×
(
d
m
/
8
)
,
I
m
s
∈
R
d
s
×
1
W_{1} \in \mathbb{R}^{\left(d_{m} / 8\right) \times d_{m}}, W_{2} \in \mathbb{R}^{d_{s} \times\left(d_{m} / 8\right)}, I_{m}^{s} \in \mathbb{R}^{d_{s} \times 1}
W1∈R(dm/8)×dm,W2∈Rds×(dm/8),Ims∈Rds×1,
σ
1
\sigma_{1}
σ1 代表 ReLu 函数,
σ
2
\sigma_{2}
σ2 代表 Sigmoid 函数。
【Contrastive Learning guided by Sentiment Intensity】:
1. 正负样本对的选择:
① 通过计算对应样本的 情感强度差异 来确定初始的正负样本对。我们在对比学习过程中使用统一映射将标签值转换到 [−1,1]。给定批次
B
B
B, 我们使用以下公式计算样本
i
∈
B
i \in B
i∈B 与不同样本之间的情感强度差异:
D
(
i
,
j
)
=
∣
y
i
−
y
j
∣
,
j
∈
B
&
j
≠
i
D_{(i, j)}=\left|y_{i}-y_{j}\right|, j \in B \& j \neq i
D(i,j)=∣yi−yj∣,j∈B&j=i 其中,
y
i
y_{i}
yi 和
y
j
y_{j}
yj 分别表示样本 i 和 j 的情感强度标签。我们使用 情感强度差异阈值
κ
\kappa
κ(本论文中超参数设为 0.4)来判断样本 j 是否被分类为样本 i 的初始正样本或负样本。
{
D
(
i
,
j
)
>
κ
,
(
i
,
j
)
∈
initial negative pairs
D
(
i
,
j
)
≤
κ
,
(
i
,
j
)
∈
initial positive pairs
\left\{\begin{array}{l} D_{(i, j)}>\kappa,(i, j) \in \text { initial negative pairs } \\ D_{(i, j)} \leq \kappa,(i, j) \in \text { initial positive pairs } \end{array}\right.
{D(i,j)>κ,(i,j)∈ initial negative pairs D(i,j)≤κ,(i,j)∈ initial positive pairs ② 基于模态内和模态间的情况,我们对正负样本对进行了详细划分。
· 模态内样本对:
P
intra
i
=
{
(
T
c
i
,
T
c
j
)
,
(
V
c
i
,
V
c
j
)
,
(
A
c
i
,
A
c
j
)
∣
(
i
,
j
)
∈
initial positive pairs
}
\begin{array}{r} P_{\text {intra }}^{i}=\left\{\left(T_{c}^{i}, T_{c}^{j}\right),\left(V_{c}^{i}, V_{c}^{j}\right),\left(A_{c}^{i}, A_{c}^{j}\right)\right. \mid(i, j) \in \text { initial positive pairs }\} \end{array}
Pintra i={(Tci,Tcj),(Vci,Vcj),(Aci,Acj)∣(i,j)∈ initial positive pairs }
N
i
n
t
r
a
i
=
{
(
T
c
i
,
T
c
k
)
,
(
V
c
i
,
V
c
k
)
,
(
A
c
i
,
A
c
k
)
∣
(
i
,
k
)
∈
initial negative pairs
}
\begin{array}{r} N_{i n t r a}^{i}=\left\{\left(T_{c}^{i}, T_{c}^{k}\right),\left(V_{c}^{i}, V_{c}^{k}\right),\left(A_{c}^{i}, A_{c}^{k}\right)\right. \mid(i, k) \in \text { initial negative pairs }\} \end{array}
Nintrai={(Tci,Tck),(Vci,Vck),(Aci,Ack)∣(i,k)∈ initial negative pairs } · 模态间样本对:
P
inter
i
=
{
(
V
c
i
,
T
c
i
)
,
(
V
c
i
,
A
c
i
)
,
(
T
c
i
,
A
c
i
)
}
∪
{
(
V
c
i
,
T
c
j
)
,
(
T
c
i
,
V
c
j
)
,
(
V
c
i
,
A
c
j
)
,
(
A
c
i
,
V
c
j
)
,
(
T
c
i
,
A
c
j
)
,
(
A
c
i
,
T
c
j
)
∣
(
i
,
j
)
∈
initial positive pairs
}
\begin{array}{r} P_{\text {inter }}^{i}=\left\{\left(V_{c}^{i}, T_{c}^{i}\right),\left(V_{c}^{i}, A_{c}^{i}\right),\left(T_{c}^{i}, A_{c}^{i}\right)\right\} \cup \left\{\left(V_{c}^{i}, T_{c}^{j}\right),\left(T_{c}^{i}, V_{c}^{j}\right),\left(V_{c}^{i}, A_{c}^{j}\right),\right. \left(A_{c}^{i}, V_{c}^{j}\right),\left(T_{c}^{i}, A_{c}^{j}\right),\left(A_{c}^{i}, T_{c}^{j}\right) \\ \mid(i, j) \in \text { initial positive pairs }\} \end{array}
Pinter i={(Vci,Tci),(Vci,Aci),(Tci,Aci)}∪{(Vci,Tcj),(Tci,Vcj),(Vci,Acj),(Aci,Vcj),(Tci,Acj),(Aci,Tcj)∣(i,j)∈ initial positive pairs }
N
inter
i
=
{
(
V
c
i
,
T
c
k
)
,
(
T
c
i
,
V
c
k
)
,
(
V
c
i
,
A
c
k
)
,
(
A
c
i
,
V
c
k
)
,
(
T
c
i
,
A
c
k
)
,
(
A
c
i
,
T
c
k
)
∣
(
i
,
k
)
∈
initial negative pairs
}
\begin{array}{r} N_{\text {inter }}^{i}=\left\{\left(V_{c}^{i}, T_{c}^{k}\right),\left(T_{c}^{i}, V_{c}^{k}\right),\left(V_{c}^{i}, A_{c}^{k}\right),\right. \left(A_{c}^{i}, V_{c}^{k}\right),\left(T_{c}^{i}, A_{c}^{k}\right),\left(A_{c}^{i}, T_{c}^{k}\right) \mid(i, k) \in \text { initial negative pairs }\} \end{array}
Ninter i={(Vci,Tck),(Tci,Vck),(Vci,Ack),(Aci,Vck),(Tci,Ack),(Aci,Tck)∣(i,k)∈ initial negative pairs } 其中,
T
c
i
,
V
c
i
,
A
c
i
{T}_{c}^{i}, V_{c}^{i}, A_{c}^{i}
Tci,Vci,Aci 分别对应样本 i 在三种不同模态下的表示。
通过结合样本 i 的模态内样本对和模态间样本对,在对比学习过程中,我们得到样本 i 的正样本对
P
i
P^{i}
Pi 和负样本对
N
i
N^{i}
Ni。
P
i
=
P
intra
i
∪
P
inter
i
N
i
=
N
intra
i
∪
N
inter
i
\begin{array}{l} P^{i}=P_{\text {intra }}^{i} \cup P_{\text {inter }}^{i} \\ N^{i}=N_{\text {intra }}^{i} \cup N_{\text {inter }}^{i} \end{array}
Pi=Pintra i∪Pinter iNi=Nintra i∪Ninter i
2. 对比学习: 在确定正负样本对后,我们尝试基于 情感强度差异 将细粒度信息融入对比学习训练过程中。
例如,给定样本 𝑖、𝑗 和 𝑘,其中样本 𝑖 与样本 𝑗 和样本 𝑘 之间的情感强度差异分别为 0.5 和 1.6,则 (𝑖,𝑗) 和 (𝑖,𝑘) 都是样本 𝑖 的初始负样本对。然而,样本 𝑖 与样本 𝑘 之间的情感强度差异明显更大。因此,在计算对比损失时,我们为 (𝑖,𝑘) 赋予更高的权重,使样本 𝑖 和样本 𝑘 在表示空间中的距离比样本 𝑖 和样本 𝑗 更远。在 CLGSI 方法中,我们设计了一个权重函数:
ω
(
i
,
j
)
=
{
∣
tanh
(
D
(
i
,
j
)
−
2
κ
)
∣
×
1.5
,
(
i
,
j
)
∈
initial positive pairs
∣
tanh
(
D
(
i
,
j
)
)
∣
×
1.5
,
(
i
,
j
)
∈
initial negative pairs
\omega_{(i, j)}=\left\{\begin{array}{l} \left|\tanh \left(D_{(i, j)}-2 \kappa\right)\right| \times 1.5, \quad(i, j) \in \text { initial positive pairs } \\ \left|\tanh \left(D_{(i, j)}\right)\right| \times 1.5, \quad(i, j) \in \text { initial negative pairs } \end{array}\right.
ω(i,j)={
tanh(D(i,j)−2κ)
×1.5,(i,j)∈ initial positive pairs
tanh(D(i,j))
×1.5,(i,j)∈ initial negative pairs
为便于表达,我们将模态内和模态间的对比学习整合到同一个公式中。对于给定的批次 𝐵,其对比损失定义如下:
L
c
l
=
−
E
i
∈
B
log
∑
(
a
,
p
)
∈
P
i
δ
(
a
,
p
)
∑
(
a
,
q
)
∈
P
i
∪
N
i
δ
(
a
,
q
)
L_{c l}=-\mathbb{E}_{i \in B} \log \frac{\sum_{(a, p) \in P^{i}} \delta(a, p)}{\sum_{(a, q) \in P^{i} \cup N^{i}} \delta(a, q)}
Lcl=−Ei∈Blog∑(a,q)∈Pi∪Niδ(a,q)∑(a,p)∈Piδ(a,p) 其中,
δ
(
a
,
p
)
=
e
[
w
(
i
,
j
)
∗
sim
(
a
,
p
)
τ
]
\delta(a, p)=e^{\left[w_{(i, j)} * \frac{\operatorname{sim}(a, p)}{\tau}\right]}
δ(a,p)=e[w(i,j)∗τsim(a,p)] ,
w
(
i
,
j
)
w_{(i, j)}
w(i,j) 为样本对的权重。
【总体学习目标】:
在提取通用特征和特定特征后,我们将通用特征向量
F
c
∗
F_{c}^{*}
Fc∗ 和三种模态的特定特征向量
I
v
s
,
I
t
s
,
I
a
s
I_{v s}, I_{t s}, I_{a s}
Ivs,Its,Ias 进行拼接,得到
F
∗
=
[
I
v
s
;
I
t
s
;
I
a
s
;
F
c
∗
]
∈
R
d
∗
×
1
F^{*}=\left[I_{v s} ; I_{t s} ; I_{a s} ; F_{c}^{*}\right] \in \mathbb{R}^{d^{*} \times 1}
F∗=[Ivs;Its;Ias;Fc∗]∈Rd∗×1,其中
d
∗
=
3
d
s
+
d
c
d^{*}=3 d_{s}+d_{c}
d∗=3ds+dc。然后将
F
∗
F^{*}
F∗ 输入一个三层 MLP 以预测情感强度值
y
^
i
\hat{y}_{i}
y^i。使用平均绝对误差(MAE)计算 MSA 任务的损失,总体损失函数为:
L
t
a
s
k
=
1
N
b
∑
i
N
b
∣
y
i
−
y
^
i
∣
L_{t a s k}=\frac{1}{N_{b}} \sum_{i}^{N_{b}}\left|y_{i}-\hat{y}_{i}\right|
Ltask=Nb1i∑Nb∣yi−y^i∣
L
overall
=
L
task
+
γ
L
cl
L_{\text {overall }}=L_{\text {task }}+\gamma L_{\text {cl }}
Loverall =Ltask +γLcl