Qwen-VL A Versatile Vision-Language Model for Understanding, Localization, Text Reading, and Beyond

Qwen-VL: A Versatile Vision-Language Model for Understanding, Localization, Text Reading, and Beyond

TL; DR:多任务的训练方式以及配套的输入输出格式定义,使得多模态视觉大模型具有了更多视觉理解能力。如 grouding、ocr 等。

导言

先从直观上感受一下 qwen-vl 处理多任务的能力。如下图 1,5 所示,qwen-vl 可以理解和输出特定格式的图像坐标位置描述;如图 2,4,6 所示,qwen-vl 能理解图像中的文字,进而可以依据图像中的文字内容完成 OCR 或视觉问答任务,而图 3 这种常规的视觉问答任务更是不再话下。

太强了!先不论常规视觉理解和视觉问答的精度如何,引入了图像物体定位和 OCR 这两类能力就足以令人惊艳了。让我们看看 qwen-vl 是如何做到的。

在这里插入图片描述

方法

qwen-vl 的改进主要在四个方面:1. 模型结构 2. 适配各种视觉任务的输入输出格式 3. 三阶段的训练方式 4. 高质量的多语言多模态数据。我们一个一个来看。

模型结构

现在的多模态大模型(VLM)在模型结构方面一般都有是三个部分组成,分别是视觉编码器,大语言模型和适配器。qwen-vl 也不例外:

  1. 视觉编码器,qwen-vl 使用的视觉编码器是 open-clip 训练的 ViT-bigG/14 的 CLIP 模型视觉塔;
  2. 大语言模型,大语言模型,自不必说,当然是 qwen,具体规模是 7B;
  3. 适配器,qwen-vl 选择的适配器是一个单层交叉注意力模块。该模块使用一组可训练的 embeddings 作为 query,将视觉编码器中提取的图像特征作为 key,来进行交叉注意力操作。由于 qwen-vl 还要做一些 grouding 的任务,因此需要保持图像的位置信息。因此,适配器这里的 query 和 key 都加了 2D 的绝对位置编码。

在这里插入图片描述

视觉编码器和交叉注意力模块首先将图像编码为固定长度(256 tokens)的特征,然后与文本输入的 token 一起送入到大语言模型中。

输入和输出

图片输入

为了区分文本输入和图像输入,在图片的首尾分别加上了两个特殊的 token <img></img> 用以表示图像输入的开始和结束。

位置框的输入和输出

为了进行 grouding 类的任务,引入了两组特殊 token:<box></box><ref>/ref ,分别用以表示位置框和相关描述信息。位置坐标会被统一 normalize 到 [0, 1000),并表示为 (x1, y1), (x2, y2) 的形式。

训练和数据

qwen-vl 的训练共分为三个阶段:预训练、多任务预训练和有监督微调(SFT)。

在这里插入图片描述

下面通过表格的形式整理一下不同阶段的设置:

是否训练视觉编码器是否训练适配器是否训练大语言模型(实际构造的)训练任务数据量数据类型
预训练×captioning1.4B图文对
多任务预训练captioning、VQA、(ref) grouding (cap)、OCR、pure text gen76.8M图文交错
SFT×instruction multimodal SFT350K图文交错

注意:

  • 数据方面,qwen-vl 做了很多数据清洗,在预训练阶段洗掉了 70%+ 的数据,具体清洗流程在文章附录中。

  • 训练任务的形式都是自回归文本生成的形式,通过构造不同的训练数据来进行不同的任务训练。

  • 预训练阶段的输入图像分辨率是 224,后面两个阶段扩增至 448

  • 在第三阶段,现有的多模态指令微调一般是单图的,qwen-vl 收集了多图的图文交错的指令微调数据

  • 经过前两个阶段之后的模型称为 qwen-vl,经过第三阶段 SFT 之后的模型称为 qwen-vl-chat。

总结

qwen-vl 相比于之前的 VLM 最大的亮点是加入了 grouding、OCR 这类更细粒度的、更有视觉特色的任务,而不只是简单的图片理解 VQA。并且 qwen-vl 很好地支持了图文交错的形式。笔者体验下来,目前来说,qwen-vl 是中文开源多模态大模型中最好的了。

  • 20
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值