我的生活随笔

【CVPR2023】全新帧灵活网络,赋能未来AI技术!

  现有的视频识别算法总是对不同帧数的输入进行不同的训练管道,这需要重复的训练操作和成倍的存储成本。

  如果我们使用训练中未使用的其他帧来评估模型,我们观察到性能会明显下降(见图1),这概括为时间频率偏差现象。

  为了解决这个问题,我们提出了一种通用框架,称为帧灵活网络(Frame Flexìble Network, FFN),它不仅可以在不同的帧上评估模型以调整其计算,而且可以显着降低存储多个模型的内存成本。

  与图像分类相比,视频识别方法需要一系列的帧来表示视频,这扩大了计算量,因此,视频识别方法的效率一直是评价这些方法的重要因素。

  即使这些方法以可接受的性能权衡提高了效率,也无法进行进一步的定制调整,以满足实际场景中动态变化的资源约束。

  然而,这些方法是为2D cnn精心设计的,这可能会阻碍它们在视频识别中的应用,其中3D cnn和Transformer方法是至关重要的组成部分。

  与图像相关的任务不同,我们需要对多个帧进行采样来表示视频,并且计算成本将随着采样帧的数量成比例地增长。

  这给在边缘设备上应用这些网络带来了挑战,因为如果我们存储所有模型,参数将成倍增加,并且下载和卸载模型以切换它们将花费不可忽略的时间。

  此外,同一视频可能在不同平台上以不同的时间速率进行采样,使用单一的网络在一定帧数下进行训练进行推理,无法抵抗真实场景中帧数的方差。

  用高帧数(即高时间频率)训练模型,并直接在较少帧数(即低时间频率)下对其进行评估以调整代价是一种幼稚而直接的解决方案。

  为了验证其有效性,我们将其与分离训练(ST)进行了比较,分离训练(ST)在不同的时间频率下单独训练模型并使用相应的帧进行测试。

  我们对2D-network TSM、3D-network SlowFast和Transformer-network Uniformer进行了实验,发现从图1中可以看出,推理结果与ST之间存在明显的性能差距,这意味着如果不对训练中使用的帧数进行评估,这些方法的性能会明显较差。

  此外,我们在深度网络的不同深度上进行了相同的实验,出现了类似的现象,我们把这种普遍存在的现象称为时间频率偏差。

  为了解决这个问题,我们提出了一个通用框架,称为帧灵活网络(FFN),它只需要一次训练,但可以在多个帧数上进行评估,具有很大的灵活性。

  在训练过程中,我们将多个具有不同采样帧的输入序列导入FFN,并提出了多频率对齐(MFAL)来学习时域频率不变表示,以增强对帧变化的鲁棒性。

  此外,我们提出了多频率自适应(MFAD)来进一步增强子网络的表示能力,这有助于FFN在推理过程中在不同帧表现出较强的性能。

  虽然已经研究了归一化移位问题和分辨率自适应网络,但我们强调,设计帧柔性视频识别框架以适应成本和节省参数是非平凡的,具有以下实际意义。

  这个过程不仅使我们的方法可以很容易地应用于各种架构(2D/3D/Transformer模型),而且还强制FFN学习时间频率不变表示。

  其次,在视频识别中进行分离训练(ST)确实是一种常见的做法,这需要成倍增加存储单个模型的内存成本,并且模型难以抵抗时间频率的方差,这限制了其在实际应用中的应用。

  而FFN为这些挑战提gòng了一个可行的解决方案,它显著降低了存储多个模型的内存成本,并且可以在不同的帧上进行评估,以调整成本,与ST相比精度更高。

  利用该框架,我们可以解决时间频率偏差问题,并使这些方法能够根据当前资源预算通过采样不同的帧来调整其计算,从而显着降低ST的存储成本。

  此外,我们提gòng了一个朴素的解决方案,使FFN能够在任何帧上进行评估,并增加了推理过程中的灵活性。

  ?我们揭示了在视频识别中广泛存在的时间频率偏差现象,对其进行了详细的分析,并对我们的研究产生了实际的启发。

  ?我们提出了一个通用框架框架灵活网络(FFN)来解决时间频率偏差,我们设计了多频率对准(MFAL)来学习时间频率不变的表征,并提出了多频率自适应(MFAD)来进一步增强表征能力。

  ?综合经验验证表明,只需要一次训练的FFN可以通过采样不同帧来调整其计算,并且在各种架构和数据集上优于不同帧的分离训练(ST),显著降低了存储多个模型的内存成本。

  近年来,视频识别得到了广泛的探索,我们可以根据其架构将方法归纳为三类:1)二维网络:这些方法利用二维cnn作为主干,专门设计时间建模模块进行时空建模。

  Slimmable Neural Networks训练一个共享网络,该网络可以在推理过程中调整其宽度以满足资源约束。

  这一发现是必要的,因为帧采样是所有方法的必要步骤,而以前的方法是用不同的帧单独训练网络,这是参数效率低下和内存消耗。

  在这项工作中,我们提出了多频率自适应(MFAD)来提高子网络的表示能力,而不是收藏大规模预训练模型的调谐。

  近年来,动态网络在高效视频识别方面得到了广泛的研究,一些方法动态采样显著帧以减少时间冗余以降低成本,而其他方法主要通过自适应处理不同分辨率的帧或裁剪每帧最显著的区域来减少空间冗余。

  请注意,这些方法旨在自适应地处理每个视频(例如,跳过帧,裁剪补丁)以提高效率,并且还需要重复训练以获得不同计算的模型。

  我们的工作旨在训练一个可以在不同帧下评估的模型,以调整存储多个模型的成本和减少参数,而上述动态网络并没有解决这个问题。

  Nearby Alleviation 从图1中我们可以看到,当模型以高帧数训练,但以较少帧数评估时,我们可以观察到时间频率偏差现象。

  具体来说,在切换网络宽度时,不同的通道数会导致聚合特征的均值和方差不同,从而导致特征聚合不一致。

  如果我们用时间频率高的vH来训练模型,用时间频率低的vL来评估模型,那么Batch Normalization (BN)的输入就是中间特征xL,对应的输出为:

  层归一化(Layer Normalization, LN)在基于变压器的模型中得到了广泛的应用,其统计量的计算方法与BN类似,只是与数据分布有关。

  此外,我们还引入了多频自适应,以适应不同子网络的频率不变特征,进一步提高了子网络的表示能力。

  注意FFN是一个通用的框架,它可以建立在不同的架构上(如5.2节所示),为了更容易描述,我们在这一部分只以基于CNN的方法为例。

  我们工作的目标是提出一种可以在多个帧上进行评估的方法,并且与分离训练(ST)相比表现出相似甚至更好的性能。

  考虑在增加帧数L、M和H下采样的视频v,我们可以得到时间频率分别为Low、Medium和High的vL、vM和vH。

  通过这种方式,我们构建了计算流,使FFN能够在推理过程中使用不同的帧进行评估,并相应地调整计算成本。

  先前的分辨率自适应网络仔细地将2D卷积的权重私有化,以学习不同分辨率输入的chǐ dù感知表示。

  受这些工作的启发,我们提出了多频率对齐(MFAL),该方法利用权重共享和时间蒸馏来有效地扩展网络并强制模型学习时间频率不变表示。

  权重共享 给定视频v,我们有vL, vM和vH,由于采样帧的差异,它们的时间频率增加,动作速度降低。

  我们在三个子网络享卷积和分类器的权重,以便找到一组参数θ,这些参数θ相互建模具有不同时间频率的输入的时空关系:

  此外,它显示出更好的性能潜力(如表4所示),因为它将强制模型学习时间频率不变表示,这隐含地提gòng了具有不同时间频率的同一视频属于同一类的先验知识,使模型对时间频率方差具有鲁棒性。

  时间蒸馏 在大多数情况下,使用vH训练的视频识别模型具有更好的性能,因为网络将获得更多的原始视频信息。

  直接计算pL和pM上的CE损耗是更新F L(·)和F M(·)参数的简单方法,但会导致一些问题。

  此外,与仅计算Eq. 3相比,优化pL和pM的CE损失将导致卷积的参数不太有利,因为它们的输入包含的信息比vH少,这可能导致性能较差。

  因此,我们利用KL散度损失将pL和pM纳入计算图,并使用以下方法更新F L(·)和F M(·)的参数:

  由于卷积的权重在三个子网络之间共享,优化Eq. 4将强制学生(pL和pM)和教师(pH)网络的预测尽可能相似,并将好的知识从F H(·)转移到F L(·)和F M(·)。

  其中λ是一个引入的超参数来平衡这两个项,我们在实现中简单地让λ = 1,而不需要对超参数进行微调。

  LCE将统一考虑权值共享和时间蒸馏,提gòng类间监督信息来扩大不同类别视频之间的距离,LKL将进一步在网络训练中加入实例内知识,即pL、pM和pH具有较高的相似度,因为时间频率方差不会改变视频的类别。

  通过这种方式,我们不仅强制FFN学习时间频率不变表示,而且由于我们不触及内部时空建模模块的具体设计,因此我们承诺它可以很容易地应用于不同的结构。

  在这里,我们提出了多频率自适应(MFAD)来更好地适应不同子网的频率不变特征,从而进一步增强它们的表征。

  其中?∈{L, M, H},并且私有归一化将在训练过程中学习自己的γ和β并计算相应的μ,σ2。

  请注意,这个过程引入了可忽略不计的计算和参数,因为归一化操作是一个简单的转换,其参数通常小于模型大小的1%。

  权重改变 虽然权重共享对于MFAL来说是必要的,但如果不进行进一步的调整,可能很难找到一组在所有帧中都表现出较强表征能力的参数。

  鉴于视频识别方法经常使用预训练模型,我们加入残差结构,以避免添加的模块破坏预训练模型的原始计算图,恢复其行为。

  实现细节 除了SlowFast对快速路径采样16/32/64帧外,我们在所有方法中对vL、vM和vH统一采样4/8/16帧。

  分离训练(ST)是指分别在vL、vM和vH上对网络进行训练,并在训练所用的帧上对它们进行评估。

  基线的方法 除了之前介绍的分离训练(ST)之外,我们还为这个问题提gòng了另外四种基线方法:(1)混合采样:我们分别对vLi和vHi采样4帧和16帧。

  (2)比例采样:我们让网络在每次迭代中随机采样4帧或16帧,因为这对具有最显著的时间频率偏差现象。

  与基线方法的比较 表1显示,比例采样和混合采样有助于缓解时间频率偏差,因为在第4/8帧的性能优于使用标准协议训练的模型的推理结果。

  然后,我们调整了超参数,结果表明这两种方法似乎都提gòng了一个折衷的解决方案:如果低帧数的性能更好,那么高帧数的结果会更差。

  此外,与需要重复训练操作和倍增存储成本的ST和Ensemble相比,我们的方法只需训练一次,但可以在多个帧上进行评估,大大减少了保存多个模型的参数,从而保证了其在边缘设备上的应用。

  与基线TSM和ST相比,FFN在所有帧上都表现出性能优势,然后,我们在TEA上实现FFN,其中涉及到时间建模模块中的卷积和归一化,我们的结果也完全超过了ST,此外,我们将FFN扩展到3D-network: SlowFast和Transformer-network: Uniformer。

  第一个观察结果是,由于Kinetics400和HMDB51数据集包含较少的时间信息,因此时间频率偏差现象在这两个数据集上不太明显。

  在第3节的“附近缓解”的激励下,我们提gòng了一个朴素的推理范式,使FFN能够在任何框架下进行评估。

  Inbound Results 从图8可以看出,在训练中使用的4-16帧范围内,FFN在所有帧上都优于ST。

  Outbound Results 此外,我们在超出4-16的帧处评估FFN,我们可以观察到FFN在帧2/18/20上甚至表现出比ST更好的性能,这进一步证明了它在非可见帧上的泛化能力。

  首先,我们可以观察到FFN(2)在训练中使用的4/16帧表现优于ST,但由于训练中缺少中间序列,FFN(2)在8/12帧表现不如ST。

  相比之下,与ST相比,FFN(3)和FFN(4)在所有帧上都获得了更高的精度,这可以归因于在训练中利用中间序列,使得在附近帧的时间频率偏差可以通过附近缓解来减轻。

  由于增加了序列,FFN(4)在Frame 4/8/12得到了更好的结果,但在训练过程中会花费更多的时间和资源。

  帧数 在本节中,我们将更多帧采样到vH,并分别将4个4/8/16/24帧的序列导入到FFN。

  表3首先观察到,TSM- st (24F)的性能甚至略低于TSM- st (16F),这可以归因于TSM的时间建模度量相对简单。

  然而,由于时间蒸馏的设计,FFN在所有帧上仍然比ST获得更好的性能,并且在24帧时达到了最高的精度。

  首先,我们构建具有共享归一化的FFN,并且可以观察到由于归一化统计数据的变化,在4/16帧时性能明显下降。

  然后,我们去除了卷积块中的权重变化,它在所有帧上都表现出较差的性能,这证明了多频自适应(MFAD)的强度,因为它提高了子网络在相应帧上的表示能力。

  此外,我们通过分别计算所有子网络预测上的CE损失来优化FFN,而不利用KL散度损失进行优化。

  我们可以观察到FFN和FFN(w/o w A)在所有帧上都优于具有较少参数的专用卷积,这证明了MFAL在学习时间频率不变表示方面的有效性。

  大量的实验表明,只需要一次训练的FFN可以在多帧上进行评估,并且在参数显著减少的情况下优于分离训练,这有利于边缘设备的应用。

  其次,FFN由于权重的改变引入了一些额外的计算,在未来的工作中,我们有兴趣提高FFN的训练效率。

赞(0)
未经允许不得转载:我的生活随笔 » 【CVPR2023】全新帧灵活网络,赋能未来AI技术!

我的生活随笔我的生活随笔