Qwen-VL论文阅读

论文地址

其他同学的详细讲解

模型结构和参数大小

(1)LLM:Qwen-7B

(2)Vision Encoder:ViT架构,初始化参数是 Openclip’s ViT-bigG。

在训练和推理过程中,输入的图像都被调整到特定的分辨率。

视觉编码器通过将图像分割成步长为14 的块来处理图像,从而生成一组图像特征。

「 224 / 14 = 16 16 x 16 = 256」

(3)VL Adapter:Position-aware Vision-Language Adapter 位置感知 视觉-语言 适配器

主要作用是 压缩图像特征、减少由 长图像特征序列 引起的 效率问题。

这个Adapter 包括 一个 随机初始化的 单层交叉注意力模块 cross-attention

这个模块的 query 是一组可训练的向量,key 是 Vision Encoder 输出的图像特征

「这里的query 经过不断地训练,在图文的对齐上起到了 重要的作用」

这种机制将视觉特征序列压缩到 256 个固定长度。「查询向量的数量太少可能会导致部分视觉信息的丢失,而查询量过多则可能会增加收敛难度和计算成本」

整合 2D绝对位置编码 到 cross attention 中 query 和 key,以减轻图像压缩时的损失

随后,将256长度的压缩图像特征输入给 LLM

在这里插入图片描述

Qwen-VL训练的3个阶段

在这里插入图片描述

(1)预训练阶段

用 大规模、弱标注、网络爬虫抓取的 14亿图像文本对 数据集,其中 22.7% 中文数据

冻结 LLM的参数,仅对 Vision Encoder 和 VL Adapter 进行优化。

输入的图像大小调整为 224 x 224

训练目标是 文本 token 的交叉熵

最大学习率 2e-4

batchsize为 30720个 图像文本对

持续 50000步的训练

消耗约 15亿图像文本对的样本

这个阶段的目标是 对齐 Vision Encoder 和LLM的特征

(2)多任务训练阶段

用 高质量、细粒度的 VL 标注数据,采用 更大分辨率和交错的 图像文本对 同时进行 7个任务的 训练。

其中 简单地通过将同一任务的数据打包成长度为 2048 的序列来构造 交错的图像-文本数据 (不同训练集的数据)

并且将 Vision Encoder的输入分辨率 从 224 x 224 提升到 448 x 448,减少图像下采样造成的损失

训练目标和预训练阶段相同,但不冻结任一模块

这个阶段的目标是 强化模型的多模态能力

(3)有监督微调阶段

通过指令微调对Qwen-VL预训练模型进行了微调,以增强其遵循指令和多轮对话能力,从而得到了交互式的Qwen-VL-Chat模型

通过优化这个阶段的训练数据,使得模型具备定位和多图像理解能力

同时,通过混合纯文本数据,使得模型具有通用对话能力

这部分指令微调数据总量是 350k

此阶段冻结 Vision Encoder 模块,优化 LLM 和 VL Adapter 模块参数

训练数据示例:

训练目标:回答和特殊标记(如下图蓝色部分) 为了确保预测和训练之间的分布一致性
在这里插入图片描述

其他

Qwen-VL全新升级

注意:上述记录、忽略一些的细节,比如 input 和 output等

相关推荐

  1. VLM 系列——Qwen-VL 千问—— 论文解读

    2024-06-09 22:14:04       26 阅读
  2. qwen-vl微调

    2024-06-09 22:14:04       9 阅读
  3. 论文阅读笔记】清单

    2024-06-09 22:14:04       44 阅读

最近更新

  1. 安卓gradel下载失败解决方案

    2024-06-09 22:14:04       0 阅读
  2. 实战

    实战

    2024-06-09 22:14:04      0 阅读
  3. 力扣719.找出第K小的数对距离

    2024-06-09 22:14:04       0 阅读
  4. 10月,2024北京养老展,北京老年生活用品展览会

    2024-06-09 22:14:04       0 阅读
  5. python之面向对象编程

    2024-06-09 22:14:04       0 阅读
  6. Python2.7中os.path模块常用函数记录

    2024-06-09 22:14:04       0 阅读

热门阅读

  1. Flutter 常见报错记录

    2024-06-09 22:14:04       5 阅读
  2. 解决更新Android Studio后下载Gradle超时

    2024-06-09 22:14:04       5 阅读
  3. 给自己Linux搞个『回收站』,防止文件误删除

    2024-06-09 22:14:04       6 阅读
  4. 前端通用样式调整方法(整理版)

    2024-06-09 22:14:04       5 阅读
  5. web 前端开发培训:深入探索与实战应用

    2024-06-09 22:14:04       5 阅读
  6. 线程+线程池+锁

    2024-06-09 22:14:04       5 阅读
  7. 多维vector定义

    2024-06-09 22:14:04       4 阅读