0. 前言
- 相关资料:
- arxiv
- github
- 论文解读
- 论文基本信息
- 领域:行为识别
- 作者单位:腾讯
- 发表时间:2020.7
1. 要解决什么问题
- 将2D CNN用于视频相关任务时存在一个重大缺陷:
- 不同帧都使用了相同的卷积核来提取特征,这就导致会有大量冗余数据。
- 大量数据冗余主要表现在spatial semantics extraction(空间语义信息提取)上。
2. 用了什么方法
- 提出了 Progressive Enhancement Module(PEM)
- 由于不同帧提取到的特征中存在大量冗余,这种冗余体现在,不同特征的某些channel的特征类似。
- MEM 实现的功能就是对特征图添加一个权重,就是注意力模型,类似TEINet。
- 总体流程就是对输入特征去计算全局平均池化,然后进行相邻帧相减(可能再加上卷积)得到channel压缩后的结果,将该结果配合memory中保存的历史数据进行融合,经过channel提升一级sigmoid后得到一个channel权重。
- 几个值得注意的细节:
- 不用SE中原本的结构,而要采用相邻帧差值作为输入?
- 所谓的memory,指的就是历史数据与当前数据的按比例融合,公式如下
- 注意图中特征图层数,应该就是预示了网络结构channel的变化。
- Temporal Diversity Loss
- 高层特征信息倾向于有独特的语义pattern。
- 因此,通过相同卷积核提取的相似帧信息中,相同channel的特征信息会是类似的(而我们的目标是得到的特征不类似)
- 损失函数结构:使用了Cosine Similarity,将所有层的这个similarity累加就是我们最终要的损失函数结果。
- TD Loss添加在ResNet后三个stage的最后一个block上。
- 如何将TEM融合到2D CNN中?
- 总体过程我也不太清楚,但类似于下图所示
3. 效果如何
- 在 SomethingSomething V1/V2 上达到SOTA
- 在Kinetics上,比之前的基于2D CNN的模型效果好,但比3D CNN差(但计算量少得多)
4. 还存在什么问题&可借鉴之处
-
本文提出的优化思路与其他论文有所不同,值得借鉴。
-
没有网络结构的详细说明,浮现起来可能稍微有点困难。