神经网络与深度学习——课程第五周总结
本文基于《神经网络与深度学习》课程 PPT 整理,内容包含视觉大模型的技术脉络、核心架构与关键方法。
一、大语言模型(LLM):视觉大模型的源头
视觉大模型的核心思想源自自然语言处理(NLP)领域的大语言模型,理解 LLM 的基本原理是掌握视觉大模型的前提。
1.1 什么是大语言模型
大语言模型(Large Language Model, LLM)是基于海量文本数据训练的深度学习模型,不仅能生成自然语言文本,还能深入理解文本含义,完成文本摘要、问答、翻译等多种 NLP 任务。
-
典型代表:GPT-3.5/4、文心一言、通义千问、Claude、LLaMA 等。
1.2 LLM 的核心运作逻辑:单字接龙
LLM 的本质是基于上文预测下一个字的概率,所有生成内容都通过这一机制实现:
-
给定任意长度的上文,模型预测概率最高的下一个字;
-
将生成的字与原有上文拼接成新的上文,重复预测过程,即可生成任意长度的文本;
-
回答问题时,将问题本身作为上文的一部分,模型基于学习到的知识生成连贯回答。
1.3 LLM 的三阶段训练流程
现代大语言模型的训练分为三个核心阶段,这一范式也被广泛应用于多模态大模型:
-
无监督预训练:给模型输入海量无标注文本,让模型自学语言的表达规律。分为语言模型预训练(预测下一个单词)和掩码语言模型预训练(预测掩码位置的单词)两种方式。
-
有监督微调(SFT):在人类整理的规范问答数据集上训练,让模型掌握 “如何回答问题” 的格式和逻辑。
-
基于人类反馈的强化学习(RLHF):
-
训练奖励模型(RM):输入 [提示词,模型生成文本],输出文本质量的标量分数;
-
用 PPO 算法优化语言模型:根据奖励模型的打分更新模型参数,使输出更符合人类偏好。
-
1.4 GPT 系列模型演进
GPT 系列是大语言模型的典型代表,其规模和能力随参数量和训练数据量呈指数级增长:
| 模型版本 | 参数量 | 训练数据量 |
|---|---|---|
| GPT-1 | 1.17 亿 | 5G |
| GPT-2 | 15 亿 | 40G |
| GPT-3 | 1750 亿 | 45T |
| GPT-4 | 万亿级 | >100T |
二、多模态大模型技术:打通视觉与语言的桥梁
人类通过视觉、语言、声音等多种模态感知世界,多模态大模型的目标是让 AI 具备类似的跨模态理解与生成能力。
2.1 多模态大模型的核心思想
-
多模态模型 “外形多,内在统一”,均围绕基础模型(Foundational Model) 构建;
-
主流范式:利用已训练好的单模态基础模型(尤其是 LLM)提供认知能力,其他模态(视觉、音频)的基础模型提供高质量表征;
-
核心挑战:如何将不同模态的表征连接起来,实现模态对齐和协同推理。
2.2 多模态大模型发展历程
2022 年 Flamingo 模型开启了多模态大模型的爆发式发展,2023-2024 年涌现出大量优秀模型:
-
2022 年:Flamingo(DeepMind)奠定了多模态大模型的基础架构;
-
2023 年:BLIP-2、MiniGPT-4、LLaVA、GPT-4V、Qwen-VL 等模型相继发布,实现了图像理解、图文对话等能力;
-
2024 年:LLaVA-NeXT、Gemini 2.5、Intern-VL 2.0 等模型进一步提升了多模态理解的精度和效率,同时出现了面向视频、3D、文档的专用多模态模型。
2.3 主流多模态大模型对比
| 模型名称 | 发布机构 | 最新版本 | 核心特长 |
|---|---|---|---|
| ChatGPT | OpenAI(微软) | ChatGPT 4.5 | 综合能力最强 |
| Gemini | DeepMind(谷歌) | Gemini 2.5 Pro | 多模态综合能力突出 |
| Claude | Anthropic(AWS) | Claude 4.0 | 长文本处理、编程能力 |
| LLaMA | Meta | LLaMA 4.0 | 开源 NLP 能力标杆 |
| Qwen | 阿里巴巴 | Qwen 3 | 中文问答、多模态理解 |
| DeepSeek | 深度求索 | DeepSeek R1 | 推理能力、开源生态 |
三、视觉 Transformer(ViT):视觉大模型的基石
2020 年 Google 团队在 CVPR 发表《AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE》,首次将 Transformer 架构直接应用于图像识别任务,提出了 Vision Transformer(ViT),彻底改变了计算机视觉的发展方向。
3.1 ViT 的核心效果
经过大规模数据预训练后,ViT 的性能全面超越传统 CNN 模型:
-
在 ImageNet 数据集上,ViT-H/14 达到 88.55% 的准确率,超过 BiT-L(ResNet152x4)的 87.54%;
-
在 ImageNet Real、CIFAR-10/100、Oxford Flowers-102 等数据集上均取得 SOTA 结果;
-
训练效率更高:ViT-H/14 仅需 2.5k TPUv3-core-days,而 BiT-L 需要 9.9k TPUv3-core-days。
3.2 ViT 整体架构
ViT 的架构非常简洁,主要分为嵌入层、Transformer 编码器和MLP 头三部分:
-
嵌入层:将图像转换为 Transformer 可处理的 Token 序列;
-
Transformer 编码器:由多个相同的编码器块堆叠而成,提取图像的全局特征;
-
MLP 头:基于提取的特征完成图像分类等下游任务。
3.3 嵌入层:将图像变成 “一句话”
Transformer 的输入必须是 Token 序列,嵌入层的作用就是将 2D 图像转换为 1D 的 Token 序列:
-
图片切分:将输入图像 \(x \in R^{H×W×C}\) 划分为大小为 \(P×P\) 的不重叠 Patch。例如,224×224×3 的图像,Patch 大小为 16×16 时,共得到 \(14×14=196\) 个 Patch,每个 Patch 展平后维度为 \(16×16×3=768\)。
-
线性映射:通过一个线性层将每个 Patch 的维度映射到固定的隐藏维度 D,得到 Patch Embedding。
-
添加类 Token:在 Patch 序列前添加一个可学习的
class Token,最终用于代表整个图像的特征。此时序列长度变为 \(196+1=197\)。 -
添加位置编码:由于 Transformer 本身不具备位置感知能力,需要添加位置编码来保留 Patch 的空间信息。
-
公式: \(PE(pos, 2i)=sin \left(\frac{ pos }{10000^{\left(2 i / d_{model }\right)}}\right)\) \(PE(pos, 2 i+1)=cos \left(\frac{pos}{10000^{\left(2 i / d_{model }\right)}}\right)\)
-
实验证明:一维位置编码、二维位置编码和相对位置编码的效果几乎没有区别,因此 ViT 最终采用了最简单的一维位置编码。
-
3.4 Transformer 编码器
ViT 的编码器与标准 Transformer 编码器几乎完全相同,仅调整了层标准化的顺序(先 LN 后注意力):
-
层标准化(LN):对每个样本的特征进行归一化,稳定训练过程。
-
多头自注意力(MSA):计算每个 Token 与其他所有 Token 的注意力权重,捕捉图像的全局依赖关系。
-
MLP 层:由两个线性层和一个 GELU 激活函数组成,对每个 Token 的特征进行非线性变换。
-
GELU 激活函数公式: \(GELU(x)=x \Phi(x)\) 其中 \(\Phi(x)\) 是标准正态分布的累积分布函数。
-
ViT 编码器的计算流程: \(z_{0}=\left[ x_{class } ; x_{p}^{1}E;x_{p}^{2}E;\cdots ;x_{p}^{N}E\right] +E_{pos}\) \(z_{\ell}'=MSA\left(LN\left(z_{\ell-1}\right)\right)+z_{\ell-1}, \ell=1 ... L\) \(z_{\ell}=MLP\left(LN\left(z_{\ell}'\right)\right)+z_{\ell}', \ell=1 ... L\) \(y=LN\left(z_{L}^{0}\right)\)
3.5 MLP 头与分类任务
-
提取编码器输出的
class Token(即 \(z_{L}^{0}\)),输入到 MLP 头中进行分类; -
预训练阶段:MLP 头由 Linear + tanh + Linear 组成;
-
微调阶段:仅需一个 Linear 层即可完成下游分类任务,通过交叉熵损失训练。
3.6 ViT 模型变体与参数
Google 提出了三种不同规模的 ViT 模型,适用于不同的计算资源和任务需求:
| 模型 | Patch 大小 | 编码器层数 | 隐藏维度 D | MLP 大小 | 注意力头数 | 参数量 |
|---|---|---|---|---|---|---|
| ViT-Base | 16×16 | 12 | 768 | 3072 | 12 | 86M |
| ViT-Large | 16×16 | 24 | 1024 | 4096 | 16 | 307M |
| ViT-Huge | 14×14 | 32 | 1280 | 5120 | 16 | 632M |
3.7 ViT 的微调技巧
预训练好的 ViT 是强大的特征提取器,可通过微调适应各种下游任务(目标检测、分割等)。微调时需要注意输入分辨率不匹配的问题:
-
预训练时通常使用 224×224 的图像,微调时为了提升效果,常使用更高分辨率的图像(如 1024×1024);
-
保持 Patch 大小不变时,Token 序列长度会增加,而预训练的位置编码长度固定;
-
解决方案:对预训练的位置编码进行2D 插值,使其适配新的序列长度。
四、通用视觉语言模型 CLIP 与知识蒸馏 DINO
4.1 CLIP:跨模态对齐的里程碑
CLIP(Contrastive Language-Image Pre-training)是 OpenAI 提出的通用视觉语言模型,核心思想是通过大规模图像 - 文本对进行对比学习,实现视觉和语言的跨模态对齐。
-
预训练阶段:学习图像和文本的联合表征,使匹配的图像 - 文本对在特征空间中距离更近,不匹配的对距离更远;
-
优势:具备强大的零样本(Zero-Shot)能力,无需在下游数据集上微调,即可完成各种图像分类任务。
4.2 DINO:高效自监督学习
DINO(Self-Distillation with No Labels)是基于知识蒸馏的自监督学习方法,核心是利用教师模型指导学生模型学习,无需任何标注数据。
-
教师模型:由学生模型的指数移动平均(EMA)得到,提供更稳定的监督信号;
-
优势:能够高效地学习到鲁棒的视觉特征,在图像分类、目标检测等任务上取得了与监督学习相当的效果。
五、总结
视觉大模型的发展本质上是 NLP 大模型技术向计算机视觉领域的迁移与创新,其核心逻辑可以概括为:
-
视觉大模型源自 NLP,用图像 Patch 代替文本单词,将图像识别转化为序列建模问题;
-
ViT 是视觉大模型的基础架构,通过 Transformer 编码器捕捉图像的全局依赖关系,在大规模数据预训练下性能超越传统 CNN;
-
CLIP 通过图像 - 文本对比学习实现跨模态对齐,为多模态大模型奠定了基础;
-
DINO 利用知识蒸馏实现高效自监督学习,降低了视觉大模型对标注数据的依赖。
未来,视觉大模型将朝着更大规模、更强多模态能力、更高效率的方向发展,在自动驾驶、医疗影像、机器人等领域发挥越来越重要的作用。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)