ESC
输入关键词搜索文章
目录

IGMN 论文精读

ACM MM 2021 · 首个身份感知时序动作检测
三种图边类型 + 双注意力解耦:让模型区分'谁在做'和'在做什么'。
30.2%AVA v2.1 mAP
46/60受益动作类
+4.24HGNN 增益
3边类型
一句话读懂:IGMN 首次在时序动作检测中显式建模 actor 身份信息,通过三种身份感知的图边类型(intra-actor / inter-actor intra-clip / inter-actor inter-clip)和双注意力模块(DAM)解耦"看什么"(Semantic Attention)和"看谁"(Identity Attention),在 AVA v2.1 上以 SlowFast-R50 达到 30.2% mAP(首次以 R50 级别突破 30%),46/60 个动作类别受益。#Ni-et-al.-2021

系列定位

本文是动作识别系列动物精读第四篇,是 个体特定动作检测 survey 的核心引用论文之一。

IGMN 是从"无差别检测"到"个体特定检测"的关键桥梁——它证明了身份感知可以带来显著的性能提升,为后续的个体特定动作检测奠定了基础。

Part 1
问题定义:为什么需要身份感知?

1.1 通用 TAD 的身份混淆问题

传统时序动作检测(TAD)方法在上下文建模时普遍性地对待所有 actor,不考虑个体之间的一致性与差异性。论文将上下文分为两类,并指出各自的身份混淆问题:

长期上下文(跨 clip 关系):长期关系分为 intra-actor(同一身份跨时间)和 inter-actor(不同身份之间)两种。先前方法(如 LFB、AIA)统一使用 self-attention 对所有 actor 建模,无法区分这两种关系。Context-Aware RCNN 的实验表明,attention-based aggregator 与简单 average pooling 效果相当——因为 intra-actor context 在 memory bank 中占比极小,self-attention 无法同时建模两种关系。

短期上下文(同一 clip 内关系):在 human-human interaction 动作(如 push、hit)中,目标 actor 的 proposal 内常包含其他 actor。这些干扰 actor(interference actors)会导致特征学习的位置偏差。例如:红框 actor 标签为 "pull",但与黄框 actor 区域重叠,模型误判为 "grab"。

1.2 核心洞见

身份信息的缺失是长短期上下文建模中的根本性问题(intrinsic issue)。不区分身份的上下文聚合会导致 actor confusion,使模型在学习长短期上下文时都不稳定。

这个洞见直接导向了 IGMN 的设计:如果要解决身份混淆,就必须在图结构和注意力机制两个层面显式编码身份信息

Part 2
方法架构:图记忆网络如何建模身份

IGMN 由两个分支组成:HGNN(Hierarchical Graph Neural Network)负责长期上下文的身份感知关系建模,DAM(Dual Attention Module)负责短期上下文的身份感知判别区域定位。

2.1 Identity-aware Graph 的构建

节点定义:Actor 节点集 $V_t^a = \{ u_{t,1}^a, ..., u_{t,N_t}^a\}$,其中 $ u_{t,i}^a = (t, b_t^i, \hat{f}_t^i)$,$b_t^i$ 为第 $i$ 个 actor 的 2D bounding box,$\hat{f}_t^i \in \mathbb{R}^C$ 为 max-pooled 特征。Memory 节点集 $V_t^m = \{V_i^a\}_{i=t-L, i eq t}^{t+L}$,时间窗口 $L=30$。

三种边类型(身份感知的关键):

边类型符号连接方式身份语义
Intra-actor 边$E_{\text{intra}}$同一 tracklet 中相邻 clip 的节点同一身份跨时间
Inter-actor intra-clip 边$E_{\text{inter}}^1$同一 clip 内所有 actor 节点对不同身份同一时刻
Inter-actor inter-clip 边$E_{\text{inter}}^2$actor 节点与所有 memory 节点不同身份跨时间

这种边的分类显式地将身份一致性编码进图结构:intra-actor 边只连接同一身份,inter-actor 边只连接不同身份。身份信息由外部 tracker(Faster R-CNN + AIA 的 tracker)提供。

2.2 三种消息传递

Intra-actor Message Passing(有序时序聚合器):沿 $E_{\text{intra}}$ 边,使用两个全连接层融合来自不同方向的节点特征。不使用位置无关的 self-attention,而是保留时序顺序——这暗示对于个体特定检测,时序顺序比注意力权重更重要。

Inter-actor Intra-clip Message Passing:同一 clip 内全连接,使用 self-attention block。Actor 节点特征矩阵 $F_t \in \mathbb{R}^{1 \times N_T \times C}$ 同时作为 query 和 key。

Inter-actor Inter-clip Message Passing:仅更新 actor 节点 $V_t^a$ 的特征(建立层次化学习结构)。$F_t$ 作为 query,reshape 后的 $F_t^M \in \mathbb{R}^{1 \times 2LN_{\text{max}} \times C}$ 作为 key。

2.3 图下采样(Graph Down-sampling)

为解决有序时序聚合器仅整合相邻 clip 特征的局限,IGMN 引入图下采样:(1) 计算每个节点到 actor 节点通过 $E_{\text{intra}}$ 的距离;(2) 取偶数距离的可达节点作为参考节点;(3) 若两个参考节点连接同一个非参考节点,添加新边;(4) 移除所有非参考节点及其边。效果:不同层之间实现多尺度时序关系建模,每层的感受野指数级增长。

消融实验显示:HGNN 从 1 层到 3 层,mAP 从 29.32 提升到 30.76;而无下采样的 HGNN-s 在 3 层时反而下降到 29.21(过平滑)。

2.4 Dual Attention Module (DAM)

DAM 将一个 attention 解耦为两个子 attention:

Semantic Attention (SA):定位对动作识别有判别力的区域,不管属于哪个 actor。输入 $f_{\text{dam}}^i = \text{concate}(f^i, f^i_{\text{geo}}, f^i_{\text{mem}})$,输出 $\omega_{\text{sem}}^i = \sigma(\text{FFN}_{\text{sem}}(f_{\text{dam}}^i))$

Identity Attention (IA):聚焦于属于代表 actor(representative actor)的区域,mask 掉干扰 actor。输出 $\bar{\omega}_{\text{idt}}^i = \omega_{\text{sem}}^i \odot \omega_{\text{idt}}^i$(实践中使用改进版本,避免激活非动作相关区域)。

Geometry Embedding:以第 $i$ 个 actor 的中心坐标为参考点,编码相对坐标 $(x_r^i, y_r^i)$、极角 $\alpha_{x_a,y_a}^i$、干扰 actor 的加权极角 $\bar{\alpha}_{x_a,y_a}^i$

Attention-pooled 特征

$$f_{\text{sem}}^i = \frac{1}{K^2} \sum_{x,y} f_{\text{dam}}^i(x,y) \odot \omega_{\text{sem}}^i(x,y)$$
$$f_{\text{idt}}^i = \frac{1}{K^2} \sum_{x,y} f_{\text{dam}}^i(x,y) \odot \bar{\omega}_{\text{idt}}^i(x,y)$$

最终特征:$f_{\text{fuse}}^i = f_{\text{mem}}^i + f_{\text{idt}}^i$

消融的关键发现:单独使用 SA 或 IA 反而使性能下降(SA: 30.57%, IA: 30.35%),只有两者协同才能达到最佳(full IGMN: 31.22%)。这说明"看什么"和"看谁"需要联合学习——分开优化会丢失两者的交互信息。
Part 3
训练策略与损失函数

3.1 总损失函数

$$L = L_{\text{cls}}^{\text{fuse}} + \lambda_{\text{aux}}(L_{\text{cls}}^{\text{sem}} + L_{\text{cls}}^{\text{idt}} + L_{\text{prior}}^{\text{sem}} + L_{\text{prior}}^{\text{idt}})$$

其中 $\lambda_{\text{aux}} = 0.5$

3.2 分类损失的设计

SA 使用 relaxed BCE loss:只要干扰 actor 在某类为正样本,就降低该负样本的权重:

$$E(y_c^i) = \max(\{IOU(b^i, b^j) \cdot y_c^j\}_{j=1}^N)$$

这意味着如果干扰 actor 的框与目标 actor 的框重叠,且干扰 actor 在类别 $c$ 上为正样本,则目标 actor 在类别 $c$ 上的负样本权重被降低。这是一种"容忍"机制——允许 SA 关注所有 actor 的语义区域。

IA 使用标准 BCE loss:因为已经聚焦于代表 actor,不需要容忍干扰 actor 的标签。

3.3 空间先验损失

IA 的空间先验:使无干扰 actor 的区域高激活:

$$L_{\text{prior}}^{\text{idt}} = \frac{1}{K^2}\sum_{x,y} (1-\hat{p}^i_{x,y})(\omega_{\text{idt}}^i(x,y)-1)^2$$

SA 的空间先验:使用 ranking loss(margin $\gamma=0.1$)使有干扰 actor 的区域更聚焦。

3.4 训练细节

配置
优化器SGD, momentum=0.9
Batch size12
初始学习率0.003
Weight decay0.0005
训练迭代140k iterations
LR 衰减93k 和 120k 处 ÷10
Memory 窗口 $L$30
数据增强Proposal jitter + 1.5× 缩放
Pose actionSoftmax(单标签)
其他 actionBCE(多标签)
Part 4
实验结果

4.1 与 SOTA 对比

方法BackbonePretrainAVA 版本Val. mAP
SlowFastSF-R50, 4×16K400v2.124.2
LFBR50-NLK400v2.125.8
LSTRR101ImageNetv2.127.2
Context-Aware RCNNR50-NLK400v2.128.0
ACAR-NetSF-R50, 8×8K400v2.128.3
AIASF-R50, 4×16K700v2.128.9
IGMNSF-R50, 4×16K700v2.130.2
AIASF-R101, 8×8K700v2.232.2
IGMNSF-R50, 4×16K700v2.231.2
IGMNSF-R101, 8×8K700v2.233.0

关键成就:在 AVA v2.1 上以 ResNet50 级别 backbone 首次突破 30% mAP;在 v2.2 上以 R101 达到 33.0% mAP(SOTA at the time)。在 AVA 这种高难度 benchmark 上,1-2 个百分点的提升是显著的(该数据集上 SOTA 进展通常以 0.5-1% 为单位)。

4.2 关键消融实验

实验mAP说明
Baseline26.52基础 pipeline
+HGNN30.76+4.24,长期身份建模的巨大提升
+HGNN (frozen)30.19图消息传递优于冻结 memory
+HGNN (GCN)28.95有序时序聚合优于 GCN
HGNN + SA only30.57单独 SA 反而下降
HGNN + IA only30.35单独 IA 也下降
IGMN (full)31.22SA + IA 协同才有效
IGMN w/o aux losses30.33辅助损失不可或缺
IGMN w/o cls loss30.51分类损失贡献最大
IGMN w/o prior loss30.91空间先验也有贡献

4.3 逐类分析

身份感知建模使 46/60 个动作类别受益,特别是:

  • 需要跨 clip 身份线索的动作:如 "open"(需要跟踪同一人的手)、"falling down"(需要确认是同一人摔倒)
  • 需要局部细节的动作:如 "push"(需要区分推者和被推者)、"hug"(需要区分拥抱的双方)

未受益的 14 个类别主要是单人动作(如 "stand", "sit"),这些动作不涉及身份混淆。

Part 5
局限性与对个体特定检测的启示

5.1 局限性

  1. 身份信息依赖外部 tracker:身份一致性由 Faster R-CNN + 外部 tracker(来自 AIA)提供。Tracklet 的质量直接影响 intra-actor 边的构建。跟踪错误会导致 intra-actor 边连接到错误的身份,产生噪声。
  2. Identity 是隐式建模而非显式特征:论文并没有学习显式的 identity embedding / Re-ID 特征。"身份感知"主要通过图结构(边的分类)和 tracklet 关联来实现。如果两个外观相似但不同的人被 tracker 混淆,模型无法通过外观特征纠正。
  3. 计算复杂度:三层 HGNN + 三种消息传递 + DAM 的双 attention,计算开销显著。Memory bank 大小 $L=30$$N_{\text{max}}$ 限制下的 memory 节点数可能很大。论文没有报告推理速度或与实时方法的对比。
  4. 仅评估 AVA 数据集:仅在 AVA v2.1 和 v2.2 上评估。AVA 以 1 FPS 稀疏采样,不适用于快速动作。缺乏在 UCF101-24、J-HMDB-21 等 tube-based benchmark 上的验证。
  5. Bounding box 扩展的矛盾:为了获取更多上下文需要扩展 box,但扩展后引入更多干扰 actor,又需要 DAM 来处理。这种"先引入噪声再去噪"的范式存在效率问题。

5.2 从"身份感知"到"身份特定"的演进路线

IGMN 处于以下路线的第二步,是从"无差别检测"到"个体特定检测"的关键桥梁:

  • 无身份(LFB, AIA):统一 self-attention,不区分 intra/inter actor
  • 身份感知(IGMN):区分同一人 vs 不同人的关系,但不建模个体特征
  • 身份特定(未来):为每个个体学习专属的动作模型/特征
  • 持续身份追踪(未来):跨视频的个体动作累积与演化

5.3 可直接借鉴的技术组件

IGMN 技术在个体特定检测中的潜在应用
Intra-actor 边 + 有序聚合同一人的时序动作演变建模
图下采样多时间尺度的个体行为分析
Identity Attention在多人场景中聚焦特定个体
Relaxed BCE Loss处理标注不完整的个体动作数据
Spatial Prior Loss利用空间约束增强个体定位
DAM 的解耦思想IA 可替换为特定个体的 attention

参考来源

  • Ni, J., Qin, J., Huang, D. (2021). Identity-aware Graph Memory Network for Action Detection. ACM Multimedia 2021. DOI: 10.1145/3474085.3475503. arXiv:2108.11559