Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

8.2.1 视觉编码器:CNN / ViT / 预训练视觉 backbone 使用方式

在 VLA 模型中,视觉编码器的任务不是“给一张图打个标签”那么简单,而是要把来自相机的高维像素压缩为对决策最有用的表征:既要包含物体类别、空间布局、可抓取区域等语义信息,又要在实时性和算力约束下高效运行。典型做法是选取成熟的视觉 backbone(ResNet、ViT 等),在其输出特征基础上接入后续的多模态与决策模块。

【图 8-2-1 占位:CNN 与 ViT 作为视觉编码器的对比示意图。左:ResNet 结构示意(卷积 + 残差块 + 特征金字塔);右:ViT 结构示意(图像切成 patch,加入位置编码后送入 Transformer)。】

8.2.1.1 卷积网络 CNN

卷积神经网络(CNN)依靠“局部感受野 + 权重共享”的结构,在图像分类、检测、分割等任务上长时间占据主流地位,很多经典的视觉 backbone(如 VGG、ResNet、EfficientNet 等)都属于这一范畴。(PMC)

在具身智能场景中使用 CNN 时,重点在于理解“它产出的特征张量能为机器人决策提供什么信息”:

  • 层级特征与语义抽象 底层卷积核往往学习到边缘、角点等局部纹理;中层逐渐组合成轮廓、部件;高层则对应整物体或复杂结构。对机器人而言:
    • 中低层特征有利于几何对齐(如抓取点回归、物体边缘检测);
    • 高层特征则承载“这是一个杯子/抽屉/门把手”这类语义。
  • 残差网络 ResNet 的 backbone 角色 ResNet 通过残差连接显著减轻了深层网络的梯度消失问题,成为大量检测与分割网络的标准 backbone,如 Faster R-CNN、Mask R-CNN 等。(아무블로그) 对于机器人应用而言常见选型是:
    • ResNet-18 / 34:较浅,延迟低,适合嵌入式部署和高控制频率场景;
    • ResNet-50 / 101:表征能力更强,适合复杂场景或云端推理。
  • 空间分辨率与特征金字塔 Backbone 通常通过步长为 2 的卷积或池化层逐步下采样,最终 feature map 的空间分辨率较低。对于需要精确抓取点的任务,单一低分辨率特征往往不够,需要:
    • 使用特征金字塔(FPN)融合不同尺度特征;
    • 或从 backbone 中间层(stride 较小的 feature map)读取特征,用于精细的像素级预测(可抓取检测、位姿估计等)。
  • 机器人场景下的工程折中 在 VLA 系统中,视觉编码通常是端到端 pipeline 最重的一环。需要根据硬件限制进行折中:
    • 控制周期较高(>10 Hz)时优先选择浅层 backbone 或减小输入分辨率;
    • 对场景变化不剧烈的任务,可降低视觉更新频率(如每 3–5 步更新一次视觉),中间时间步依赖预测或低维状态。

实践中,一个典型的“CNN 视觉编码器”实现是:相机图像缩放到固定尺寸(如 224×224),送入预训练的 ResNet,截取某一层的特征(如 C3/C4/C5),做全局平均池化得到一个固定维度的视觉 embedding,作为后续多模态 Transformer 的视觉 token。

8.2.1.2 视觉 Transformer ViT

Vision Transformer(ViT)提出直接把图像切分为固定大小的 patch,将每个 patch 映射为向量,加上位置编码后送入标准 Transformer Encoder,从而完全抛弃卷积运算。(arXiv)

其关键思想是:“把图像当成序列”,让 self-attention 在所有 patch 之间建模全局关系。这种设计天然与语言、动作 token 的建模方式兼容,非常利于构建统一的多模态 Transformer 架构(在 8.5 节会进一步讨论)。

ViT 作为 VLA 视觉编码器时有以下特点:

  • 全局建模能力强 self-attention 可以在任意两个 patch 之间建立直接联系,不受卷积感受野限制。这对需要理解大范围关系的任务尤其有利,例如:
    • 判断目标物体与障碍物的相对位置;
    • 理解“桌面整体整洁程度”这类全局属性。(arXiv)
  • 对大规模预训练依赖更强 原始工作表明,ViT 在数据量不足时容易过拟合,需要在大规模数据(如 ImageNet-21K 或更大的私有数据集)上预训练,然后再在中小规模数据上微调。(arXiv) 对于机器人领域这种数据昂贵的场景,这反而与“强预训练 + 轻微调”的趋势高度契合。
  • token 粒度与决策接口 ViT 输出通常包括:
    • 全局 [CLS] token:可视作整幅图的压缩语义,用于与语言 embedding 对齐;
    • 所有 patch token:可在 cross-attention 中作为“可被指令聚焦的视觉记忆”,例如根据语言“红色杯子”在 patch token 上做注意力聚焦。
  • 计算开销与部署 ViT 的复杂度与 token 数量成二次方增长,分辨率越高、patch 越小,计算越重。实际 VLA 系统常选:
    • 中等规模模型(如 ViT-B/16);
    • 较大的 patch 大小(16 或 32 像素)以减少 token 数;
    • 或使用分层结构的视觉 Transformer(如 Swin Transformer)兼顾局部归纳偏置和全局建模能力。(MDPI)

对于想构建“一个 Transformer 统一处理视觉、语言、动作”的读者而言,选择 ViT 或其变种作为视觉 backbone,会在结构上带来极大便利。

8.2.1.3 预训练骨干使用

在具身智能中,“从零训练一个视觉编码器”几乎没有现实意义:机器人真实数据极其昂贵,且采集环境有限,如果不加约束,很容易过拟合某个特定实验室、某几件物体。因此,合理使用预训练视觉 backbone 是 VLA 系统设计中的核心共识。

常见的预训练来源包括:

  1. 监督预训练(ImageNet 等)
    • ResNet、ViT 等在 ImageNet-1K、ImageNet-21K 上进行分类预训练,学习到通用的视觉语义特征。(arXiv)
    • 这类模型在许多下游任务中表现良好,是最常用的初始化方式。
  2. 自监督预训练(MAE 等)
    • Masked Autoencoder(MAE)等方法通过随机遮挡图像 patch、让模型重建缺失区域,学习高质量视觉表征,而无需人工标签。(arXiv)
    • 自监督模型在迁移到各种视觉任务时往往比纯分类预训练有更好的泛化性,尤其适合与机器人多样环境结合。
  3. 多模态预训练(CLIP 图像塔)
    • CLIP 使用大规模图文对数据,通过对比学习共同训练图像编码器和文本编码器,使两者对齐到同一语义空间。(arXiv)
    • 其图像塔(可以是 ResNet 或 ViT)已经学会“用自然语言描述世界”,在 VLA 中使用这样的 backbone 能显著提升“看懂指令所说之物”的能力。

使用预训练 backbone 时有几种典型策略:

  • 冻结 backbone,只训练顶层投影/决策网络 适用于数据较少时,最大限度保留预训练知识,缺点是无法针对特定机器人场景做细致适配。
  • 部分解冻:只微调高层 把低层特征看作通用的边缘纹理,高层特征根据机器人任务进行微调,是实际工程中最常见的折中方案。
  • 全量微调 仅在具备大量机器人视觉数据或强正则化时使用;否则容易导致“灾难性遗忘”,把通用视觉知识破坏掉。

【图 8-2-2 占位:预训练视觉 backbone 在 VLA pipeline 中的使用方式:左侧为相机图像流,经 backbone 变为特征;右侧连接多模态 Transformer 与动作解码头。】

在后续章节中,我们会多次强调:视觉 backbone 的选择和微调策略,往往决定了一个 VLA 系统在“看得懂世界”这件事上能走多远。


8.2.2 语言编码器:LLM 或轻量文本编码器

语言编码器负责把自然语言指令、环境描述、安全约束等文本信息变成向量形式,使之可以与视觉特征融合并指导动作生成。与纯 NLP 任务不同,机器人场景的语言往往简短(命令式)、结构清晰,但对细节和歧义极其敏感,例如“轻轻地把玻璃杯放到桌子角落”。

因此,本节重点不在于重新讲解 Transformer 原理,而是讨论:在具身智能系统中,如何选用合适的语言编码器,并与视觉、动作模块对接。

8.2.2.1 大型语言模型作为编码器

BERT 及后续的一系列大型 Transformer 语言模型证明,通过在海量文本上进行自监督预训练,可以得到极强的语义表征能力。(arXiv) 随着参数规模和数据量持续增大,现代 LLM(GPT 系列、PaLM、LLaMA 等)已经具备丰富的世界知识和强大的推理能力。

在 VLA 框架中,LLM 通常以两种方式参与:

  1. 作为“冻结的文本编码器”
    • 给定一条指令,将其 tokenize 后输入 LLM,提取:
      • [CLS] 或特殊位置的向量;
      • 或所有 token 向量的平均/加权和;
    • 得到的句子 embedding 作为后续多模态 Transformer 的语言条件。大量工作表明,使用 BERT 类模型的上下文化 embedding 可显著优于静态词向量。(ACL Anthology)
    • 在这种设置下,LLM 的参数往往被冻结,仅在上方加一层小型投影网络适配当前任务。
  2. 作为“高层规划器/解释器”
    • 更进一步,可以让一个对话式 LLM 接收环境摘要(视觉描述、当前状态)和人类指令,输出结构化的子任务列表或符号计划,然后由下游 VLA 模型执行。
    • 这属于“LLM + 具身控制器”的层次化架构,本节不展开细节,但需要读者意识到:即便 LLM 不直接输出关节命令,其强大的语言理解与推理能力仍然可以在宏观层面塑造机器人行为。

LLM 作为编码器的优点是明显的:对复杂长指令、模糊描述、指代现象(“把它放回原处”)等有更好的理解;并且可以利用其世界知识补足训练数据中没有明说的常识(如“玻璃杯易碎,动作要慢”)。代价则是:

  • 参数量巨大,推理延迟高(尤其是云端部署时还要加上网络延迟);
  • 很难在机器人本体有限算力上直接部署全尺寸模型;
  • 安全与可控性需要额外设计(将在第 10 章讨论)。

因此,实际系统中常采用“离线或远程 LLM 负责高层规划 + 本地小模型负责实时控制”的混合方案。

8.2.2.2 轻量级文本编码

与大型语言模型相比,小型 Transformer 编码器(如 DistilBERT、ALBERT、MobileBERT 等)通过知识蒸馏和结构压缩,在保持大部分语义能力的同时,显著降低了参数量与推理延迟。(Hugging Face)

在机器人场景中,这类模型非常适合用作“在线指令编码器”:

  • 性能与效率折中 例如 DistilBERT 通过在预训练阶段对 BERT 进行知识蒸馏,参数量减少约 40%,但在多种 NLP 任务上仍保留约 97% 的性能。(arXiv) 对于指令长度通常不长的 VLA 任务,这样的性能完全足够。
  • 专用句向量模型 Sentence-BERT 等“句子 Transformer”直接以“句子相似度”为优化目标,输出的 embedding 更适合距离度量与检索,也非常适合将语言指令编码为一个定长的语义向量,在多模态空间中与视觉 embedding 对齐。(sbert.net)
  • 领域内微调与蒸馏 一种常见策略是:
    • 先用大模型(LLM)对机器人指令数据做离线标注或生成“伪标签”(例如对指令进行语义解析);
    • 再将这些信号蒸馏到一个小型文本编码器上,使其在本领域指令上表现接近大模型;
    • 部署时仅保留小模型,兼顾性能与实时性。

对于想在真实机器人上本地运行 VLA 的读者,小型 Transformer 编码器 + 适度微调,往往是比直接调用 LLM 更务实的起点。

8.2.2.3 子词级别处理

无论是大模型还是小模型,现代神经语言模型几乎都采用子词(subword)级别的分词方案,而不是传统的“空格切词”。这样做的原因包括:

  • 新词、拼写变体、混合语言非常常见;
  • 机器人指令里常出现大量“物体名 + 型号 + 符号”(如“drawer_3”“箱子A-2”);
  • 单纯按词分割会导致词表巨大且 OOV(未登录词)严重。

Byte Pair Encoding(BPE) 是最常用的子词分词算法之一,最初源自数据压缩,后被引入神经机器翻译和语言建模。其基本过程是从字符级词表出发,迭代地将频繁共现的 token 对合并为新的子词单元,直到词表达到预设大小。(Data Science Dojo)

Google 提出的 SentencePiece 则进一步将 BPE 和 unigram 语言模型封装为一个“语言无关的子词分词工具”,可以直接在原始句子上训练分词器,不依赖预分词。(arXiv)

在 VLA 语言编码模块中,子词分词带来以下工程影响:

  • 指令数据的准备
    • 通常直接使用预训练模型自带的 tokenizer(BPE / SentencePiece),而不是自己重新分词;
    • 如果机器人任务涉及大量专业名词或物体别名,可以在训练 tokenizer 时把这些词加入“用户词表”,避免被拆得过碎。
  • 跨语言与混合输入
    • 对中文、日文等不以空格分词的语言,子词方法可直接在字符/字节级进行建模;
    • 对“中英混杂”的指令同样适用,对于具身任务中常见的“英文编号 + 中文描述”的情况尤为方便。
  • 与多模态对齐的稳定性
    • 物体名称、动作名等重要 token 的切分若不稳定,会给图文对齐带来噪声;
    • 实践中常对这类 token 使用一致的格式(如 <OBJ_cup>)、或在分词器中锁定其为单一 token,以获得稳定的语义锚点。

【图 8-2-3 占位:语言编码示意图。左:原始文本指令;中:经 BPE/SentencePiece 分词得到 token 序列;右:经 Transformer 编码获得句向量和 token 向量。】


8.2.3 对齐视觉与语言特征空间的方法(投影层、对比训练)

当视觉编码器和语言编码器分别输出特征向量后,下一步问题是:如何把这两种模态“放进同一个语义空间”,从而支持:

  • 以文找图、以图找文;
  • “指令聚焦”到图像中的相关区域;
  • 在统一 Transformer 中同时处理视觉、语言、动作 token。

本节介绍三类常见对齐方式:投影层、对比训练、共享 Transformer。

8.2.3.1 投影层

投影层(projection head)是紧接在视觉/语言编码器之后的小网络,一般由 1–2 层线性层或小型 MLP 组成,其作用包括:

  • 将不同编码器输出的特征统一到相同维度(例如都映射到 512 或 1024 维向量空间);
  • 施加适当的归一化(LayerNorm、L2 归一化),便于用点积或余弦距离衡量相似度;
  • 引入极少量可训练参数,使得下游任务可以“调整”预训练特征而不破坏 backbone。

在 CLIP 中,图像编码器和文本编码器各自后接一个线性投影层,并对输出向量进行 L2 归一化,从而将两者对齐到同一单位球面上。(arXiv) 在此基础上,可以直接用内积作为相似度,进行对比学习。

对 VLA 来说,投影层还有几种常用扩展:

  • 模态特定投影 + 共享多模态空间 不同机器人、不同相机可以各自有一套视觉投影层,但共享语言投影层和后续决策模块,从而在“对齐空间”中抽象掉硬件差异。
  • 将机器人状态注入投影层 对于视觉特征,可以在投影时拼接当前机器人状态(关节角、夹爪开合等),让特征更接近实际可操作性(例如同一图像下,伸手前/伸手后看到的场景语义略有不同)。

设计时的经验原则是:保持 backbone 尽量通用,把领域特定的适配集中在小而灵活的投影层中。

8.2.3.2 对比训练

投影层只是几何上的“对齐”,要真正让视觉与语言在语义上对齐,通常需要对比学习(contrastive learning)作为训练目标。

CLIP 的训练方式是典型代表:(arXiv)

  • 给定一个 batch 的图文对 \(\displaystyle (I_i, T_i)\),分别通过图像编码器和文本编码器 + 投影层得到向量 \((v_i, t_i)\);
  • 计算所有图像–文本向量之间的相似度矩阵 \(S_{ij} = \langle v_i, t_j \rangle\);
  • 对每一行、每一列分别做 softmax 和交叉熵,使得:
    • 正确配对 \(\displaystyle (I_i, T_i)\) 的相似度最大;
    • 其他“错配”作为负例,被拉远。

这种 InfoNCE 风格的对比损失在实践中非常有效地学习到了图文对齐的语义空间,支持零样本分类、跨模态检索等能力。(维基百科)

在 VLA 预训练中,对比学习可以以多种方式使用:

  • 互联网图文数据上的 CLIP 式预训练 先用大规模图文对训练基础视觉–语言对齐,再将该空间与机器人动作空间衔接。这一步更多是“通用语义”层面的学习。
  • 机器人示教数据上的任务级对比 利用指令–视觉–轨迹三元组构造正/负样本:
    • 正样本:能成功完成某指令的轨迹起始帧与该指令;
    • 负样本:同一帧配上其他不相关指令,或同一指令配上失败/不相干场景; 通过对比损失强化模型对“哪种视觉场景对应哪种任务意图”的辨别能力。

工程上,需要注意对比学习对 batch size、温度参数等非常敏感:

  • batch 越大,负例越丰富,训练信号越强;
  • 温度参数控制相似度的“锐度”,过大或过小都会影响收敛;
  • 可以通过 hard negative mining 选取语义上接近但错误的图文对作为负例,提升模型判别能力。

8.2.3.3 共享 Transformer

与双塔(dual-encoder)结构中“先各自编码、再对齐”的思路不同,共享 Transformer 直接把视觉 token 和语言 token 拼接成一个长序列,送入统一的 Transformer 中进行 self-attention,从而在内部同时完成融合与对齐。

这类结构是许多视觉–语言模型(VLM)的基础:将图像 patch token(来自 CNN feature map 或 ViT)、语言 token 一并输入,让每个 token 可以对任意其他 token 建立注意力连接。

优点包括:

  • 自然的跨模态交互 无需显式设计对齐损失,注意力机制会自动学习“哪个语言 token 应该关注哪些视觉 token”,例如指令中的“红色杯子”会在图像中激活对应区域。
  • 表达能力更强 单一 Transformer 可以同时为视觉和语言建模高阶组合关系,适合复杂推理任务,如多步操作计划、视觉问答等。相关工作表明,基于 Transformer 的视觉编码在足够数据条件下可以达到或超过传统 CNN。(MDPI)
  • 易于扩展到动作 token 在 VLA 中,还可以进一步将动作 token 加入序列,实现“视觉–语言–动作”统一建模,这在 8.5 节会系统化地抽象。

缺点则主要是计算开销:视觉 token 数量远多于语言 token,长序列 self-attention 的复杂度为 \(O(n^2)\),必须通过 patch 下采样、稀疏注意力、分块注意力等方式控制成本。

【图 8-2-4 占位:特征对齐结构对比图。左:双塔结构(独立图像/文本编码器 + 投影 + 对比学习);右:共享 Transformer 结构(视觉/语言 token 拼接输入统一 Transformer)。】


8.2.4 时间维度处理:多帧图像、视频编码器的设计

机器人不是在看静态照片,而是在不断从视频流中感知世界。抓取、插拔、开门、跟随等操作都隐含了明确的时间顺序和动力学过程:物体是否已经被握紧?抽屉是不是已经完全打开?前方障碍物是在远离还是靠近?单帧图像往往不足以回答这些问题。

因此,VLA 模型在视觉编码阶段必须考虑时间维度。本节介绍从简单到复杂的几类设计。

8.2.4.1 视频输入需求

从任务角度看,可大致区分两类:

  • 准静态任务 如“从桌面抓起红色方块”,环境变化缓慢,单帧图像足够决策,只需偶尔更新视觉即可。
  • 强时序任务 如“旋开瓶盖”“把抽屉慢慢关上”“沿着人移动的方向跟随”,需要理解连续状态变化、物体速度和接触顺序,仅依靠当前帧容易模糊任务进度。

视频输入能够为模型提供:

  • 运动信息:物体速度、方向、是否滑动、是否即将跌落;
  • 交互阶段:如夹爪是否已经接触物体、有无碰撞、是否松手;
  • 相机/机器人自身运动:在移动机器人或手眼相机场景中尤为重要。

在系统实现上,视频输入还受到帧率、带宽和算力 限制:

  • 视觉编解码和神经网络推理本身占用大量时间;
  • 控制环路不能因“等视觉”而严重阻塞;
  • 常见做法是:
    • 只保留最近 \(\displaystyle K\) 帧(例如 2–8 帧)作为时序窗口;
    • 或者对视频做时间下采样(每隔若干帧取一帧);
    • 对于高频控制,视觉更新频率通常低于控制频率。

随着专用视频 Transformer(如 TimeSformer)和自监督视频模型(如 VideoMAE)的发展,直接使用视频 backbone 进行时空特征编码正成为趋势。(arXiv)

8.2.4.2 多帧图像编码

多帧编码可以从非常朴素的方案做起,再逐步演进到复杂的视频 Transformer。

  1. 多帧堆叠 + 2D CNN(早期融合) 最简单的方式是将最近 \(\displaystyle K\) 帧图像在通道维度上堆叠,例如将 3×H×W 的 RGB 图像变为 \(3K \times H \times W\),然后交给标准 2D CNN 处理。卷积核在通道维的线性组合会捕捉到帧间差分,从而隐式利用时间信息。
    • 优点:无需改动 backbone 结构,可直接复用现有的 2D CNN 权重(在某种程度上);
    • 缺点:时间维度被混合在通道维中,很难捕捉长距离依赖,对“动作阶段”的理解有限。
  2. 3D 卷积与时空 CNN 3D 卷积在 \(\displaystyle (t, h, w)\) 三个维度上卷积,可直接建模局部时空体积,是传统视频动作识别中的主力工具。相比堆叠多帧,3D Conv 明确区分了时间与空间维度,对短时间窗口内的运动(如抓取瞬间的对准、物体滑动)建模更准确。在机器人场景中,3D CNN 常用于:
    • 对几百毫秒尺度的动作阶段做精细分类(接近、抓取、提起、放置);
    • 建立视觉与动作之间更紧密的定时关系。
  3. 时序 Transformer / 视频 Transformer 近年来的 TimeSformer 等工作把 Transformer 直接用于视频:将每一帧划分为 patch,并在空间和时间上统一做 self-attention,或采用“空间注意力 + 时间注意力分离”的分解结构,以降低计算复杂度。(arXiv)
    • 空间注意力负责捕捉同一帧内的空间关系;
    • 时间注意力建模不同帧之间的状态演化;
    • 对于需要长期动作理解的任务(如人类演示的长视频)尤其有用。

在 VLA 中,一个务实的路线是:

  • 入门阶段:使用“多帧 2D CNN + 简单时序池化”(例如对每帧特征做平均或拼接,再输入决策 Transformer);
  • 进阶阶段:引入 3D CNN 或视频 Transformer 作为视觉 backbone,把“时间理解”尽可能下沉到视觉编码层。

【图 8-2-5 占位:多帧图像编码结构对比图。上:多帧堆叠 + 2D CNN;中:3D CNN 时空卷积;下:TimeSformer 风格的时空注意力结构。】

8.2.4.3 隐状态记忆

即便使用了多帧视频编码,模型看到的时间范围仍然有限。而机器人任务往往跨越数十秒甚至数分钟,仅依靠固定长度的视频窗口难以捕捉完整上下文。因此,决策模块还需要一个跨时间步的隐状态记忆(hidden state / memory)

典型方案包括:

  1. RNN / GRU / LSTM 上接视觉特征 在每个控制周期,将视觉编码器输出的向量(或向量序列)送入一个轻量 RNN(如 GRU 或 LSTM),其隐状态在时间上递归更新:

    \[ h_t = \mathrm{GRU}(x_t, h_{t-1}) \]

    • 优点:实现简单、计算稳定,适合作为 CNN/ViT 之后的“时序头”;
    • 缺点:对极长序列的建模能力有限,梯度传播容易衰减。
  2. Transformer 的 KV-cache 记忆 对于基于自回归 Transformer 的 VLA 模型,可以采用与 LLM 推理相同的 KV-cache 技术:

这种做法具备:

代价是显存随历史长度线性增长,需要定期“截断上下文”或对旧信息做压缩。

  • 在时间步 \(\displaystyle t\),将视觉 token、语言 token、历史动作 token 组成输入序列,通过 Transformer 得到当前输出;
  • 同时缓存每一层的 Key/Value;
  • 在时间步 \((t+1)\) 时,仅追加新的 token,复用已有 KV,从而在意义上保留了完整历史。
  • 强大的长程依赖建模能力;
  • 与大模型推理的工程栈兼容(同一套优化工具可用于机器人推理)。
  1. 显式记忆槽与摘要 为了避免 KV-cache 无节制膨胀,可以设计显式记忆槽(memory slots)或状态摘要:
    • 通过一个小网络将若干步历史视觉–动作信息压缩成固定维度的摘要向量;
    • 将摘要作为额外 token 输入决策 Transformer,代替全部历史原始 token;
    • 对于长时间任务(例如“打扫整个房间”),这样的摘要可以记录“已清扫区域”“已搬运物体”等高层状态。

在具身系统中,隐状态记忆的设计还与控制频率与 episode 管理 紧密关联:

  • 视觉更新频率低于控制频率时,隐状态必须在视觉未更新的时间段内继续演化,预测“环境近似连续”的变化;
  • 每次任务开始时要正确重置记忆,避免“上一次任务的残留状态”干扰当前决策;
  • 对多机器人/多环境训练,需要在记忆中显式编码当前机器人 ID、环境 ID,以免跨环境信息污染。

从长远看,“隐状态记忆”与第 12 章将讨论的世界模型和长序列建模 紧密相关。未来的具身基础模型很可能会把“视频编码器 + 记忆网络”统一视为一个长序列模型,在几分钟甚至更长时间跨度内,端到端地建模视觉、语言和动作的相互作用。

【图 8-2-6 占位:时间维度与隐状态记忆示意图。左:摄像头连续帧经视觉编码器得到特征序列;中:RNN/Transformer 维护隐状态;右:隐状态影响当前动作输出。】


通过本节的内容,读者应该对 VLA 中“看”和“听”的前端结构有了完整图景: 用 CNN 或 ViT 作为视觉 backbone;用 LLM 或轻量 encoder 作为语言模块;通过投影层和对比学习对齐跨模态特征;再在时间维度上用视频编码与隐状态记忆把片段连成故事。 在此基础上,下一节(8.3)将转向“如何把这些感知结果真正解码成可执行的动作”,完成从“看懂/听懂”到“做对”的关键一跳。