:四方向扫描与chunk对齐——1D自修改系统如何玩转2D特征图)
VisionHOPE论文深潜(下)四方向扫描与chunk对齐——1D自修改系统如何玩转2D特征图【免费下载链接】VisionHOPE项目地址: https://ai.gitcode.com/hf_mirrors/PSRben/VisionHOPEVisionHOPEVisual Backbones as Self-Modifying Learning Systems把视觉骨干网络建模为自修改学习系统是本系列的主角。它的官方权重仓库提供了 ImageNet-1K 分类、COCO 检测/分割、ADE20K 语义分割三大任务的 T/S/B 全套预训练检查点见 README.md。上篇我们拆解了自修改机制本身混合器mixer会根据输入内容动态调制自身的运算参数。本篇深入两个关键工程——**四方向扫描Four-direction Scan**与chunk 对齐Chunk Alignment看它们如何让一套纯 1D 的自修改系统优雅地玩转 2D 特征图。一、承前启后1D 自修改系统留下的 2D 难题 自修改混合器的核心优势是序列线性复杂度它沿着一条 token 序列做因果扫描每个位置只累积过去的信息。这与 2D 特征图的需求天然冲突特征图天然是二维的一个位置的空间上下文来自上下左右四个方向单纯的 1D 展平比如逐行拉直会把空间上相距甚远的 token 塞进同一序列也会把相邻的 token 拆到序列两端如果调制参数只看向序列的前方那么特征图中尚未被扫描到的空间区域就完全不可见。换句话说顺序性带来了效率却丢掉了空间全上下文。VisionHOPE 用两个设计把丢掉的上下文补了回来。二、四方向扫描用方向多样性换回 2D 全上下文四方向扫描的做法非常直观同一份特征图被依次沿 4 个方向做 1D 扫描——特征图的 4 个扫描方向示意 ────────────────────────── → → → → 左 → 右 ← ← ← ← 右 → 左 ↓ ↓ ↓ ↓ 上 → 下 ↑ ↑ ↑ ↑ 下 → 上 ──────────────────────────直觉上可以这样理解单向扫描 单向视野。因果扫描只看见序列中的历史位置。沿左→右扫描时每个位置能积累左侧整行的上下文四个方向 四个象限视野。四个方向各自独立扫描后将输出相加或拼接融合。此时任意一个空间位置都能从四个方向聚合到的邻域信息里看到它的整行、整列复杂度仍是线性的。每条扫描方向都是 O(N) 的 1D 过程四条并行后总代价也只是常数倍增长远优于 O(N²) 的全注意力也不需要任何卷积。这个设计对自修改系统尤其重要调制参数由内容驱动方向越多自修改器可依据的局部证据越充分生成出的调制信号就越接近全局感知的效果。三、chunk对齐让 1D 分块贴合 2D 结构 ⚙️有了四个扫描方向还有一个落地问题超长序列在真实硬件上需要切块chunk并行处理。chunk 怎么切直接决定了空间结构是否被破坏。问题朴素切块会切断空间如果按展平后的 token 数等分切块一个 chunk 里可能同时混入特征图顶行和底行的 token扫描的方向在块内部来回跳变空间连续性被彻底打碎自修改器也难以学到稳定的短程调制模式。解法chunk 边界对齐行列边界chunk 对齐的核心原则是每个 chunk 恰好覆盖特征图的一整行或一整列使 chunk 内部只沿单一 2D 轴前进。以 8×8 特征图、chunk 大小 8 为例8×8 特征图按整行对齐切 chunk示意 ────────────────────────── [ ■ ■ ■ ■ ■ ■ ■ ■ ] ← chunk 1第 1 行 [ □ □ □ □ □ □ □ □ ] ← chunk 2第 2 行 ... [ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ] ← chunk 8第 8 行 ──────────────────────────这样设计带来三重收益收益说明 局部性完整chunk 内 token 共享同一行或列自修改器只需学习短程、单轴的调制模式任务更简单⚡ 并行友好各 chunk 互相独立可完全并行跨 chunk 的长程信息由四条扫描方向在融合阶段补齐 无接缝伪影块边界与行/列边界重合避免了半个空间结构被劈在两块之间导致的边界效应一句话总结四方向扫描负责看得全chunk 对齐负责切得对两者配合才让 1D 自修改序列在 2D 特征图上既高效又完备。四、架构参数速览T / S / B 三种规格 config.json 给出了三个骨干的完整规格四个阶段stage维度逐层翻倍是典型分层视觉骨干结构规格嵌入维度 embed_dims混合器维度 mixer_dims各阶段深度 depthsVisionHOPE-T64 / 128 / 256 / 51232 / 64 / 128 / 2563 / 4 / 18 / 4VisionHOPE-S64 / 160 / 320 / 51232 / 80 / 160 / 2564 / 8 / 25 / 8VisionHOPE-B96 / 192 / 448 / 64048 / 96 / 224 / 3204 / 8 / 25 / 8两个值得注意的细节第三阶段深度最重tiny 为 18 层、small/base 为 25 层分辨率低、语义重正是四方向扫描与 chunk 对齐机制被反复迭代、调制效果最值钱的地方mixer_dims 约为 embed_dims 的一半自修改混合器以较窄的隐层承载调制运算控制 FLOPs 与参数量的同时保留表达力。五、预训练权重清单三大任务全覆盖 ✅仓库内置全套官方检查点.pth 文件经 Git-LFS 管理克隆后执行 LFS 拉取即可覆盖了骨干网络最常见的下游方向任务权重文件ImageNet-1K 分类visionhope_tiny.pth · visionhope_small.pth · visionhope_base.pthCOCO · Mask R-CNN 1×visionhope_tiny_coco_1x.pth · visionhope_small_coco_1x.pth · visionhope_base_coco_1x.pthCOCO · Mask R-CNN 3×visionhope_tiny_coco_3x.pth · visionhope_small_coco_3x.pthADE20K · UPerNet 语义分割visionhope_tiny_ade20k.pth · visionhope_small_ade20k.pth · visionhope_base_ade20k.pth这套清单本身就是一条重要佐证物体检测与实例分割Mask R-CNN、像素级语义分割UPerNet都极度依赖多尺度空间上下文——如果四方向扫描与 chunk 对齐没有把 2D 信息喂饱混合器这些任务上的迁移表现很难成立。六、小结1D 系统玩转 2D 的三条启示方向多样性 ≈ 上下文完备性用 4 条线性扫描方向覆盖 2D 全邻域代价只是常数倍却省掉了二次注意力的平方开销分块边界要懂空间chunk 对齐让 1D 切块与 2D 行列结构严格吻合局部性与并行效率兼得机制协同才出效果自修改提供内容自适应的调制四方向扫描提供空间全上下文chunk 对齐提供工程可行性——三者缺一分层骨干都难以同时拿下分类、检测、分割三条线。 想动手验证的读者可以从 visionhope_small.pth 这份 ImageNet 预训练权重入手配合 README.md 中的下载说明快速上手下一篇我们将聚焦 VisionHOPE 的检测与分割下游任务接入流程。【免费下载链接】VisionHOPE项目地址: https://ai.gitcode.com/hf_mirrors/PSRben/VisionHOPE创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考