非局部连接网络 Non-local Neural Network

背景

dependencies between spatial or temporal local regions.

通常利用卷积(滤波器)等操作,可以实现局部依赖,但是如何获取图像/视频中的长距离依赖?self-attention给我们提供了一个很好的思路,它能捕获任意距离的依赖。

空间Attention

dependencies between any spatial pixels

通常的space attention,需要构建H*W的attention mask,实现空间维度的长依赖。

时空Attention

dependencies between any spatial pixels and temporal frames

整体架构类似transformer中的设计,仍然采用了bottleneck思想。即先用1*1*1卷积对channel进行降维,然后进行3D-Attention,再升维。

对于3D-Attention,即spacetime attention,是在2-D上的扩展。它需要构造
T*H*W大小的attention mask,实现跨任意空间、任意时间维度的长依赖。

时空+Channel Attention

dependencies between any spatial pixels, temporal frames, and channels

时空Attention仅通过合并信道来考虑全局时空相关性。它可能会错过一些重要的跨通道信息。例如,身体、球及其相互作用都是描述踢球动作所必需的,而non-local侧重于学习身体部位的关系,而忽略了通常对应于输入特征的身体与球不同通道的相互作用

感觉motivation有些牵强,或者我还没领会channel attention的必要性。channel 思想来自SENet

rethink

  • Factorization: 这个是spacetime的同时attention,计算量比较大,有没有做分解的?即先space attention,再time attention。
  • 计算量: T比较大的情况下怎么办?以及HW
  • 非关键帧: 这里并未考虑非关键帧的信息,如何兼顾非关键帧。光流…

参考

  1. Non-local Neural Network
  2. CGNL: Compact Generalized Non-local Network
  3. SENet: Squeeze-and-Excitation Networks