M6-025M6: Multimodal & Generative ModelsDynamic Resolution & Visual TokensEasy
Mastery:
Dynamic Resolution & Visual Tokens: 解释动态分辨率(native resolution)的原理与动机。
📐 Mathematical Definition
⚡ Executive Summary
Core Concept: 不做固定尺寸缩放,按图像原生分辨率切分 patch,使 token 数与图像内容/尺寸匹配,保住细节。
📌 Key Takeaways
- •固定分辨率:统一缩放到 224/336/448,会损失细节(尤其小字)
- •动态分辨率:按原生分辨率切分,token 数与图像尺寸成正比
- •动机:文档/OCR/细粒度任务需要高分辨率,固定缩放会毁掉细节
📐 Mathematical Derivations
数学机理:<strong>固定分辨率的问题</strong>——传统 VLM 把任意尺寸的图像<strong>统一缩放到固定尺寸</strong>(如 336×336),再切 patch。<strong>后果</strong>——(a) <strong>细节丢失</strong>——一张 2000×3000 的文档图缩到 336×336 后,小字变得模糊不可辨(OCR 失败);(b) <strong>宽高比失真</strong>——非方形图被拉伸/压扁;(c) <strong>信息密度不匹配</strong>——简单图(如单个物体)与复杂图(如文档)都被压到同样的 token 数,前者浪费、后者不足。<strong>动态分辨率(native resolution)</strong> 的做法——<strong>不缩放</strong>(或只做有限缩放),而是<strong>按原生分辨率切分 patch</strong>:token 数 = ⌈H/P⌉×⌈W/P⌉,<strong>与图像尺寸成正比</strong>。<strong>效果</strong>——(a) <strong>保住细节</strong>(高分辨率图的 token 更多,小字可辨);(b) <strong>保持宽高比</strong>;(c) <strong>token 数与信息量匹配</strong>(复杂图多给 token)。<strong>代表实现</strong>——(a) <strong>Qwen2-VL 的 M-RoPE + 动态分辨率</strong>——按原生分辨率切 patch,用多维 RoPE 编码位置;(b) <strong>LLaVA-NeXT 的 AnyRes</strong>——把高分辨率图切成多个固定尺寸的 tile + 一个全局缩略图(见 tiling 题);(c) <strong>InternVL 的动态 tiling</strong>。<strong>代价</strong>——(a) <strong>token 数不可控</strong>(高分辨率图可能产生数千 token,成本高);(b) <strong>需要位置编码支持任意网格</strong>(见 2D RoPE 题);(c) <strong>训练时需混合多种分辨率</strong>(否则无法泛化)。<strong>缓解</strong>——用<strong>token 压缩</strong>(池化/查询压缩)把高分辨率的 token 数压到可控范围(如 Qwen2-VL 用 2×2 池化压缩)。<strong>关键权衡</strong>——<strong>'细节 vs 成本'</strong>:动态分辨率保住细节但 token 多(贵);固定分辨率便宜但丢细节。<strong>实践</strong>——(a) <strong>通用场景</strong> → 固定中等分辨率(如 336/448)+ 可选动态;(b) <strong>文档/OCR/细粒度</strong> → 动态分辨率 + token 压缩;(c) 按输入类型<strong>动态选择</strong>(简单图低分辨率、文档图高分辨率)。
🏭 Production Trade-offs
深度剖析与工程权衡:① <strong>'固定缩放毁掉细节'是动态分辨率的根本动机</strong>——尤其对文档(小字)、图表(细线)、遥感(小目标);这是'通用 VLM 在文档任务上表现差'的主要原因。② <strong>'token 数与信息量匹配'是更深层的理由</strong>——固定分辨率下'简单图与复杂图同样 token 数'是浪费与不足并存;动态分辨率让'信息量与 token 数'成正比。③ <strong>'token 数不可控'是主要代价</strong>——高分辨率图可能产生数千 token,直接推高成本与延迟;故<strong>必须配合 token 压缩</strong>(否则不可用)。④ <strong>'位置编码需支持任意网格'</strong>——动态分辨率下 patch 网格尺寸可变,故需 2D/M-RoPE 编码(而非固定的一维位置);这是配套的技术要求。⑤ <strong>'训练需混合分辨率'</strong>——若训练只用单一分辨率,模型无法泛化到其他分辨率;故需在训练时随机化分辨率(这是重要的工程细节)。⑥ <strong>面试要点</strong>——被问'动态分辨率是什么',应给出'<strong>按原生分辨率切 patch(token 数 ∝ 尺寸)vs 固定缩放(丢细节)</strong>'与'<strong>动机(OCR/细节)+ 代价(token 不可控)+ 配套(2D RoPE + token 压缩 + 混合分辨率训练)</strong>';能指出'动态分辨率必须配合 token 压缩才可用'是深度理解的标志。
⚠️ Common Interview Pitfalls
- ✕用固定分辨率处理文档图(小字丢失)
- ✕动态分辨率不配 token 压缩(成本失控)
🎯 Interviewer Follow-ups
- ?固定分辨率为什么损害 OCR?
- ?动态分辨率如何处理'任意尺寸'的输入?
📚
Associated Knowledge Base Guides & Mindmaps
Explore the comprehensive technical article, exam cards, and global architecture tree.