qwenvl 以及qwenvl 2 模型架构理解

qwenvl 模型理解:

最近正好在做qwenvl 总结记录一下qwenvl 以及qwenvl2模型的架构,本文主要聚焦模型架构和训练技术,其他内容后面有涉及再补

注意:要了解qwenvl 2需要先理解qwenvl ,因为qwenvl 2文章明确提到qwenvl 2的架构是和qwenvl保持一致的

由于我主要关注模型架构,因此读论文的时候读完摘要直接看model architecture

qwenvl

架构图

qwenvl架构很简单,就是三个部分:

  • QwenLM: 作为Qwen-VL模型的基础组件,这个部分采用了一个大型语言模型,其初始权重来自于预训练的Qwen-7B模型。

    如果大家看一下代码的话,这个模型的结构和经典的llamma等大模型没什么区别

  • ViT: 在训练和推理过程中,输入图像被调整到特定的分辨率。视觉编码器通过将图像分成14步的小块来处理图像,生成一组图像特征。

  • Position-aware Vision-Language Adapter:

    为了缓解长图像特征序列带来的效率问题,Qwen-VL引入了一个压缩图像特征的视觉语言适配器。该适配器包括一个随机初始化的单层交叉注意模块。该模块使用一组可训练向量(Embeddings)作为query向量,并使用视觉编码器的图像特征作为交叉注意操作的关键。该机制将视觉特征序列压缩为256的固定长度。

qwenvl 2

文章作者明确了基础架构和qwenvl一样,主要有三个地方不同:

  • 朴素动态分辨率:

    引入 Naive Dynamic Resolution 机制,用 2D - RoPE 替代绝对位置嵌入,可处理任意分辨率图像并转换为不同数量视觉标记,减少高分辨率图像信息损失,推理时控制序列长度和视觉标记数量。

    Qwen2-VL 在架构上的一个关键改进是引入了朴素动态分辨率支持(Dehghani 等人,2024)。与 Qwen-VL 不同,Qwen2-VL 现在能够处理任意分辨率的图像 ,并将其动态转换为数量可变的视觉标记。为支持这一特性,我们对 ViT 进行了修改,移除了原来的绝对位置嵌入,并引入了 2D - RoPE来捕捉图像的二维位置信息。在推理阶段,不同分辨率的图像被打包成一个单一序列,通过控制打包长度来限制 GPU 内存使用。此外,为减少每个图像的视觉标记数量,在 ViT 之后使用一个简单的 MLP 层将相邻的 2×2 个标记压缩为一个标记,并在压缩后的视觉标记的开头和结尾放置特殊的 <|vision_start|> 和 <|vision_end|> 标记。因此,一张分辨率为 224×224、使用 patch_size = 14 的 ViT 编码的图像,在进入 LLM 之前会被压缩到 66 个标记。(224*224 / 14 / 14 / 2 / 2 =64, 64 + 2=66)

  • M - RoPE(Multimodal Rotary Position Embedding,多模态旋转位置嵌入)

    将旋转嵌入分解为时间、高度和宽度分量,有效编码多模态输入位置信息,提升模型对长序列的处理能力。

    这是 Qwen2 - VL 模型中的一项重要创新技术,主要用于有效编码多模态输入的位置信息,在提升模型性能方面发挥关键作用。

    结构与原理:与传统大语言模型(LLMs)中仅能编码一维位置信息的 1D - RoPE 不同,**M - RoPE 将原始旋转嵌入分解为三个分量,即时间、高度和宽度。**在处理文本输入时,其各分量利用相同的位置 ID,此时功能上等同于 1D - RoPE。而处理图像时,每个视觉标记的时间 ID 保持恒定,高度和宽度分量则依据标记在图像中的位置分配不同 ID。对于视频(视为帧序列),时间 ID 会随每一帧递增,高度和宽度分量的 ID 分配模式与图像相同。当模型输入包含多种模态时,每个模态的位置编号通过在前一模态的最大位置 ID 上加 1 进行初始化。

    优势与作用:在性能表现上,通过实验验证,在多个下游任务中,如与 1D - RoPE 对比,M - RoPE 能取得更优结果,尤其在视频基准测试中优势明显。它能够更精准地捕捉多模态数据中不同元素的位置关系,使模型对图像和视频内容的理解更为准确。在视频理解任务中,能更好地识别视频中物体的运动轨迹、相对位置等信息。在模型的长序列处理能力方面,M - RoPE 有助于降低图像和视频的位置 ID 值,从而使模型在推理过程中能够更好地外推到更长的序列,有效提升了模型对复杂多模态数据的处理能力和泛化能力,进一步增强了 Qwen2 - VL 模型在多模态任务中的竞争力。

    下面是M - RoPE的结构图

  • 统一的图像和视频理解:Qwen2-VL 采用了包含图像和视频数据的混合训练方案,确保在图像理解和视频理解方面的熟练程度。为了尽可能完整地保留视频信息,我们以每秒两帧的频率对每个视频进行采样。此外,我们集成了深度为 2 的 3D 卷积(Carreira 和 Zisserman,2017)来处理视频输入,使模型能够处理 3D 管而不是 2D 块,从而使其能够在不增加序列长度的情况下处理更多的视频帧。为保持一致性,将每幅图像视为两个相同的帧。为了在长视频处理的计算需求和整体训练效率之间取得平衡,我们动态调整每个视频帧的分辨率,将每个视频的标记总数限制为 16384。这种训练方法在模型理解长视频的能力和训练效率之间达成了平衡。

相关推荐
白光白光6 小时前
大语言模型训练的两个阶段
人工智能·机器学习·语言模型
fengchengwu20128 小时前
langchain4j集成QWen、Redis聊天记忆持久化
redis·langchain·qwen·聊天记忆持久化
大模型最新论文速读16 小时前
在Text-to-SQL任务中应用过程奖励模型
数据库·人工智能·sql·深度学习·语言模型·自然语言处理
明明跟你说过16 小时前
深入理解Embedding Models(嵌入模型):从原理到实战(下)
人工智能·语言模型·embedding
modest —YBW17 小时前
Ollama+OpenWebUI+docker完整版部署,附带软件下载链接,配置+中文汉化+docker源,适合内网部署,可以局域网使用
人工智能·windows·docker·语言模型·llama
知来者逆21 小时前
AI 在模仿历史语言方面面临挑战:大型语言模型在生成历史风格文本时的困境与研究进展
人工智能·深度学习·语言模型·自然语言处理·chatgpt
洁洁!1 天前
从零开始在亚马逊云科技 EC2上部署DeepSeek R1大语言模型:完整实战指南
服务器·科技·语言模型
一点.点1 天前
SafeDrive:大语言模型实现自动驾驶汽车知识驱动和数据驱动的风险-敏感决策——论文阅读
人工智能·语言模型·自动驾驶
concisedistinct1 天前
如何评价大语言模型架构 TTT ?模型应不应该永远“固定”在推理阶段?模型是否应当在使用时继续学习?
人工智能·语言模型·大模型
银河以北呀1 天前
通过推测搜索加速大型语言模型推理 (SpecSearch) 论文总结
人工智能·语言模型·论文笔记