
遇到的问题目前vit人脸溯源方向表现不如resnet,考虑是不是频率方面丢失于是观看文献目录小波自注意力模块架构 (Wavelets Block)(c) 与 (d) 的对比传统卷积 vs 小波卷积过程与前者对比为什么出现本文多尺度 ViT 的兴起 (Multi-scale ViT Backbones)由此带来的改变Basic Self-attention block (标准自注意力模块)举例子10 个 TokenD76812 头单头维度 64背景多尺度视觉 Transformer (Multi-scale ViT) 在计算机视觉任务中表现出了强大的主干网络Backbone性能。但由于 Transformer 的自注意力机制Self-attention计算复杂度与输入的 TokenPatch数量呈平方关系 (O(N^2))计算成本非常高。现有痛点为了降低计算开销现有的主流方法通常对 Key (K) 和 Value (V) 进行下采样Down-sampling操作例如使用平均池化 Average Pooling。论文发现的缺陷这种传统的下采样设计是不可逆的Not invertible会不可避免地导致信息丢失尤其是物体中的高频成分例如纹理细节、边缘等。为了解决上述问题受到小波理论Wavelet Theory的启发作者提出了Wave-ViT可逆下采样Invertible Down-sampling论文将小波变换Wavelet Transforms与自注意力学习以统一的方式进行结合实现了无损的LosslessKey/Value 下采样。这样既降低了计算量又保留了完整的信息。逆小波变换增强Inverse Wavelet Transforms在自注意力机制输出后利用逆小波变换来聚合局部上下文信息从而扩大了感受野Receptive Field并增强了输出特征。核心优势在效率Efficiency与准确率Accuracy之间取得了更好的权衡Trade-off。一张图通过DWT之后分解成四个子带通常对应低频近似成分 LL以及垂直高频 LH、水平高频 HL、对角线 HH 高频细节成分。核心优势DWT 和 IDWT 之间是数学上可逆且无损的。这意味着它在下采样降低分辨率的同时高频的纹理和边缘信息被编码保留在其他子带中而不会像传统平均池化Average Pooling那样直接将高频信息抹抹消。小波自注意力模块架构 (Wavelets Block)这是 Wave-ViT 的核心前向传播流程输入 X输入的特征图。生成 Query (q)$X$ 直接通过线性映射生成 q保持原有的分辨率和空间结构。无损生成 Key (k) 和 Value (v)X 首先进入DWT离散小波变换模块进行无损下采样大幅度减少了 Token 的数量。下采样后的特征通过一个3 * 3 卷积进行局部特征调整。调整后的特征再分别映射生成 k 和 v。结果因为 k 和 v 的 Token 数量因小波下采样而骤减自注意力机制Multi-Head Attention的计算复杂度显着降低。输出增强IDWT 分支3 * 3 卷积之后的特征同时被送入IDWT逆离散小波变换模块恢复到原始的分辨率尺寸。这个恢复后的长程/局部混合上下文信息最终被残差相加Residual Connection到自注意力机制的输出中从而扩大了感受野并增强了最终的特征表达。(c) 与 (d) 的对比传统卷积 vs 小波卷积过程作者在右侧对比了他们的方法与传统设计的本质区别(c) 传统的单层 3 * 3 卷积在一个高分辨率的特征图上直接进行卷积虽然能提取局部特征但计算量随着分辨率变大而激增。(d) DWT-Convolution-IDWT 过程先用 DWT 把高分辨率特征图「无损压缩」到低分辨率。在低分辨率、小尺寸的特征图上进行卷积Conv处理计算开销极小。处理完后用 IDWT 将其「无损还原」回高分辨率。结论这种设计在大幅降低计算量FLOPs的同时通过小波的反转特性完美保留并聚合了高频和低频的上下文特征。与前者对比为什么出现本文多尺度 ViT 的兴起 (Multi-scale ViT Backbones)原始 ViT 的局限单尺度、低分辨率标准的 ViT 产生的是单尺度Single-scale且低分辨率Low-resolution的特征图。这种特征图用于像素级的密集预测任务Dense Prediction Tasks如实例分割 Instance Segmentation、语义分割 Semantic Segmentation时效果并不理想not trivial因为分割任务需要非常精准的空间边界信息。多尺度金字塔策略Pyramid Strategy由于自然场景中的物体和视觉模式通常以不同的尺度大小出现研究者们开始探索多尺度架构通过聚合不同尺度的上下文信息来拓宽 ViT 的能力边界。代表性工作PVT (Pyramid Vision Transformer) [55, 54]将金字塔结构融入 Transformer 框架生成多尺度的特征图从而能够高效对接下游的密集预测任务。MViT (Multiscale Vision Transformers) [14]通过逐层扩大通道容量Channel Capacity同时降低空间分辨率Spatial Resolution的方式在 Transformer 架构中构建出多尺度的特征层次结构。由此带来的改变核心矛盾计算量与分辨率的平方冲突在多尺度特征图上直接运行自注意力机制其计算成本与输入 Patch 的数量即空间分辨率呈二次方Quadratical增长。高分辨率意味着 Patch 极多计算量会原地爆炸。现有的妥协方案基于池化的下采样为了降低 Keys ($K$) 和 Values ($V$) 的计算开销经典的多尺度 ViT 方案通常在计算注意力前进行下采样PVT [54]采用了平均池化Average Pooling。MViT [14]采用了池化核Pooling Kernels。致命缺陷为什么不能用池化高频信息丢失这些基于池化的操作是不可逆的会不可避免地导致信息丢弃Information Dropping尤其是物体纹理细节等高频成分High-frequency Components。这对于极度依赖细节的密集预测任务如分割、检测是非常致命的。破坏平移等变性文献中提到近期的研究 [66] 表明在深度网络即使是 CNN中盲目应用池化操作会损害网络的平移等变性Shift-equivariance导致模型对输入图像的微小位移变得过于敏感。Basic Self-attention block (标准自注意力模块)这是最原始的 ViT 设计如 DeiT、ViT-Base特征维度输入 X 维度为 H * W * D高 * 宽 * 通道数。Q, K, V 三个分支完全对称通过线性层Linear后它们的维度都保持为 H * W * D。注意力矩阵Q 和 K 矩阵相乘后通过 Softmax 得到的注意力权重图Attention Map维度为H * W * H * W即 N * N其中 NHW 是 Token 数量。痛点当图像分辨率很高H, W 很大时这个 N * N 的矩阵计算和存储开销呈二次方Quadratic爆炸式增长。因此最后多头注意力的计算是由单头进行拼接举例子10 个 TokenD76812 头单头维度 64拆分每个 Token 的 768 维向量切成 12 段 64 维得到 12 组特征每组形状[10, 64]。分头独立计算12 次独立单头注意力对第 1 组[10,64]生成 Q1/K1/V1 → 算 QKᵀ → Softmax → 乘 V1输出Out1 [10,64]对第 2 组[10,64]生成 Q2/K2/V2 → 独立算一套单头注意力输出Out2 [10,64]…… 一直到第 12 个头算出Out12 [10,64]每一头都是一套完整独立的单头注意力互不干扰。合并拼接把 Out1~Out12 在通道维度拼在一起Concat(Out1,Out2,...,Out12)→ 形状变回[10, 64×12] [10,768]融合线性层拼接后的 768 维特征再过一层可学习 Linear把多头信息融合防止 12 个头信息割裂得到最终多头注意力输出。那么于此就是一个HWD*DHW,换句话说一个n^2的复杂度低频轮廓 LL 垂直高频 LH 水平高频 HL 对角高频 HH 互相融合┌─── 线性映射 ─── Query (保持高空间分辨率 n) ───┐ │ │ 输入 X ─── 降维 ───┼─── DWT ─── 空间变小/通道无损 ─── Conv3x3 ─────┼─── 算注意力 (公式2) ─── 全局交互特征 │ │ │ │ │ └─ IDWT (无损还原高分辨率, 感受野扩大) ─ 局部细节特征 X^r │ │ └───────────────────────────── 拼接与融合 (公式3) ──────────────────────┘ │ 最终输出 (n x D)