论文链接地址
收录会议:CVPR—2020
作者信息:Thao Minh Le, Vuong Le, Svetha Venkatesh, and Truyen Tran
文章主要贡献:
- 引入层次化条件关系网络(HCRN),捕捉复杂的视频内容和时间关系。
- 提高视频问答的准确性和效率
0.摘要
视频问答(VideoQA)具有挑战性,因为它需要建模能力来提取动态视觉元素、远距离关系,并将它们与语言概念关联起来。我们引入了一个通用的可重用神经单元,称为条件关系网络(CRN),作为构建用于视频表示和推理的更复杂结构的基础模块。CRN以张量对象数组和一个条件特征作为输入,并计算编码后的输出对象数组。模型构建变成了复制、重新排列和堆叠这些可重用单元的简单练习,用于多样化的模态和上下文信息。因此,这种设计支持高阶关系和多步推理。我们对VideoQA的架构是一个CRN层次结构,其分支代表子视频或片段,所有分支共享相同的问题作为上下文条件。我们在知名数据集上的评估取得了新的最佳结果,展示了构建一个通用推理单元对于复杂领域如VideoQA的影响
1.介绍
回答有关视频的自然问题是认知能力的强大证明。这项任务涉及获取和操纵时空视觉表征,由语言线索的组合语义指导。由于问题可能无限制,VideoQA 需要深入的建模能力来编码并表现关键视频属性,如对象持久性、运动轮廓、持续动作和不同长度的时间关系,以层次化的方式进行。对于VideoQA而言,理想的视觉表征应该是针对问题的并且准备好回答的。
当前针对问答建模视频的方法是构建神经架构,其中每个子系统要么为特定的定制目的设计,要么针对特定的数据模式。由于这种特殊性,这种手工制作的架构往往在数据模式、视频长度或问题类型(例如帧QA与动作计数)变化时不是最优的。这导致了异构网络的增加。
在这项工作中,我们提出了一个通用的可重用神经单元,称为条件关系网络(CRN),它封装并将对象数组转换为在上下文特征下的新数组。该单元计算输入对象之间的稀疏高阶关系,并通过指定的上下文调节编码(见图2)。CRN的灵活性及其封装设计使其可以被复制和分层,以形成深层次的层次化条件关系网络(HCRN),方法简单直接。因此,堆叠的单元提供了从视频对象中提炼关系知识的上下文化细化——它以分阶段的方式结合外观特征与剪辑活动流和语言上下文,并随后整合来自整个视频运动和语言特征的上下文。得到的HCRN是均匀的,与InceptionNet、ResNet和FiLM等网络的设计哲学一致。
CRN的层次结构如下:在最低层次上,CRN编码剪辑中帧外观的关系,并将剪辑运动作为上下文整合;这一输出在下一阶段由CRN处理,现在整合语言上下文;在接下来的阶段,CRN捕获剪辑编码之间的关系,并将视频运动作为上下文整合;在最后阶段,CRN将视频编码与语言特征作为上下文整合(见图3)。通过允许CRN层次化堆叠,模型自然支持视频中的层次化结构和关系推理;通过允许适当的上下文分阶段引入,模型处理多模态融合和多步推理。对于长视频,可以添加更多层次的层次,以实现对远程帧之间关系的编码。
我们在主要的 VideoQA 数据集中展示了 HCRN 回答问题的能力。这种具有四层 CRN 单元的层次结构在所有 VideoQA 任务中都取得了良好的答案准确率。值得注意的是,它在涉及外观、运动、状态转换、时间关系或动作重复的问题上表现始终如一,证明了该模型可以分析并结合这些通道中的所有信息。此外,HCRN 在更长视频上的扩展性很好,只需增加一个额外的层次。图 1 展示了几个代表性案例,这些案例对于基线的平面视觉-问题交互是困难的,但可以被我们的模型处理。我们的模型和结果展示了构建支持原生多模态交互的通用神经推理单元在提高 VideoQA 模型的鲁棒性和泛化能力方面的影响。
2.相关工作
我们提出的 HCRN 模型通过解决两个关键挑战,推动了 VideoQA 的发展:(1)有效地将视频表示为包括外观、运动和关系在内的互补因素的混合物;(2)有效地允许这些视觉特征与语言查询的交互。
空间-时间视频表示传统上是通过递归网络(RNN)的变体完成的,其中许多已用于 VideoQA,如递归编码器-解码器、双向 LSTM 和两阶段 LSTM。为了增加记忆能力,可以向这些网络中添加外部记忆。这种技术对于较长的视频更为有用,对于结构更复杂的视频,如电影和电视节目,尤其如此,这些视频还包括了如语音或字幕的额外伴随频道。在这些情况下,记忆网络被用来存储多模态特征,以供以后检索。记忆增强的 RNN 还可以将视频压缩成异构集合的双重外观/运动特征。虽然在 RNN 中,外观和运动是分开建模的,但 3D 和 2D/3D 混合卷积操作本质上集成了时空视觉信息,也用于 VideoQA。多尺度时间结构可以通过混合短期和长期卷积滤波器或结合非局部操作符预提取的帧特征来建模。在第二种方法中,TRN 网络展示了时间帧关系作为另一个重要的视觉特征,用于视频推理和 VideoQA。预检测对象的关系也在单独的处理流中考虑,并与其他模式在后期融合中结合。我们的 HCRN 模型是在这些趋势之上发展起来的,允许所有三个视频信息通道,即外观、运动和关系,迭代地相互作用和互补,每一步都进行。
在通用多模态融合方面,早期尝试包括直接应用的双线性操作符或通过注意力机制。虽然这些方法在代价高昂的联合乘法操作中平等地处理输入张量,但 HCRN 从精炼信息中分离出条件因素,因此更为高效,也在适应条件类型的操作符上更为灵活。
视频分析中已探索时序层次结构,最近使用了递归网络和图网络。然而,我们认为我们是第一个考虑包括语言线索在内的多模态的层次交互用于 VideoQA 的。
在 VideoQA 中,语言查询与视觉特征的交互传统上被构建为在独立转换的问题和参考视频的共同表示空间中的视觉信息检索任务。检索在异构内存槽更为方便。在信息检索之上,两种模态之间的共同关注提供了更互动的组合。沿着这一方向的发展包括基于属性的注意力、层次化注意力、多头注意力、多步骤渐进式注意力记忆或结合自注意力与共注意力。对于更高阶的推理,问题可以通过情景记忆或通过切换机制与视频特征进行迭代交互。多步推理在 VideoQA 中也通过精细的注意力机制得以实现。
与这些技术不同,我们的 HCRN 模型支持将视频特征与语言线索作为上下文因子在每一层次的多级精炼过程中进行条件处理。这允许语言线索比任何现有方法更早、更深入地参与到视频表达构建中。
神经构建块 - 超越 VideoQA 领域,CRN 单元与其他通用神经构建块共享一致性的理念,例如 InceptionNet 中的块、ResNet 中的残差块、RNN 中的循环块、FiLM 中的条件线性层以及神经矩阵网络中的矩阵-矩阵块。我们的 CRN 通过假设一个支持条件关系推理并可用于构建视觉和语言处理中其他用途网络的数组到数组块,显著地从这些设计中脱颖而出。
3.方法
VideoQA 的目标是根据自然问题
q
q
q 从视频
V
V
V 中推导出答案
a
~
\tilde{a}
a~。答案
a
~
\tilde{a}
a~ 可在开放式问题的预定义可能答案集合
A
A
A 中找到,或者在多选题的情况下是答案候选列表。形式上,VideoQA 可以如下定义:
a
~
=
arg
max
a
∈
A
F
θ
(
a
∣
q
,
V
)
(1)
\tilde{a} = \arg\max_{a \in A} F_{\theta}(a \mid q, V)\tag{1}
a~=arga∈AmaxFθ(a∣q,V)(1)
其中
θ
\theta
θ 表示评分函数
F
F
F 的模型参数。
视觉表示
我们首先将
L
L
L 帧的视频
V
V
V 分成
N
N
N 个等长的剪辑
C
=
(
C
1
,
…
,
C
N
)
C = (C_1, \ldots, C_N)
C=(C1,…,CN)。每个剪辑
C
i
C_i
Ci 的长度为
T
=
⌊
L
/
N
⌋
T = \lfloor L/N \rfloor
T=⌊L/N⌋,由两种信息源表示:逐帧外观特征向量
V
i
=
{
v
i
,
j
∣
v
i
,
j
∈
R
2048
}
j
=
1
T
V_i = \{v_{i,j} \mid v_{i,j} \in \mathbb{R}^{2048}\}_{j=1}^{T}
Vi={vi,j∣vi,j∈R2048}j=1T 和剪辑级别的运动特征向量
f
i
∈
R
2048
f_i \in \mathbb{R}^{2048}
fi∈R2048。在我们的实验中,
v
i
,
j
v_{i,j}
vi,j 是 ResNet 的 pool5 输出特征,
f
i
f_i
fi 由 ResNeXt-101 提取。
随后,应用线性特征变换将 { v i j } \{v_{ij}\} {vij} 和 f i f_i fi 投影到标准的 d d d 维特征空间中,分别得到 { v ^ i j ∣ v ^ i j ∈ R d } \{\hat{v}_{ij} \mid \hat{v}_{ij} \in \mathbb{R}^d\} {v^ij∣v^ij∈Rd} 和 f ^ i ∈ R d \hat{f}_i \in \mathbb{R}^d f^i∈Rd。
语言表示
在多选题的情况下,问题和答案候选中的所有单词首先被嵌入到 300 维的向量中,这些向量使用预训练的 GloVe 词嵌入初始化。我们进一步将这些与上下文无关的嵌入向量通过双向 LSTM 处理。前向和后向 LSTM 通过的输出隐藏状态最终被串联起来,形成问题表征
q
∈
R
d
q \in \mathbb{R}^d
q∈Rd。
利用这些表征,我们现在描述我们的新的层次化架构用于 VideoQA(见图 3)。我们首先介绍作为架构构建块的核心组合计算单元(详见第 3.1 节)。在接下来的小节中,我们建议将 F F F 设计为一种逐层网络架构,可以通过简单地堆叠核心单元以特定方式构建。
3.1 条件关系网络单元
我们引入了一个可重用的计算单元,称为条件关系网络(CRN),它以n个对象的数组
S
=
s
i
i
=
1
n
S = {s_i}_{i=1}^n
S=sii=1n和一个条件特征
c
c
c为输入 - 两者都在相同的向量空间
R
d
\mathbb{R}^d
Rd或张量空间
R
W
×
H
×
d
\mathbb{R}^{W \times H \times d}
RW×H×d中。CRN生成一个输出对象数组,其维度相同,包含给定全局上下文的输入特征的高阶对象关系。CRN单元的操作在算法1中以算法形式和在图2中以视觉形式呈现。表1总结了这些呈现中使用的符号。
在 VideoQA 中使用时,CRN 的输入数组由帧或短片段级别的特征组成。对象 { s i } i = 1 n \{s_i\}_{i=1}^n {si}i=1n 之间共享大量的互信息,考虑给定对象的所有可能组合是多余的。因此,应用一个采样方案于子集集合(算法 1 的第 4 行)对于减少冗余和提高计算效率至关重要。我们借鉴文献 [48] 中的采样技巧来构建选定子集的集合 Q k selected Q_k^\text{selected} Qkselected。关于 k max k_{\max} kmax 的选择,我们在后期实验中选择 k max = n − 1 k_{\max} = n - 1 kmax=n−1,如果 n > 2 n > 2 n>2,则输出数组的大小为 n − 2 n - 2 n−2;如果 n = 2 n = 2 n=2,则数组大小为 1。
作为实现上的选择,函数 g k ( ⋅ ) g_k(\cdot) gk(⋅) 和 p k ( ⋅ ) p_k(\cdot) pk(⋅) 是简单的平均池化。在一般形式下,它们可以是任何将随机集合合并为单一表示的聚合子网络。同时, h k ( ⋅ , ⋅ ) h_k(\cdot, \cdot) hk(⋅,⋅) 是一个在特征串联之上运行的 MLP,用于模拟多个输入模态之间的非线性关系。我们在同一大小 k k k 的子集之间绑定条件子网络 h k ( ⋅ , ⋅ ) h_k(\cdot, \cdot) hk(⋅,⋅) 的参数。在我们的实现中, h k ( ⋅ , ⋅ ) h_k(\cdot, \cdot) hk(⋅,⋅) 包括一个单一的线性变换,后跟一个 ELU [3] 激活函数。
可能会担心由特定子集形成的关系对于模型
k
k
k-元关系来说是不必要的,我们可选择设计一个类似于文献 [4] 中的自我门控机制来调节特征流通过每个 CRN 模块。形式上,那种情况下的条件函数
h
k
(
x
,
y
)
h_k(x, y)
hk(x,y) 定义为:
h
k
(
x
,
y
)
=
ELU
(
W
h
1
[
x
,
y
]
)
∗
σ
(
W
h
2
[
x
,
y
]
)
,
(2)
h_k(x, y) = \text{ELU}(W_{h1}[x, y]) \ast \sigma (W_{h2}[x, y]), \tag{2}
hk(x,y)=ELU(Wh1[x,y])∗σ(Wh2[x,y]),(2)
其中
[
.
,
.
]
[., .]
[.,.] 表示张量串联,
σ
\sigma
σ 是 sigmoid 函数,
W
h
1
W_{h1}
Wh1 和
W
h
2
W_{h2}
Wh2 是线性权重。
3.2 层次化条件关系网络
我们利用CRN模块构建一个深层网络架构,以利用视频序列的固有特性,即时间关系、运动和视频结构的层次性,并支持受语言问题引导的推理。我们将所提出的网络架构称为层次化条件关系网络(HCRN)(见图3)。HCRN的设计通过堆叠可复用的核心单元部分受到现代CNN网络结构的启发,其中InceptionNet和ResNet是最著名的例子。
视频QA模型应在问题的上下文中提炼视觉内容,鉴于通常大部分视觉信息与问题无关。从视频结构的层次性中汲取灵感,我们将视频QA的问题简化为一个视频表示的过程,其中一个给定的视频在不同的粒度上逐步编码,包括短片段(连续帧)和整个视频级别。整个过程基于语言线索至关重要。特别是,在每个层次级别,我们使用两个堆叠的CRN单元,一个基于运动特征,随后一个基于语言线索。直观上,运动特征作为动态上下文,塑造在帧(片段级)或片段(视频级)之间发现的时间关系。由于塑造效果适用于所有关系,因此不需要自我门控,因此一个简单的MLP就足够了。另一方面,语言线索本质上是选择性的,即并非所有关系都同等相关于问题。因此,我们在依赖问题表示的CRN单元中使用方程(2)中的自我门控机制。
通过这种特殊的网络架构设计,片段级别的输入数组由逐帧外观特征向量 { v ^ i j } \{\hat{v}_{ij}\} {v^ij}组成,而视频级别的输入则是片段级别的输出。同时,片段级CRNs的运动条件特征是相应的片段运动特征向量 f ^ i \hat{f}_i f^i。它们进一步传递给一个LSTM,其最终状态用作视频级别的运动特征。注意,这种特殊的实现并非唯一选择。我们相信我们是第一个以这种层次化方式逐步合并多种输入模态的,与典型的将外观特征和运动特征视为双流网络的方法形成对比。
为了处理包含数千帧的长视频,相当于数十个短期片段,有两种选项可以减少CRN处理大量子集集 { Q k ∣ k = 2 , 3 , … , k max } \{Q_k | k = 2, 3, \ldots, k_{\max}\} {Qk∣k=2,3,…,kmax}的计算成本,给定输入数组 S S S:限制最大子集大小 k max k_{\max} kmax或将HCRN扩展到更深的层次。对于前者选项,稀疏抽样的选择可能会丧失特定子集的关键关系信息。后者则能够为关系建模密集地抽样子集。具体来说,我们可以将 N N N个短期片段分组为 N 1 × N 2 N_1 \times N_2 N1×N2个超级片段,其中 N 1 N_1 N1是超级片段的数量, N 2 N_2 N2是一个超级片段中的短期片段数量。通过这种方式,我们的HCRN现在成为一个三级层次化网络架构。
在HCRN的最后,我们基于问题表示
q
q
q计算平均视觉特征。假设最后一个CRN单元在视频级别的输出是一个数组
O
=
{
o
i
∣
o
i
∈
R
H
×
d
}
i
=
1
N
−
4
O = \{o_i | o_i \in \mathbb{R}^{H \times d}\}_{i=1}^{N-4}
O={oi∣oi∈RH×d}i=1N−4,我们首先将它们堆叠在一起,得到一个输出张量
o
∈
R
(
N
−
4
)
×
H
×
d
o \in \mathbb{R}^{(N-4) \times H \times d}
o∈R(N−4)×H×d,并进一步将这个输出张量向量化,得到最终输出
o
′
∈
R
H
′
×
d
o' \in \mathbb{R}^{H' \times d}
o′∈RH′×d,其中
H
′
=
(
N
−
4
)
×
H
H' = (N - 4) \times H
H′=(N−4)×H。加权平均信息由下式给出:
I
=
[
W
o
′
o
′
,
W
o
′
o
′
⊙
W
q
q
]
,
(3)
I = [W_{o'}o', W_{o'}o' \odot W_{q}q], \tag{3}
I=[Wo′o′,Wo′o′⊙Wqq],(3)
I
′
=
ELU
(
W
I
I
+
b
)
,
(4)
I' = \text{ELU}(W_I I + b), \tag{4}
I′=ELU(WII+b),(4)
γ
=
softmax
(
W
I
′
I
′
+
b
)
,
(5)
\gamma = \text{softmax}(W_{I'} I' + b), \tag{5}
γ=softmax(WI′I′+b),(5)
o
~
=
∑
h
=
1
H
′
γ
h
o
h
′
;
o
~
∈
R
d
,
(6)
\tilde{o} = \sum_{h=1}^{H'} \gamma_h o'_h; \tilde{o} \in \mathbb{R}^d, \tag{6}
o~=h=1∑H′γhoh′;o~∈Rd,(6)
其中,
[
.
,
.
]
[., .]
[.,.]表示串联操作,
⊙
\odot
⊙是哈达马德积。
3.3 答案解码器和损失函数
根据文献[10, 30, 6],我们采用不同的答案解码器,具体取决于任务。开放式问题被视为多标签分类问题。对于这些,我们使用一个分类器,该分类器以从视觉线索
o
˜
o˜
o˜和问题表示
q
q
q中检索的信息的组合作为输入,并计算标签概率
p
∈
R
∣
A
∣
p \in \mathbb{R}^{|A|}
p∈R∣A∣:
y
=
ELU
(
W
o
[
o
~
,
W
q
q
+
b
]
+
b
)
,
(7)
y = \text{ELU}(W_o [\tilde{o}, W_q q + b] + b), \tag{7}
y=ELU(Wo[o~,Wqq+b]+b),(7)
y
′
=
ELU
(
W
y
y
+
b
)
,
(8)
y' = \text{ELU}(W_y y + b), \tag{8}
y′=ELU(Wyy+b),(8)
p
=
softmax
(
W
y
′
y
′
+
b
)
.
(9)
p = \text{softmax}(W_{y'} y' + b). \tag{9}
p=softmax(Wy′y′+b).(9)
交叉熵用作损失函数。
对于重复计数任务,我们使用一个线性回归函数,以方程(8)中的
y
′
y'
y′为输入,后跟一个四舍五入函数以得到整数计数结果。此任务的损失为均方误差(MSE)。
对于多选题类型(如TGIF-QA中的重复动作和状态转换),每个答案候选都以与问题相同的方式处理。具体来说,我们使用共享参数HCRNs,不论是问题还是每个答案候选作为语言线索。因此,我们有一组HCRN输出,一个基于问题的(
o
˜
q
o˜q
o˜q),其他基于答案候选的(
o
˜
a
o˜a
o˜a)。随后,
o
˜
q
o˜q
o˜q、
{
o
˜
a
}
\{o˜a\}
{o˜a}、问题表示
q
q
q和答案候选
a
a
a被输入到最终的分类器中,通过线性回归输出一个答案索引,如下:
y
=
[
o
~
q
,
o
~
a
,
W
q
q
+
b
,
W
a
a
+
b
]
,
(10)
y = [\tilde{o}_q, \tilde{o}_a, W_q q + b, W_a a + b], \tag{10}
y=[o~q,o~a,Wqq+b,Waa+b],(10)
y
′
=
ELU
(
W
y
y
+
b
)
,
(11)
y' = \text{ELU}(W_y y + b), \tag{11}
y′=ELU(Wyy+b),(11)
s
=
W
y
′
y
′
+
b
.
(12)
s = W_{y'} y' + b. \tag{12}
s=Wy′y′+b.(12)
我们使用流行的铰链损失[10]进行成对比较,
max
(
0
,
1
+
s
n
−
s
p
)
\max(0, 1 + s_n - s_p)
max(0,1+sn−sp),其中
s
n
s_n
sn和
s
p
s_p
sp分别为错误答案和正确答案的得分,以训练网络。
3.4 复杂性分析
我们在此提供简要分析,并将详细推导留在补充材料中。对于固定的采样分辨率 t t t,CRN的单次前向传递将以 k max k_{\max} kmax 的平方时间进行。对于长度为 n n n,特征大小为 F F F 的输入数组,该单元产生一个大小为 k max − 1 k_{\max}-1 kmax−1 且特征维度相同的输出数组。HCRN的整体复杂性取决于每个CRN单元的设计选择和CRN单元的具体排列。为了清晰起见,设 t = 2 t=2 t=2 并且 k max = n − 1 k_{\max}=n-1 kmax=n−1,这在后来的实验中被发现工作得很好。假设有 N N N 个长度为 T T T 的片段,构成长度为 L = N T L=NT L=NT 的视频。图 3 中的二级架构需要 2 T L F 2T LF 2TLF 时间来计算最低级别的CRN,以及 2 N L F 2NLF 2NLF 时间来计算第二级别,总共 2 ( T + N ) L F 2(T+N)LF 2(T+N)LF 时间。
现在我们来分析一个泛化图 3 中的三级架构。 N N N 个片段被组织成 M M M 个子视频,每个子视频有 Q Q Q 个片段,即 N = M Q N=MQ N=MQ。片段级别的CRN保持不变。在下一个级别,每个子视频CRN输入一个长度为 Q Q Q 的数组,其元素的大小为 ( T − 4 ) F (T-4)F (T−4)F。使用之前相同的逻辑,一组子视频级别的CRN的成本为 2 N M L F \frac{2N}{M} LF M2NLF 时间。两个子视频CRN的堆叠现在产生一个大小为 ( Q − 4 ) ( T − 4 ) F (Q-4)(T-4)F (Q−4)(T−4)F 的输出数组,作为长度为 M M M 的视频级别CRN的输入对象。因此,视频级别的CRN的成本为 2 M L F 2MLF 2MLF。因此,三级HCRN的总成本为 2 ( T + N M + M ) L F 2(T+\frac{N}{M}+M)LF 2(T+MN+M)LF 的量级。
与二级HCRN相比,三级HCRN通过 2 ( N − N M − M ) L F ≈ 2 N L F 2(N-\frac{N}{M}-M)LF \approx 2NLF 2(N−MN−M)LF≈2NLF 减少了计算时间,假设 N ≫ max ( M , N M ) N \gg \max(M, \frac{N}{M}) N≫max(M,MN)。由于 N = L T N = \frac{L}{T} N=TL,这减少到 2 N L F = 2 L 2 T F 2NLF = 2 \frac{L^2}{T}F 2NLF=2TL2F。在实践中 T T T 通常是固定的,因此节省的规模与视频长度 L L L 的平方成比例,表明层次化在处理长视频时在计算上是高效的。
4. 实验
4.1 数据集
TGIF-QA [10]:当前最著名的VideoQA数据集,包含165K QA对和72K动画GIF。数据集涵盖四项任务,针对视频的独特属性。其中前三项需要强大的时空推理能力:重复计数 - 检索一个动作的发生次数;重复动作 - 多选任务,识别给定次数的重复动作;状态转换 - 有关事件时间顺序的多选任务。最后一项任务 - 帧QA - 类似于图像QA,视频中的特定帧足以回答问题。
MSVD-QA [39]:一个小型数据集,包含来自1,970个短片的50,505个问题答案对。问题包括五种类型,包括什么、谁、如何、何时和何地。
MSRVTT-QA [40]:数据集包含10K视频和243K问题答案对。与MSVD-QA类似,问题有五种类型。与其他两个数据集相比,MSRVTT-QA中的视频包含更复杂的场景。它们的长度也更长,从10到30秒不等,相当于每个视频300到900帧。
我们使用准确率作为所有实验的评估指标,除了TGIF-QA数据集上的重复计数任务使用均方误差(MSE)。
4.2 实现细节
视频被分割成8个片段,每个片段默认包含16帧。MSRVTT-QA中的长视频额外分割成24个片段,以评估处理非常长序列的能力。除非另有说明,缺省设置是使用图3所示的二级HCRN,且 d d d=512, t t t=1。我们最初以 1 0 − 4 10^{-4} 10−4的学习率训练模型,并在每10个时代后将其衰减一半。所有实验在25个时代后终止,报告的结果是在最佳验证准确率的时代。模型的Pytorch实现可在线获取。
4.3 结果
4.3.1 与最新技术的基准比较
我们将我们提出的模型与上述数据集上的最新技术方法(SoTAs)进行比较。对于TGIF-QA,我们与最新的SoTAs进行比较,包括[6, 7, 10, 20],涵盖四项任务。除了[20]之外,这些工作都利用了从光流或3D CNN提取的运动特征。TGIF-QA的结果总结在表2中,MSVD-QA和MSRVTT-QA的结果在图4中。竞争者的报告数字取自原始论文和[6]。显然,我们的模型在所有任务和所有数据集上都始终如一地优于或与SoTA模型竞争。当需要强烈的时间推理时,改进尤其明显,即对TGIF-QA中涉及动作和转换的问题。这些结果证实了考虑近期和远期时间关系对于找到正确答案的重要性。
MSVD-QA和MSRVTT-QA数据集代表了机器相对于TGIF-QA的高度挑战性基准,这要归功于它们的开放性质。我们的模型HCRN在两个数据集上均优于现有方法,分别实现了36.1%和35.6%的准确率,分别在MSVD-QA和MSRVTT-QA上提高了1.7点和0.6点。这表明该模型可以比现有方法更好地处理小型和大型数据集。
最后,我们通过比较模型特性(见表3)为我们的HCRN与现有竞争者的竞争性能提供了理由。虽然直接比较内部模型设计并不简单,但显然有效的视频建模需要同时处理运动、时间关系和层次结构。我们将通过第4.3.2节(针对运动、时间关系、浅层次结构)和第4.3.3节(深层次结构)中的进一步详细研究来支持这一假设。
4.3.2 剖析研究
为了更深入了解我们的模型,我们在TGIF-QA上进行了广泛的剖析研究,并尝试了多种配置。结果报告在表4中。完整的二级HCRN表示图3中的完整模型,
k
max
=
n
−
1
,
t
=
2
k_{\max} = n - 1,t = 2
kmax=n−1,t=2。总体而言,我们发现删减任何设计组件或CRN单元会降低时间推理任务(动作,转换和动作计数)的性能。具体效果如下所述。
关系顺序
k
max
k_{\max}
kmax 和分辨率
t
t
t 的影响:没有关系
(
k
max
=
1
)
(k_{\max} = 1)
(kmax=1)时,动作和事件推理的性能显著下降。这是预期的,因为这些问题通常需要将动作和事件与更大的上下文(例如,在某事之前发生了什么)联系起来。在这种情况下,帧QA更多地受益于增加采样分辨率
t
t
t,因为有更好的机会找到相关的帧。然而,当考虑关系
(
k
max
>
1
)
(k_{\max} > 1)
(kmax>1)时,我们发现HCRN对采样分辨率
t
t
t 的鲁棒性很好,但严重依赖于最大关系顺序
k
max
k_{\max}
kmax。与
t
t
t 的相对独立可能是由于帧之间的视觉冗余,所以重采样可能捕获几乎相同的信息。另一方面,当仅考虑低阶对象关系时,除帧QA外,所有任务的性能都显著下降。这些结果证实了时间推理需要高阶关系。由于帧QA任务仅需要对单帧进行推理,加入时间信息可能会使模型混淆。
4.3.3 模型层次深化
我们在 MSRVTT-QA 数据集上测试了 HCRN 对长视频的扩展性,这些视频被组织成24个片段(比其他两个数据集长3倍)。我们考虑两种设置:◮ 2级层次,24个片段→1个视频:模型如图3所示,24个片段级CRN后接一个视频级CRN。◮ 3级层次,24个片段→4个子视频→1个视频:从2级层次的24个片段开始,我们将24个片段分组成4个子视频,每个子视频是6个连续片段的组合,形成一个3级层次。这两个模型设计有相似的参数数量,约50M。
表5报告了结果。与通常难以处理长视频的现有方法不同,我们的方法通过提供更深的层次结构在理论上可扩展,如第3.4节所分析。使用更深的层次结构预计将显著减少 HCRN 的训练时间和推理时间,尤其是当视频较长时。在我们的实验中,我们通过从2级HCRN过渡到3级HCRN,在保持相同性能的同时,实现了训练和推理时间的4倍减少。
5. 结论
我们介绍了一种称为条件关系网络(CRN)的通用神经单元和一种使用CRN作为构建模块构建层次化网络的方法,用于视频问答(VideoQA)。CRN是一种关系变换器,它封装并将张量对象数组映射成新的同类数组,条件是上下文特征。在此过程中,输入对象之间的高阶关系被编码并由条件特征调制。这种设计允许灵活构建复杂结构,如堆栈和层次结构,并支持迭代推理,使其适用于视频等多模态和结构化领域的问答。HCRN在多个VideoQA数据集(TGIF-QA、MSVD-QA、MSRVTT-QA)上进行了评估,展示了具有竞争力的推理能力。
与基于时间注意力的方法不同,后者努力选择对象,HCRN专注于建模视频中的关系和层次结构。这种方法论和设计选择的不同带来了独特的好处。CRN单元可以进一步增加注意力机制以更好地覆盖对象选择能力,从而可以进一步改进如帧QA等相关任务。
对VideoQA中的CRN的检验突出了构建支持原生多模态交互的通用神经推理单元在提高视觉推理的鲁棒性方面的重要性。我们希望强调,该单元是通用的,因此适用于其他推理任务,我们将进行探索。这包括考虑伴随的语言频道,这对于TVQA [17] 和 MovieQA [33] 任务至关重要。