Skip to main content
QUICK REVIEW

[论文解读] MoViNets: Mobile Video Networks for Efficient Video Recognition

Dan Kondratyuk, Liangzhe Yuan|arXiv (Cornell University)|Mar 21, 2021
Human Pose and Action Recognition参考文献 85被引用 17
一句话总结

MoViNets 提出了一类用于视频识别的高效三维卷积神经网络,其在显著降低浮点运算量(FLOPs)和内存使用量的同时,实现了最先进(SOTA)的准确率。通过结合神经架构搜索、用于恒定内存在线推理的流缓冲机制以及时间集成技术,MoViNet-A5-Stream 在 Kinetics 600 数据集上的准确率与 X3D-XL 相当,但浮点运算量减少了 80%,内存使用量减少了 65%。

ABSTRACT

We present Mobile Video Networks (MoViNets), a family of computation and memory efficient video networks that can operate on streaming video for online inference. 3D convolutional neural networks (CNNs) are accurate at video recognition but require large computation and memory budgets and do not support online inference, making them difficult to work on mobile devices. We propose a three-step approach to improve computational efficiency while substantially reducing the peak memory usage of 3D CNNs. First, we design a video network search space and employ neural architecture search to generate efficient and diverse 3D CNN architectures. Second, we introduce the Stream Buffer technique that decouples memory from video clip duration, allowing 3D CNNs to embed arbitrary-length streaming video sequences for both training and inference with a small constant memory footprint. Third, we propose a simple ensembling technique to improve accuracy further without sacrificing efficiency. These three progressive techniques allow MoViNets to achieve state-of-the-art accuracy and efficiency on the Kinetics, Moments in Time, and Charades video action recognition datasets. For instance, MoViNet-A5-Stream achieves the same accuracy as X3D-XL on Kinetics 600 while requiring 80% fewer FLOPs and 65% less memory. Code will be made available at https://github.com/tensorflow/models/tree/master/official/vision.

研究动机与目标

  • 解决由于高计算和内存需求,导致在移动设备上部署高精度 3D CNN 的挑战。
  • 克服 3D CNN 由于需要固定且长时间的输入而无法支持在线推理的局限性。
  • 弥合 2D CNN(高效但准确率较低)与 3D CNN(准确率高但资源消耗大)在移动视频识别中的差距。
  • 在保持长时序依赖关系的同时,实现极低内存占用的流式视频处理。
  • 通过一种简单的集成技术,在不牺牲计算或内存效率的前提下,提升高效模型的准确率。

提出的方法

  • 设计专用的 MoViNet 搜索空间,以支持神经架构搜索(NAS),实现空间、时间及时空操作之间的最优权衡。
  • 提出流缓冲(Stream Buffer)技术,将内存使用量与视频片段时长解耦,通过在子片段边界缓存特征,实现在推理和训练过程中恒定的内存使用量。
  • 在流缓冲中实现因果掩码的时间操作(如因果卷积、累积池化),确保仅过去帧影响预测结果,从而实现真正的在线推理。
  • 在时间操作中引入位置编码,以在因果设置下保持对时间上下文的感知能力。
  • 通过独立训练的流式 MoViNet 的时间集成,恢复因因果约束导致的准确率损失,且不增加浮点运算量或内存使用量。
  • 在多个基准数据集(包括 Kinetics 400、Kinetics 600、Moments in Time、Charades 和 Something-Something V2)上训练和评估 MoViNet,以验证其泛化能力和效率。

实验结果

研究问题

  • RQ1神经架构搜索能否有效发现用于视频识别的高效 3D CNN 架构,实现准确率与计算成本之间的良好平衡?
  • RQ2流缓冲机制能否使 3D CNN 以恒定内存使用量处理任意长度的视频流,同时保持长时序依赖关系?
  • RQ3在流缓冲中使用因果操作是否会导致显著的准确率下降?是否能在不增加资源消耗的前提下加以缓解?
  • RQ4对流式 MoViNet 进行时间集成,能否在保持相同效率配置的前提下,恢复因因果建模导致的准确率损失?
  • RQ5MoViNets 在多种视频识别基准上,与现有 2D 和 3D 视频模型相比,在准确率、FLOPs 和内存使用量方面能实现多大程度的超越?

主要发现

  • MoViNet-A6 在 Kinetics 600 上达到 83.5% 的 top-1 准确率,比 X3D-XL 高出 1.6%,但浮点运算量减少了 60%。
  • MoViNet-A5-Stream 在 Kinetics 600 上达到与 X3D-XL 相同的准确率,但浮点运算量减少了 80%,内存使用量减少了 65%。
  • 与标准 3D CNN 相比,流缓冲将 MoViNet-A5 的内存使用量降低了 90%,实现了恒定内存占用的在线推理。
  • 因因果建模导致的 1% 准确率下降,通过时间集成成功恢复,且在相同浮点运算量和内存预算下,准确率高于单个模型。
  • MoViNet-A2 在相同浮点运算量下,比 MobileNetV3-large+TSM 高出 6% 的准确率,展现出优异的效率-准确率权衡能力。
  • 所提出的方法使 MoViNet 能够在移动设备上支持流式视频推理,适用于移动设备、物联网及自动驾驶系统中的实时应用。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。