申请试用
登录
核心技术
以原创技术体系为根基,SenseCore商汤AI大装置为核心基座,布局多领域、多方向前沿研究,
快速打通AI在各个垂直场景中的应用,向行业赋能。

AAAI 2021 | 商汤提出BSN++: 时序动作提名生成网络

2021-08-10

在 AAAI 2021 上,商汤科技城市计算研发团队提出了基于互补边界回归和尺度平衡交互建模的时序动作提名生成网络(BSN++),针对现有方法存在大量边界噪声、缺乏提名之间的关系建模以及动作持续长度不平衡等问题进行了改进,能够高效地给大量密集分布的候选提名生成高精度的边界预测和可靠的置信度分数。实验结果表明,BSN++ 在两个著名的公开数据集上均有显著的性能和效率提升。基于该方法,我们在 CVPR19 - ActivityNet Challenge 的时序动作检测任务榜单上排名第一。


image.png


Part 1 任务定义和挑战 

时序动作提名任务旨在从一段未修剪的长视频中生成包含动作发生区间(从起始到结束)的候选片段。通常认为高质量的时序动作提名应当具备两个关键特性:


(1)生成的动作提名能够在时序上完整地覆盖动作发生的区域,并且保证有足够高的召回和时序重叠

(2)提名的质量应当被准确地评估,从而提供一个可靠的置信度分数用于后续的检索排序。


为了满足这两个条件同时实现高质量的动作提名生成,现有的时序动作提名生成方法大多遵循两个范式。第一种是“自顶向下”的方式,候选提名大多基于滑动窗口或者是预先定义好尺度和比例且均匀分布的锚点框来进行边界回归,然后采用一个二分类器来评估提名的置信度分数。然而,这种方式生成的提名即使经过了多阶段的边界修正,也很难得到十分准确的边界。在这种情况下,以BSN[1](边界敏感网络)为首的基于边界概率预测的方法开创了“自底向上”范式的先河,在近年来吸引了许多学者的关注。其将输入视频以一种细粒度的方式进行边界概率评估,并通过组合高概率的候选起止点生成任意长度的候选动作提名,既实现了边界的准确性也突破了锚点框对于长度的限制。然而,尽管BSN在性能和效率上相比于前人的方法都取得了显著的领先,我们发现它仍然存在一些弊端:


(1) 在进行边界预测时只依赖局部的上下文信息,忽视了对整段视频长时序的依赖,造成了很多边界噪声,从而精度较低。

(2) 提名的评估过程相对独立,缺乏对相似提名之间的关系建模,存在严重的偏差。

(3) 相同/不同动作之间都存在严重的正负样本/持续长度的不平衡现象,长尾效应严重,典型数据分布如下图所示。

(4) 效率低下。BSN通过多阶段的方式分别完成边界预测、提名生成和提名评估等过程,性能上相互制约,且效率上缺乏联合优化,不利于实际应用的线上部署。


image.png


Part 2 方法介绍

针对上述问题,我们提出了一个全新的时序动作提名生成框架(BSN++)。与BSN的多阶段过程不同,BSN++实现了在一个统一框架内完成提名图(proposal map)的生成。为了得到该提名图,BSN++分别生成了一张边界图和置信度图用来表示大量密集分布提名的边界信息和置信度分数。如下图所示,BSN++主要包含三个主要的模块:基础模块、互补边界生成器和提名关系建模模块。


image.png


1. 基础模块

基础模块(Base Module)旨在处理经过双流网络提取好的视频特征序列,用于进行时序关系的初步建模。同时该模块的输出分别作为后续两个分支的输入。具体来说,该模块主要由两层带有 ReLU 激活函数的 1D 卷积组成,卷积核大小为 3,数量为 256,且步长为 1。由于输入视频的长度不一,我们将输入视频截断为一系列固定长度的滑动窗口。


2. 互补边界生成器

互补边界生成器(Complementary Boundary Generator)主要源于受到 U-Net[3] 结构应用在医学图像分割上的启发,我们认为对于时序边界生成这种密集预测(dense prediction)的任务同样可以通过一维的编码-解码器结构进行高层级全局时序信息和低层级局部时序信息的建模。如下图所示,左下部分中的每个圆圈分别代表一个带有 512 个卷积核且核大小为3的一维时序卷积层,并分别接着一个批归一化层(BN)和 ReLU 激活函数。为了减小过拟合的现象,我们只添加了两层下采样层来增大时序的感受野,并接着采用同样数量的上采样层来恢复到原始的时序分辨率。此外,为了加快网络的收敛速度,额外在中间层施加了监督信号(deep supervision)(该操作对于后续的模型剪枝同样有帮助)。同时,通过跳层连接来缩小编码器和解码器之间的语义鸿沟。值得一提的是,我们发现起始边界分类器和结束边界分类器之间存在天然的互补性。即当视频经过反向输入到网络时,起始边界分类器(从背景到前景)可以看作是一个伪结束边界分类器(从前景到背景)。因此,很自然地想到利用双向的模型预测结果进行融合:

image.png

为了在训练过程中增强模型对于边界的鲁棒性,我们实现了并行的编解码优化过程,并在两侧的中间层输出额外施加了一致性约束,实验发现该策略可以显著提升最终的边界预测精度,抑制了边界噪声的出现。最终,将获得的两个边界概率序列构建成一张边界图(boundary map)image.png,用于表征所有密集分布提名的边界信息,其中T和D分别代表特征序列的长度和提名的最大持续时间:

image.png


image.png


3. 提名关系建模模块

提名关系建模模块(proposal relation block)的目的是为了高效地评估密集分布候选提名的置信度分数。BMN[2] 提出了边界匹配(boundary-matching)机制来实现一次性为所有候选提名进行置信度评估。然而,尽管 BMN 在生成的提名特征图image.png上采用了 3x3 的 2D 卷积进行局部的提名关系建模,但这显然不足以挖掘相似动作提名之间的关系(尤其是真值 IoU 相同但动作种类/持续长度不同的动作提名),使得提名的评估过程仍然相对独立。只是为 BSN 的提名评估模块提供了更高效的训练方式,并没有从本质上解决提名评估问题。针对该问题,BSN++ 设计了一个提名关系建模模块来分别从提名位置层面(位置感知注意力模块)和通道表征层面(通道感知注意力模块)进行了两个不同维度的交互信息建模,具体过程如下图所示。最终,三个子分支分别进行监督训练和测试结果融合,从而达到最佳的置信度图image.png预测质量(其中,置信度图中像素点 (i,j) 代表一个起始点为,持续时间为的候选提名对应的置信度分数)。


4. 两阶段重采样

长尾数据集中的数据不平衡问题可以严重影响到模型的训练精度和泛化性能。本文回顾了数据集中的正负样本分布以及动作持续长度的分布情况,并针对性的设计了用于提名置信度预测的重采样策略,旨在提升在长尾数据集中的模型训练表现。具体来说,BSN++设计了两阶段的采样策略,不仅针对训练过程中提名的正负样本数量进行平衡,同时考虑了对正样本提名中提名的时序长度进行二次平衡。


基于 IoU 平衡的采样策略。如文章开头的数据分布示意图可以观察到,正负样本的批损失分布存在较大的差异,这种现象无疑会导致严重的训练模型偏差。先前的工作通常设计了一个正负样本的采样器来平衡不同 IoU 区间的样本。然而,我们发现正负样本的持续时间同样不遵循常规的均匀分布。因此,有必要考虑继续对动作提名的长度进一步平衡。


尺度平衡重采样。为了缓解长尾尺度的问题,我们在IoU平衡采样的基础上提出了一个正负样本尺度重采样策略。具体来说,假设 image.png 为正样本提名中持续长度为 image.png 的数量,而 image.png 则为其占总提名数量的比例:


image.png


其中,image.png为预先定义的归一化尺度范围(例如,[0-0.3, 0.3-0.7, 0.7-1.0])。通过一个正样本比例采样函数,得到采样比例 image.png,且当image.png小于 λ(根据经验设为 0.15)时,该采样比例将大于原始采样比例。因此,我们将更新后的归一化采样比例作为某个特定提名长度区间image.png的采样概率,并以此为基准构建批数据进行模型训练。至于负样本,采用相同的采样过程。


Part 3 实验结果

1. 时序动作提名生成

我们首先在 ActivityNet-1.3 上评估了 BSN++ 生成的时序动作提名质量,如下表所示。BSN++ 相比于之前的方法取得了更高的 AUC 指标,尤其在 AR@1 和 AR@100 指标上(Top-1/Top-100候选提名下的平均召回)相比于 BSN 提升最为明显。可见,BSN++ 在保证高召回的前提下也提升了候选提名的整体检索质量。


image.png


接着在 THUMOS14 上对比评估了 BSN++ 在不同输入特征下的动作提名质量,如下表所示。可见,BSN++ 对于不同的数据集和不同的特征提取器都具有很好的鲁棒性。


image.png


同时,在下表中还对 BSN++ 的各个模块进行了详细的剖析实验,充分验证各个模块的有效性和互补性。并且从评估结果中我们可以总结出以下几点结论:


(1) 编码-解码器结构同样可以对一维时序信息进行“局部到全局”的充分建模,从而相比于之前只依赖于局部信息的方法有更准确的边界预测结果;

(2) 双向匹配机制进一步验证了未来信息对于边界调整决策的重要性;

(3) 与先前方法独立评估提名不同,BSN++ 采用的提名关系建模模块可以提供更全面的特征用于区分和评估动作提名;

(4) 尺度平衡的重采样策略可以使得模型达到均衡优化的目的;

(5) 通过将各个模块集成到一个端到端的框架,BSN++ 可以获得有竞争力的结果提升;

(6) 同时,BSN++ 保证了总体的效率优势。


image.png



2. 时序动作检测

与两阶段图像目标检测相似,我们认为时序动作提名的质量会直接影响到时序动作检测的性能。因此,我们将BSN++ 生成的时序动作提名结果直接赋予现有视频分类器的分类标签,即可得到最终的时序动作检测结果,并用于评估模型的检测精度(mAP)。我们分别在 ActivityNet-1.3 和 THUMOS14 数据集上进行了实验,结果分别如下表所示。可见,BSN++ 在检测精度上显著提升了现有算法的水平。


image.png


image.png


最后,我们分别在两个数据集上随机挑选了两个视频样例及其模型预测结果进行可视化,如下图所示。其中第一行为 THUMOS14 中的视频,第二行为 ActivityNet-1.3 数据集中的视频。


image.png



Part 4 结语

本文的主要贡献在于针对现有 BSN 系列的方法存在的几点问题进行了针对性的解决,并提出了进阶版本 BSN++。通过互补边界匹配融合的方法实现高精度的边界预测。同时,着重解决了现有方法忽略的密集分布提名关系建模和尺度不平衡等问题,显著提升了对于密集分布候选提名的置信度评估质量。实验结果表明,BSN++ 在主流数据集上的算法性能和效率上均取得了一致的提升。


论文链接

https://arxiv.org/pdf/2009.07641v4.pdf


References

[1] Lin, T.; Zhao, X.; Su, H. BSN: Boundary sensitive network for temporal action proposal generation. In European Conference on Computer Vision (ECCV), 2018.

[2] Lin, T.; Liu, X.; Li, X.; Ding, E.; and Wen, S. BMN: Boundary-Matching Network for Temporal Action Proposal Generation. In International Conference on Computer Vision (ICCV), 2019.

[3] Zhou, Z.; Siddiquee, M. M. R.; Tajbakhsh, N.; and Liang, J. UNet++: A Nested U-Net Architecture for Medical Image Segmentation. MICCAI.