CaiT

分类: 网络架构

CaiT

定义

CaiT(Class-Attention in Image Transformers)是 Facebook AI 提出的 ViT 改进方案,将 class token 的处理与 patch token 的自注意力分离为两个阶段,解决深层 ViT 中 class token 对 patch 交互的干扰问题。

核心要点

将 Transformer 编码器分为两阶段:(1) Self-Attention 阶段只处理 patch token;(2) Class-Attention 阶段引入 class token 并用交叉注意力聚合

引入 LayerScale:对每层输出乘以可学习的对角矩阵(初始化为小值),稳定深层 ViT 训练

LayerScale 使得 ViT 可以训练到 36 层以上而不退化

在 ImageNet 上训练无需额外数据即可达到 SOTA

数学形式

LayerScale:xl+1=xl+diag(λ1,...,λd)SA(xl)\text{LayerScale}: x_{l+1} = x_l + \text{diag}(\lambda_1, ..., \lambda_d) \cdot \text{SA}(x_l)

代表工作

CaiT (Touvron et al., ICCV 2021): 原始论文

相关概念

ViT

DeiT

DeepViT