多模态大模型

文章详细介绍了Qwen-VL模型,其基于大型语言模型,使用ViT架构和视觉语言适配器。模型经过预训练、多任务预训练和监督微调,强调视觉优先的核心思想。CogVLM通过优化视觉编码器和适应器,提供更强大的图像理解和文本生成能力。
摘要由CSDN通过智能技术生成

Qwen-VL

模型架构

  • Large Language Model: Qwen-VL adopts a large language model as its foundation component. The model
    is initialized with pre-trained weights from Qwen-7B
  • Visual Encoder: The visual encoder of Qwen-VL uses the Vision Transformer (ViT) (Dosovitskiy et al., 2021)
    architecture, initialized with pre-trained weights from Openclip’s ViT-bigG
  • 位置感知视觉语言适配器:为了缓解由长图像特征序列引起的效率问题,Qwen-VL引入了一个视觉语言适配器,用于压缩图像特征。该适配器包括一个单层交叉注意模块,随机初始化。
    • 该模块使用一组可训练向量(嵌入)作为查询向量query,并将来自视觉编码器的图像特征作为交叉注意操作的Key。这种机制将视觉特征序列压缩到固定长度的256。
    • 为了对细粒度图像进行理解并保留位置信息,Qwen-VL 在交叉注意机制的Query-Key对中加入了2D绝对位置编码,以减轻在压缩过程中可能出现的位置细节丢失。长度为256的压缩图像特征序列随后被送入大型语言模型进行处理。

在这里插入图片描述
Qwen-VL模型架构有三部分构成:

Vision Encoder:
采用Openclip’s ViT-bigG的预训练权重

Position-aware Vision-Language Adapter:

  • 对图像特征进行压缩
  • 一组可学习的query向量(KV),和图像特征(Q)做CrossAttention
  • CrossAttention中采用2D绝对位置编码(QK),来减少潜在位置信息的损失

LLM:
Qwen-7B的基座模型
在这里插入图片描述


Input & Output

  • 图像输入: and 分割图像,且支持多张图片

  • 包围框输入和输出:为了增强模型对细粒度视觉理解和定位的能力,Qwen-VL的训练包括区域描述、问题和检测的数据形式。与涉及图像文本描述或问题的传统任务不同,这项任务需要模型准确理解并生成指定格式的区域描述。对于给定的边界框,应用规范化处理(在范围[0, 1000]内)并转换为指定的字符串格式:“(Xtopleft, Ytopleft),(Xbottomright, Ybottomright)”。该字符串被标记为文本,不需要额外的位置词汇。

  • 为了区分检测字符串和常规文本字符串,在边界框字符串的开头和结尾分别添加两个特殊标记(< box >和< /box >)。

  • 此外,为了适当将边界框与其对应的描述性词或句子进行关联,引入了另一组特殊标记(< ref>和< /ref>),标记边界框所指的内容。

三阶段 - Pre-training

  • 数据:1.4 billion data remain, with 77.3% English (text) data and 22.7% Chinese (text) data,图像数据下采样224 x 224
  • 模型:冻住LLM,只训练vision encoder和VL adapter
  • 训练目标:对文本的token计算CE loss,Next Token Predict?

三阶段 - Multi-task Pre-training

  • 数据:高质量的image-text pair标注数据,图像上采样448 x 448
  • 模型:在ViT中融合了window attention 和 global attention,VIT和LLM一起训练(整个模型都训练)
  • 训练目标:对文本的token计算CE loss,Next Token Predict?

三阶段 - Supervised Fine-tuning

  • 数据:
    • 人工标注的caption data or dialogue data
    • mix multi-modal and pure text dialogue
    • 350K的 instruction tuning data
  • 模型:freeze the visual encoder and optimize the language model and adapter
    module

训练目标

目前的理解:

输入(image,text)随机初始化一组可学习的Query和image做CrossAttention,学习图像中的信息,然后和文本一起拼接后送入LLM ,模型输出预测的文本向量,和原本输入的文本向量计算CE Loss

CogVLM

核心思想:

  • CogVLM 核心的思想是“视觉优先”。之前的多模态模型通常都是将图像特征直接对齐到文本特征的输入空间去,且图像特征的编码器通常较小,图像可以看成是文本的“附庸”,效果有限。
  • CogVLM在多模态模型中将视觉理解放在更优先的位置,使用5B参数的视觉编码器和6B参数的视觉专家模块,总共11B参数建模图像特征,甚至多于文本的7B参数量。

四个组件:

  • ViT encoder:EVA2-CLIP-E
  • MLP Adapter:两层MLP(SwiGLU),将ViT输入映射到与词嵌入文本特征相同的空间
  • 适配任何预训练GPT-Style大语言模型:Vicuna-7B-V1.5
  • 视觉专家模块:发现Shallow Alignment效果不好(如BLIP-2,LLaVA等),存在幻视问题,但是联合训练如会影响LLM的NLP能力(PALI,Qwen-VL,PALM-E),于是提出LLM每层添加一个视觉专家模块,由QKV矩阵和MLP组成,实现视觉-语言特征深度融合

在这里插入图片描述

预训练

  • 数据集:image-text pair 开源数据集:LAION-2B and COYO-700M,数据清洗后还剩1.5B
    构造40M visual grounding 数据集:利用spaCy提取名词,然后用GLIPv2(目标检测模型)进行预测,数据来源是LAION-115M

Stage 1

  • 利用image captioning loss(自回归损失)来进行训练,1.5B数据,bs 8192,120k的iterations
    得到的是base model(1.5B数据)

Stage 2

  • 利用Referring Expression Comprehension( REC是根据图片的文本描述得到物体的边缘框坐标信息)和image captioning混合训练,bs 1024, 60k iterations, 最后30k把图片分辨率从224提升到490得到CogVLM Grounding Model

监督微调

  • 数据:LLaVA-Instruct(人工校正),LRV-Instruction,LLaVAR和内部数据集,一共500k个VQA
  • 训练:bs 640,lr 10-5, 8k steps,LLM的lr更小(10%)
Monkey 多模态模型是由阿里云开发的一种大型预训练模型。它采用了多模态学习技术,能够同时处理文本、图像、语音等多种形式的数据,并从中提取出丰富的特征信息。这种模型设计使得它在多种需要跨模态理解的任务上展现出较高的性能。 ### 驱动原理与优势: 1. **统一表示学习**:通过深度学习架构,Monkey 模型能够将不同模态的信息映射到共享的高维空间中,便于后续任务如分类、生成等操作。 2. **端到端学习**:基于强化学习或自监督学习机制,模型可以自动从数据中学习最优策略或表示,无需大量人工标注数据,提高了训练效率和泛化能力。 3. **大规模预训练**:通常,多模态模型会利用大规模未标记数据进行预训练,这有助于模型在各种下游任务中快速适应和获得良好的性能。 4. **高性能应用**:在诸如问答系统、智能推荐、视觉描述生成、语言理解和生成等多个领域,多模态模型展现了强大的处理能力和创新的应用潜力。 ### 实现与应用: - **问答系统**:结合文本理解和图像检索功能,提供更为精准的问题解答服务。 - **智能推荐**:融合用户的历史行为、喜好及实时情境信息,给出个性化的产品或内容推荐。 - **视觉描述生成**:对图像或视频进行描述,帮助视障人群理解多媒体内容,或用于辅助教育场景中的故事讲述。 - **自然语言处理**:提升机器翻译、情感分析、对话系统等任务的准确性和流畅度。 --- ### 相关问题: 1. **如何评估 Monkey 大模型的效果?** 2. **多模态模型与其他类似模型相比有何独特之处?** 3. **如何优化多模态模型的训练过程以提高其性能?**
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值