news 2026/6/9 3:36:02

学习周报:视觉大模型

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
学习周报:视觉大模型

一、大模型技术概览:从LLM到视觉大模型

1.1 什么是大语言模型

大语言模型(Large Language Model,LLM)是基于海量文本数据训练的深度学习模型,它不仅能生成自然语言文本,还能深入理解文本含义,处理文本摘要、问答、翻译等各种任务。大家熟悉的GPT-3.5、GPT-4、文心一言、通义千问都属于LLM的范畴。

LLM的本质逻辑其实很简单——单字接龙。给它任意一段上文,模型会根据学习到的规律不断生成下一个字。比如输入“我”,它可能生成“是”;输入“我是”,它可能生成“一”。模型把自己生成的下一个字和之前的上文组合成新的上文,不断重复这个过程,就能生成任意长度的回答。

1.2 大语言模型的训练三阶段

LLM的训练分为三个阶段,这也是OpenAI在GPT系列中验证过的成熟范式:

阶段一:无监督预训练。给模型海量的学习资料让它自学,掌握语言的表达规律。这里又分为语言模型预训练(预测下一个单词的概率)和掩码语言模型预训练(根据上下文预测被Mask掉的单词)。GPT-1使用了5GB数据,GPT-2用了40GB,GPT-3则达到了45TB的规模,而GPT-4的数据量更是超过了100TB。

阶段二:有监督微调。让模型学习人类整理好的规范问答数据,通过梯度下降等优化算法调整模型权重和偏置,使模型学会如何回答一个问题。

阶段三:强化学习(RLHF)。这是一个巧妙的设计——训练一个奖励模型(Reward Model),对同一问题的不同回答进行打分排序,然后用PPO等算法更新模型参数,不断优化模型的问答质量。

1.3 视觉大模型的发展脉络

视觉大模型的发展很大程度上受NLP领域Transformer架构的启发——把图像特征当作NLP中的words来处理。当前主流的多模态大模型,如ChatGPT-4、Gemini、Claude、DeepSeek等,都采用了这种思路,利用LLM为各种多模态任务提供认知能力。

多模态大模型的核心挑战在于:不同模态的模型是分开预训练的,如何将它们连接起来实现协同推理?主流的解决方案是通过多模态预训练和多模态指令微调,实现模态之间的对齐,以及模型输出与人类意图的对齐。


二、Vision Transformer(ViT)深度解析

ViT是视觉大模型的重要基石,发表于2020年CVPR,由Google团队提出。论文标题很有意思——《An Image Is Worth 16x16 Words》,直观地道出了核心思想:把图像当成一句话来处理。

2.1 核心思想:把图像变成“句子”

ViT的核心理念是把一张图像切分成固定大小的patch(图像块),每个patch被视为NLP中的一个token,从而让Transformer架构能够直接处理图像数据。

用公式来表达:对于一张尺寸为H×W×CH \times W \times CH×W×C的图像,patch大小为ppp,那么可以得到N=HWp2N = \frac{HW}{p^2}N=p2HW个图像patches,表示为xp∈RN×(p2c)x_p \in R^{N \times (p^2 c)}xpRN×(p2c)。以ImageNet的224×224×3输入为例,取patch大小为16×16×3,每个patch的维度是768,patch数量为14×14=196,再加一个类别token,最终输入矩阵为197×768。

2.2 ViT的三大核心组件

(1)嵌入层(Embedding Layer)

嵌入层主要负责三个操作:图像切分、线性映射和位置编码。

  • 图像切分:将图像划分成N个patches。
  • 线性映射:每个patch是p2×Cp^2 \times Cp2×C的向量,通过一个线性映射层将其转换到指定的embedding维度,类似于NLP中的词向量。
  • 位置编码:Transformer本身是无序的,需要位置编码来记录各图像块之间的位置信息。ViT采用1-D位置编码,使用正弦和余弦函数生成。论文通过大量实验发现,使用一维位置编码还是二维位置编码在效果上几乎没有差别,网络都能很好地学习到位置信息,因此最终选择了实现更简单的一维编码方案。

(2)编码器(Encoder)

ViT的编码器与原始Transformer的Encoder基本一致,唯一的区别是ViT先进行层标准化(Layer Norm),再进入多头注意力层。编码器由L层堆叠而成,每层包含Multi-head Self-Attention和MLP,残差连接贯穿其中。激活函数方面,ViT使用了GELU(Gaussian Error Linear Unit)而非ReLU,GELU可以看作ReLU的平滑版本,在很多场景下表现更好。

(3)MLP头(MLP Head)

ViT中,整个图像的特征由添加的 [CLS] token 来代表(这也是借鉴了BERT的设计)。将这个 [CLS] token 提取出来,输入到MLP层进行分类。论文在ImageNet-21K上预训练时,MLP Head结构为Linear + tanh + Linear;但在迁移到下游数据集时,只需要用一个简单的Linear层即可完成分类。

2.3 ViT的模型规模

ViT论文给出了三种不同规模的模型:

模型Patch SizeLayersHidden SizeMLP SizeHeadsParams
ViT-Base16×161276830721286M
ViT-Large16×16241024409616307M
ViT-Huge14×14321280512016632M

从实验结果来看,在JFT-300M这样的大规模数据集上预训练后,ViT-Huge在ImageNet上达到了88.55%的准确率,在ImageNet ReaL上达到90.72%,在CIFAR-10上更是达到了惊人的99.50%,全面超越了当时最优的CNN模型BiT-L(ResNet152x4)。

2.4 微调中的关键问题:位置编码插值

在实际应用中,微调(fine-tune)是非常重要的一环。预训练的ViT模型是强大的特征提取器,我们可以用它输出的特征去做更多下游任务,比如细粒度分类、目标检测等。

但是这里有一个技术细节:ViT在预训练时使用的是可学习的位置编码,位置编码的数量和输入patch数量是严格绑定的。假设预训练时使用224×224的图像,patch size=16,得到196个patches;但在fine-tune时,为了捕捉更多细节,我们往往使用更高分辨率的图像,比如384×384。这时patch数量激增到24×24=57624×24=57624×24=576个,加上[CLS] token,就需要577个位置向量。

如何解决这个问题?答案是2D插值。通过双线性插值(Bilinear Interpolation)将预训练的位置编码矩阵扩展到目标尺寸,这种方式是ViT高分辨率微调中的标准做法,timm库已经内置了自动处理机制。

2.5 ViT的优势与局限

ViT相比传统CNN的优势在于:全局感受野。CNN受限于卷积核大小,本质上只能捕捉局部特征,需要堆叠很多层才能让信息传播到整个图像。而ViT通过自注意力机制,在第一层就能建立全局的像素关联,更适合处理需要全局理解的图像任务。

不过ViT也有明显的局限。研究综述指出,现代CNN在资源受限的环境中仍然非常有竞争力,ViT的优势需要在大规模预训练的前提下才能充分发挥。换句话说,如果训练数据量不足,ViT的效果可能不如精心设计的CNN。这也是为什么DINO这类自监督预训练方法备受关注——它们可以帮助ViT更好地利用无标签数据。


三、多模态大模型与自监督学习补充

3.1 CLIP:打通视觉与语言的桥梁

CLIP(Contrastive Language-Image Pre-training)是OpenAI提出的跨模态预训练模型,通过在数十亿图文对上进行对比学习,首次系统性地构建了统一的文本–视觉跨模态语义空间。

CLIP的核心理念非常巧妙:文本编码器和图像编码器分别将文本和图像映射到同一个语义空间,然后通过对比学习拉近匹配图文对之间的距离,推远不匹配图文对之间的距离。预训练完成后,CLIP具备强大的零样本分类能力——只需要给出类别文本描述,模型就能直接对图像进行分类,无需任何微调。

CLIP如今已被广泛应用于跨模态检索、多模态大模型(VLLM)以及文生图扩散模型等前沿系统中。2025年,智能所团队更进一步提出了RankCLIP,将训练目标从CLIP的“配对判断”升级为“排序学习”,构建图像与文本之间的全局排序分布,该工作已入选ICCV 2025。

3.2 DINO:无标签自监督学习的突破

DINO(Self-Distillation with No Labels)是自监督视觉学习的里程碑工作,首次验证了在没有标签数据的情况下也能通过知识蒸馏框架学习到高质量的特征表示。

DINO的核心是教师-学生架构:学生模型从教师模型那里“蒸馏”知识,教师模型本身又是由学生模型通过指数移动平均更新而来的。通过这种方式,模型可以在无标签数据上自我迭代、不断进化。2023年推出的DINOv2进一步优化了架构设计,引入了动态特征聚合机制。而最新的DINOv3则在10亿级图像数据集上采用教师-学生架构进行特征蒸馏,引入注意力对齐损失函数,使得冻结的骨干网络能够准确复现教师模型的特征分布。

对于开发者来说,DINOv2/V3最实用的价值是:它提供了一个“开箱即用”的视觉编码器。加载预训练的DINO模型作为特征提取器后,你可以方便地用少量标注数据完成下游任务,数据效率远高于从头训练。

3.3 主流多模态大模型一览

当前主流的多模态大模型生态已基本成型:

模型名称发布者特长
ChatGPTOpenAI综合能力
GeminiGoogle DeepMind多模态融合
ClaudeAnthropic编程能力
LLaMAMetaNLP基础能力
DeepSeek深度求索综合/推理
Qwen阿里问答/NLP

2025年,这一领域出现了新的技术趋势。商汤开源了原生多模态架构NEO,仅用十分之一的训练数据就能追平甚至超越传统旗舰模型。智谱AI推出的GLM-4.5V视觉推理模型在42个多模态榜单中斩获了41项SOTA。可以预见,多模态大模型的竞争正从“规模竞赛”转向“效率竞赛”,如何在更少的数据和计算资源下获得更强的能力,将成为未来的主战场。


四、总结

回顾这一周的学习,我梳理出一条清晰的技术演进路径:

  • ViT是视觉和Transformer结合的基础,用patch代替words,让Transformer架构能够处理图像。
  • CLIP通过图文对比学习实现了跨模态对齐,在零样本场景下表现惊艳。
  • DINO利用知识蒸馏和自监督学习,让模型在无标签数据上高效学习特征。

这三者环环相扣:ViT提供了图像token化的基础,CLIP打通了视觉与语言的对齐,DINO解决了标签依赖的问题,共同构成了视觉大模型的基石。目前,轻量化ViT(如TinyNeXt)和原生多模态架构正成为新的研究热点。视觉大模型这个领域还有很多值得探索的空间,我也会继续保持学习、持续输出。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 3:35:00

你的STM32代码安全吗?实测ST-LINK Utility的读写保护与解除(防抄板指南)

STM32代码安全实战:从读写保护到防逆向工程的全方位防护策略在嵌入式产品开发中,代码安全往往是最容易被忽视却又是最致命的一环。我曾亲眼见证一个团队花费半年心血研发的智能家居控制器,在量产上市三个月后就被竞争对手完整复制&#xff0c…

作者头像 李华
网站建设 2026/6/9 3:28:22

告别连接失败:解决RT-Thread下LWIP的sockets与netconn差异问题

深度解析RT-Thread与LWIP整合中的sockets连接故障在嵌入式网络开发中,LWIP作为轻量级TCP/IP协议栈被广泛使用,而RT-Thread作为国产实时操作系统也日益流行。但当两者结合时,开发者常会遇到一个诡异现象:使用标准BSD sockets API总…

作者头像 李华
网站建设 2026/6/9 3:28:21

Redis分布式锁进阶第三十二篇

一、本篇前置衔接 第九十二篇我们完成Redisson源码拆解、手写复刻、底层内核穿透,彻底明白分布式锁代码层、脚本层、线程层原理。到此为止,代码、源码、坑点、运维、监控、面试全部讲透。但很多开发最大的困惑依旧存在:不同体量公司为什么锁架…

作者头像 李华
网站建设 2026/6/9 3:28:18

JD_AutoComment:京东自动评价脚本深度解析与实战指南

JD_AutoComment:京东自动评价脚本深度解析与实战指南 【免费下载链接】jd_AutoComment 自动评价,仅供交流学习之用 项目地址: https://gitcode.com/gh_mirrors/jd/jd_AutoComment JD_AutoComment是一个基于Python开发的智能评价生成系统,专门用于…

作者头像 李华