Date:2023.08.24 【paper


Qwen-VL

通过了解 LVLM 此类模型的运行方式,其对图片的处理方式基本上遵循该原则:1.采用ViT作为图片编码器;2.设计 Vision-Language adapter; 3.将最终图片编码序列一同送入LLM中。


Qwen-VL:

  • 大语言模型:采用预训练的Qwen-7B
  • 视觉编码器:Visual Encoder采用ViT,预训练权重来自 Openclip’s ViT-bigG;
    • 训练和推理时,均将图片处理为指定的分辨率(具体后面看到再补充)
    • patch:stride=14
  • 位置指导的视觉-语言适配器(Position-aware Vision-Language Adapter):压缩图像特征,提升效率
    • 随机初始化的单层交叉注意力
      • 可训练的向量(Embeddings)作为 Query
      • Visual Encoder输出的图片特征向量作为 Key
      • 将 Vision feature sequence 压缩为固定 256 长度的序列
    • 位置信息:将二维绝对位置编码整合到 Query-key pairs 之中,减少压缩过程造成的位置信息细节损失

数据格式:

  • 图片输入:将(<img></img>)插入图像序列开头和结尾,以同普通文本输入做区分
  • Bbox输入和输出:
    • Qwen-vl将包围框归一化处理,保证其在[0, 1000)
    • ( X t o p l e f t , Y t o p l e f t ) , ( X b o t t o m r i g h t , Y b o t t o m r i g h t ) (X_{topleft}, Y_{topleft}), (X_{bottomright}, Y_{bottomright}) (Xtopleft,Ytopleft),(Xbottomright,Ybottomright) 对于该坐标字符串,直接以文本的形式进行的分词处理,没有额外的位置词汇表
    • 以(<box></box>)作为标识符,区分检测字符串与普通文本字符串
    • 将边界框同描述性文本关联,采用(<ref></ref>)标记

训练

![[Pasted image 20250821151022.png]]

Qwen-VL 的训练分为三阶段,其中两个阶段预训练,一个阶段微调后训练。该部分流程同Qwen2.5VL变化还是不小,具体参见[[Qwen2.5-VL 技术报告阅读笔记]]

预训练

  1. Image-Text pairs

    • (弱标注)原始50亿条文本对,清洗处理后为14亿条(77.3英文,22.7中文)
    • 冻结LLM,仅训练视觉编码器和VL Adapter,输入图片调整为 ( 224 × 224 ) (224 \times 224) (224×224)
      • 目标:最小化text tokens的交叉熵
      • Max lr: 2e-4,batch size 30720,steps:50,000
  2. Multi-task pretrain

    • 高分辨率VL标注数据,更大的输入分辨率和图文交错数据,多任务数据构成:![[Pasted image 20250821155915.png]]

    • 分辨率由 224 --> 448,训练目标同上

    • LLM权重解冻

    • 数据格式:黑色文本 作为前缀序列,在训练时不计算损失,而 蓝色文本 则是带有损失的真实标签![[Pasted image 20250821160927.png]]

  3. Supervised Finetuning

    • 指令微调,增强对话和指令遵循能力。
    • 数据:图文标注数据或LLM生成数据,仅处理单图像,且局限于图像内容理解;通过人工标注、模型生成和策略拼接,构建了一组对话数据
    • 训练时混合多模态和纯文本对话数据,数据量:35w条
    • 冻结 Vision Encoder,优化LLM和Adapter
    • 数据格式:只监督答案和特殊标记(在示例中显示为蓝色),不监督角色名称或问题提示,确保预测和训练分布一致![[Pasted image 20250821161629.png]]

使用greedy search解码

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐