a feed-forward neural network that directly infers all key 3D attributes of a scene, including camera parameters, point maps, depth maps, and 3D point tracks, from one, a few, or hundreds of its views.

  1. https://vgg-t.github.io/ 看一下better than MASt3R, DUSt3R

1. 处理视角的维度:双视角(Pairwise) VS 任意视角(Multi-view)

2. 网络输出目标的本质差异:隐式几何 VS 显式参数

3. 架构与注意力机制的升级

Alternating-Attention

image.png

  1. Global Self-attention + Frame-wise self-attention
    1. ⇒ significant performance gains.
    2. Note: no cross-attention layers
  2. 如果硬算,需要多少显存?N张图片,每张L个token=》O(N^2L^2)
    1. 自注意力机制(Self-Attention)的计算复杂度是O(N2), N 是特征 Token 的总数量。假设我们要处理100张图,每张图经过切割后变成32×32=1024个 Token。总 Token 数  = 100×1024=102,400 = 100k。
    2. one Attention Matrix ⇒  102,400×102,400=1.05×10^10, i.e.
      1. float16(2 bytes)= > 21 GB
      2. float32(4 bytes)= > 42 GB
      3. Transformer 有几十个注意力头(Heads),还要堆叠十几层(Layers)。此外还需要保存前向传播的激活值来算反向梯度的梯度。如果硬算,处理这 100 张图至少需要几 TB 的显存
  3. Solution: 完全依赖 FlashAttention 算子。
    1. Llama-3原生支持 128k 甚至更长的上下文窗口。
    2. 100 张图切片后加起来正好是 100k 级别的 Token 长度。
    3. FlashAttention 运用底层的 C++ CUDA 内存切块(Tiling)和重计算技术,强制要求大注意力矩阵绝不写入显存(HBM),而是在 GPU 的 SRAM 缓存中即算即毁
  4. ⇒ AVGGT: Rethinking Global Attention for Accelerating VGGT

image.png

References