一、引言

当大语言模型(LLMs)进入消费市场时,人人都想分一杯羹。然而随着时间的推移,我们开始渴望超越单纯的语言建模能力。视觉是首个被攻克的模态领域之一,这使得大量视觉语言模型(Vision Language Models,VLMs)涌向市场。

若我问你:"我已经学会了从零构建LLM模型,现在想为其融入视觉能力。你认为我应该如何入手?这里给出两大类方向:

  • 从头训练同时支持语言和视觉的模型(原生多模态模型 - NMMs)

  • 利用预训练LLM并为其添加视觉模块(预训练LLM+视觉模块)

由于NMMs的复杂性,多模态领域早期研究主要采用第二种路径。

在探讨该领域最新进展之前,让我们先简要分析这两种方法。

二、原生多模态大模型

本文将聚焦讨论"早期融合(Early Fusion)"模型,并将NMMs定义为对所有模态共享统一离散标记空间的模型。

基于上述定义,我们可以排除VisualBERT(2019)、Flamingo(2022)、PaLI(2022)等早期多模态模型(因其架构设计不符合严格的原生多模态标准)。

根据我们的标准,Meta发布的Chameleon(2024)被认为是首个真正的原生多模态模型,其设计理念直接推动了Llama 4、Gemini 2.5等后续模型的涌现。

图片

Chameleon大体沿用了Llama-2的架构,但进行了关键性优化:

  • 激活函数改用SwiGLU

  • 位置编码采用RoPE技术

然而,由于softmax函数的平移不变性特征,Llama架构也导致Chameleon出现了逻辑偏移(logit drift)问题。虽然本文不深入探讨其完整优化流程(如多模态对齐、动态批处理策略等),但对模型实验细节感兴趣的读者可研读Chameleon论文,了解Meta团队如何在训练稳定性与性能间取得精妙平衡。

既然我们的目标是基于现有LLM构建多模态模型,接下来将重点解析第二种实现路径。

三、预训练大语言模型+视觉模块

有多种方法可以将 LLM 与视觉模块融合,但最常见的方法是 LLaVA 论文中展示的那种。让我们看看它是如何工作的。

图片

图像通过视觉编码器进行处理,然后投影到词嵌入空间。请注意,这个投影矩阵是一个可训练的张量。这个编码器模型可以是任何东西——就像 LLaVA 论文中的 CLIP,或者 ViT(因为大多数近期论文都使用它)。

视觉编码器的权重始终是冻结的,而投影矩阵和语言模型的参数在训练期间会被更新。

在不涉及任何技术细节的情况下,让我们看看训练是如何进行的。

假设你和你的助手一起在艺术画廊里,你们看到了一幅20世纪初的作品,你想了解更多关于这幅作品的信息。幸运的是,你的助手对这幅作品了如指掌,于是你们开始以多轮对话的形式交流(你提问,助手回答)。你的助手会观察这幅作品,并将信息存储在他们的记忆中。之后,整个对话会保持连贯性,每一个问题都能得到恰当的回答。在LLaVA架构中,生成答案的工作由最终的语言模型完成。

这可以重新想象为以最大似然估计的方式进行训练,如下所示:

图片

这种方法的局限性

虽然这种训练方式效率很高,但依赖外部视觉模型也存在一些缺点。

  • 图像分辨率限制:大多数视觉编码器在训练时采用固定分辨率,这限制了模型能处理的图像灵活性。

  • 串行工作流程:由于数据是线性传递的,语言模型必须等待视觉编码器完成处理才能开始执行,导致效率受限。

四、Vision as LoRA

VoRA提出了一种创新方案——不再依赖外部视觉模型,也不干扰预训练大语言模型(LLM)的原有知识,而是仅微调LoRA适配器(用于视觉上下文)和一个图像嵌入层。换句话说,LoRA适配器就是模型的"视觉参数"。

图片

在预训练阶段,VoRA允许前N(vit)层内的所有线性层(包括QKV投影和FFN)都配备LoRA层。

预训练完成后,LoRA参数可以无缝集成到LLM块中,从而消除任何推理时的额外开销。

图片

该论文中最有趣的一点是从预训练的 ViT 模型中进行知识蒸馏。因此,对于 LLM 的前 N(vit) 层,视觉隐藏状态与相应 ViT 模型中的隐藏状态对齐。这有两大好处:

  • 加速训练,因为视觉知识不是从头开始整合的。

  • 只更新 LoRA 参数,而不是一个完整的投影层。

模型的训练目标可以分解为两个部分:蒸馏损失和语言建模损失。

  • 蒸馏损失函数——计算投影后的LLM特征与ViT嵌入的余弦相似度。

  • 语言建模损失函数——采用交叉熵损失函数。

这两种损失结合在一起,形成最终的训练目标。

注意:这篇论文也是最早讨论视觉模态中双向注意力机制的研究之一,它对最终模型产生了积极的影响。

虽然仍处于早期阶段,VoRA在构建不仅仅是VLM,还可能包括各种多模态大模型(如音频、视频、3D图像等)方面展现出巨大的潜力。通过解耦不同模态的参数,避免了对特定模态参数的依赖,我们可以节省大量训练时间,并有望未来出现更小的VLMs 。

五、AI大模型学习路线

如果你对AI大模型入门感兴趣,那么你需要的话可以点击这里大模型重磅福利:入门进阶全套104G学习资源包免费分享!

这份完整版的大模型 AI 学习和面试资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

这是一份大模型从零基础到进阶的学习路线大纲全览,小伙伴们记得点个收藏!

请添加图片描述
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

100套AI大模型商业化落地方案

请添加图片描述

大模型全套视频教程

请添加图片描述

200本大模型PDF书籍

请添加图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

LLM面试题合集

请添加图片描述

大模型产品经理资源合集

请添加图片描述

大模型项目实战合集

请添加图片描述

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐