Qwen2.5-VL 算法解析

张开发
2026/4/17 19:03:19 15 分钟阅读

分享文章

Qwen2.5-VL 算法解析
Qwen2.5-VL 本质上是一个Qwen2.5 LLM 原生动态分辨率 ViT 视觉到语言的 MLP 压缩器 面向图像/视频的时间对齐版 MRoPE的统一多模态自回归模型。它相对 Qwen2-VL 的核心升级不是简单“换了个更大的底座”而是把视觉编码效率、长视频时间建模、文档/定位数据构造、Agent 数据构造一起重做了一遍。1. Qwen2.5-VL 想解决问题官方报告把上一代和同类 LVLM 的瓶颈总结为四类视觉侧计算复杂、上下文理解不稳、细粒度感知不够强、不同序列长度下表现不一致。所以 Qwen2.5-VL 的改进方向非常明确一边降低高分辨率图像和长视频的处理成本一边提升文档解析、目标定位、长视频理解、GUI Agent这些真正依赖精细视觉对齐的能力。2. 总体架构三段式论文把 Qwen2.5-VL 拆成三个核心部件1Large Language Model以 Qwen2.5 LLM 为语言底座2Vision Encoder重构后的 ViT支持原生分辨率输入3MLP-based Vision-Language Merger把视觉 token 压缩后送入 LLM。这套设计的关键点在于它不是先把图像硬缩放到固定尺寸再编码而是尽量保留原图尺度把不同大小图像映射成不同长度的视觉 token 序列再通过 merger 压缩后交给语言模型统一生成。视频也走同一范式只是多了时间维处理。3. 视觉编码器真正重要的升级是“原生动态分辨率 Window Attention”Qwen2-VL 的代表性创新是Naive Dynamic Resolution已经能把不同分辨率图像变成不同长度 token。Qwen2.5-VL 在这个思路上继续前进但把视觉编码器本身重构得更适合高分辨率和视频它使用重新设计的 ViT引入2D-RoPE、window attention、RMSNorm、SwiGLU并且让大多数层采用窗口注意力仅少数层使用全局全注意力。([arXiv][1])更具体地说Qwen2.5-VL 的 ViT 配置在 3B/7B/72B 上是统一的隐藏维 1280、32 层、16 头、patch size 14、window size 112只有第{7, 15, 23, 31}层保留 full self-attention其余层用 windowed attention。论文明确说这样做是为了把高分辨率下原本接近二次增长的注意力开销尽量改成随 patch 数近似线性增长。你可以把它理解成Qwen2-VL更像“允许变分辨率输入”Qwen2.5-VL则进一步解决“变分辨率输入时视觉编码算得太贵”的问题。这也是它在文档、图表、界面截图这类高分辨率任务上更实用的关键。([arXiv][1])4. Vision-Language Merger不是简单拼接而是先做空间压缩论文里这一点很重要但很多介绍会略过。Qwen2.5-VL 不会把 ViT 的原始 patch token 全量直接喂给 LLM而是先把空间相邻的 4 个 patch feature 分成一组拼接后送入一个两层 MLP投影到与文本 embedding 对齐的维度。这样既能降低计算量也能让不同分辨率下的视觉序列长度更可控。这一步对工程特别关键因为多模态模型真正贵的往往不是视觉 backbone 本身而是大量视觉 token 挤占 LLM 上下文窗口。Merger 的作用就是把高分辨率视觉细节尽量保住同时避免 LLM 被视觉 token“撑爆”。5. 视频理解核心不是“多看帧”而是“按真实时间建模”Qwen2.5-VL 对视频的升级有两个核心动作一是dynamic FPS sampling把动态分辨率从空间维扩展到时间维二是把MRoPE 的时间位置编码对齐到 absolute time。在 Qwen2-VL 里MRoPE 已经把位置编码拆成时间、高度、宽度三部分但视频里的时间位置更多依赖“第几帧”对不同采样率下的真实时间对齐还不够好。Qwen2.5-VL 的改进是时间维 position id 不再只绑定帧序号而是对齐到真实时间戳/绝对时间间隔。这样同一事件在 1 FPS、2 FPS、4 FPS 等不同采样下模型更容易学到一致的时间语义。这也是它能做长视频理解 秒级事件定位的关键逻辑。不是额外挂一个 temporal head而是把时间感直接写进统一的位置编码体系里。论文也明确说这样做不需要额外计算开销。6. 定位/文档/Agent 更强6.1 目标定位Qwen2.5-VL 在空间建模上不再偏向归一化坐标表达而是强调直接利用输入图像的实际尺寸来表示框、点等空间信息从而保留真实尺度感。论文还专门扩展了 grounding 数据覆盖 bbox、point、counting并把训练类别扩展到1 万 object categories还合成了不存在类别查询和多实例场景来提升开放词汇检测与鲁棒性。6.2 文档解析它把 OCR 往前推了一步做成了omni-document parsing。训练数据不只包含文本块还把表格、图表、公式、图片说明、布局框等统一组织进一种 HTML 风格标注格式里甚至把模块坐标也写进标签属性。这样模型学到的就不是“把字认出来”而是“把文档结构还原出来”。6.3 GUI AgentQwen 团队还单独构造了 GUI/Agent 数据先做截图描述和 UI 元素 grounding再把手机、网页、桌面上的操作统一映射到共享的 function-call action space并为多步轨迹补充每一步的 reasoning 说明。这样训练出来的不是纯 VQA 模型而是带有“看界面—定位控件—决定动作”闭环能力的视觉代理。7. 训练流程预训练三阶段后训练两阶段7.1 预训练Qwen2.5-VL 的预训练 token 从 Qwen2-VL 的1.2T扩到4.1T 左右。Hugging Face 文档同样给出 Qwen2.5-VL 预训练规模为4.1T tokens。训练分三阶段第一阶段主要训练 ViT对齐语言模型第二阶段解冻全模型做大规模多模态训练第三阶段进一步提升长序列、长视频、长文档能力把序列长度从8192拉到32768。表 2 给出的数据量分别约为1.5T / 2T / 0.6T。7.2 后训练后训练采用SFT DPO双阶段。SFT 数据约200 万条其中纯文本和多模态各占一半DPO 则用图文和纯文本偏好数据对模型做行为对齐。值得注意的是后训练时ViT 参数是冻结的也就是视觉表征主要在预训练阶段定型后训练更多是在语言侧和跨模态对齐侧做行为塑形。此外论文还专门强调了rejection sampling for enhanced reasoning用中间版本模型生成带 CoT 的候选答案只保留与标准答案一致、且中间推理质量足够高的样本再配合规则过滤和模型过滤。这说明 Qwen2.5-VL 的“会推理”并不是只靠更大数据而是显式做了 reasoning 数据蒸馏和筛选。8. 推理时的数据流你可以这样理解如果你把 Qwen2.5-VL 当作一个工程系统它的前向链路大概是图像/视频输入→ 按原生分辨率或动态 FPS 采样→ ViT 切成 patch / tubelet 做视觉编码→ 用 2D/3D 位置信息和 absolute-time MRoPE 编码空间与时间→ 用 merger 压缩视觉 token→ 视觉 token 与文本 prompt 拼接→ Qwen2.5 LLM 自回归生成文本、坐标、JSON 或 action。所以从算法本质看Qwen2.5-VL 不是“检测器 OCR 规划器”的显式模块拼装而是把这些能力尽量统一到一个自回归生成接口里让模型直接输出自然语言、结构化文档、框点坐标、甚至代理动作。([Qwen][2])9. 相比 Qwen2-VL最关键的四个算法升级我把它浓缩成四条第一视觉编码器更工程化。Qwen2-VL 解决了动态分辨率问题Qwen2.5-VL 进一步通过 window attention、RMSNorm、SwiGLU、少量全局层把高分辨率输入做得更省算力、更稳。([arXiv][1])第二视频时间建模更“真实时间化”。Qwen2-VL 的 MRoPE 已经统一了文本/图像/视频位置编码Qwen2.5-VL 进一步把时间维对齐到 absolute time这对跨 FPS 的事件定位尤其关键。([arXiv][1])第三数据侧更偏“任务能力定向构造”。它显著扩充了 grounding、document parsing、video grounding、agent 数据而不是只堆通用图文数据。第四后训练更强调可控推理。SFT、DPO、rejection sampling、质量过滤一起上使它在数学、文档、GUI 等复杂任务上的回答更像“能完成任务的系统”而不只是“能描述图片的聊天模型”。11. 优点与局限优点很明确它把高分辨率图像、长视频、文档结构、精细定位、GUI Agent放进了一套统一架构里同时保留了 Qwen2.5 LLM 的纯文本能力论文中 72B 在多项纯文本任务上也接近或达到同规模强模型水平。局限也很明确第一尽管 window attention 降低了复杂度但视觉 token 数依然会随着分辨率和视频长度增长所以超高分辨率、超长视频在推理时仍然会贵这一点是从论文“线性而非二次”优化逻辑自然推出的工程结论。第二论文自己也承认CoT 中视觉—文本模态对齐仍是持续挑战中间推理步骤可能忽略或误解视觉信息。12.算法总结Qwen2.5-VL 的核心不是简单把图像接到 LLM 前面而是用“原生动态分辨率视觉编码 绝对时间对齐的位置编码 视觉 token 压缩 面向定位/文档/Agent 的专项数据”把视觉输入改造成 LLM 真正能消费的统一序列。这就是它比传统 caption 型 VLM 更强、也更像“多模态操作系统接口”的原因。参考链接[1]: https://arxiv.org/abs/2409.12191?utm_sourcechatgpt.com “Qwen2-VL: Enhancing Vision-Language Model’s …”[2]: https://qwenlm.github.io/blog/qwen2.5-vl/ “Qwen2.5 VL! Qwen2.5 VL! Qwen2.5 VL! | Qwen”

更多文章