news 2026/6/16 4:58:59

神经网络与深度学习——第五周课程总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
神经网络与深度学习——第五周课程总结

1. 视觉大模型与多模态大模型

1.1 大模型技术概述

大模型通常具有参数规模大、训练数据多、任务适应能力强等特点。它不再只面向单一任务,而是希望通过大规模预训练获得更通用的表示能力,再通过微调或指令对齐适应具体任务。

在自然语言处理领域,大语言模型通过海量文本学习语言规律,能够完成问答、翻译、摘要和代码生成等任务。这种“预训练 + 下游适配”的思想,也成为视觉大模型和多模态大模型的重要基础。

1.2 大语言模型与 ChatGPT 训练

大语言模型通常先进行无监督预训练,常见目标包括语言模型预训练和掩码语言模型预训练。前者学习根据已有上下文预测下一个词,后者学习根据上下文恢复被遮挡的词。

预训练之后,模型还需要进一步对齐人类期望。监督微调通过人工标注的问答数据,让模型学会按照指令生成回答;奖励模型则用于评价模型输出质量,并为后续强化学习优化提供反馈。通过这一过程,模型不仅学习语言统计规律,也逐渐学习“什么样的回答更符合人类偏好”。

1.3 多模态大模型

多模态大模型希望同时处理文本、图像、语音等信息。与单一模态模型相比,它需要解决不同模态之间的表示对齐问题,例如让图像中的视觉对象与文本中的词语、短语或句子建立对应关系。

多模态模型的发展说明,深度学习正在从单任务、单模态系统走向更通用的基础模型。视觉不再只是分类、检测或分割中的输入,而是可以和语言模型结合,用于图文检索、图像描述、视觉问答和跨模态生成等任务。

2. Vision Transformer 概述

2.1 ViT 的基本思想

ViT(Vision Transformer)将 Transformer 引入图像分类任务。传统 CNN 依赖卷积核提取局部空间特征,而 ViT 的核心思路是把图像切分为一系列 patch,并把这些 patch 当作类似 NLP 中 token 的序列输入 Transformer Encoder。

这种做法把图像处理转化为序列建模问题。每个 patch 对应一个视觉 token,Transformer 通过自注意力机制建模不同 patch 之间的关系。相比 CNN 的局部卷积,ViT 更直接地利用全局注意力捕捉图像中远距离区域之间的联系。

2.2 ViT 整体结构

ViT 的整体流程可以概括为:先将输入图像划分为固定大小的 patch,再把每个 patch 线性映射为向量;随后加入类别 token 和位置编码,输入 Transformer Encoder;最后取类别 token 对应的输出,送入 MLP Head 完成分类。

ViT 主要包括 Embedding 层、Transformer Encoder 和 MLP Head。Embedding 层负责把二维图像转换为 token 序列,Transformer Encoder 负责提取全局特征,MLP Head 则根据类别 token 的最终表示输出分类结果。

3. ViT 输入与编码器

3.1 Patch Embedding

ViT 首先将输入图像切分为 patch 序列。假设输入图像大小为H × W × C H\times W\times CH×W×C,patch 大小为P × P P\times PP×P,则 patch 数量为:
N = H W P 2 N=\frac{HW}{P^2}N=P2HW

每个 patch 展平后维度为P 2 C P^2CP2C,再通过线性映射变为D DD维 token 向量。以224 × 224 × 3 224\times224\times3224×224×3图像和16 × 16 16\times1616×16patch 为例,图像共有14 × 14 = 196 14\times14=19614×14=196个 patch,加入类别 token 后序列长度为 197。

Patch Embedding 的意义在于,它把图像从二维网格结构转换为 Transformer 能处理的一维 token 序列。这个过程类似 NLP 中将词映射为词向量,只是这里的“词”变成了图像 patch。

3.2 位置编码

由于 Transformer 本身不包含卷积或循环结构,如果只输入 patch 向量,模型无法知道每个 patch 在原图中的位置。因此 ViT 需要加入位置编码,使模型能够区分不同空间位置。

ViT 中通常使用可学习的位置编码,将其与 patch embedding 相加后输入 Transformer Encoder。一维位置编码和二维位置编码的差异在于:一维位置编码实现简单,二维位置编码更符合图像空间结构,但在输入尺寸变化时需要处理插值问题。

3.3 Transformer Encoder

ViT 的编码器与标准 Transformer Encoder 类似,主要由层归一化、多头自注意力、MLP 和残差连接组成。其计算形式可以概括为:
z 0 = [ x c l a s s ; x p 1 E ; x p 2 E ; … ; x p N E ] + E p o s z l ′ = M S A ( L N ( z l − 1 ) ) + z l − 1 z l = M L P ( L N ( z l ′ ) ) + z l ′ y = L N ( z L 0 ) \begin{aligned} z_0&=[x_{class};x_p^1E;x_p^2E;\dots;x_p^NE]+E_{pos}\\ z_l'&=MSA(LN(z_{l-1}))+z_{l-1}\\ z_l&=MLP(LN(z_l'))+z_l'\\ y&=LN(z_L^0) \end{aligned}z0zlzly=[xclass;xp1E;xp2E;;xpNE]+Epos=MSA(LN(zl1))+zl1=MLP(LN(zl))+zl=LN(zL0)

其中x c l a s s x_{class}xclass是类别 token,x p i x_p^ixpi表示第i ii个 patch,E EE是线性映射矩阵,E p o s E_{pos}Epos是位置编码,M S A MSAMSA表示多头自注意力,L N LNLN表示层归一化。自注意力负责建模不同 patch 之间的关系,残差连接和层归一化则有助于稳定深层 Transformer 的训练。

4. MLP Head、结果与微调

4.1 MLP 层与 GELU 激活函数

ViT Encoder 后通常接 MLP Head 完成分类。类别 token 经过 Transformer Encoder 后包含整张图像的全局信息,因此可以作为图像级表示送入分类头。

ViT 中的 MLP 层常使用 GELU 激活函数。GELU 与 ReLU 类似,都是非线性激活函数,但形式更加平滑:
G E L U ( x ) = x Φ ( x ) GELU(x)=x\Phi(x)GELU(x)=xΦ(x)

其中Φ ( x ) \Phi(x)Φ(x)是标准正态分布的累积分布函数。GELU 在 Transformer 结构中使用较多,有助于提高模型表达能力和训练效果。

4.2 ViT 结果与模型规模

ViT 有 Base、Large、Huge 等不同规模版本,主要差异体现在 patch size、层数、隐藏维度、MLP 维度、注意力头数和参数量上。模型越大,表达能力越强,但训练所需的数据和计算资源也越多。

ViT 在足够大规模预训练数据上可以取得很好的分类效果,甚至超过传统 CNN;但在较小数据集上,ViT 未必天然优于 CNN。这说明 ViT 的性能高度依赖大规模数据和充分预训练。

4.3 微调与输入尺寸问题

预训练后的 ViT 可以通过微调适应下游任务。微调通常在较小数据集上进行,模型先加载预训练参数,再根据具体任务更新部分或全部参数。

ViT 微调时会遇到输入尺寸变化问题。预训练时图像可能使用固定大小和固定 patch 数量,而下游任务可能使用不同分辨率,此时位置编码长度可能不匹配,需要进行插值。二维位置编码插值就是为了解决不同输入尺寸下的位置编码迁移问题。

5. CLIP 与 DINO

5.1 CLIP

CLIP(Contrastive Language-Image Pretraining)是一种通用视觉语言模型。它利用大量图像和文本描述进行对比学习,使图像编码器和文本编码器输出到同一个语义空间中。训练目标是让匹配的图像文本对更接近,不匹配的图像文本对更远离。

CLIP 的重要意义在于,它不只学习固定类别的图像分类器,而是学习图像和自然语言之间的对应关系。这样模型可以通过文本提示完成开放词表分类、图文检索等任务。

5.2 DINO 与自监督学习

DINO 是一种自监督视觉表征学习方法。它通常采用教师网络和学生网络结构,让学生网络学习教师网络在不同视图下的输出,从而获得不依赖人工标签的视觉表示。

与传统监督学习依赖类别标签不同,DINO 利用图像自身的不同增强视图构造训练信号。模型需要在不同裁剪、尺度或增强条件下保持语义一致,从而学到更通用的视觉特征。DINO 说明,视觉大模型不仅可以依靠大规模标注数据,也可以通过自监督学习从未标注图像中获得有效表示。

5.3 从 ViT 到视觉大模型

ViT 可以看作 Transformer 从文本序列向视觉任务的扩展。它将图像 patch 组织成 token 序列,使 Transformer 能够处理视觉任务;CLIP 进一步把视觉表示和语言表示对齐;DINO 则展示了不依赖人工标签的自监督视觉学习方式。

这几部分共同说明,视觉大模型的发展核心不只是网络结构变大,更重要的是表示方式、训练数据和训练目标发生变化。图像可以被看作 token 序列,图像与文本可以进入统一语义空间,模型也可以通过自监督或对比学习获得更通用的视觉表示。

6. 具身智能与机器人系统

6.1 具身智能的基本概念

传统互联网人工智能主要依靠文本、图像、语音等数据,在虚拟空间中完成识别、生成或问答任务;具身智能则强调智能体具有具体的身体或执行载体,能够通过传感器感知环境,并通过动作与真实世界发生交互。

具身智能的核心是形成“感知—认知—规划—行动—反馈”的闭环。智能体先通过视觉、听觉、触觉等多模态信息获得环境状态,再进行任务理解和决策规划,最后由机械臂、移动底盘等执行机构产生动作。动作会改变环境,新的环境反馈又会影响后续决策。因此,具身智能相比离身智能更强调物理约束、实时交互和连续决策。

机器人是具身智能的重要载体。一个完整的具身机器人系统通常包括感知模块、认知与决策模块、运动规划模块、控制执行模块和人机交互模块。感知模块负责获取环境信息,认知与决策模块负责理解任务目标并选择行动策略,运动规划和控制模块则把高层动作转化为可执行轨迹。

6.2 具身感知、仿真环境与 ALOHA

机器视觉是具身智能的重要入口。普通视觉任务更关注“图像中有什么”,而具身感知更关注“当前环境能做什么、下一步应该怎么做”。因此,机器人不仅要识别物体,还要判断物体位置、姿态、可操作区域以及动作可能带来的结果。主动视觉感知、三维视觉感知和视觉语言导航,都体现了视觉信息与行动决策之间的结合。

由于真实机器人实验成本高、风险大、数据采集速度慢,仿真环境在具身智能研究中非常重要。MuJoCo、Isaac Sim 和 Gazebo 更侧重物理仿真和机器人控制;AI2-THOR、Matterport3D、VirtualHome、SAPIEN、Habitat 和 iGibson 等平台更侧重真实或半真实场景中的感知、导航与交互任务。仿真环境能够降低实验成本、批量生成数据并评估算法泛化能力,但也存在 sim-to-real 问题,需要结合真实数据和实际部署进行验证。

ALOHA 是一种低成本、开源的双臂遥操作硬件系统,主要用于采集双臂操作数据并进行模仿学习。其中 ACT(Action Chunking with Transformers)通过一次预测一段未来动作序列,提高长时序操作的连贯性。Mobile ALOHA 在此基础上加入移动底盘,使机器人可以完成更大范围的移动操作任务,也体现了具身智能从固定桌面操作走向开放环境连续任务的趋势。

7. VLA 模型与 SmolVLA

7.1 VLA 模型与 OpenVLA

VLA(Vision-Language-Action)模型围绕机器人任务中的视觉、语言和动作三类信息展开。它的目标是将视觉观测和自然语言指令映射为机器人可执行的动作,使模型能够根据“看到的环境”和“听到的任务”直接产生行为。

与传统视觉语言模型相比,VLA 模型多了动作维度。视觉语言模型通常输出文本回答或语义判断,而 VLA 模型需要输出机械臂位姿、夹爪开合、移动速度等动作控制量。因此,VLA 模型不仅要理解图像和语言,还要适应机器人本体、动作空间和物理环境。

VLA 模型的组成可以概括为预训练模型、控制策略和任务规划等部分。视觉编码器负责提取图像或视频特征,语言模型负责理解任务语义,动作解码器或策略头负责生成具体动作。VLA 模型可以采用端到端策略、分层策略或代码式规划方法,但也面临机器人数据采集成本高、跨平台泛化困难、安全性和实时性要求高等挑战。

OpenVLA 是一个开源 VLA 模型,目标是构建通用机器人策略,使模型能够根据视觉观测和语言指令输出机器人动作。它通常以视觉编码器、大语言模型骨干和动作解码模块为核心结构,将图像特征与文本指令融合后生成动作表示。OpenVLA 的意义在于开放性和通用性,但较大规模模型也会带来推理速度、显存占用和部署成本方面的压力。

7.2 SmolVLA 与轻量化部署

SmolVLA 是轻量级 VLA 模型,核心目标是在资源受限的条件下实现机器人视觉语言动作控制。与较大规模的 VLA 模型相比,SmolVLA 更强调高效推理、低成本训练和实际部署可行性。它通常采用较小的视觉语言骨干,并结合动作专家或策略头生成机器人动作,通过视觉 token 压缩、轻量化主干和紧凑的动作建模,在性能与效率之间取得平衡。

传统 VLA 模型常采用同步执行方式:机器人等待模型根据当前观测生成动作,然后执行该动作,再等待下一次推理。这种方式在模型较慢时会降低控制频率。异步推理将模型预测和机器人执行解耦,使模型可以在机器人执行当前动作片段的同时预测后续动作,从而提高控制流畅性。

SmolVLA 的训练与 LeRobot 框架密切相关。LeRobot 提供了机器人数据集、训练脚本、策略接口和推理工具,使研究者能够完成从数据采集、数据可视化、模型训练到真实机器人部署的流程。机器人数据中常有失败轨迹、噪声动作和不一致示范,因此数据清洗、任务平衡和高质量示范筛选是提升策略效果的重要手段。

8. 世界模型

8.1 世界模型的核心思想

世界模型可以理解为智能体对外部世界运行规律的内部建模能力。它不仅记录当前状态,还要能够根据当前状态和动作预测未来状态,从而帮助智能体进行规划和决策。

可以用一个简化形式表示世界模型的预测过程:
S ^ t + 1 = f ( S t , A t ) \hat{S}_{t+1}=f(S_t,A_t)S^t+1=f(St,At)

其中,(S_t) 表示当前状态,(A_t) 表示智能体采取的动作,(\hat{S}_{t+1}) 表示模型预测的下一时刻状态。真实环境反馈会不断修正模型的内部表示,使智能体在“预测—行动—观察—更新”的闭环中逐步形成对世界的理解。

世界模型的重要性在于,它使智能体不必完全依赖试错。一个具备世界模型的机器人可以在执行动作前先预测可能结果,例如判断抓取某个物体是否会碰倒旁边物品,或者移动路径是否会与障碍物冲突。这种预测能力是具身智能从被动反应走向主动规划的关键。

8.2 表征式与生成式世界模型

世界模型可以分为表征式世界模型和生成式世界模型。表征式世界模型关注对世界结构、关系和规律的抽象表示,而不一定生成完整的视觉细节。心理模型、直觉物理引擎以及 World Models、DINO-World、V-JEPA 等工作,都体现了从观测中学习潜在状态表示,并在表示空间中预测未来的思想。

关于大语言模型与世界模型的关系。一种观点认为,语言模型通过自回归预测学习到了大量关于世界的统计规律,因此具有某种形式的世界模型;另一种观点则认为,语言模型主要从文本中学习模式,缺少直接物理交互和因果反馈,因此其世界模型是不完整的。

生成式世界模型更强调生成具体的未来场景或感知结果,例如根据当前画面和动作生成下一帧视频,或者构建可交互的虚拟环境。规则驱动的仿真系统可控性强、解释性好,但依赖人工建模;数据驱动的生成式世界模型能够从大规模视频、图像和交互数据中学习环境动态,但仍需要解决时序一致性、物理合理性、可控性和长期记忆等问题。

从整体上看,视觉大模型、多模态大模型、具身智能、VLA 模型和世界模型之间具有清晰的递进关系。ViT、CLIP 和 DINO 解决了视觉表示与跨模态对齐问题,具身智能进一步要求模型进入环境并产生动作,VLA 模型提供视觉、语言和动作之间的统一接口,而世界模型则为智能体预测未来、进行规划和提升泛化能力提供基础。

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

库管发货超重?新手学一个Python函数,自动算不返工

直面痛点:库管发货超重返工耗时间 在生活中,当库管把货装车后,跑运输时,才发现自己发货超重了,不得不返工卸车,否则就要面临罚款。我感觉这样真的是得不偿失!库管想:我的大把时间都…

作者头像 李华
网站建设 2026/6/16 4:55:54

Python两位小数处理:四舍五入、银行家舍入与decimal精度实战

1. 为什么“四舍五入到两位小数”这件事,远比你想象中更值得深挖 在Python里写 round(3.14159, 2) 得到 3.14 ,看起来简单得像呼吸——但如果你正在做财务系统、银行对账、电商价格计算、实验数据汇总,或者哪怕只是写一个给会计同事用的E…

作者头像 李华
网站建设 2026/6/16 4:53:57

华大九天EDA工具:国产芯片设计软件的核心价值与实战评估

1. 项目概述:从“卡脖子”到“中国芯”的基石最近几年,但凡关注科技领域的朋友,对“EDA”这个词一定不陌生。它就像芯片设计领域的“Photoshop”或“AutoCAD”,是工程师们将天马行空的电路构想,转化为可以实际制造的物…

作者头像 李华
网站建设 2026/6/16 4:53:04

本地跑大模型实战指南:LM Studio与Ollama避坑选型

1. 为什么“本地跑大模型”这件事,突然从极客玩具变成了刚需?去年冬天我帮一个做财税SaaS的客户做技术方案评审,对方CTO在会议室白板上画了个三层架构图:最上层是Web前端,中间是Java微服务,最底层赫然写着“…

作者头像 李华
网站建设 2026/6/16 4:51:50

彻底告懂 C++20 太空船运算符(<=>):一劳永逸的结构化比较艺术

在 C 开发中,编写一个自定义类(比如坐标点、时间戳、网络节点配置)并让它完美支持各种比较和排序,向来是一件机械、繁琐且极易出错的体力活。 如果你想让你的类能够顺畅地存入 std::map、能够使用 std::sort 排序,或者…

作者头像 李华
网站建设 2026/6/16 4:49:51

SGI-STL配置器allocator篇

SGI版本的STL其精髓之一就是空间配置器的实现&#xff0c;其余还有算法、适配器、容器。空间配置器根据申请内存大小的不同选择使用一级空间配置器&#xff08;__malloc_alloc_template<inst>&#xff09;还是二级空间配置器&#xff08;__default_alloc_template<thr…

作者头像 李华