Proposal-based Temporal Action Localization with Point-level Supervision

发布于:2025-07-09 ⋅ 阅读:(19) ⋅ 点赞:(0)

在这里插入图片描述

标题:基于提议的点监督时间动作定位
原文链接:https://proceedings.bmvc2023.org/820/
发表:BMVC-2023(CCF C)

摘要

点级监督的时间动作定位(PTAL)旨在识别和定位未经剪辑的视频中的动作,其中每个动作实例在训练数据中仅标注了一个点(帧)。在缺乏时间注释的情况下,大多数已有工作采用多实例学习(MIL)框架,将输入视频划分为不重叠的短片段,并对每个短片段独立进行动作分类。我们认为,MIL 框架对 PTAL 来说并非最优选择,因为它操作的是分离的短片段,这些片段只包含有限的时间信息。因此,分类器仅关注于一些容易区分的片段,而忽略了完整动作实例中的其他相关片段。

为缓解这一问题,我们提出了一种新颖的方法,通过生成和评估具有灵活持续时间的动作提议来定位动作,这些提议包含了更全面的时间信息。此外,我们引入了一种高效的聚类算法,用于生成密集的伪标签,从而提供更强的监督,并提出了一种细粒度对比损失来进一步优化伪标签的质量。实验结果表明,我们提出的方法在 ActivityNet 1.3、THUMOS 14、GTEA 和 BEOID 四个基准数据集上均取得了与现有最先进方法甚至某些全监督方法相当或更优的性能。


1 引言

了解视频中发生了什么动作以及它们发生的时间,对于许多应用场景都极为重要,例如视频监控【22, 32】、人机交互【4, 13, 29, 30, 50】和视频分析【11, 14, 15, 39, 48】。该任务也被称为时间动作定位(temporal action localization)。目前大多数研究集中在全监督设置下对视频中的动作进行识别与定位【35, 41, 45, 51, 53】,此类方法需要对视频逐帧进行精确的开始与结束时刻标注。然而,为所有动作获取帧级注释的成本非常高。同时,精确开始和结束时间的标签具有一定的主观性,因为在动作之间转换时界限模糊,难以界定【28】。

为了提高实用性,许多研究者开始探索更弱层次的监督方式,例如点级监督【31】。在点级监督的时间动作定位任务中,每个动作实例仅标注一个带有动作类别的帧。该帧也被称为该动作实例的点级标注【20】。与帧级监督相比,点级监督显著降低了标注工作量(据【28】称,标注一个 1 分钟的视频所需时间由 300 秒降至约 50 秒)。

大多数已有方法【20, 28】构建于多实例学习(MIL)框架之上。在 MIL 框架中,输入视频被划分为短片段(时间片段),未包含点级标注的片段被视为背景。然后在这些片段上训练一个分类器,并用于生成整段视频的类激活序列(CAS)。接着,模型通过诸如阈值化等技术,从 CAS 中识别激活最强的部分以定位动作。

然而,MIL 框架本质上仅执行片段级分类,从两个方面来看并不适用于动作定位任务:(1) 视频片段通常较短;(2) 分类器仅独立处理每个片段。因此,模型将只关注于容易识别的片段,而忽略完整动作实例的所有相关片段。这与预测应覆盖完整动作持续时间的准确时间边界的目标不符。

为了克服 MIL 框架的缺陷,我们设计了一个基于提议的框架,称为动作提议网络(Action Proposal Network,APN)。对于输入视频,APN 首先通过评估每个时间位置作为动作实例起始或结束点的概率来检测动作边界。然后,APN 通过匹配所有可能的起始与结束边界对来生成动作提议。所生成的动作提议具有灵活的长度,并包含比短片段【20, 28】更全面的时间信息,这对分类和定位任务均有益。为了同时对这些动作提议进行分类与评估,APN 学习了提议级别的表示,该表示基于提议内及周围的特征进行构建。最后,受视觉-语言建模最新成果的启发,我们通过预测描述提议中动作的文本来分类和评估动作提议。我们展示了这种额外自然语言信息的引入能够进一步提升性能。

尽管边界检测方案在全监督动作定位任务中已被证明是有效的【26】,但由于点级监督过于薄弱,难以直接训练出高质量提议,因此训练 APN 仍面临重大挑战。为了解决这一问题,我们提出了一种新颖的受限 k k k-medoids 聚类算法,用于从点级标注中生成密集伪标签。我们在训练过程中不断更新伪标签,使其提供更精确的动作边界信息,从而指导模型学习完整动作。考虑到伪标签可能无法准确反映动作边界,我们引入了一种细粒度对比损失,用于持续优化特征。该损失旨在细化伪标签的动作边界,并增强我们提出的 APN 对动作边界的敏感性。伪标签与对比损失协同工作,为模型提供更准确、更加精细的监督,从而提升动作定位性能。

本工作的主要贡献如下:

  1. 我们提出了一种基于提议的方法,称为动作提议网络(APN),用于在点级监督下进行时间动作定位。据我们所知,这是首个在 PTAL 任务中引入动作提议的工作;
  2. 我们设计了一种高效的聚类算法,用于生成密集的伪标签以提供更强的监督;此外,我们引入了一种新颖的对比损失,用于细化伪标签边界并提升 APN 对动作边界的检测能力;
  3. 我们在四个主流基准数据集上进行了实证评估,包括 ActivityNet 1.3、THUMOS 14、GTEA 和 BEOID,实验结果表明我们的方法优于现有最先进方法,甚至优于部分全监督方法。

2 相关工作(Related Work)

弱监督时间动作定位(Weakly-supervised Temporal Action Localization, WTAL)

与使用代价高昂的帧级标注不同,WTAL 的目标是利用更弱的监督信号来训练动作定位模型。早期的 WTAL 方法【1, 6, 9】采用转录级(transcript)监督,即使用视频中动作的有序列表作为监督信号。由于转录信息只存在于少量数据集中,视频级监督逐渐成为 WTAL 中最常见的弱监督形式,它仅指示视频中是否存在某些动作。

基于多实例学习(MIL)的思想,【27】使用多分支神经网络,并强制每个分支挖掘动作的不同部分,从而使模型能够聚合各分支提取的信息以提升预测性能。【7】提出了一种序列到序列(sequence-to-sequence)比较框架,用于挖掘动作与背景序列之间的细粒度差异,从而进一步提升动作与背景的分离能力。

点级监督(Point-level Supervision)

近年来,点级监督受到广泛关注。点级监督仅为每个动作实例提供一个带标签的帧作为监督信号。许多研究者发现,这种监督方式在标注成本与监督信息量之间达成了良好平衡。【31】设计了一个参数化采样函数,从标注帧周围采样相关帧用于训练动作分类器。【20】提出通过与周围背景实例对比,从密集伪标签中学习动作的完整性。

最新的先进方法【20, 28】与多数 WTAL 方法【36, 38, 52】使用了类似的 MIL 范式:将输入视频划分为短时间片段,并对每个片段独立进行分类。该框架将每个片段独立处理,忽略了片段之间的时间关系,导致模型仅关注最易识别的片段,而忽视完整动作实例中的所有相关片段。

相较之下,我们的方法通过生成灵活长度的动作提议来定位动作,并利用提议级别特征进行分类,从而解决了上述问题。

视频理解中的视觉-语言建模(Vision-language Modeling in Video Understanding)

随着视觉-语言建模方法【37】的成功,利用自然语言信息来指导模型训练已被广泛应用于视频理解任务中。已有研究【23, 40, 43, 44, 47】展示了视觉-语言多模态融合可以显著提升全监督时间动作定位(FTAL)模型的性能。

我们提出利用视觉-语言信息对动作提议进行分类和评估,而这一方向在以往的 WTAL 方法中尚未被充分探索。


3 方法(Method)

在本节中,我们首先对问题进行形式化定义,然后介绍我们方法的详细内容,包括伪标签生成算法、APN 的网络结构、以及对比特征优化策略。最后,我们讨论模型的训练与推理流程。

3.1 问题定义(Problem Definition)

我们将 PTAL(点级监督时间动作定位)任务形式化如下:

设输入视频 V V V 含有 L L L 帧,可表示为帧序列 X = { x i } i = 1 L X = \{x_i\}_{i=1}^{L} X={xi}i=1L。假设视频 V V V 包含 N V N_V NV 个动作实例,则其真实标注可记为:

Φ V = { ϕ i = ( t i s , t i e , c i ) } i = 1 N V , \Phi_V = \{\phi_i = (t^s_i, t^e_i, c_i)\}_{i=1}^{N_V}, ΦV={ϕi=(tis,tie,ci)}i=1NV,

其中 t i s t^s_i tis t i e t^e_i tie 分别表示第 i i i 个动作实例的起始与结束时刻, c i c_i ci 为对应的动作类别。

我们的目标是预测视频中的所有动作实例,输出应为:

Φ ^ V = { ϕ ^ i = ( t ^ i s , t ^ i e , c ^ i , s ^ i ) } i = 1 N V , \hat{\Phi}_V = \{\hat{\phi}_i = (\hat{t}^s_i, \hat{t}^e_i, \hat{c}_i, \hat{s}_i)\}_{i=1}^{N_V}, Φ^V={ϕ^i=(t^is,t^ie,c^i,s^i)}i=1NV,

其中 t ^ s \hat{t}^s t^s t ^ e \hat{t}^e t^e c ^ \hat{c} c^ 为对应的预测值, s ^ \hat{s} s^ 为模型对该预测的置信度评分。

在训练阶段,每个训练视频提供一组点级监督,定义为:

Ψ V = { ψ i = ( t i p , c i ) } i = 1 N V , \Psi_V = \{\psi_i = (t^p_i, c_i)\}_{i=1}^{N_V}, ΨV={ψi=(tip,ci)}i=1NV,

其中 t i p t^p_i tip 表示第 i i i 个动作实例内的某一标注帧。


3.2 特征提取与嵌入(Feature Extraction and Embedding)

参考已有工作,我们首先将输入视频划分为多个长度为 16 帧的短片段。接着,我们使用预训练模型(例如 I3D【3】)分别提取 RGB 特征与光流(optical flow)特征。

我们采用简单的拼接操作将双流特征融合,得到视频级特征 F ∈ R T × D F \in \mathbb{R}^{T \times D} FRT×D,其中 T T T 为片段数, D D D 为特征维度。

由于提取的特征 F F F 并非为时间动作定位任务量身设计,我们使用一个嵌入模块进行特征投影。该模块由卷积层与 ReLU 激活组成,最终将 F F F 映射至任务特定空间,得到嵌入特征:

X ∈ R T × D . X \in \mathbb{R}^{T \times D}. XRT×D.


3.3 伪标签生成(Pseudo label Generation)

点级标注所提供的监督信号非常弱,因为其不包含对训练时间动作定位(TAL)模型至关重要的动作边界信息。为了增强监督信号,我们提出了一种新颖的算法,用于生成密集的伪标签,以提供动作边界信息。

尽管已有多项工作【12, 16, 20, 28】也提出了生成伪标签的方法,但这些方法大多依赖类激活序列(Class Activation Sequence, CAS),正如第 1 节所讨论,这种方式并不适合用于动作定位任务。

因此,我们提出了一种简单而有效的聚类算法来生成伪标签,并在训练过程中不断更新。基于以下两点观察:

  1. 点级标注位于动作实例内部;
  2. 来自同一动作实例的帧具有相似的视觉特征;

我们自然地将点级标注视为聚类中心(medoids),并使用聚类算法对周围帧进行聚类。每个聚类即可代表视频中的一个动作实例。

然而,传统的 k k k-medoids 算法将每个点分配到与其距离最短的聚类中心,这会导致生成的聚类不具备时间连续性,这与时间动作定位任务的要求不符。

为确保聚类中帧的时间连续性,我们不直接聚类,而是寻找每对连续点级标注之间的“聚类边界帧”(cluster boundary),也就是说,找到一个分割帧,使得被分配到两个不同聚类中心的帧集合,其与中心的特征距离之和最小。
在这里插入图片描述

图 2 展示了我们提出的伪标签生成算法的整体概览。更详细的技术实现细节可见附录。我们反复运行该聚类算法直至收敛,以获得所有伪标签的动作实例与背景实例。在训练过程中,我们每隔
R R R 次训练迭代后更新一次伪标签,以为模型提供更好的学习指导。


3.4 动作提议网络(Action Proposal Network)

在这里插入图片描述
为实现基于更全面时间信息的动作定位,我们提出以时间更长的**动作提议(action proposals)**替代 MIL 方法中使用的短片段。为此,我们设计了一个名为 Action Proposal Network(APN) 的网络,其目标是生成任意时长、边界准确的动作提议,并赋予可靠的置信度评分。

如图 1 所示,APN 包含三个模块:

  • 边界检测模块(Boundary Detection Module, BDM
  • 提议生成模块(Proposal Generation Module, PGM
  • 提议评估模块(Proposal Evaluation Module, PEM

边界检测模块(Boundary Detection Module)

BDM 的目标是评估视频中每一帧作为动作起始或结束点的概率。我们采用一个带有 Sigmoid 激活的多层卷积网络,它以嵌入特征 X ∈ R T × D X \in \mathbb{R}^{T \times D} XRT×D 作为输入,输出起始概率序列 P s = { p i s } i = 1 T P_s = \{p^s_i\}_{i=1}^{T} Ps={pis}i=1T 和结束概率序列 P e = { p i e } i = 1 T P_e = \{p^e_i\}_{i=1}^{T} Pe={pie}i=1T


提议生成模块(Proposal Generation Module)

PGM 的目标是基于起始和结束概率序列生成动作提议,并采样其提议级别特征。

我们遵循【25】的方法,遍历起始概率 P s P_s Ps 与结束概率 P e P_e Pe,提取所有可能的起始边界 B s = { t ^ i s } i = 1 N s B_s = \{\hat{t}^s_i\}_{i=1}^{N_s} Bs={t^is}i=1Ns 与结束边界 B e = { t ^ j e } j = 1 N e B_e = \{\hat{t}^e_j\}_{j=1}^{N_e} Be={t^je}j=1Ne,然后对 B s B_s Bs B e B_e Be 中的边界两两配对,得到满足以下约束的候选动作提议:

d = t ^ j e − t ^ i s ∈ [ d min , d max ] , d = \hat{t}^e_j - \hat{t}^s_i \in [d_{\text{min}}, d_{\text{max}}], d=t^jet^is[dmin,dmax],

其中 d min d_{\text{min}} dmin d max d_{\text{max}} dmax 是控制提议最小与最大时长的超参数,用于避免生成过长或过短的提议。

这些满足条件的边界对构成候选动作提议,记为:

Φ ^ V = { ϕ ^ i = ( t ^ i s , t ^ i e ) } i = 1 N ^ p , \hat{\Phi}_V = \{\hat{\phi}_i = (\hat{t}^s_i, \hat{t}^e_i)\}_{i=1}^{\hat{N}_p}, Φ^V={ϕ^i=(t^is,t^ie)}i=1N^p,

其中 N ^ p \hat{N}_p N^p 为候选提议数量。

对于第 i i i 个动作提议,我们从 [ t ^ s i − d / 10 , t ^ e i + d / 10 ] [\hat{t}^{s_i} - d/10, \hat{t}^{e_i} + d/10] [t^sid/10,t^ei+d/10] 区间中均匀采样 N N N 个时间点,并提取这些点上的特征 x i ∈ R N × D x_i \in \mathbb{R}^{N \times D} xiRN×D 作为提议级别特征。这些特征包含丰富的视觉与时间信息,后续用于提议的分类与评估。


提议评估模块(Proposal Evaluation Module)

大多数以提议为基础的 TAL 方法【24, 46】采用两阶段流程:先对提议进行评估与后处理,再进行分类。而我们将这两个步骤集成为一个阶段,并证明两者可以实现相互促进。

PEM 的目标是同时

  1. 预测动作类别;
  2. 评估动作提议是否完整(输出置信度评分)。

受到视觉-语言建模【40】研究的启发,我们将该任务视为一个提议与文本的匹配问题。我们首先使用提示工程(prompt engineering)【23, 49】将动作类别文本转化为描述性语句,然后比较提议与该文本之间的相似度。若某个动作提议与对应文本匹配度越高,则该提议包含该类动作实例的概率就越高。

具体而言,PEM 由视觉编码器(vision encoder)和文本编码器(text encoder)组成。我们使用预定义的提示模板 Z Z Z 与提示函数 f p f_p fp 将每个类别 c c c 转换为描述性文本 c ′ = f p ( c , z ) c' = f_p(c, z) c=fp(c,z)。例如,若 c c c 为“playing tennis”,而模板 z z z 为 “the man in the scene is { }”,则提示文本为:

“the man in the scene is playing tennis”

文本编码器将提示文本嵌入为文本表示 c j t c^t_j cjt,而视觉编码器处理提议特征 x i ∈ R N × D x_i \in \mathbb{R}^{N \times D} xiRN×D,并附加一个可学习的 token [CLS],输出 c ^ i ∈ R M ĉ_i \in \mathbb{R}^M c^iRM 用于分类, x i v x^v_i xiv 用于与文本进行对比。

最终,我们通过 x i v x^v_i xiv c j t c^t_j cjt 之间的余弦相似度计算该提议属于某动作类别的置信度评分:

s i j = c j t ⋅ x i v ∥ c j t ∥ ⋅ ∥ x i v ∥ . s_{ij} = \frac{c^t_j \cdot x^v_i}{\|c^t_j\| \cdot \|x^v_i\|}. sij=cjtxivcjtxiv.

因此,PEM 实现多任务学习,输出每个提议的分类结果与置信度评分:

ϕ = ( t ^ i s , t ^ i e , c ^ i , s ^ i ) . \phi = (\hat{t}^s_i, \hat{t}^e_i, \hat{c}_i, \hat{s}_i). ϕ=(t^is,t^ie,c^i,s^i).


3.5 对比特征优化(Contrastive Feature Refinement)

由于伪标签生成(第 3.3 节)和边界检测模块(BDM)均依赖于嵌入特征 X X X,我们引入了一个额外的细粒度对比损失,用于优化嵌入特征 X X X

该设计的动机是:希望来自相同动作类别的不同实例起始/结束时刻附近的特征彼此接近,而与背景特征相互远离。例如,尽管动作“diving”可能出现在不同上下文中,它通常以“跳起”开始、以“入水”结束。因此,“跳起”与“入水”相关的特征应当在不同实例中保持相似性,并远离背景特征。

为此,我们基于 InfoNCE【34】对比损失设计了一个新颖的损失函数,用于细化特征。我们首先定义动作实例 ϕ = ( t s , t e ) \phi = (t^s, t^e) ϕ=(ts,te) 的起始区域 r g s r^s_g rgs 和结束区域 r g e r^e_g rge 为:

r g s = [ t s − d g / 10 , t s + d g / 10 ] , r g e = [ t e − d g / 10 , t e + d g / 10 ] , r^s_g = [t^s - d_g/10, t^s + d_g/10], \quad r^e_g = [t^e - d_g/10, t^e + d_g/10], rgs=[tsdg/10,ts+dg/10],rge=[tedg/10,te+dg/10],

其中 d g = t e − t s d_g = t^e - t^s dg=tets 表示动作实例的持续时长。

我们对每个起始区域 r g s r^s_g rgs 和结束区域 r g e r^e_g rge 内的嵌入特征进行平均,分别记作 x i j s x^s_{ij} xijs x i j e x^e_{ij} xije,其中 x i j x_{ij} xij 表示第 i i i 个动作实例、属于第 j j j 类动作的特征。背景特征 x k b x^b_k xkb 则通过平均伪标签中每个背景实例的特征获得。

我们仅在视频中至少包含两个相同类别的动作实例时才计算该损失,以构建正负样本对。

x i j x_{ij} xij 为正样本特征, x b x^b xb 为背景特征,细粒度对比损失 L CTR L_{\text{CTR}} LCTR 定义如下:

首先定义单个损失:

L c ( x i j , x b ) = − log ⁡ ∑ p ≠ i exp ⁡ ( x i j ⋅ x p j / τ ) ∑ q ≠ i exp ⁡ ( x i j ⋅ x q j / τ ) + ∑ k exp ⁡ ( x i j ⋅ x k b / τ ) (1) L_c(x_{ij}, x^b) = -\log \frac{\sum_{p \ne i} \exp(x_{ij} \cdot x_{pj} / \tau)}{\sum_{q \ne i} \exp(x_{ij} \cdot x_{qj} / \tau) + \sum_k \exp(x_{ij} \cdot x^b_k / \tau)} \tag{1} Lc(xij,xb)=logq=iexp(xijxqj/τ)+kexp(xijxkb/τ)p=iexp(xijxpj/τ)(1)

其中, τ \tau τ 是温度系数。

然后,总体细粒度对比损失为:

L CTR = ∑ j ∑ i ( L c ( x i j s , x b ) + L c ( x i j e , x b ) ) (2) L_{\text{CTR}} = \sum_j \sum_i \left( L_c(x^s_{ij}, x^b) + L_c(x^e_{ij}, x^b) \right) \tag{2} LCTR=ji(Lc(xijs,xb)+Lc(xije,xb))(2)


我们称该损失为细粒度对比损失(fine-grained contrastive loss),以区别于【20】中提出的对比损失。

【20】的对比损失主要用于通过将整段动作实例与背景进行对比,来学习动作的完整性。而在我们的方法中,边界检测模块(BDM)预测动作的起止点,直接决定动作预测的完整性。因此,我们选择更细粒度的对比目标——使起始/结束区域的特征与背景特征区分开来。

通过这种方式,我们优化了 BDM 所依赖的输入特征,从而实现更准确的动作边界预测。


3.6 训练(Training)

对于边界检测模块(BDM)的训练,我们采用与【25】中相同的训练目标 L BDM L_{\text{BDM}} LBDM

对于提议评估模块(PEM),我们首先丢弃所有包含零个或多个点级标注的提议。换句话说,我们仅保留那些包含恰好一个点级标注的动作提议用于训练。

我们将每个提议的分类结果与置信度 ( c ^ i , s ^ i ) (\hat{c}_i, \hat{s}_i) (c^i,s^i) 与其真实标签 ( c i , s i ) (c_i, s_i) (ci,si) 之间的**二元交叉熵损失(binary cross-entropy loss)**作为 PEM 的训练目标,其定义如下:

L PEM = − 1 N p ∑ i = 1 N p ( c i ⋅ log ⁡ ( c ^ i ) + s i ⋅ log ⁡ ( s ^ i ) ) (3) L_{\text{PEM}} = -\frac{1}{N_p} \sum_{i=1}^{N_p} \left( c_i \cdot \log(\hat{c}_i) + s_i \cdot \log(\hat{s}_i) \right) \tag{3} LPEM=Np1i=1Np(cilog(c^i)+silog(s^i))(3)

最终,我们使用以下联合损失函数对 APN 网络进行端到端训练:

L total = L BDM + λ 1 ⋅ L PEM + λ 2 ⋅ L CTR (4) L_{\text{total}} = L_{\text{BDM}} + \lambda_1 \cdot L_{\text{PEM}} + \lambda_2 \cdot L_{\text{CTR}} \tag{4} Ltotal=LBDM+λ1LPEM+λ2LCTR(4)

其中 λ 1 \lambda_1 λ1 λ 2 \lambda_2 λ2 为平衡各损失项影响的权重系数。


4.2 与现有先进方法的对比(Comparison with State-of-the-art Methods)

表 1:在 ActivityNet 1.3 数据集上,不同监督设置下方法性能对比。AVG 列表示在阈值 0.5 ! : ! 0.05 ! : ! 0.95 {0.5!:!0.05!:!0.95} 0.5!:!0.05!:!0.95 下的平均 mAP。
在这里插入图片描述


我们在 ActivityNet 1.3 数据集上与不同监督层级的现有最先进时间动作定位方法进行了比较,结果如表 1 所示。
在这里插入图片描述

从表中可以看出,我们所提出的方法在所有 IoU 阈值下均显著优于此前点级监督方法(PTAL)的最新工作,验证了方法的有效性。同时,与视频级监督的 WTAL 方法相比,我们在标注成本相近的前提下取得了大幅领先的性能,说明点级监督提供了更丰富的信息并能为模型提供更积极的学习引导。

值得注意的是,我们的方法在多个指标上与若干帧级(FTAL)全监督方法相当。


我们还在 THUMOS 14、GTEA 与 BEOID 数据集上进行了实验,结果如表 2 和表 3 所示。

在 GTEA 与 BEOID 上,我们的方法显著优于现有方法;在 THUMOS 14 上也取得了可比的性能。

在这里插入图片描述

4.3 分析(Analysis)

伪标签生成分析
在表 4 中,我们评估了不同训练迭代轮次下生成的伪标签质量,具体通过在 IoU 阈值为 0.5 时计算伪标签的 mAP 来衡量。

结果表明,不论是否使用 L CTR L_{\text{CTR}} LCTR,伪标签的 mAP 随着训练过程持续上升。这验证了我们所提出的伪标签生成算法的有效性,以及训练过程中不断更新伪标签所带来的优化作用。


对比特征优化的有效性
为验证对比特征优化( L CTR L_{\text{CTR}} LCTR)的有效性,我们在表 4 中展示了其对伪标签质量的影响,并在表 5 中展示了其对模型性能的提升效果。

当使用 L CTR L_{\text{CTR}} LCTR 进行训练时,生成的伪标签明显比未使用该损失时更为精确,说明 L CTR L_{\text{CTR}} LCTR 有助于提升伪标签的边界质量。

此外, L CTR L_{\text{CTR}} LCTR 在不同 IoU 阈值下均显著提升了模型性能,进一步证明该对比特征优化机制对于实现更精确的时间动作定位具有重要作用。

表 5:细粒度对比损失 L CTR L_{\text{CTR}} LCTR 对 ActivityNet 1.3 上模型性能的影响。


视觉-语言建模分析
我们还进行了消融实验,以验证所提出的视觉-语言建模的有效性。由于篇幅限制,具体实验分析详见附录材料。


局限性与未来方向
我们也分析了方法的潜在局限性与未来可改进方向,相关内容同样因篇幅所限置于附录材料中。


5 结论(Conclusion)

本文提出了一种新颖的基于提议的点级监督时间动作定位(PTAL)方法。与先前工作主要基于 MIL 框架不同,我们的方法通过生成灵活长度的动作提议,构建更具时间语义的提议级别特征,并借助视觉-语言匹配机制对其进行分类与评分。我们还引入了一种高效的聚类算法用于生成伪标签,并提出了细粒度对比损失以进一步优化边界特征学习。

实验结果表明,我们的方法在多个数据集上超越现有最先进点级与视频级监督方法,并与一些帧级全监督方法相当。

我们相信:

  • 本文所提出的思想可以推广至其他弱监督时间建模任务;
  • 提议级建模范式有望成为弱监督时间定位的新方向。

附录

在本补充材料中,我们首先详细讨论伪标签生成算法。然后,我们进行消融研究,以证明视觉-语言建模的有效性以及我们的方法在不同设置下对点级标注的鲁棒性。最后,我们展示一些定性结果,并分析我们方法的局限性和有前景的改进方向。

1 伪标签生成算法
在本节中,我们将详细解释我们的伪标签生成算法。我们首先执行约束k-中心点聚类,基于点级标注找到动作边界。然后,我们挖掘背景帧,以提供更精细的监督。遵循此过程,我们将首先展示约束k-中心点聚类,然后介绍背景挖掘。

正如在主投稿中所讨论的,为了输出每个动作实例的时间边界并保证每个动作实例在时间上的一致性,我们找到这样的时间位置(边界):它将两个连续点级标注之间的帧划分为两个聚类(动作实例),其中边界与聚类中心点之间的距离最小。形式上,给定输入视频的嵌入特征 { x i } i = 1 T \{x_{i} \}_{i=1}^{T} {xi}i=1T和点级标注 { t i } i = 1 N \{t_{i}\}_{i=1}^{N} {ti}i=1N(其中 t i < t i + 1 t_{i}<t_{i+1} ti<ti+1),我们旨在输出动作边界 { b i } i = 0 N \{b_{i}\}_{i=0}^{N} {bi}i=0N,其中 t i − 1 < b i < t i t_{i-1}<b_{i}<t_{i} ti1<bi<ti。解决此问题的一种简单聚类算法是找到如下的边界 b i b_{i} bi
b i = arg ⁡ min ⁡ p ( ∑ j = t i p dist ( x j , m i ) + ∑ j = p + 1 t i + 1 dist ( x j , m i + 1 ) ) b_{i}=\arg\min _{p}\left(\sum_{j=t_{i}}^{p} \text{dist}\left(x_{j}, m_{i}\right)+\sum_{j=p+1}^{t_{i+1}} \text{dist}\left(x_{j}, m_{i+1}\right)\right) bi=argpmin(j=tipdist(xj,mi)+j=p+1ti+1dist(xj,mi+1))
其中 dist ( ⋅ ) \text{dist}(\cdot) dist()是欧氏距离, m i = x t i m_{i}=x_{t_{i}} mi=xti是第i个聚类(动作实例)的中心点。直观地说, b i b_{i} bi是将 [ t i , t i + 1 ] [t_{i}, t_{i+1}] [ti,ti+1]内的帧划分为两个聚类的决策边界的估计。

然而,我们认为这种简单方法无法给出合理且鲁棒的估计。这是因为在公式1中, b i b_{i} bi是用“静态”的聚类中心点 m i m_{i} mi m i + 1 m_{i+1} mi+1计算的,这些中心点在聚类过程中保持不变。如果聚类中心点用对相应聚类而言代表性不足的“糟糕”点级标注初始化,那么得到的 b i b_{i} bi将是糟糕的预测。受文献[1]中的前向-后向算法启发,我们设计了一种高效的k-中心点聚类算法,该算法基于先前的预测不断更新聚类中心点。其动机如下:如果我们得到 b i b_{i} bi的预测,那么我们已经知道 [ b i − 1 , b i ] [b_{i-1}, b_{i}] [bi1,bi]内的帧属于同一个第i个动作实例(聚类)。因此,我们将 m i m_{i} mi更新为 x b i − 1 : b i x_{b_{i-1}: b_{i}} xbi1:bi的平均值,并使用更新后的中心点来估计下一个动作边界 b i + 1 b_{i+1} bi+1。我们称之为前向传递,并将得到的前向预测记为 { b i F } i = 0 N \{b_{i}^{F}\}_{i=0}^{N} {biF}i=0N。类似地,我们可以通过后向传递得到后向预测 b i B i = 0 N {b_{i}^{B}}_{i=0}^{N} biBi=0N。我们通过平均前向和后向预测得到 { b i } i = 0 N \{b_{i}\}_{i=0}^{N} {bi}i=0N的最终预测。算法1展示了我们提出的聚类算法的伪代码。

算法1 约束k-中心点聚类算法
输入:视频长度T;嵌入特征 { x i } i = 1 T \{x_i\}_{i=1}^{T} {xi}i=1T;点级标注 { t i } i = 1 N \{t_i\}_{i=1}^{N} {ti}i=1N,其中 t i < t i + 1 t_i < t_{i+1} ti<ti+1
输出:动作边界 { b i } i = 0 N \{b_i\}_{i=0}^{N} {bi}i=0N(约束条件为 b 0 = 0 b_0 = 0 b0=0 b N = T b_N = T bN=T t i < b i < t i + 1 t_i < b_i < t_{i+1} ti<bi<ti+1);更新后的聚类中心点 { m i } i = 1 N \{m_i\}_{i=1}^{N} {mi}i=1N
1: 初始化:聚类中心点 { m i } = { x t i } i = 1 N \{m_i\}=\{x_{t_i}\}_{i=1}^{N} {mi}={xti}i=1N;动作边界 b F 0 = b B 0 = 0 b_F^0 = b_B^0 = 0 bF0=bB0=0 b F N = b B N = T b_F^N = b_B^N = T bFN=bBN=T
2: 重复
3: 对于 i = 1 , . . . , N − 1 i = 1, ..., N-1 i=1,...,N1 ▷计算前向预测
4.在这里插入图片描述

5: 结束循环
6: 对于 i = N − 1 , . . . , 1 i = N-1, ..., 1 i=N1,...,1 ▷计算后向预测
7.在这里插入图片描述

8: 结束循环
9: 对于 i = 1 , . . . , N i = 1, ..., N i=1,...,N
b i = 1 2 ( b B i + b F i ) b_i = \frac{1}{2}(b_B^i + b_F^i) bi=21(bBi+bFi) ▷平均前向和后向预测
10: m i = 1 b i − b i − 1 + 1 ∑ j = b i − 1 b i x j m_i = \frac{1}{b_i - b_{i-1} + 1} \sum_{j=b_{i-1}}^{b_i} x_j mi=bibi1+11j=bi1bixj ▷更新聚类中心点
11: 结束循环
12: 直到收敛
13: 返回 { b i } i = 0 N \{b_i\}_{i=0}^{N} {bi}i=0N { m i } i = 1 N \{m_i\}_{i=1}^{N} {mi}i=1N

这里是引用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

所提出的聚类算法输出动作边界时,并未考虑动作之间的背景实例。为了生成更准确的伪标签,我们还提出了背景帧挖掘方法。我们假设两个连续动作实例之间至少存在一个背景帧将它们分隔开。由于 { b i } i = 0 N \{b_{i}\}_{i=0}^{N} {bi}i=0N是两个连续动作实例之间过渡时刻的预测,它们为背景帧提供了有用的提示。我们将 b i b_{i} bi视为第i个背景实例的锚帧,并从该锚帧开始扩展。一旦当前帧与 b i b_{i} bi之间的距离大于预定义阈值,我们就将当前帧标记为第i个背景实例的边界。

具体而言,给定动作边界 { b i } i = 0 N \{b_{i}\}_{i=0}^{N} {bi}i=0N和更新后的聚类中心点 { m i } i = 1 N \{m_{i}\}_{i=1}^{N} {mi}i=1N,我们从 b i b_{i} bi t i t_{i} ti遍历,找到第一个时间位置 δ i − \delta_{i}^{-} δi,使得: dist ( m i , δ i − ) dist ( m i , b i ) < ζ \frac{\text{dist}(m_{i}, \delta_{i}^{-})}{\text{dist}(m_{i}, b_{i})}<\zeta dist(mi,bi)dist(mi,δi)<ζ,其中ζ是预定义阈值。得到的 δ i − \delta_{i}^{-} δi是第i个背景实例的左(起始)边界。类似地,我们从 b i b_{i} bi t i + 1 t_{i+1} ti+1遍历,找到第一个时间位置 δ i + \delta_{i}^{+} δi+,使得: dist ( m i + 1 , δ i + ) dist ( m i + 1 , b i ) < ζ \frac{\text{dist}(m_{i+1}, \delta_{i}^{+})}{\text{dist}(m_{i+1}, b_{i})}<\zeta dist(mi+1,bi)dist(mi+1,δi+)<ζ。得到的 δ i + \delta_{i}^{+} δi+是第i个背景实例的右(结束)边界。对于边界情况 b 0 b_{0} b0 b N b_{N} bN,我们只计算 δ 0 + \delta_{0}^{+} δ0+ δ N − \delta_{N}^{-} δN,并直接令 δ 0 − = b 0 \delta_{0}^{-}=b_{0} δ0=b0 δ N + = b N \delta_{N}^{+}=b_{N} δN+=bN。最后,我们将 ( δ i − , δ i + ) (\delta_{i}^{-}, \delta_{i}^{+}) (δi,δi+)内的帧标记为背景帧,并将 φ i b = ( δ i − , δ i + ) \varphi_{i}^{b}=(\delta_{i}^{-}, \delta_{i}^{+}) φib=(δi,δi+)记为第i个伪标签背景实例。同时,我们将 [ δ i − 1 + , δ i − ] [\delta_{i-1}^{+}, \delta_{i}^{-}] [δi1+,δi]内的帧赋予 t i t_{i} ti点级标注的动作标签,并将 φ i = ( δ i − 1 − , δ i − , c i ) \varphi_{i}=(\delta_{i-1}^{-}, \delta_{i}^{-}, c_{i}) φi=(δi1,δi,ci)记为第i个伪标签动作实例。

2 点级标注生成
正如主投稿中所提到的,所有四个基准数据集都没有官方(人工标注的)点级标注。因此,我们需要从它们现有的帧级标注中模拟点级标注。对于每个动作实例,我们将其真实起始和结束时间记为 t s t^{s} ts t e t^{e} te。然后,我们从均值为 t s + t e 2 \frac{t^{s}+t^{e}}{2} 2ts+te、标准差为1秒的正态分布中随机采样一帧。我们将此类点级标注称为“正态分布(Normal)”。为了验证我们的方法在不同分布的点级标注下的鲁棒性,我们在ActivityNet 1.3上展示了另外两种分布下的结果。“均匀分布(Uniform)”表示点级标注是从均匀分布 [ t s , t e ] [t^{s}, t^{e}] [ts,te]中随机采样的,“中心(Center)”表示我们直接使用 t s + t e 2 \frac{t^{s}+t^{e}}{2} 2ts+te作为点级标注。从表1中可以看出,我们的模型对不同分布的点级标注具有鲁棒性。
在这里插入图片描述

3 视觉-语言建模
为了展示视觉-语言建模(VLM)的有效性,我们比较了PEM的两种实现方式。在PEM的原始实现中,我们分别使用两个Transformer[3]作为视觉编码器和文本编码器。为了排除VLM的影响,我们移除了文本编码器,并将视觉编码器替换为更大的Transformer,使得PEM的参数数量保持不变。我们在视觉编码器的输出之上使用一个线性层,直接输出提议的分类分数和置信度分数。我们在ActivityNet 1.3数据集上以相同的实验设置训练得到的模型,结果如表2所示。可以看出,在VLM的帮助下,所有交并比(IoU)阈值下的平均精度均值(mAP)都有所提高,这表明VLM有助于更准确的动作定位。
在这里插入图片描述在这里插入图片描述

4 定性结果
图1展示了我们的方法与最先进的基于MIL的方法[2]在THUMOS 14数据集上的定性结果。我们可以观察到,我们的方法输出的预测更精确。此外,我们的基于提议的方法极大地解决了基于MIL的方法中的定位不完整问题。具体而言,在图1(a)中,文献[2]的方法无法很好地区分“挺举(CleanAndJerk)”的起始部分。这是因为在举重的起始阶段,运动员的动作往往非常缓慢。正如我们在主投稿中所讨论的,这些缓慢动作很难被基于MIL的方法区分。相比之下,借助包含丰富时间信息的动作提议,我们成功输出了更准确的预测。我们还在图1(b)中展示了一个包含失败案例的例子。总体而言,我们方法的预测仍然比文献[2]的不完整预测更准确。但由于两个连续动作的持续时间短且间隔短,第三个和最后一个预测的动作实例存在过完整的问题。
在这里插入图片描述

5 局限性与未来工作
正如定性结果的第二个例子所示,可能影响我们模型性能的一个主要因素是输入视频中动作实例的高频率和短持续时间。当一个视频中存在大量短动作实例时,由于动作持续时间短且动作间间隔短,我们的BDM和PGM将很难准确生成动作提议,从而导致性能下降。

另一个局限性是用于训练的生成伪标签的质量,因为我们模型的训练在很大程度上依赖于这些伪标签。我们在ActivityNet 1.3上进行了一项额外实验:我们的方法在帧级标签(全监督)下训练,且不生成伪标签。换句话说,这相当于如果生成的伪标签完全正确时我们会得到的结果。从表3可以看出,更准确的标签带来了显著的性能提升,这表明提高伪标签质量的重要性。换句话说,探索更有效的伪标签生成算法有望改进我们的方法,我们将其留作未来的工作。
在这里插入图片描述

思考:文中提出的约束k-中心点聚类算法可以借鉴和参考,通过前向预测和后向预测找到相邻点标签的最合适的边界,进而得到一个区间,来作为动作定位的伪标签。
可以考虑用来做完整性测试的伪标签。

这里是引用