End-to-End Dense Video Captioning with Parallel Decoding

继密集视频描述的开山之作Dense-Captioning Events in Videos后,这是第二篇必须阅读的文章,算是一个非常经典的工作。之前的工作都是遵循“先定位后描述”的两阶段策略,严重依赖大量手工设计的组件。把密集视频描述生成设为一个集合预测任务,提出一个并行解码的端到端密集视频描述框架(PDVC)。PDVC在Transformer解码器的顶部叠加事件计数器,在对视频内容的整体理解下,精确地将视频分割成多个事件片段。PDVC优势:不依赖启发式非极大值抑制或循环事件序列选择网络来去除冗余,PDVC直接产生适当大小的事件集;与采用两阶段方案相反,我们将事件查询的增强表示并行输入localization head(定位头)和caption head(标题头),通过优化使这两个子任务深度关联并相互促进。

1.介绍

由于单句描述不足以描述长视频,密集视频描述应运而生,之前的工作是先定位后描述,首先预测一组具有边界的event proposals,利用前后propsals的视觉信息一起生成描述。该方法存在以下两个问题:生成描述被视为下游任务,导致高度依赖生成proposal的质量;之前的proposal模块性能取决于仔细的锚点设计处理和proposal选择后处理(例如非极大值抑制)。并且这些手工设计的组件引入额外的超参数,超参数高度依赖于手动阈值策略,阻碍了端到端caption生成的进展。提出一个并行解码的端到端框架,直接将用于proposal生成的中间表示输入到caption  head中。PDVC 利用特征级别的任务间关联,中间特征向量和目标事件可以以一对一的对应关系进行匹配,使得特征表示更具辨别力来识别特定事件。即使使用弱监督设置(没有位置注释),也可以隐式地从caption中学习位置感知功能。

2.相关工作

时序事件提议(Temporal event proposals):基于锚点和基于边界的方法。

基于锚点的方法借鉴了目标检测中使用的锚框(Anchor Boxes)概念。锚点预定义:在视频的时间轴上,以不同的尺度(长度)和间隔预定义大量锚点。例如,可以设置短、中、长不同长度的锚点,以覆盖各种事件的持续时间。特征提取:使用深度神经网络(如C3D、I3D等)提取视频帧的特征。评分与调整:通过评估网络对每个锚点进行评分,确定其包含事件的概率。同时,对锚点的位置和长度进行回归调整,使其更好地拟合实际事件的时序范围。非极大值抑制(NMS):应用NMS算法消除重叠度过高的锚点,只保留评分最高的锚点作为最终的事件提议。优点:通过预定义锚点,可以快速覆盖视频中的不同时间尺度和位置,适用于实时处理;可以将锚点评分和回归统一在一个网络中进行训练,简化了提议生成的流程;借鉴了目标检测中的成功经验,方法成熟且易于实现。缺点:锚点设计依赖,需要精心设计锚点的尺度和间隔,预定义的锚点可能无法覆盖所有复杂的时序模式,尤其是对于具有高度可变时序尺度的视频;计算开销大,预定义大量锚点会增加计算量,尤其是在长视频中,可能导致效率下降;超参数敏感,NMS和锚点回归中的阈值选择对最终结果影响较大,需要手动调节。

基于边界的方法不依赖于预定义的锚点,而是通过检测视频中的关键帧(即显著的开始和结束边界)来生成event proposal。这类方法通常先识别出潜在的事件边界,然后将相邻的边界配对,形成完整的事件片段。边界检测:使用深度学习模型(如卷积神经网络、循环神经网络等)对每一帧进行分类,判断其是否为事件的开始边界(start boundary)或结束边界(end boundary)。边界配对:将检测到的开始边界和结束边界进行配对,生成候选的事件片段。通常采用局部到全局的方式,即在相邻的边界之间进行配对,确保事件的连续性。评分与筛选:对每个生成的事件片段进行评分,评估其包含事件的置信度。然后,使用非极大值抑制(NMS)等方法消除重叠过多的提议,只保留评分较高的事件片段。优点:灵活性高,不依赖于预定义的锚点,能够更好地适应不同视频中复杂多变的时序模式;减少冗余,通过检测关键边界,可以有效减少冗余的事件提议,提高提议的准确性;端到端潜力,能够设计为端到端的系统,减少手工设计的模块,提高整体效率。缺点:边界检测难度大,准确检测事件的开始和结束边界具有挑战性,尤其是在边界模糊或事件过渡平滑的视频中;依赖上下文信息,需要充分利用上下文信息来准确配对边界,避免生成错误的事件片段;计算复杂度:尽管减少了锚点的数量,但边界配对和评分仍然可能带来较高的计算开销,尤其是在长视频中。

基于边界的方法则通过将具有高置信度的显著帧组合在一起,以局部到全局的方式形成proposal。这两种方法都包含手工设计(例如非极大值抑制和基于规则的标签分配),这些设计需要精心选择手动阈值,因此不属于严格的端到端方法。

Transformer-based detector

DETR将目标检测任务视为一组集合预测任务,但由于全局注意力机制收敛速度比较慢,后提出Deformable Transformer,利用稀疏注意力机制和FFN,关注图像稀疏位置空间结合多尺度特征表示来加速训练,从视觉领域应用到密集视频描述领域。

3.方法

直接检测一组具有适当时间长度的captions,其中分别表示事件的开始时间、结束时间和事件的caption,事件数量也由PDVC预测。采用具有编码器-解码器结构的deformable transformer,通过注意机制捕获帧间、事件间和事件-帧交互,并产生一组事件查询特征。然后,两个并行的预测头同时预测每个事件查询的边界和标题。事件计数器从全局视图中预测事件数量。最后,选择置信度最高的事件作为最终的结果。

3.1. Deformable Transformer
Deformable Transformer是一种基于多尺度可变形注意(MSDAtt)的编码器-解码器结构。MSDAtt通过关注参考点周围的一组稀疏采样点,缓解了Transformer在处理图像特征映射时自注意收敛慢的问题。

3.2. Feature Encoding
采用了一个预训练 action recognition network(如C3D,TSN)来提取帧级的特征,并通过插值算法将特征图的时间维度缩放到固定长度,以方便批处理。然后,为了更好地利用多尺度特征来预测多尺度事件,我们添加了 L 个时间卷积层(步长=2,内核大小=3)来获取跨多个分辨率的特征序列,从 T 到 T /2L。多尺度帧特征及其位置嵌入被输入Deformable Transformer编码器,提取跨多个尺度的帧-帧关系。

3.3. Parallel Decoding
解码网络包含一个 deformable transformer解码器和三个并行头,captioning head, localization head(用置信分数预测事件边界),event counter。

解码器从一组可学习的事件查询向量 qj 和通过线性投影生成的参考点 pj 开始,初步估计事件的特征和位置。然后,经过多个解码层的迭代细化,最终输出更加精确的事件特征 q̃j 和事件位置 p̃j。简单来说,就是通过查询的方式从图像或视频的帧特征中找到与特定事件相关的特征。其中参考点是通过对event queries进行线性投影并经过 sigmoid 激活得到。事件查询和参考点作为事件特征和位置(中心点)的初始猜测,并且它们将在每个解码层迭代地进行细化。

Localization head

定位头的主要任务是为每个事件查询预测一个时间段(用相对偏移表示)和分类结果(表示是否是前景事件)。它通过多层感知机实现,并输出一个三元组 {ts_j, te_j, cloc_j} 来表示检测到的事件的起始时间、结束时间及其置信度。

框预测用于预测每个事件的时间段(segment),具体是预测该事件的中心点和时长的相对偏移(offset),预测事件的中心点相对于参考点的偏移,预测事件的时长相对于参考点的长度。 框预测的输出是一个二维向量,表示相对偏移量。二分类任务用于为每个事件查询生成一个置信度(confidence score),表示该查询是否是前景还是背景事件。

Captioning head
两个标题头,一个是轻量化的设计,另一个是标准设计,后者通过引入注意力机制来改善字幕生成的表现。轻量级的头直接将事件查询 q̃j输入到一个标准的 LSTM(长短期记忆网络)中,每个时间步上生成对应的单词。每个时间步的单词 wjt 是通过一个全连接层(FC layer)根据 LSTM 的隐藏状态 hjt 预测出来的,之后通过 softmax 激活得到该单词的概率分布。轻量化方案仅依赖事件级别的表示 q̃j,无法充分利用视频帧的特征和语言之间的交互,因此生成的字幕可能较为简单,缺乏与具体帧的互动。

传统的两阶段视频字幕生成方法,会通过注意力机制限制caption生成时的关注范围(attention)在事件的边界内,从而更好地对齐视频片段与字幕。由于captioning head不能访问事件的边界,没有事件边界信息,模型在学习语言与帧之间的关系时难度增加,因为没有明确的时间限制来帮助模型聚焦于视频的某一段。

软注意力机制(Soft Attention)是一种广泛应用于视频字幕生成的技术,它能够根据每一帧的重要性动态分配注意力权重。当生成caption中的某个词时,模型可以根据视频帧的重要性加权每帧的特征。为了解决没有事件边界导致的优化难题,提出了变形软注意力机制(DSA,Deformable Soft Attention,它的作用是让注意力权重集中在参考点 p̃j 附近的小范围区域内,从而提高字幕生成的准确性。当生成第 t 个单词 wt 时,模型会根据语言查询(hidden state hjt事件查询(event query q̃j,从每层帧特征 f_l 中生成 K 个采样点。

  • 注意力机制的输入
    • 采样点作为注意力机制中的 keyvalue
    • [hjt, q̃j] 作为注意力机制中的 query
  • 采样点分布在参考点 p̃j 附近,因此注意力机制仅在相对较小的区域内进行计算,从而更精确地关联视频帧和语言信息。
  • LSTM 的输入包括以下三个部分的拼接:
    1. 上下文特征 zjt(通过 DSA 输出的特征)。
    2. 事件查询特征 q̃j
    3. 前一个时间步生成的单词 wj,t-1
  • 通过这些输入,LSTM 迭代生成下一个单词 wjt。最终,caption生成的概率通过 LSTM 的隐藏状态 hjt,通过全连接层和 softmax 激活计算得到。

Event counter
事件过多会导致冗余,可读性差,事件过少会导致遗漏信息,内容不完整。因此提出事件计数器 ,用于检测视频的事件数量。它包含一个最大池化层和一个具有softmax激活的全连接层(FC Layer),从事件查询 q̃j 中提取最显著的信息,将池化后的全局特征向量映射为一个固定大小的向量 rlen,其中每个值表示视频中有某个特定事件数量的概率。

在推理阶段,通过计算 rlen 向量的 argmax(取最大值的索引),来确定视频的事件数量。最终得到的事件数量 Nset = argmax(rlen),即模型认为视频中最可能的事件数量。最终,根据 Nset 选择事件,并通过一个包含定位置信度和字幕置信度的公式来计算每个事件的置信度。为了防止置信度对短句子的过度偏估,还加入了调制因子来校正字幕长度的影响。

Set prediction loss
在训练过程中,PDVC模型会生成一组 N 个事件,这些事件包含它们的时间位置和字幕描述。为了将模型预测的事件与真实事件进行匹配,使用了匈牙利算法(Hungarian Algorithm)来找到最佳的二分匹配结果。预测片段和ground truth片段上的gIOU,表示预测的分类得分与ground truth标签之间的焦点损失 focal loss。通过匈牙利算法对预测事件和真实事件进行匹配,选取损失最小的一组匹配结果来计算损失。最终,选择匹配的对来计算集合预测损失,即gIOU损失、分类损失、event counter损失和caption损失的加权之和。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值