阅读目标
2021-CVPR上面利用因果理论(干预)来解决数据集的选择性偏置(selection bias)问题的,在2021-SIGIR上面也有一篇类似的,Deconfounded Video Moment Retrieval with Causal Intervention,也使用因果理论解决了bias问题,所以这次的学习目标:
- 对比两篇文章在动机和方法上的不同
- 总结vmr领域应对bias的方法
阅读回答
- 为了方便,将Deconfounded Video Moment Retrieval with Causal
Intervention文章简称为DCM,把Interventional Video Grounding with Dual Contrastive Learning文章简称为IVG-DCL
DCM | IVG-DCL | |
---|---|---|
动机 | 模型利用数据集偏置而忽略了视频内容,降低泛化性能 | 模型会因为数据集的选择性偏置而学习到虚假关系 |
方法 | 引入时序因素L作为干扰因子 | 引入文本单词频率作为干扰因子 |
因果模型 | 相对简单,如下图 | 复杂,如下下图 |
- 如下图所示,其中红色的部分代表目前还没有人探索的领域
摘要
动机:当前的方法可能会因为数据集的选择性偏置而学习到一些虚假的关系
解决方案:1)从因果关系的角度,提出干预视频定位 I V G IVG IVG,利用基于结构化因果模型和do算子的后门调整来对选择性偏置解惑,然后使用一个简单有效的方式来接近未被观察到的干扰因子 2)提出双对比学习 D C L DCL DCL,通过最大化查询语句和视频片段间、及目标片段和其他片段间的互信息,来更好的对齐视频和文本
背景知识:上面加粗的名词,需要一定的知识储备才能理解,这里来浅薄地解释下
1)选择性偏置,在引入中会跟随具体例子讲到,这里暂不做赘述
2)干预是指,原本需要衡量变量 X X X和 Y Y Y之间的关系 P ( Y = y ∣ X = x ) P(Y=y|X=x) P(Y=y∣X=x),其中 X X X是自变量, Y Y Y是因变量(这里比较重要,如果要使用因果理论自己来分析新问题的话,需要首先搞清楚这一点),现在使用干预,则删除所有指向自变量 X X X的边,来计算 P ( Y = y ∣ d o ( X = x ) ) P(Y=y|do(X=x)) P(Y=y∣do(X=x)),前者是条件概率,不会改变 X X X和 Y Y Y之间的关系和分布,而干预则会改变,总结来说,干预的大概是说我要通过删除指向 X X X的点,来重新衡量关注变量 X X X和 Y Y Y之间的关系
3)后门调整,这里涉及到多个概念,首先是后门路径,对变量 X X X和 Y Y Y,以指向自变量 X X X的箭头为开始的路径称为后门路径(严格来说我也不懂);若 Z Z Z集合中的节点不是自变量 X X X的后代节点,且 Z Z Z阻断了 X X X和 Y Y Y之间所有的后门路径,那么 Z Z Z就满足关于 X X X和 Y Y Y的后门准则;假如我们找到了这样的 Z Z Z,那么就可以利用 Z Z Z来计算 X X X和 Y Y Y的干预:
P ( Y = y ∣ d o ( X = x ) ) = P ( Y = y ∣ X = x , Z = z ) P ( Z = z ) P(Y=y|do(X=x)) = P(Y=y|X=x, Z=z)P(Z=z) P(Y=y∣do(X=x))=P(Y=y∣X=x,Z=z)P(Z=z)
问:所以这个公式是说,我们计算确定情况下( x , y x,y x,y), X X X和 Y Y Y的关系吗?
引入
数据集的选择性偏置,本义是说用于分析的数据不能保证随机化的方法获得,因此样本中分析的结果不能代表总体特征;如果在样本的选择过程中依赖了某个变量,而这个变量恰好是你关注的变量的共同结果,就会导致选择性偏差
比如vmr任务中,我们要关注视频片段
V
V
V和查询语句
Q
Q
Q这两个变量,然而我们所用于训练的
V
V
V和
Q
Q
Q,可能都依赖于下图所示的偏置:
这张图是说,我们统计’people’和’vacuum’分别与动词’hold‘及’fix’的相关性,得到了右边两张图(右上图是’people’和’vacuum’与动词’hold‘的相关性,右下图是与’fix’的相关性),发现与’hold‘的相关性更高,那么模型就有可能学习到这一偏置,在进行左图中’Query 2: People are fixing a vacuum. '的预测时,有可能就会预测为’People are holding a vacuum. '对应的片段
那么再回到选择性偏置的含义,为什么上述这种偏置是一种选择性偏置呢?因为右图的这两种相关性,其实是我们要观察的变量视频片段 V V V和查询语句 Q Q Q的一个共同结果,所以我们对 V V V和 Q Q Q的观察中就存在选择性偏置,导致我们的预测会出现问题
解决选择性偏置的方法:
方法 | 论文 |
---|---|
re-sampling | 2019-CVPR-Class-balanced loss based on effective number of samples |
re-weighting | 2018-ECCV-Exploring the limits of weakly supervised pretraining |
pre-trained knowledge | - |
方法
主要分三部分介绍:pipeline+两个创新点(对比学习MI+因果理论)
Pipeline
如下图,首先对视频和文本进行编码,然后在查询和视频片段间、以及目标片段和其他片段间利用最大化互信息来构建损失
L
q
v
,
L
v
v
L_{qv}, L_{vv}
Lqv,Lvv,进而进行文本特征和视觉特征的融合,然后利用干预的方式计算
P
(
S
,
E
∣
Q
,
V
)
P(S,E|Q,V)
P(S,E∣Q,V)(接下来经过推导会变换成其他形式),获得不同时刻成为开始点和结束点的概率值(测试阶段到这里结束),利用这个概率与真实标签间构建交叉熵损失
L
s
,
L
e
L_{s}, L_{e}
Ls,Le
对比学习部分
当得到上下文处理过的视觉表示
V
′
V^{'}
V′和查询表示
Q
′
Q^{'}
Q′后,将目标片段间的视觉特征表示为
V
a
′
V_a^{'}
Va′,即正样本,负样本表示为
V
b
′
V_b^{'}
Vb′,使用如下公式构建互信息:
I
θ
v
q
(
q
,
V
′
)
:
=
E
V
a
′
[
s
p
(
C
(
q
,
V
′
)
)
]
−
E
V
b
′
[
s
p
(
C
(
q
,
V
′
)
)
]
I_\theta^{vq}(q, V^{'}):=E_{V_a^{'}}[sp(C(q, V^{'}))]-E_{V_b^{'}}[sp(C(q, V^{'}))]
Iθvq(q,V′):=EVa′[sp(C(q,V′))]−EVb′[sp(C(q,V′))]
其中,
C
C
C表示MI分类器,
s
p
sp
sp表示softplus激活函数,公式的前半部分构造了正对的分数,后半部分构建了负对的分数,然后对比损失如下:
L
v
q
=
−
I
θ
v
q
L_{vq}=-I_\theta^{vq}
Lvq=−Iθvq
因此能够满足我们最大化互信息的目标。同时,我们还能够在目标片段和其他片段之间构建类似的损失函数:
L
v
v
=
−
I
θ
v
v
(
s
)
−
I
θ
v
v
(
e
)
L_{vv}=-I_\theta^{vv(s)}-I_\theta^{vv(e)}
Lvv=−Iθvv(s)−Iθvv(e)
因果理论部分
干预因果模型的构建:首先画出没有干预的因果模型,
Q
Q
Q和
V
V
V作为输入,生成跨模态表示
X
X
X,从而生成预测
S
S
S和
E
E
E:
现在发现数据集中存在选择性偏置
U
U
U,而
U
U
U会导致出现一个干扰因子
Z
Z
Z,比如我们在引入中介绍到的例子,其中相关性就是偏置
U
U
U,而
U
U
U引起的一些因素,比如不同活动在数据集中出现的平吕,就可以看作是
Z
Z
Z(自己感觉的,可能不严谨),也就是说
U
U
U可以视为
Z
Z
Z的原因,
Z
Z
Z则作为
U
U
U的表现参与到因果模型中:
原本的
Z
Z
Z会对查询
Q
Q
Q和视频
V
V
V均产生影响,然而我们现在使用了干预的方式,就会切断指向自变量
Q
Q
Q和
V
V
V的边,重新构造
Z
Z
Z到因变量
S
S
S和
E
E
E的边:
在构造
Z
Z
Z到
S
S
S和
E
E
E的过程中,作者又引入了一个调节器
D
D
D,这个
D
D
D可以看作是为了适应更灵活的网络结构而存在的,它会与
X
X
X和
Z
Z
Z都建立联系,也就是说,我们允许跨模态表示和干扰因子,通过影响其他影响因子,来影响最终的预测:
模型就这样构造好了,于是我们利用这个模型来计算我们最终的目标,在
Q
Q
Q和
V
V
V条件下的预测
S
S
S和
E
E
E,
P
(
S
,
E
∣
Q
,
V
)
P(S,E|Q,V)
P(S,E∣Q,V),在没有干预的情况下,也就是不切断这两条线,那么应该按照如下公式计算:
P
(
S
,
E
∣
Q
,
V
)
=
∑
z
P
(
S
,
E
∣
Q
,
V
,
z
)
P
(
z
∣
Q
,
V
)
P(S,E|Q,V)=\sum_z P(S,E|Q,V,z)P(z|Q,V)
P(S,E∣Q,V)=∑zP(S,E∣Q,V,z)P(z∣Q,V)
这个公式之所以成立,可以利用条件概率公式和全概率公式推导验证
现在我们要进行干预,利用后门调整策略,我们就能整理成如下形式:
P
(
S
,
E
∣
d
o
(
Q
,
V
)
)
=
∑
z
P
(
S
,
E
∣
d
o
(
Q
,
V
)
,
z
)
p
(
z
∣
d
o
(
Q
,
V
)
)
P(S,E|do(Q,V))=\sum_z P(S,E|do(Q,V),z)p(z|do(Q,V))
P(S,E∣do(Q,V))=∑zP(S,E∣do(Q,V),z)p(z∣do(Q,V)),这一步就是为因变量
Q
Q
Q和
V
V
V加上do算子
由于
Q
Q
Q和
V
V
V和干扰因子
Z
Z
Z之间没有关联,于是:
P
(
S
,
E
∣
d
o
(
Q
,
V
)
)
=
∑
z
P
(
S
,
E
∣
d
o
(
Q
,
V
)
,
z
)
p
(
z
)
=
∑
z
P
(
S
,
E
∣
d
o
(
X
)
,
z
)
p
(
z
)
P(S,E|do(Q,V))=\sum_z P(S,E|do(Q,V),z)p(z)=\sum_z P(S,E|do(X),z)p(z)
P(S,E∣do(Q,V))=∑zP(S,E∣do(Q,V),z)p(z)=∑zP(S,E∣do(X),z)p(z)(这几个公式中,z的概率都换成了小写p,但其实大写小写都是可以的,这里作者可能只是为了区分)
所以现在的关键,就是在构造 Z Z Z这个变量,并计算它的概率 P ( z ) P(z) P(z),其实在真实的vmr场景中,会出现各种各样的bias,比如在Uncovering Hidden Challenges in Query-Based Video Moment Retrieval文章中,就提到了动作和时序标注两类偏置(我写了一篇阅读笔记:【论文阅读】Uncovering Hidden Challenges in Query-Based Video Moment Retrieval)
这篇文章中,作者使用查询文本中词汇的角色来作为代理干扰因子,具体来说,他构造了主谓宾三个词汇表,然后对于每个文本,提取出其中的主谓宾,就可以在这个词汇表中找到对应的embedding,于是
Z
Z
Z的表示就有了:
z
=
g
(
e
m
b
e
d
(
z
)
)
z=g(embed(z))
z=g(embed(z)),其中
g
g
g表示一个线性映射层
然后再计算这次单词在每个词汇表内出现的频率,用这个频率来表示概率:
p
(
z
)
=
#
z
∑
i
∈
C
#
i
,
∀
z
∈
C
p(z)=\frac{\#z}{\sum_{i \in C}\# i}, \forall z \in C
p(z)=∑i∈C#i#z,∀z∈C,其中
#
i
\# i
#i表示某个单词/词组在词汇表
C
C
C中出现的次数
在得到
z
z
z的表示和
p
(
z
)
p(z)
p(z)后,我们就可以计算我们的目标:
P
(
S
,
E
∣
d
o
(
X
=
X
)
)
=
∑
z
P
(
S
,
E
∣
X
+
z
)
p
(
z
)
≈
P
(
S
,
E
∣
∑
z
X
+
z
)
p
(
z
)
P(S,E|do(X=X))=\sum_z P(S,E|X+z)p(z)\approx P(S,E|\sum_z X+z)p(z)
P(S,E∣do(X=X))=∑zP(S,E∣X+z)p(z)≈P(S,E∣∑zX+z)p(z),此公式中出现的
+
+
+表示的是向量之间的广播加法