论文浏览(5) X3D: Expanding Architectures for Efficient Video Recognition

时间:2024-05-19 19:43:55


0. 前言

  • 相关资料:
  • 论文基本信息
    • 领域:视频理解,包括行为识别、Temporal Action Detection
    • 作者单位:FAIR
    • 发表时间:2020.4

1. 要解决什么问题

  • 当前视频理解相关的模型基本都是在2D卷积神经网络的基础上进行一些扩展。
    • 输入数据从 N, C, H, W 增加时间尺度 N, T, C, H, W
    • 将2D卷积操作转换为3D卷积操作,增加对时间尺度的处理。
    • 这种扩展一般来说会提高性能,但计算量也会大大增加。
  • 如果在多个尺度上进行扩展,模型效果会如何呢?

2. 用了什么方法

  • X3D,是Expand 3D的缩写。
  • 主要思路:
    • 之前的网络主要是在时间维度上扩展2D卷积神经网络。
    • 但时间尺度上扩展不一定是最佳选择,还可以在别的尺度上扩展。
    • 这种设计的灵感主要来源于之前设计卷积网络都是在depth/resolution/width上进行扩展,另外还借鉴了机器学习中特征选择的方法。
  • 需要扩展的axis(这几个axis可以理解为网络的几个基本参数……)
    • 输入数据的总帧长度。
    • 输入数据的帧率。
    • 输入帧的尺寸。
    • 网络宽度(其实就是每个conv的的通道数量)
    • bottlenet层宽度(即bottlenet中前两个conv的通道数量)
    • 网络深度(其实就是bottlenet的数量)
    • 论文浏览(5) X3D: Expanding Architectures for Efficient Video Recognition
  • 模型训练过程(好像就叫做Coordinate Descent):
    • 首先,给定一个初始状态,如下表所示,认为所有参数取值为1。
    • 然后,每次改变一个参数,控制参数量与算力、训练模型,选择性能最后的模型作为下一步的输入。
    • 以此类推,直到达到所需要的算力为止。
    • 论文浏览(5) X3D: Expanding Architectures for Efficient Video Recognition
  • 一次模型训练的实例
    • 论文浏览(5) X3D: Expanding Architectures for Efficient Video Recognition
  • 上面训练过程中所谓的改变一个参数,好像也是预先定义了几种,没细看,应该就是对几个参数的改变。
    论文浏览(5) X3D: Expanding Architectures for Efficient Video Recognition

3. 效果如何

  • 太666了,在比之前的模型少4.8倍multiply-adds、少5.5倍参数的情况下,达到了差不多的精度……
    • 尼玛太233了。
  • 不同尺寸的X3D模型
    论文浏览(5) X3D: Expanding Architectures for Efficient Video Recognition
  • 在各种数据集上的效果,2333
    论文浏览(5) X3D: Expanding Architectures for Efficient Video Recognition
    论文浏览(5) X3D: Expanding Architectures for Efficient Video Recognition
    论文浏览(5) X3D: Expanding Architectures for Efficient Video Recognition
  • 最666的图,跟当时看到yolo论文的感觉差不多,性能碾压(没把自己放到第二象限就已经很给面子了)
    论文浏览(5) X3D: Expanding Architectures for Efficient Video Recognition

4. 还存在什么问题

  • 效果这么6,但很难复现,主要是训练代码吧。坐等开源。

  • 不知道放到手机上运行会如何。

  • 我没看过 EfficientNet3D的论文,可能跟本文很相关,后续要补看一下。