单卡12GB训练本地VLA模型:用极简注意力视觉编码器替代预训练CNN

开发者用12GB显存的3060从零训练极简VLA,验证循环状态与原始像素注意力路线。
本文介绍了一位开发者在Reddit分享的反向VLA项目:在单张12GB显存的3060上从零训练视觉-语言-动作智能体,放弃预训练视觉骨干和云端算力,视觉编码器仅用状态导向注意力处理128×128原始RGB像素,核心是768×768带门控的循环状态矩阵。任务要求模型在推理时把随机生成的新形状与任意名字绑定而不更新参数,灵感来自2016年Learning to Reinforcement Learn论文。训练采用模仿学习,三房间场景的教师矛盾成为主要难点,成功率单房间超90%、两房间超80%、三房间超60%。开发者指出真正瓶颈是移动控制与训练器稳定性,并列出梯度爆炸、形状记忆歧义等已知问题。
当多数VLA(视觉-语言-动作)项目依赖预训练视觉骨干和云端算力时,一位开发者在Reddit上分享了自己的反向路线:在一张12GB显存的3060上,从零训练一个以循环状态为核心的VLA智能体,视觉编码器仅用最朴素的注意力机制实现。这个项目不是为了刷榜,而是一次关于“最少组件能走多远”的架构实验。

架构:把循环状态做大,把视觉编码器做小
模型的核心是一个维持768×768矩阵的注意力网络,每个单元带有类似LSTM的门控机制,整体思路偏向状态空间模型。总参数量约2556万,其中近半(约1298万)属于一个遗留的49k词表输出解码器——这部分来自早期语言建模阶段,在转向VLA任务后已不再保留文本输出能力,查询文本输入时只会无限重复一两个token。
视觉通路的处理方式是这个项目最特别的地方。模型直接在128×128分辨率的原始RGB像素上,通过可学习的、状态导向的注意力进行视觉处理,没有独立的预训练视觉编码器。视觉识别和空间理解与动作输出在同一套循环架构中一起学习。开发者解释,受限的算力是主因:他尝试过预训练CNN路线,但本地训练速度无法接受,而注意力视觉方案额外计算开销很小。副作用是视觉注意力值可以逐像素可视化,调试训练时反而成了顺手的工具。该编码器在推理时能接受可变分辨率,但通常只能大于训练时的128×128,更小的输入会丢失本就不多的细节。
VLA(视觉-语言-动作)模型:这类模型将视觉感知、自然语言指令和动作输出集成在同一个神经网络中,使智能体能够根据图像和文字指令生成动作。典型做法是使用预训练的视觉骨干(如CLIP或ResNet)提取图像特征,再与语言指令融合后输出动作。本文的反向路线则去掉了独立的预训练视觉编码器,让视觉处理与动作学习共享同一循环架构。
状态空间模型(SSM):一类用隐状态演化来描述序列的模型,核心是用递归更新代替注意力中的全序列两两比较,计算复杂度随序列长度线性增长。SSM 与 RNN 都维护循环状态,但 SSM 通常通过结构化参数化让状态更新更稳定、更易并行训练。本文采用带 per-cell 门控的循环状态矩阵,整体思路偏向 SSM,即用大容量隐状态承载记忆。
任务设计:在推理时学会新名字,而不是记住旧形状
目标任务的灵感来自2016年的Learning to Reinforcement Learn论文。训练目标不是让模型记住固定物体身份,而是培养一种通用能力:在推理阶段把不熟悉的视觉模式与任意名称关联起来,且不更新已学参数。模型完全没有任何本体感觉输入,只有视觉和文本。
每回合模型先被介绍两个随机生成的形状,立方体数量从3到10不等,每个形状随机分配五个名字之一(Dax、Mip、Kiv、Fep、Tav)。介绍持续三步,文本固定为“this is [形状名]”。随后模型进入简单3D环境,接收“Go to [形状名]”指令,指令措辞带有随机变化。早期版本必须依赖形状被介绍的先后顺序才能区分名称与形状,例如“去第一个看到的形状,[名字]”。
环境的房间数和门洞位置随机生成,三房间场景中两个连接房间总是位于出生房间的对侧。墙面颜色和纹理在整个VLA训练期间保持固定,一旦推理时改变,性能会有明显下降——这是一个明确的泛化短板。
Learning to Reinforcement Learn(L2RL):2016 年提出的元学习论文,核心思想是用一个循环网络在大量相关任务上训练,使网络学会一种学习算法,从而在推理时仅凭少量交互就能适应新任务,而无需更新参数。本文的任务设计借鉴了这种“在推理时快速绑定新映射”的设定,但训练方式换成了模仿学习。
训练:模仿学习为主,被“教师矛盾”拖慢
尽管环境逻辑受强化学习论文启发,这个模型并不是用RL训练的。训练策略在技术上属于模仿学习,动作目标由环境观测状态生成。对于有歧义的决策(比如三房间场景中两个门洞都合理),部分早期损失会根据模型实际走过的路径做回溯调整。每个回合在介绍结束后分裂成两条轨迹,各自请求不同形状,再合并两边梯度。
开发者选择监督学习主要是算力所限。他试过RL,最多只能跑一个4分支、rollout长度约80步的实验就耗尽显存,而监督学习能做到batch 4、160步的rollout。但监督学习在两房间场景很轻松,到了三房间场景就变成噩梦——两个合理门洞导致大量教师矛盾,边界情况似乎无穷无尽。
据开发者自述,模型在视觉/动作环境上训练了约7万步(batch 4,每个生命周期分裂为两个目标形状)。成功率方面,单房间超过90%,两房间超过80%,三房间超过60%——这些数字来自后期一次RL试跑记录的滚动成功率,监督学习阶段没有做同样的记录。
有意思的是,开发者原以为记忆会是瓶颈,结果发现真正拖后腿的是移动控制。模型能在介绍结束很多步之后仍分辨出见过形状的对错,但常常走错路,失败时经常忘记刚进过哪个房间,甚至重复搜索同一房间。他把这归因于训练器的不稳定,但也坦承可能是模型能力本身已到上限。
教师矛盾(teacher forcing 下的歧义):在模仿学习中,模型被要求模仿专家动作。当同一状态存在多个同样合理的专家动作时(例如三房间场景中两个门洞都合理),监督信号会互相冲突,模型难以判断该模仿哪一个,这种冲突即称为教师矛盾。它会拖慢训练并导致策略犹豫,本文在三房间场景中尤为明显。
已知问题:梯度爆炸、记忆歧义与训练器依赖
开发者列出了几个明确的风险点。生命周期超过约100步时梯度容易爆炸,他犹豫是否用截断,因为形状相关决策需要反向传播回到介绍阶段做信用分配;不过循环状态已被证明能在交互后保留目标身份若干步,截断或许够用。
另一个未验证的疑点是:模型可能只记住了一个形状,另一个形状是靠排除法选出来的,即“目标是Dax,或者目标不是Dax”。此外,尽管形状在8×8×8网格中随机生成,低立方体数量的形状在训练中很可能被反复见过,模型有机会在权重里记住简单形状模式。
这不是一个产品,也没有任何外部激励。开发者说自己进入这个领域时ML知识很有限,编码能力也一般,靠ChatGPT和Claude补了不少课。项目最大的价值或许不在于指标,而在于示范了一条被主流忽视的路径:在消费级硬件上,用极简视觉编码器和庞大的循环状态,一样能跑通需要视觉记忆与语言关联的 embodied 任务,并且把训练中的失败模式暴露得清清楚楚。
关键要点
- 在12GB显存的3060上从零训练VLA模型,视觉编码器仅用状态导向注意力处理原始像素,避开预训练CNN的算力负担
- 模型维持768×768循环状态矩阵,带per-cell门控,视觉识别、空间理解与动作输出在同一架构中学习
- 任务目标是推理时把新形状与新名字绑定,不需要参数更新,考验的是通用关联能力而非死记硬背
- 三房间场景的教师矛盾让模仿学习训练异常艰难,成功率在单房间超90%、两房间超80%、三房间超60%
- 主要瓶颈不是记忆而是移动控制和训练器稳定性,梯度爆炸与形状记忆歧义仍是待验证问题
相关推荐
科技前沿Textly:Mac上任意位置抓取文字和表格的效率神器
Textly是一款Mac菜单栏效率工具,支持从截图、PDF、视频和应用中框选捕获文字与表格,保持行列完整并导出CSV、Markdown、TSV,还内置即时翻译和剪贴板历史。
科技前沿Frameboy:World Labs Atlas 世界模型浏览器实时体验
World Labs 在 Product Hunt 发布 Frameboy,基于 Atlas 世界模型的浏览器实时演示,移动相机即可在云端 GPU 生成新视角,最高 15 fps 串流,探索 AI 生成的可漫游世界。
科技前沿Keypause:一键锁定Mac键盘,清洁时不再误触
Keypause是一款Mac菜单栏应用,一键锁定键盘所有按键,方便清洁时避免误触。本文介绍其功能、使用体验、潜在风险及适用场景,帮你判断是否值得尝试。