图神经网络用于时序动作定位
论文信息
Paper title:Graph Convolutional Networks for Temporal Action Localization
Paper source:ICCV 2019
引言
大多数先进的动作定位系统都是单独处理每个动作预测提案(proposal),而在学习过程中没有明确利用它们之间的关系。但事实是,提案之间的关系实际上在动作定位中起着重要作用,因为有意义的动作始终在视频中包含多个提案。本文建议使用图卷积网络(GCN)探究提案之间的关系。首先,构造一个动作提案图,其中每个提案都表示为一个节点,而两个提案之间的关系则作为一个边。本文使用两种类型的关系,一种用于捕获每个提案的内容信息,另一种用于表征不同动作之间的相关性。随后,在图形上应用GCN,以对不同提案之间的关系进行建模,并学习针对动作分类和定位的的表示。最后本文实验验证了该方法在THUMOS14上的性能明显优于最新技术。此外,在ActivityNet上进行的扩展实验也验证了对动作提案间关系进行建模的有效性。
P-GCN 方法总述
本文中使用提议图 G ( P , E ) \mathcal{G}(\mathcal{P},\mathcal{E}) G(P,E) 来表示提案之间的关系,然后在图表上应用GCN来探究关系并学习提案的表示。 应用GCN的初衷是,在执行图卷积时,每个节点都会从其邻域聚合信息。 这样,每个提案的特征都会被其他提案增强,最终有助于提高检测性能。
在不失一般性的前提下,本文假设已经通过某些方法(例如TAG方法)预先获得了动作的提案。 在本文中,给定输入视频 V V V,通过利用提案关系来预测每个提案 p i p_i pi的动作类别 y ^ i \hat{y}_i y^i和时间位置 ( t ^ i , s , t ^ i , e ) (\hat{t}_{i,s},\hat{t}_{i,e}) (t^i,s,t^i,e)。 计算
{ ( y ^ i , ( t ^ i , s , t ^ i , e ) ) } i = 1 N = F ( G C N ( { x i } i = 1 N , G ( P , E ) ) , \{(\hat{y}_i, (\hat{t}_{i,s}, \hat{t}_{i,e}))\}^N_{i=1} = F(GCN(\{{x_i}\}^N_{i=1}, \mathcal{G}(\mathcal{P},\mathcal{E})), {(y^i,(t^i,s,t^i,e))}i=1N=F(GCN({xi}i=1N,G(P,E)),
F F F 表示任何需要学习的Map Function。为了利用GCN进行动作定位,本文范例将提案图和提案特征都作为输入,并对图执行图卷积以利用提案间的关系。 然后,使用增强的提案特征(GCN的输出)来共同预测类别标签和时间范围框。模型简称P-GCN[1],其示意图如图[1] 所示。
如何使用GCN,基于图学习动作的表示形式并优化动作定位?
怎么构建提案关系图?
对于每个视频的图形 G ( P , E ) \mathcal{G} ( \mathcal{P}, \mathcal{E} ) G(P,E) ,将节点实例化为动作提案,同时要求对提案之间的边缘 E \mathcal{E} E 进行特定表征,以更好地对提案关系进行建模。 构造边的一种方法是将所有提案彼此链接,一方面因为这会导致该方法需要大量的计算,以遍历所有提案对(两个不同的提案),另一方面还会为行动定位带来多余或嘈杂的信息,因此一些无关的提案互相之间不应该被联系起来。所以本文采用:通过利用提案之间的时间相关性/距离来设计一种更智能的方法。 具体来说,本文介绍两种类型的边,分别是信息内容边(contextual edges)和周围边(surrounding edges)。
内容边(contextual edges):
如果
r
(
p
i
,
p
j
)
>
θ
c
t
x
r(p_i,p_j) > \theta_{ctx}
r(pi,pj)>θctx,则在提案
p
i
p_i
pi 和
p
j
p_j
pj 之间建立一条边,其中
θ
c
t
x
\theta_{ctx}
θctx 是某个阈值,
r
(
p
i
,
p
j
)
r(p_i,p_j)
r(pi,pj) 表示提案之间的相关性,并由tIoU定义:
r ( p i , p j ) = t I o U ( p i , p j ) = I ( p i , p j ) U ( p i , p j ) r(p_i,p_j) = tIoU(p_i,p_j) = \frac{I(p_i,p_j)}{U(p_i,p_j)} r(pi,pj)=tIoU(pi,pj)=U(pi,pj)I(pi,pj)
I ( p i , p j ) I(p_i,p_j) I(pi,pj) 和 U ( p i , p j ) U(p_i,p_j) U(pi,pj) 计算时序交与并,这样就会选择与 p i p_i pi 有较高重合度的节点建立边。显然,高度重叠邻域的非重叠部分能够为 p i p_i pi 提供丰富的内容信息(可以理解为两个非常相似的提案的不同的部分)。而探究这部分的信息对于提升检测定位准确度有很大的帮助。P-GCN将这部分信息用于后续的图卷积网络。
周围边(surrounding edges):
内容边将通常与同一动作实例相对应的重合度较高的提案连接起来。 实际上,也可以关联不同但邻近的动作(包括背景项目),并且在它们之间传递的消息将有助于彼此之间的检测。 例如,在图[2]中,背景提案
p
4
p_4
p4将为确定提案
p
1
p_1
p1的活动类别(例如,更有可能是体育活动)提供帮助。
为了处理这种相关性,P-GCN首先利用 r ( p i , p j ) = 0 r(p_i, p_j) = 0 r(pi,pj)=0查询不同的提案,然后计算以下距离:
d ( p i , p j ) = ∣ ( c i − c j ) ∣ U ( p i , p j ) d(p_i,p_j) = \frac{|(c_{i} - c_j)|}{U(p_i,p_j)} d(pi,pj)=U(pi,pj)∣(ci−cj)∣
当 d ( p i , p j ) < θ s u r d(p_i,p_j) < \theta_{sur} d(pi,pj)<θsur 时,添加一条边,这里面的 θ s u r \theta_{sur} θsur 是一个固定的阈值,等式中的 c i c_{i} ci 是 p i p_i pi 的中心坐标。作为内容边的补充,周围边能够在不同的动作实例中传递信息,因此给定位提供了更多的时序线索。
图卷积用于动作定位
给定一个建好的图,用GCN来进行动作定位。这里使用了 K K K层图卷积:
X k = A X ( k − 1 ) W k X^{k} = AX^{(k-1)}W^{k} Xk=AX(k−1)Wk
A A A 是邻接矩阵, W k ∈ R d k × d k W^{k} \in \mathbb{R}^{d_k\times d_k} Wk∈Rdk×dk 是需要学习的参数矩阵, X k ∈ R N × d k X^{k} \in \mathbb{R}^{N\times d_k} Xk∈RN×dk 是 k k k 层中所有的提案的隐藏特征, X 0 ∈ R N × d X^{0} \in \mathbb{R}^{N\times d} X0∈RN×d是输入特征。
在每一层后、下一层的输入之前都是用ReLU作为激活函数,另外实验证明,在最后一层中,把隐藏特征和输入特征级联效果更好:
X k = X K ∥ X 0 X^{k} = X^{K}\|X^0 Xk=XK∥X0
结合相关工作,本文作者认为,使用两个GCN分别单独预测动作类别和时序边界的效果更好,其中一个GCN使用原始的特征 x i x_i xi , 另一个使用拓展的特征 x i ′ x_i^{'} xi′ 。那么第一个GCN可以表示为:
{ y ^ i } i = 1 N = softmax ( F C 1 ( G C N 1 ( { x i } i = 1 N , G ( P , E ) ) ) ) , \{\hat{y}_i\}^N_{i=1} = \text{softmax}(FC_1(GCN_1(\{x_i\}^N_{i=1},\mathcal{G} ( \mathcal{P}, \mathcal{E} )))), {y^i}i=1N=softmax(FC1(GCN1({xi}i=1N,G(P,E)))),
另一个GCN可以表示为:
{ ( t ^ i , s , t ^ i , e ) } i = 1 N = F C 2 ( G C N 2 ( x i ′ i = 1 N , G ( P , E ) ) ) , \{(\hat{t}_{i,s}, \hat{t}_{i,e})\}^N_{i=1} = FC_2(GCN_2({x^′_i}^N_{i=1}, \mathcal{G} ( \mathcal{P}, \mathcal{E} ))), {(t^i,s,t^i,e)}i=1N=FC2(GCN2(xi′i=1N,G(P,E))), { c ^ i } i = 1 N = F C 3 ( G C N 2 ( { x i ′ } i = 1 N , G ( P , E ) ) ) , \{\hat{c}_i\}^N_{i=1} = FC_3(GCN_2(\{x^{′}_i\}^{N}_{i=1}, \mathcal{G} ( \mathcal{P}, \mathcal{E} ))), {c^i}i=1N=FC3(GCN2({xi′}i=1N,G(P,E))),
抽样有效培训
典型的提案生成方法通常为每个视频生成数千个提案。倘若将上述图卷积应用于所有提案会需要大量的计算和内存占用。为了加速GCN的训练,已经提出了几种基于邻域采样的方法。本文采用SAGE[2]来提高灵活性。
State-of-the-art 结果比较
本文首先在THUMOS14上和目前最领先的动作定位算法进行了比较,在所有的阈值情况下,P-GCN都取得了最好的成绩。
在ActivityNet v1.3上进行比较,结果见Table2,总体来讲Lin的方法令人满意一些,但是Lin方法依赖于外部标签,是一种不考虑分类的方法,P-GCN在修改增强后,依赖外部标签的情况下性能仍然犹豫Lin方法,因此,可以证明P-GCN在相同设置的情况下的有效性。
消融实验
验证提案与提案关系图作用
本文设计了三组实验:(1) MLP 1 + GCN 2 \text{MLP}_1 + \text{GCN}_2 MLP1+GCN2 : 即 GCN 1 \text{GCN}_1 GCN1 被替换掉了; (2) GCN 1 + MLP 2 \text{GCN}_1 + \text{MLP}_2 GCN1+MLP2 :即 GCN 2 \text{GCN}_2 GCN2 被替换掉了; (3) MLP 1 + MLP 2 \text{MLP}_1 + \text{MLP}_2 MLP1+MLP2 两个 GCN \text{GCN} GCN 都被替换掉了。表3证明了这三种组合方式均削弱了整体的性能。
验证图卷积作用
本文设计三组实验:(1) MP 1 + MP 2 \text{MP}_1 + \text{MP}_2 MP1+MP2; (2) MP 1 + GCN 2 \text{MP}_1 + \text{GCN}_2 MP1+GCN2; (3) GCN 1 + MP 2 \text{GCN}_1 + \text{MP}_2 GCN1+MP2。 表4证明这三种组合方式都没有P-GCN性能佳。
验证特征提取网络
本文设计四组实验:(1) BSN+I3D; (2) BSN+2D; (3) TAG+I3D; (4) TAG+2D。图[3] 表明,P-GCN是广泛有效的,不被特征和提案约束。
验证边的权重和自增的作用
表5 显示:用embed-cos-sim代替cos-sim并没有获得明显的改进(它们之间的mAP差异小于0.4% );另外:自增(self- addition)可以使RGB和Flow的绝对值至少提高1.7%。
验证两种类型的边是否必要
为了评估制定两种类型的边的必要性,本文作者对P-GCN的两种变体进行了实验,每种变体在图形构建阶段仅考虑一种类型的边。 表6中的结果显示:在除去任何一种边缘时都会显着下降。
采样策略的效率
为了验证采样大小 N s N_s Ns 对结果的影响,作者调整采样大小,来测试mAP,观察表7,当 N s = 4 N_s = 4 Ns=4 时,模型获得的mAP高于完整模型(即 N s = 10 Ns = 10 Ns=10 ),同时减少了每次迭代的76%的训练时间。这很有趣,因为采样更少的节点甚至可以产生更好的结果。作者推测,邻域采样可以带来更多的随机性,使模型在训练过程中脱离局部极小值,从而产生更好的结果。
定性结果
作者最后在定性结果上做了可视化处理,如图[4]所示,在上面的示例中,MLP和P-GCN模型都能够正确预测动作类别,而P-GCN则预测更精确的时间边界。在下面的示例中,由于相似的动作特征和内容信息,MLP将铅球的动作预测为掷铁饼。尽管存在此类挑战,但P-GCN仍然可以正确预测动作类别,从而证明了该方法的有效性。
总结
本文中利用“提案-提案”交互来解决时序动作定位的任务。通过构建提案图并将GCN应用于信息传递,P-GCN模型在两个数据集(即THUMOS14和ActivithNet v1.3)上远远优于最新方法。
参考文献
[1] Zeng, R., Huang, W., Tan, M., Rong, Y., Zhao, P., Huang, J., & Gan, C. (2019). Graph convolutional networks for temporal action localization. In Proceedings of the IEEE International Conference on Computer Vision (pp. 7094-7103).
[2] Hamilton, W., Ying, Z., & Leskovec, J. (2017). Inductive representation learning on large graphs. In Advances in neural information processing systems (pp. 1024-1034).