SVFormer: Semi-supervised Video Transformer for Action Recognition

标题:SVFormer:用于动作识别的半监督视频Transformer

原文链接:https://doi.org/10.48550/arXiv.2211.13222

源码链接:GitHub - ChenHsing/SVFormer

发表:CVPR

摘要

半监督动作识别是一项具有挑战性但至关重要的任务,因为视频标注的成本较高。现有方法主要使用卷积神经网络,然而当前革命性的视觉Transformer模型尚未得到充分探索。本文研究了在半监督学习设置下使用Transformer模型进行动作识别的应用。为此,我们引入了SVFormer采用了稳定的伪标签框架(即EMATeacher)来处理未标记的视频样本。虽然各种数据增强方法已被证明对半监督图像分类有效,但它们通常对视频识别产生有限的效果。因此,我们引入了一种针对视频数据的新型增强策略,称为Tube TokenMix,其中视频片段通过掩码混合,以一致的掩码标记覆盖时间轴。此外,我们提出了一种时间扭曲增强方法,以覆盖视频中的复杂时间变化,将选定的帧在剪辑中拉伸到不同的时间持续时间。在三个数据集Kinetics-400、UCF-101和HMDB-51上进行了大量实验证实了SVFormer的优势。特别是,在Kinetics-400的1%标注率下,SVFormer在较少的训练时期内超过了最先进技术31.5%。我们的方法有望成为一个强大的基准,并鼓励未来在Transformer网络上进行半监督动作识别的研究。代码发布在https://github.com/ChenHsing/SVFormer。

1.介绍

视频在互联网上逐渐取代了图像和文字,并呈指数增长。在视频网站如YouTube上,每天都有数百万个新视频上传。监督式视频理解工作已取得了巨大成功。它们依赖于大规模的手动注释,然而标记如此多的视频是耗时且劳动密集的。如何利用现成的未标记视频以更好地理解视频内容至关重要。

在这种精神下,半监督动作识别探索如何利用大规模未标记数据提高深度学习模型的性能。通常情况下,这是通过使用标记数据对网络进行预训练,然后利用预训练模型为未标记数据生成伪标签来实现的,这个过程称为伪标记,获得的伪标签进一步用于优化预训练模型为了提高伪标签的质量,先前的方法使用了额外的模态,如光流和时间梯度,或者引入了辅助网络来监督未标记数据。尽管这些方法呈现出有希望的结果,但它们通常需要额外的训练或推理成本,使它们无法扩展。

最近,与CNN相比,视频Transformer展示了强大的结果。尽管取得了巨大的成功,但在半监督视频任务上探索Transformer的应用仍未被深入研究。虽然直接将视觉Transformer扩展到半监督学习听起来很吸引人,但先前的研究表明,在低数据情况下,由于缺乏归纳偏差,Transformer的性能显著较差。因此,直接将半监督学习方法(例如FixMatch)应用于ViT会导致较差的性能表现

令人惊讶的是,在视频领域,我们观察到TimeSformer,一个流行的视频Transformer,即使在注释有限的情况下,使用来自ImageNet的权重初始化后也展现出了令人鼓舞的结果。这鼓励我们探索Transformer在半监督学习设置中用于动作识别的巨大潜力。

现有的半监督学习方法通常使用图像增强技术(例如Mixup和CutMix)来在标签资源有限的情况下加速收敛。然而,这种像素级的混合策略并不完全适用于Transformer架构,因为Transformer操作的是由补丁分割层生成的标记。此外,诸如Mixup和CutMix之类的策略特别设计用于图像任务,未考虑到视频数据的时间性质。因此,正如将通过经验验证的那样,直接使用Mixup或CutMix进行半监督动作识别会导致不令人满意的性能。

在这项工作中,我们提出了SVFormer,一种基于Transformer的半监督动作识别方法。具体来说,SVFormer采用了一种一致性损失,构建了两个不同的增强视图,并要求它们之间的预测保持一致。最重要的是,我们提出了Tube TokenMix (TTMix),一种适用于视频Transformer的增强方法。与Mixup和CutMix不同,Tube TokenMix通过掩码对标记后的特征进行了标记级别的组合,其中掩码在时间轴上具有一致的掩码标记。这样的设计可以更好地建模标记之间的时间相关性。

 文献中的时间增强方法(例如变化的帧率)只考虑简单的时间缩放或移位,忽略了人体动作中每个部分的复杂时间变化。为了帮助模型学习强大的时间动态,我们进一步引入了时间扭曲增强(TWAug),它可以任意改变剪辑中每帧的时间长度TWAug可以覆盖视频中的复杂时间变化,并且与空间增强互补,当将TWAug与TTMix相结合时,可以实现显著的改进。

如图1所示,SVFormer在几个基准测试中取得了令人期待的结果。 (i) 我们观察到,受监督的Transformer基线要比基于卷积的方法好得多,并且甚至在使用1%标签进行训练时与Kinetics400上的3DResNet最先进方法相媲美。 (ii) SVFormer-S显著优于以前的同类参数和推理成本(以FLOPs衡量)的最先进方法。 (iii) 我们的方法对较大的SVFormer-B模型也是有效的

我们的贡献如下:

我们是第一个探索将Transformer模型用于半监督视频识别的团队。与用于图像识别的Transformer的SSL(半监督学习,Semi-Supervised Learning)不同,我们发现使用在ImageNet上预训练的参数对于确保在低数据情况下获得合适的动作识别结果至关重要。

我们提出了一个标记级别的增强方法Tube TokenMix,相对于像素级别的混合策略,它更适合于视频Transformer。结合改善帧之间时间变化的时间扭曲增强,TTMix相比图像增强实现了显著提升。

• 我们在三个基准数据集上进行了大量实验。我们方法在两个不同规模(即SVFormer-B和SVFormer-S)上的性能明显优于最先进的方法。我们的方法为未来基于Transformer的研究奠定了强大的基线。

2.相关工作

深度半监督学习

深度学习依赖于大规模的注释数据,然而收集这些注释是一项劳动密集型的任务。半监督学习是减少标注成本的一种自然解决方案,它利用少量标记样本和大量未标记样本来训练模型。半监督学习的研究和应用主要集中在图像识别领域,其流程通常包括两个步骤:数据增强和一致性正则化。具体而言,不同的数据增强视图被输入到模型中,并通过一致性损失来强化它们的输出一致性。另一条研究方向通过混合生成新的数据和标签来训练网络。在这些最先进的方法中,FixMatch因其有效性而被广泛使用,其变种已扩展到许多其他应用,如目标检测、语义分割、3D重建等。尽管FixMatch在许多任务中取得了良好的性能,但由于缺乏时间增强,直接将其转移到视频动作识别可能无法获得令人满意的结果。在本文中,我们介绍了一种基于视频增强方法TTMix和时间增强TWAug的视频Transformer,它适用于在半监督学习,,可以有效地提高视频动作识别的性能。

半监督动作识别

VideoSSL[25] (视频半监督学习)提出了将2D半监督学习方法应用于视频的比较研究,验证了伪标记方法直接扩展的局限性。TCL [40] 探索了群体对比损失和自监督任务的影响。MvPL [62] 和LTG [57] 分别引入光流或时间梯度模态来生成高质量的伪标签用于训练。CMPL [64] 引入了一个辅助网络,需要更多的训练帧,增加了应用的难度。此外,先前的方法都基于2D [40] 或3D卷积 [57, 62, 64] 网络,需要更多的训练周期。我们的方法是首次对视频Transformer进行半监督学习动作识别的探索,并且以最少的训练成本实现了最佳性能

Video Transformer

视觉Transformer在图像识别领域取得的巨大成功促使人们开始探索基于Transformer架构的视频识别任务。VTN [36] 在预训练的ViT [13]之上使用额外的时间注意力。TimeSformer [4] 研究了不同的时空注意力机制,并采用了分解空间时间注意力作为速度和准确性的折中方案。ViViT [2] 探索了四种不同类型的注意力机制,并选择全局时空注意力作为默认方案以实现有 令人期待的性能。此外,MviT [14]、Video Swin [34]、Uniformer [28] 和 Video Mobile-Former [53] 将卷积中的归纳偏差融入到了Transformer中。尽管这些方法专注于完全监督的设置,但在半监督设置中对Transformer的研究工作有限。

数据增强

数据增强是现代深度网络中的一个重要步骤,用于提高训练效率和性能。Cutout [12] 在图像中移除随机的矩形区域。Mixup [67] 通过线性插值来将两个原始图像和对应的标签进行混合。在CutMix [66] 中,图像对之间的补丁被切割和粘贴。AutoAugment [10] 自动搜索增强策略以改善结果。PixMix [24] 在执行混合时探索图像的自然结构复杂性。TokenMix [31] 在标记级别混合图像,并允许区域成为多个孤立的部分。虽然这些方法已经取得了良好的结果,但它们都是专为纯图像设计的,大部分是像素级的增强。相比之下,我们的TTMix与TWAug结合,是专门为视频设计的。

3.方法

在本节中,我们首先在第3.1节介绍SSL的基础知识。我们提出的SVFormer的流程在第3.2节中描述。然后我们在第3.3节详细介绍了提出的Tube TokenMix(TTMix),以及有效但简单的时间扭曲增强方法。最后,我们在第3.4节展示了训练范例。

3.1 半监督学习的基础

假设我们有N个训练视频样本,其中包括N_L个带有类别标签y_l的标记视频(x_l,y_l)\in D_LN_U个未标记视频 x_u\in D_U,其中x_l是带有类别标签y_l的标记视频样本,x_u是未标记视频样本。通常情况下,N_U>>N_L半监督学习的目标是利用D_LD_U来训练模型

3.2流程

SVFormer遵循了流行的半监督学习框架FixMatch [41],该框架使用两个不同增强视图之间的一致性损失。训练范式分为两部分。

对于标记集\{(x_{l},\bar{y_{l}})\}_{l=1}^{N_{L}},模型优化了监督损失\mathcal{L}_{s}

\mathcal{L}_{s}=\frac{1}{N_{L}}\sum^{N_{L}}\mathcal{H}(\mathcal{F}(x_{l}),y_{l}),\quad(1)

其中,F(·)指的是模型产生的预测,y_l表示真实值,H(·)是标准的交叉熵损失,N_L表示标记样本的数量。

对“使用两个不同增强视图之间的一致性损失”的理解:

在训练过程中,对于每个未标记样本,将其进行两种不同的数据增强,并通过比较模型对这两个增强版本的预测来衡量它们之间的一致性。具体来说,给定一个未标记样本x_ux_u,首先对它进行两种不同的数据增强操作,得到两个增强后的版本x_{w}=\mathcal{A}_{weak}(x_{u}),x_{s}=\mathcal{A}_{strong}(x_{u})。然后,通过将这两个增强版本输入到模型中,并比较模型对它们的预测计算它们之间的损失。这种损失衡量了模型在两个增强版本上的预测结果之间的一致性,即模型是否能够在不同的增强下产生类似的预测结果。通过最小化这种一致性损失,可以促使模型学习到更加稳健和泛化的特征表示。

对于未标记样本x_u我们首先使用弱增强(例如,随机水平翻转、随机缩放和随机裁剪)和强增强(例如,AutoAugment [10] 或Dropout [43])分别生成两个视图,x_{w}=\mathcal{A}_{weak}(x_{u}),x_{s}=\mathcal{A}_{strong}(x_{u})。然后,由模型产生的弱视图的伪标签\hat{y}_{w}=\arg\max(\mathcal{F}(x_{w}))被用来监督强视图,使用以下无监督损失函数:

\mathcal{L}_{un}=\dfrac{1}{N_U}\sum\mathbb{I}(\max(\mathcal{F}(x_w))>\delta)\mathcal{H}(\mathcal{F}(x_s),\hat{y}_w),(2)

其中,δ是预先定义的阈值,而I是指示器函数,当最大类别概率超过δ时等于1,否则为0,置信度指标δ用于过滤噪声伪标签。

公式(2)表示的是无监督损失函数,利用未标记样本生成的伪标签(弱视图)来监督模型在强视图上的训练,从而提高模型在未标记数据上的性能。

对公式(2)的解释:

- N_U未标记样本的数量,表示总共有多少个未标记样本。
- \sum_{i=1}^{N_U}表示对每个未标记样本进行求和,即对所有未标记样本应用相同的计算。

- \mathbb{I}(\max(\mathcal{F}(x_w)) > \delta)是一个指示函数,它检查弱视图的预测结果中的最大类别概率是否大于预先设定的阈值\delta。如果最大类别概率超过了阈值,表示该样本的伪标签较为可靠,指示函数的值为1;否则为0。这个指示函数的作用是过滤掉噪声的伪标签,保留置信度较高的预测结果。

- \mathcal{H}(\mathcal{F}(x_s), \hat{y}_w)交叉熵损失函数用于衡量强视图的预测结果与弱视图的伪标签之间的差异。其中\mathcal{F}(x_s) 是模型对强视图的预测结果,\hat{y}_w是弱视图的伪标签(对伪标签样本使用弱增强获得一个视图x_w,并通过模型F对其进行预测,得到预测结果\hat y_w,\hat y_w为该弱视图的伪标签。)。

所以整个损失函数的含义是:对于每个未标记样本,首先检查其弱视图的预测结果中的最大类别概率是否大于阈值\delta ,如果是,则计算强视图的预测结果与弱视图的伪标签之间的交叉熵损失;如果不是,则跳过该样本。这样做的目的是通过弱视图的预测结果来指导强视图的学习,同时过滤掉那些置信度较低的伪标签,以减少噪声对模型训练的影响

对于“为什么用弱视图的伪标签来指导强视图学习,而不用强视图的伪标签来指导弱视图学习?”

这种方法的主要目的是利用弱视图的伪标签来指导强视图的学习,因为弱视图的预测结果可能更接近真实标签,而且强视图相对更容易受到噪声的影响。具体原因如下:

1. 弱视图相对于强视图可能更接近真实标签:弱视图是通过对未标记样本进行简单的增强操作得到的,这些增强操作通常是较为轻微的,不会对图像进行过多的变换,因此弱视图的预测结果可能更接近于真实标签。

2. 强视图容易受到噪声的影响:强视图是通过对未标记样本进行较强的增强操作得到的,这些增强操作可能会引入一些噪声,导致强视图的预测结果不够准确。如果直接使用强视图的预测结果来指导弱视图的学习,可能会使模型受到这些噪声的干扰,导致训练不稳定或者性能下降。

因此,通过使用弱视图的伪标签来指导强视图的学习,可以在一定程度上减少噪声的影响,提高模型的稳定性和性能。

在FixMatch中,两个增强的输入共享同一个模型,这往往容易导致模型容易崩溃。因此,我们在我们的框架中采用了改进版的FixMatch,即指数移动平均(EMA)-Teacher伪标签是由EMA-Teacher模型生成的,其参数通过学生参数的指数移动平均进行更新,具体形式如下:

\theta_t\leftarrow m\theta_t+(1-m)\theta_s,\quad(3)

其中,m是一个动量系数\theta _t\theta _s分别是教师模型和学生模型的参数。EMA在许多任务中取得了成功,例如自监督学习、图像分类的SSL和目标检测等。在这里,我们是首次将这种方法应用于半监督视频动作识别。

对公式(3)的理解:

公式(3)表示参数\theta _t(即教师模型的参数)通过指数移动平均的方式进行更新,其中新的参数\theta _t是当前参数\theta _t和学生模型参数\theta _s的加权平均。具体来说,m是一个动量系数,通常接近于1,用来控制学生模型参数的影响程度。当m接近于1时,新的参数\theta _t更多地受到当前参数\theta _t的影响;当m接近于0时,新的参数\theta _t更多地受到学生模型参数\theta _s的影响。这种指数移动平均的更新方式可以帮助平滑参数更新过程,从而提高模型的稳定性和泛化能力。

EMA-Teacher教师模型和学生模型的关系:

1.学生模型(Student Model):学生模型是主要用于训练和预测的模型。在半监督学习中,学生模型通常是一个深度神经网络,它接收标记和未标记数据,利用这些数据进行训练,以学习数据的特征表示和进行预测。学生模型是整个半监督学习系统的核心组成部分

2.教师模型(Teacher Model):教师模型是辅助学生模型进行训练的模型。它可以是与学生模型具有相同架构的另一个网络,也可以是采用不同架构的其他类型的模型。教师模型通常用于生成伪标签(pseudo-labels),这些伪标签可以用来辅助学生模型的训练。教师模型的目的是提供更准确和稳定的伪标签,以改善学生模型的性能。

3.EMA-Teacher模型与学生模型的关系:EMA-Teacher模型是一种特殊类型的教师模型。它通过对学生模型的参数进行指数移动平均来生成伪标签在训练过程中,EMA-Teacher模型的参数逐渐趋于学生模型参数的平均值,从而提供更稳定和准确的伪标签。因此,EMA-Teacher模型与学生模型之间是一种辅助和关联的关系,它通过生成更好的伪标签来帮助学生模型的训练。

3.3. Tube TokenMix(管道标记混合)

(以前常规用法,但是不适用于transformer)在半监督框架中的一个核心问题是如何利用高质量的伪标签丰富数据集。Mixup [67] 是一种广泛采用的数据增强策略,它通过对样本和标签进行凸组合来执行,具体如下:

\hat{x} = \lambda \cdot x_1 + (1-\lambda) \cdot x_2, \quad(4)

\hat{y} = \lambda \cdot y_1 + (1-\lambda) \cdot y_2,\quad(5 )

其中比例λ是一个符合贝塔(beta)分布的标量,x_1,x_2表示两个样本,y_1,y_2表示两个标签。Mixup [67] 及其变体(例如CutMix [66])在低数据情况下的许多任务中取得了成功,例如长尾分类 [9, 69]、域适应 [63] [55]、少样本学习 [35, 60] 等。对于半监督学习,Mixup 通过将未标记样本的伪标签混合在一起(Mixup 将未标记样本的伪标签与标记样本的真实标签进行混合,以产生新的混合标签,并将这些混合标签用于训练模型),在图像分类中也表现出良好的性能。

Mixing in Videos(混合视频)

虽然直接将Mixup或CutMix应用于视频场景可以明显改善基于卷积的方法[71],但这些方法在我们的方法中表现不佳。原因在于我们的方法采用了Transformer骨干网络,像素级混合增强(Mixup或CutMix)可能不太适合这种基于标记的模型[31]。为了弥合这一差距,我们提出了三种针对视频数据的标记级混合增强方法,即Rand TokenMix、Frame TokenMix和Tube TokenMix

图2. Tube TokenMix训练框架概述。两个输入的未标记样本通过一个管道掩码进行混合,生成的样本被馈送到学生模型中。这两个样本也被馈送到EMA-Teacher模型中,以获取它们的伪标签,然后通过掩码比例 λ 进行线性插值,为生成的样本产生伪标签。“SG”表示停止梯度。这里省略了数据增强。

图2展示了我们方法的流程。给定未标记的视频片段x_a, x_b \in \mathbb{R}^{H \times W \times T},我们的方法使用一个标记级别的掩码M \in \{0, 1\}^{H \times W \times T} 来进行样本混合。这里H和W是经过分块标记后的帧的高度和宽度,T是剪辑长度。我们在强数据增强A_{strong} 之后对x_ax_b进行混合,从而生成一个新的样本 x_{mix}具体如下:
x_{mix}=\mathcal{A}_{strong}(x_a)\odot\mathbf{M}+\mathcal{A}_{strong}(x_b)\odot(\mathbf{1}-\mathbf{M}),\qquad(6)
这里 ⊙ 表示逐元素乘法;掩码 M 中的每个元素都是二进制的,其取值为0或1,用来指示在混合过程中是否应该保留来自x_ax_b​ 的对应位置的信息。当掩码 M 的某个元素为1时,表示保留x_a对应位置的信息;当为0时,表示保留 x_b对应位置的信息。

为什么使用强数据增强而不是弱数据增强?

在混合样本时,使用强数据增强处理的原因是为了确保生成的样本能够尽可能地包含更多的信息和特征,从而提高模型的泛化能力和性能。这样,通过强数据增强处理后的样本混合,可以更好地促使模型学习到数据中的关键特征和模式,从而提高模型在半监督学习任务中的表现。

掩码矩阵:

掩码矩阵是一个与原始数据相同尺寸的矩阵,其中的元素通常为0或1。它用于指示在某些操作中哪些位置应该被保留(标记为1)或被掩盖(标记为0)

掩码M在三种增强方法中是不同的,如图3所示。对于随机TokenMix,掩码中的标记是从整个视频剪辑中(来自 H ×W × T 个标记)随机选择的。对于帧级TokenMix,我们从 T 个帧中随机选择帧,并将这些帧中的所有标记进行掩码处理。对于Tube TokenMix,我们采用了管道式的掩码策略,即不同的帧共享相同的空间掩码矩阵。在这种情况下,掩码M在时间轴上有一致的掩码标记。虽然我们的掩码设计与最近的图像/视频掩码建模方法相似,但我们的动机完全不同。它们的重点是去除特定区域,并让模型预测掩码区域以进行特征学习。相反,我们利用掩码来混合两个剪辑并合成新的数据样本。

对“采用了管道式的掩码策略,即不同的帧共享相同的空间掩码矩阵”的理解:

对于每个视频剪辑,在Tube TokenMix方法中,我们生成一个掩码矩阵,该矩阵在空间维度上与视频帧的尺寸相匹配。然后,这个掩码矩阵被用来对整个视频剪辑的所有帧进行掩码操作,而不是单独对每个帧生成独立的掩码。因此,所有视频帧都共享相同的掩码,这样就确保了所有帧在混合过程中都受到相同的控制和约束,从而使得混合过程更加一致和稳定。

优点:共享相同的掩码可以简化计算、提高一致性和稳定性,并促进统一的信息融合,从而有效地改善了Tube TokenMix方法在混合视频剪辑时的效果。

混合样本x_{\text{mix}}被馈送到学生模型 F_s,得到模型预测y_{\text{mix}} = F_s(x_{\text{mix}})。此外,通过将弱增强样本 \mathcal{A}_{\text{weak}}(x_a)\mathcal{A}_{\text{weak}}(x_b) 输入到教师模型 F_t,产生了x_ax_b 的伪标签\hat{y}_a\hat{y}_b
\hat{y}_{a}=\arg\max(\mathcal{F}_{t}(\mathcal{A}_{weak}(x_{a}))),\quad(7)
\hat{y}_b=\arg\max(\mathcal{F}_t(\mathcal{A}_{weak}(x_b))).\quad\quad(8)
请注意,如果\max(F_t(\mathcal{A}_{\text{weak}}(x))) < \delta,则伪标签\hat{y} 保持软标签F_t(\mathcal{A}_{\text{weak}}(x))通过使用掩码比例 \lambda(超参数,训练过程调整),通过混合\hat{y}_a\hat{y}_b生成 x_{\text{mix}} 的伪标签\hat{y}_{\text{mix}}
\hat{y}_{mix}=\lambda\cdot\hat{y}_a+(1-\lambda)\cdot\hat{y}_b.\quad\quad\quad(9)
最后,通过以下一致性损失对学生模型进行优化:
\mathcal{L}_{mix}=\frac{1}{N_{m}}\sum(\hat{y}_{mix}-y_{mix})^{2},\quad(10)
其中N_{\text{m}}是混合样本的数量,通过最小化公式(10)这个损失函数,可以使模型生成更加接近真实标签的混合标签,从而提高模型的性能。TTMix 的一致性损失算法如算法 1 所示。

对“如果\max(F_t(\mathcal{A}_{\text{weak}}(x))) < \delta,则伪标签\hat{y} 保持软标签F_t(\mathcal{A}_{\text{weak}}(x))”的理解:

如果教师模型F_t对弱增强样本\mathcal{A}_{\text{weak}}(x_a)的最大预测概率小于预定义的阈值\delta,那么伪标签\hat{y}将保持对应的软标签F_t(\mathcal{A}_{\text{weak}}(x))。简而言之,如果教师模型对弱增强样本的置信度不足以产生可靠的伪标签,就会使用该样本的软标签(即模型对每个类别的置信度或概率分布)来代替真实的标签作为该样本的伪标签,以避免引入可能的噪声。

软标签中的每个值表示模型对每个类别的置信度或概率。

硬标签是指将类别表示为单个确定的离散值,即一个样本只有一个类别标签

这个算法描述了 Tube TokenMix 中的一致性损失的计算过程。它的步骤如下:

1. 首先,从未标记的剪辑批次x_a中混洗样本以获得 x_b(Shuffle(xa))。
2. 对样本进行空间增强(Spatial Augmentation)和时间扭曲增强(Temporal Warping Augmentation),得到增强后的样本 \hat x_a\hat x_b
3. 使用教师模型 Ft 对样本 \hat x_a\hat x_b进行预测,并通过停止梯度操作,获取伪标签 \hat y_a\hat y_b
4. 计算样本 \hat x_a\hat x_b的预测标签的置信度c_ac_b。(将预测标签中分类概率最高的值作为置信度)
5. 使用 Tube TokenMask M 来混合样本 \hat x_a\hat x_b,得到混合后的样本x_{mix}
6. 使用混合的伪标签\hat y_{mix}计算置信度 c_{mix}
7. 计算置信度是否超过阈值 δ 的平均值 q。
8. 对混合后的样本x_{mix} 使用学生模型 Fs 进行预测,得到预测标签y_{mix}
9. 计算一致性损失L_{mix},它是混合样本的预测标签y_{mix}和混合伪标签\hat y_{mix}之间均方误差的加权平均。

这个一致性损失函数的目的是通过混合样本和相应的伪标签来鼓励模型对混合样本做出一致的预测,从而提高模型的泛化性能。

Temporal Warping Augmentation(时间扭曲增强)

大多数现有的增强方法都是为图像任务设计的,更加关注空间增强。它们操作单个或一对图像来生成新的图像样本,而不考虑任何时间变化。即使是常用的时间增强方法,包括变化的时间位置和帧率,也只考虑简单的时间偏移或缩放,即改变整体位置或播放速度。然而,人类动作非常复杂,每个时间戳可能具有不同的时间变化。为了覆盖这些具有挑战性的情况,我们提出扭曲每帧的时间持续时间,从而引入更高的数据随机性。

我们的时间扭曲增强(TWAug)可以将一个帧拉伸到各种时间长度。给定一个提取的包含T帧的视频片段(例如,8帧),我们随机决定保留所有帧,或选择少部分帧(例如,2或4帧,同时将其他帧进行掩码处理(将整个帧都进行掩码)。然后,掩码帧会被随机选择的相邻可见(未被掩码)帧填充。需要注意的是,在进行时间填充后,帧的顺序仍然保持不变。图5分别展示了选择2、4和8帧的三个示例。我们提出的TWAug可以帮助模型在训练过程中学习灵活的时间动态。

时间扭曲增强在TTMix中起到了强大的增强作用。通常,我们将TWAug与传统的空间增强方法[10, 43]相结合,进行混合操作。如图4所示,两个输入片段首先分别通过空间增强和TWAug进行转换,然后通过TTMix混合这两个片段。我们在第4.3节中验证了TWAug的有效性。

图4. 在TTMix中利用时间扭曲增强和空间增强(强增强)的一个示例。首先,两个片段分别通过这两种增强进行转换,然后进行TTMix以生成一个新的片段x_{mix}

3.4训练

SVFormer的训练包括三个部分:由公式(1)表示的监督损失,由公式(2)表示的无监督伪标签一致性损失,以及由公式(10)表示的TTMix一致性损失。最终的损失函数如下:
\mathcal{L}_{all}=\mathcal{L}_{s}+\gamma_{1}\mathcal{L}_{un}+\gamma_{2}\mathcal{L}_{mix},\quad\text{(11)}
其中γ1和γ2是用于平衡损失项的超参数。

\mathcal{L}_{s}=\frac{1}{N_{L}}\sum^{N_{L}}\mathcal{H}(\mathcal{F}(x_{l}),y_{l}),\quad(1)

\mathcal{L}_{un}=\dfrac{1}{N_U}\sum\mathbb{I}(\max(\mathcal{F}(x_w))>\delta)\mathcal{H}(\mathcal{F}(x_s),\hat{y}_w),(2)

\mathcal{L}_{mix}=\frac{1}{N_{m}}\sum(\hat{y}_{mix}-y_{mix})^{2},\quad(10)

对“3.方法”的总结

SVFormer方法的关键步骤包括:
1. 使用Transformer架构实现的半监督学习框架,其中采用了FixMatch的一致性损失。训练过程分为两个部分:对有标签样本进行监督训练(预测标签和真实标签),对无标签样本进行伪标签一致性训练(使用弱增强视图的伪标签监督强增强视图)。
2. 提出了Tube TokenMix (TTMix)增强方法,以适应视频数据的Transformer模型。TTMix在token级别上进行混合(将两个视图通过不同的增强方式处理之后进行混合),利用了视频的时间维度,在样本混合过程中考虑了时间相关性。
3. 引入了Temporal Warping Augmentation (TWAug)方法,通过扭曲每个帧的时间长度,增加了数据的随机性和丰富性。TWAug可以将视频中的每个帧的时间长度拉伸到不同的程度,从而使模型更好地学习时间动态。
4. 使用EMA-Teacher模型来生成高质量的伪标签,并采用一致性损失(最小化教师模型得到的两个伪标签混合得到的标签和学生模型预测的标签)来优化模型的训练,从而提高了模型在半监督视频动作识别任务中的性能。

总的来说,SVFormer方法利用Transformer模型和新颖的增强方法,有效地实现了半监督视频动作识别,取得了令人满意的性能。

4.实验

在本节中,我们首先在第4.1节介绍实验设置。在第4.2节中,我们按照以前的工作[57,64],在不同的标记率下进行实验。此外,我们还在第4.3节进行消融实验和实证分析。如果没有特别强调,我们只使用RGB模态进行官方验证集的推断。

4.1实验设置

数据集

Kinetics-400 [7]是一个大规模的人体动作视频数据集,包含了高达245,000个训练样本和20,000个验证样本,涵盖了400个不同的类别。我们遵循最先进的方法MvPL [62]和CMPL [64],对每个类别采样6或60个标记的训练视频,即1%或10%的标记率。UCF-101 [42]是一个包含13,320个视频样本的数据集,由101个类别组成。我们也采样每个类别中的1或10个样本作为标记集,遵循CMPL [64]的方法。至于HMDB-51 [26],它是一个小规模的数据集,只包含51个类别,由6,766个视频组成。我们按照LTG [57]和VideoSSL [25]的划分,以三种不同的标记率进行实验:40%,50%和60%。

评估指标

我们展示了主要结果中的Top-1准确率,并在一些消融实验中呈现了Top-5准确率。

基线

我们利用了ViT [13]扩展的视频TimeSformer [4]作为我们基线的骨干。超参数大部分与基线保持一致,并采用了TimeSformer [4]中的分割空间-时间注意力。由于TimeSformer只有ViT-Base模型,我们从DeiT-S [48]实现了维度为384和6个头的SVFormer-Small模型,以便与其他基于Conv的方法 [22, 62, 64]具有可比较的参数数量。为了进行公平比较,我们对TimeSformer进行了30轮的训练作为监督基线。

训练和推理

对于训练,我们遵循TimeSformer [4]的设置。训练使用8或16个GPU,使用动量为0.9的SGD优化器和权重衰减为0.001。对于每个设置,基本学习率设置为0.005,在第25和28轮时除以10。至于置信度阈值,我们从{0.3, 0.5, 0.7, 0.9}中搜索最佳的δ。γ1和γ2设置为2(用于SVFormer最终的损失函数)。掩码比例λ从Beta分布Beta(α, α)中采样,其中α = 10。在测试阶段,遵循MvPL [62]和CMPL [64]中的推理策略,我们从整个视频中均匀采样五个剪辑,并进行三个不同的裁剪,以获得224×224的分辨率,覆盖大部分剪辑的空间区域。最终预测是这5×3个预测的softmax概率的平均值。我们还在第4.3节的消融研究中进行了推理设置的比较。

4.2.主要结果

Kinetics-400 [7] 和 UCF-101 [42] 的主要结果如表1所示。与先前的方法相比,我们的模型 SVFormer-S 在只使用 RGB 数据的方法中,以最少的训练周期取得了最佳性能。特别是在 1% 的标注率设置下,SVFormer-S 在 UCF-101 中的性能比之前的方法[64]提高了6.3%,在 Kinetics-400 中提高了15.0%。此外,当采用更大的模型时,SVFormer-B明显优于现有的最先进方法。

具体来说,在Kinetics-400中,SVFormer-B在仅有10%标记数据的情况下就能达到69.4%,这与TimeSformer [4]的完全监督设置中的77.9%相媲美。此外,如表2所示,对于小规模数据集HMDB-51 [26],我们的SVFormer-S和SVFormer-B相较于先前的方法[57]也提高了约10%和15%。

4.3.消融研究

为了理解我们方法设计的每个部分的影响,我们对 Kinetics-400 和 UCF-101 数据集在 1% 标签率设置下的 SVFormer-S 进行了广泛的消融研究。

SSL框架分析

FixMatch 和 EMA-Teacher 如表3 所示。很明显,这两种方法都显著提高了基线方法的性能。此外,在具有非常少标记样本的两个数据集中,EMA-Teacher 显著优于 FixMatch,可能是因为它提高了训练的稳定性。FixMatch 可能会在有限标签的情况下导致模型崩溃,如 [6] 所示。

对不同混合策略的分析

现在我们将 Tube TokenMix 策略与三种像素级混合方法 CutMix、Mixup 和 PixMix 以及另外两种标记级别的混合方法,即 Frame TokenMix 和 Rand TokenMix 进行比较。不同混合方法的示例显示在图6 中。定量结果如表4 所示。与这些替代方法相比,所有混合方法都能提高性能,证明了基于混合的一致性损失的有效性。此外,我们观察到标记级别的方法(Rand TokenMix 和 Tube TokenMix)表现优于像素级混合方法。这并不奇怪,因为变换器操作在标记上,因此标记级别的混合具有固有优势。

图6。传统像素级混合方法和我们提出的标记级别混合的示例。请注意,标记级别方法在标记化后混合两个样本,但为了清晰地展示,可视化是在图像级别进行的。

Frame TokenMix的性能甚至比像素级混合方法还要差,这也是可以预期的。我们假设在视频剪辑中替换整个帧会破坏时间推理,从而导致较差的时间注意力建模。此外,Tube TokenMix实现了最佳结果。我们推测,在时间轴上一致掩码的标记可以防止相邻帧之间的信息泄漏,在同一空间位置,特别是在这样一个短期剪辑中。因此,Tube TokenMix能够更好地建模时空相关性。

对“在时间轴上一致掩码的标记可以防止相邻帧之间的信息泄漏”的理解:

在视频数据中,相邻帧通常具有相关性,即它们可能捕捉了相同的场景或动作。如果相邻帧之间的信息能够直接传递,可能会导致重复利用相似的特征,从而引入冗余或重复的信息,这可能会降低模型的泛化能力并增加过拟合的风险。因此,通过采用一致的掩码策略,将相邻帧的信息隔离开来,可以帮助模型更好地聚焦于每个帧的独立特征,从而提高模型对视频内容的理解和表征能力

增强方法的分析

在表5中进行评估。基准表示在所有分支中移除强空间增强(例如AutoAugment [10]和Dropout [43])以及时间扭曲增强(TWAug)。在这种情况下,实验性能显著下降。当分别将空间增强或时间扭曲增强合并到基线中时,性能得到了改善。最佳实践是在空间和时间上同时进行数据增强。

推断分析

我们评估了帧率采样和不同推断方案的影响,如表6所示。之前的方法,即CMPL [64]和MvPL [62],利用基于片段的稀疏采样,以8帧为一段,以8帧/秒的帧率采样。对于每个视频,采样10个片段,每个片段根据不同的空间位置裁剪3次。最后,对10×3个样本的预测进行平均。TimeSformer [4]采用基于视频的稀疏采样,即以32帧/秒的帧率采样8帧作为整个视频的表示。然后使用3种不同的裁剪视图,即8×32。采用TimeSformer [4]中的基于视频的稀疏采样方案可以降低推断成本,但性能不如基于片段的采样。在采样方案为8×8和16×4的实验中,表现更好。为了在效率和准确性之间进行权衡,我们使用8×8作为默认设置,跟随CMPL [64]和MvPL [62]的做法。

表6. 不同推断方案的影响。我们比较了稀疏采样策略和不同帧数的密集采样方法。‘帧数’列中的 a × b 表示以 b 帧/秒的帧率采样 a 帧。结果报告基于 1% 标记率的 Kinetics-400 和 UCF-101 数据集。

超参数分析

在这里,我们探讨不同超参数的影响。我们在 Kinetics-400 的 1% 设置下进行实验。首先,我们研究了不同 δ 阈值的效果。如图 7(a) 所示,我们可以观察到当标记样本极度稀缺时,通过设置较小的 δ 值(δ = 0.3)可以获得最佳结果。然后,我们评估了一个小批量中标记样本和未标记样本之间的比例对结果的影响。我们将标记样本数 B_l 固定为 1,并采样 B_u个未标记样本组成一个小批量,其中 B_u取值为 {1, 2, 3, 5, 7}。结果如图 7(b) 所示。当B_u= 5 时,模型产生了最佳结果。最后,我们探讨了 EMA 的动量系数 m 和损失权重 γ1 和 γ2 的选择,如图 7(c) 和图 7(d) 所示。因此,在所有实验中,我们将 m = 0.99 和 γ1 = γ2 = 2 作为默认设置。

对“4. Experiment”部分进行总结:

研究人员首先介绍了实验设置,其中使用了三个不同的数据集:Kinetics-400、UCF-101和HMDB-51。对于Kinetics-400数据集,采样了1%和10%的标记率,并遵循MvPL和CMPL等现有方法的设置。对于UCF-101和HMDB-51数据集,采用了相似的标记率和采样方法。接下来,他们说明了评估指标,包括Top-1和Top-5准确率。然后,介绍了基线模型的选择,采用了ViT和TimeSformer作为基准模型。接着,描述了训练和推理的设置,包括优化器、学习率、置信度阈值等。最后,总结了实验结果,比较了SVFormer模型在不同数据集上的性能表现,并进行了讨论和分析。

5. 结论

本文介绍了SVFormer,一种基于Transformer的半监督视频动作识别方法。我们提出了Tube TokenMix,这是一种专为视频Transformer模型设计的数据增强方法。结合时间扭曲增强,通过任意改变帧长度来覆盖复杂的时间变化,TTMix相比传统的增强方法取得了显著的改进。SVFormer在UCF-101、HMDB-51和Kinetics-400数据集上的性能显著优于现有技术,并且没有增加额外的开销。我们的工作为半监督动作识别建立了一个新的基准,并鼓励未来的研究采用Transformer架构。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/505508.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024年道路运输企业安全生产管理人员证模拟考试题库及道路运输企业安全生产管理人员理论考试试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年道路运输企业安全生产管理人员证模拟考试题库及道路运输企业安全生产管理人员理论考试试题是由安全生产模拟考试一点通提供&#xff0c;道路运输企业安全生产管理人员证模拟考试题库是根据道路运输企业安全生产…

day58 动态规划part15

392. 判断子序列 简单 给定字符串 s 和 t &#xff0c;判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些&#xff08;也可以不删除&#xff09;字符而不改变剩余字符相对位置形成的新字符串。&#xff08;例如&#xff0c;"ace"是"abcde&q…

通天星CMSV6 车载定位监控平台 任意文件上传漏洞复现(XVE-2023-23454)

0x01 产品简介 通天星CMSV6车载定位监控平台拥有以位置服务、无线3G/4G视频传输、云存储服务为核心的研发团队,专注于为定位、无线视频终端产品提供平台服务,通天星CMSV6产品覆盖车载录像机、单兵录像机、网络监控摄像机、行驶记录仪等产品的视频综合平台。 0x02 漏洞概述 …

汇编语言第四版-王爽第2章 寄存器

二进制左移四位&#xff0c;相当于四进制左移一位。 debug命令实操&#xff0c;win11不能启动&#xff0c;需要配置文件 Windows64位系统进入debug模式_window10系统64位怎么使用debugger-CSDN博客

DeepL Pro3.1 下载地址及安装教程

DeepL Pro是DeepL公司推出的专业翻译服务。DeepL是一家专注于机器翻译和自然语言处理技术的公司&#xff0c;其翻译引擎被认为在质量和准确性方面表现优秀.DeepL Pro提供了一系列高级功能和服务&#xff0c;以满足专业用户的翻译需求。其中包括&#xff1a; 高质量翻译&#xf…

vue3 视频播放功能整体复盘梳理

回顾工作中对视频的处理&#xff0c;让工作中处理的问题的经验固化成成果&#xff0c;不仅仅是完成任务&#xff0c;还能解答任务的知识点。 遇到的问题 1、如何隐藏下载按钮&#xff1f; video 标签中的controlslist属性是可以用来控制播放器上空间的显示&#xff0c;在原来默…

MySQL数据库高阶语句②

目录 一.子查询与多表查询 1.子查询 2.update子查询 3.多表查询 4.delete子查询 5.exists关键字也用于子查询 6.结果集 二.MySQL视图 1.定义 2.作用场景 3.视图与表的区别与联系 &#xff08;1&#xff09;区别 ①视图是已经编译好的sql语句。而表不是 ②视图没有…

unity 打包安卓错误汇集

Failed to find target with hash string "android-34’ in: D:Pr 他说找不到sdk34level的我用as打开后卸载又重装&#xff0c;最后解决了 我放到Plugins/Android/下面的Java代码没有被编译 这个不知道为什么。我故意把代码写的有问题&#xff0c;会报错那种&#xff…

linux自定义命令

文章目录 1、自定义命令介绍2、自定义命令步骤 (centos7)2.1 新建隐藏目录存放自定义命令脚本文件2.2 将新建的目录配置环境变量2.3 取别名的方式简化已有命令2.4 编写自定义命令脚本 1、自定义命令介绍 不管是linux系统还是windows系统都支持自定义命令&#xff0c;windows端…

MIPI CSI-2 Low Level Protocol解读

一、Low Level Protocol介绍 LLP 是一种面向字节的基于数据包的协议&#xff0c;支持使用短数据包和长数据包格式传输任意数据。为简单起见&#xff0c;本节中的所有示例均为单通道配置。 LLP特性&#xff1a; 传输任意数据&#xff08;与有效载荷无关&#xff09; 8 位字大…

代码随想录第二十五天 | 回溯算法P2 | ● 216● 17

216.组合总和III 找出所有相加之和为 n 的 k 个数的组合&#xff0c;且满足下列条件&#xff1a; 只使用数字1到9每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次&#xff0c;组合可以以任何顺序返回。 示例 1: 输入: k 3, n 7 输出…

解决AD使用交互式BOM插件时,插入make点导致显示异常的问题

记得上次写了一篇关于使用这个插件时出现这个问题的解决方法&#xff0c;具体可查看&#xff1a;AD使用交互式BOM插件时应该注意到的一个问题_ad的bom插件-CSDN博客 当时的解决办法就是删除后再运行脚本生成&#xff0c;这些天经过多次实验&#xff0c;发现是当时那个封装有问…

健身房预约管理系统(源码+文档)

健身房预约管理系统&#xff08;小程序、ios、安卓都可部署&#xff09; 文件包含内容程序简要说明含有功能&#xff1a;项目截图客户端首页我的预约登录教练预约时间我的注册页个人资料课程预约课程预约 管理端订单管理团课管理教练管理分类管理用户管理 文件包含内容 1、搭建…

vulnhub靶场之driftingblues-4

一.环境搭建 1.靶场描述 get flags difficulty: easy about vm: tested and exported from virtualbox. dhcp and nested vtx/amdv enabled. you can contact me by email for troubleshooting or questions. This works better with VirtualBox rather than VMware. 2.靶场…

Segger Embedded Studio IDE使用体验——默认的Section和Linker的设置

Segger Embedded Studio IDE使用体验之一——默认的Section和Linker的设置 一、简介二、操作2.1 编译后代码分析2.1.1 符号浏览器2.1.2 读取elf文件和map文件 2.2 调试2.2.1 查看变量2.2.2 设置供电 2.3 运行环境设置2.3.1 编译器2.3.2 汇编器2.3.3 包含其他文件2.3.4 .bss和.d…

【MATLAB源码-第24期】基于matlab的水声通信中海洋噪声的建模仿真,对比不同风速的影响。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 水声通信&#xff1a; 水声通信是一种利用水中传播声波的方式进行信息传递的技术。它在水下环境中被广泛应用&#xff0c;特别是在海洋科学研究、海洋资源勘探、水下军事通信等领域。 1. **传输媒介**&#xff1a;水声通信利…

Postgresql导出数据和结构后再去另外一个Postgresql数据库中导入失败

参考教程&#xff1a; postgresql 在导入建表sql时 遇到错误 &#xff1a;https://blog.csdn.net/weixin_37706944/article/details/132321731 是因为原表定义了自增字段&#xff0c;解决办法&#xff1a; 解决方法&#xff1a; 执行如下sql后再新建表&#xff0c;就可以了 DR…

ngrok 内网穿透使用

title: ngrok 内网穿透使用 search: 2024-02-29 文章目录 背景Windows安装ngrok指令授权ngrok个人用户Authtoken穿透 http 或 https 服务ngrok的代理http指令ngrok获得静态域名指令ngrok的代理ssh指令 背景 这次寒假回家&#xff0c;很无奈&#xff0c;很多东西放在项目组服务…

[Windows]防火墙,出入站规则失效。

场景&#xff1a; 因为具体需要&#xff0c;在内网中&#xff0c;不想别人发现我们的nacos端口8848&#xff0c;因此我们设置了入站规则&#xff0c;特定的ip地址才能访问。但是实际测试中发现并不起作用。。。 经过一番排查得到一下结果。 为什么有些应用绕过了防火墙配置 有…

记录阿里云服务器VNC登录一直显示Login Incorrect的问题

想要尝试通过VNC实例登录&#xff0c;结果一直提示Login Incorrect 怀疑自己忘记密码后&#xff0c;重置了几次密码还是登录不上去 解决&#xff1a; 发现阿里云把我小键盘的 ""识别为了 “” 号 但是主键盘区域的 键就没有错位 等就是等 加就是加 而小键盘区…