# vla_hrm

> TRM/HRM recursive reasoning models for PushT robotic control", "canonical_url": "https://github.com/junhahyung/vla_hrm", "published_at": "2026-03-30T11:03:36Z", "source_title": "vla_hrm", "source_summary": "TRM/HRM recursive reasoning models for PushT robotic control", "title": "VLA-HRM：递归推理模型在机器人控制中的创新应用", "summary": "该项目将 TRM（微型递归模型）和 HRM（层次推理模型）应用于机器人操控任务，通过递归权重共享计算和连续观测编码，在 PushT 任务中超越了扩散策略基线。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-03-30T11:03:36.000Z
- 最近活动: 2026-03-30T11:23:57.753Z
- 热度: 139.7
- 关键词: 机器人学习, 递归模型, 模仿学习, 强化学习, 扩散策略, 机器人控制, 开源项目
- 页面链接: https://www.zingnex.cn/forum/thread/vla-hrm
- Canonical: https://www.zingnex.cn/forum/thread/vla-hrm
- Markdown 来源: ingested_event

---

# VLA-HRM：递归推理模型在机器人控制中的创新应用\n\n## 背景：从离散推理到连续控制\n\n递归推理模型最初是为离散任务设计的——解决数独、走迷宫、ARC-AGI 抽象推理挑战等。这些任务的特点是状态空间有限、动作离散、目标明确。TRM（Tiny Recursive Models）和 HRM（Hierarchical Reasoning Models）通过迭代细化和递归权重共享，在这些领域展现了出色的推理能力。\n\n然而，机器人控制是一个截然不同的领域。以 PushT 任务为例：\n- **观测空间**：连续的 5 维状态（代理位置、方块位置、方块角度）\n- **动作空间**：连续的 2 维目标位置命令\n- **目标**：将 T 形方块推到目标位置并匹配目标角度\n- **评估指标**：覆盖率（重叠面积 / 目标面积）\n\n将原本为离散推理设计的模型适配到这种连续控制场景，面临着根本性的挑战。VLA-HRM 项目正是探索这一跨界应用的有趣尝试。\n\n## PushT 任务概述\n\nPushT 是 Diffusion Policy 论文中提出的经典机器人操控基准任务。在一个二维平面上，一个圆形代理需要推动一个 T 形方块，使其最终位置和角度与绿色轮廓匹配。\n\n任务的难点在于：\n1. **接触动力学复杂**：代理与方块的接触是非线性的，微小的位置差异会导致截然不同的推动效果\n2. **需要长期规划**：单次推动往往无法完成任务，需要规划一系列推动动作\n3. **多模态动作分布**：对于给定的状态，可能有多个合理的下一步动作\n\nDiffusion Policy 通过将动作生成建模为去噪扩散过程，在该任务上取得了约 0.75 的平均覆盖率分数（基于图像观测）。VLA-HRM 则探索了完全不同的技术路线。\n\n## 技术方案演进\n\n项目经历了多个版本的迭代，逐步找到了适合连续控制的架构。\n\n### V1：直接迁移（失败）\n\n最初的尝试直接将离散推理的方法应用到 PushT：\n- 将观测和动作都离散化为 token\n- 使用交叉熵损失训练动作 token 预测\n- 结果：训练准确率 100%，但环境表现极差（平均分数 ~0.06）\n\n问题很明显：模型只是记住了训练序列，没有真正理解物理规律，无法泛化到新状态。\n\n### V2：连续观测 + 离散动作（部分成功）\n\n改进方案保留了离散动作，但将观测编码改为 MLP：\n- MLP 观测编码器提取连续特征\n- 动作仍然离散化为 token\n- 结果：泛化能力提升，平均分数 ~0.15\n\n这个结果表明，保持观测的连续性对泛化至关重要。\n\n### V3：完全连续（突破）\n\n最终方案完全摒弃了离散化：\n- MLP 观测编码器\n- 回归动作输出（直接预测连续的目标位置）\n- MSE 损失在归一化的连续动作上\n\n这个版本取得了显著突破：\n- TRM：最高分数 0.434，平均分数 0.355\n- HRM：最高分数 0.393，平均分数 0.302\n\n## 核心模型架构\n\n### TRM（微型递归模型）\n\nTRM 采用权重共享的递归设计：\n\n- **单一推理模块**：一个 L-level 模块同时处理高层规划和低层计算\n- **双层循环**：外层 H_cycles 控制高层迭代，内层 L_cycles 控制低层计算\n- **内存高效**：只通过最终循环进行反向传播\n- **参数量**：约 150 万（h=256）\n\nTRM 的优势在于简洁和高效，用相对较少的参数实现了递归推理能力。\n\n### HRM（层次推理模型）\n\nHRM 是 TRM 的扩展，引入了显式的层次结构：\n\n- **H-level（高层模块）**：负责抽象轨迹规划，学习长期的动作序列结构\n- **L-level（低层模块）**：负责精确的动作计算，将高层规划转化为具体的控制信号\n- **参数量**：约 280 万（h=256）\n\n这种分离让模型能够同时捕捉抽象的规划模式和精确的控制细节。\n\n### 关键创新：动作查询 token\n\n为了支持并行动作解码，项目引入了学习的动作查询 token。这些可学习的嵌入向量作为查询，与观测特征交互，生成多个未来时间步的动作预测。这种设计允许模型在一次前向传播中预测动作序列，而不是自回归地逐个生成。\n\n## 训练策略与技巧\n\n### 观测噪声增强\n\n为了防止模型过拟合到精确的训练状态，项目在观测上添加了高斯噪声（标准差 2.0）。这种简单的技巧显著提升了泛化能力，让模型学会对状态的小扰动保持鲁棒。\n\n### 几何特征工程\n\n在后续版本中，项目引入了 21 个手工设计的几何特征，包括：\n- 代理到方块中心的距离和角度\n- 方块当前角度与目标角度的差异\n- 方块各角点到目标轮廓的距离\n\n这些特征提供了关于任务几何结构的显式知识，帮助模型更快地学习物理直觉。\n\n### 数据增强：镜像对称\n\n利用 PushT 任务的对称性，项目实现了 4 倍的数据增强：对训练数据进行左右镜像翻转。这让模型能够从更多的视角学习推动策略。\n\n### 迭代细化（Iterative Refinement）\n\n受到扩散模型的启发，项目尝试了迭代细化策略：\n- 初始预测一个粗略的动作序列\n- 通过多次细化步骤逐步改进\n- K=8 步细化达到了最高 0.942 的单次 episode 分数\n\n这种多步推理机制与扩散模型的去噪过程有异曲同工之妙。\n\n## 实验结果分析\n\n### 与扩散策略的对比\n\n| 方法 | 平均分数 | 参数量 | 训练轮数 |\n|------|----------|--------|----------|\n| HRM V8 (h=384) | 0.558 | ~800万 | 3000 |\n| HRM V8 (h=256) | 0.523 | ~510万 | 200 |\n| Diffusion Policy（官方代码） | 0.507 | 6580万 | 1000 |\n| AR GPT 基线 | 0.353 | ~300万 | 2000 |\n\n最值得注意的是，HRM V8 不仅超越了 Diffusion Policy 的官方实现（高出约 10%），而且参数量只有后者的八分之一。这表明递归推理架构在样本效率和模型效率方面具有显著优势。\n\n### 量化 vs 回归的比较\n\n项目还探索了不同的动作表示方式：\n\n| 模型 | 损失函数 | 离散化 bins | 最佳平均分数 | 最佳最高分数 |\n|------|----------|-------------|--------------|--------------|\n| TRM Gaussian | GaussSoft(σ=2) | 256 | 0.403 | 0.488 |\n| TRM Focal | Focal | 512 | 0.375 | 0.470 |\n| HRM Gaussian | GaussSoft(σ=2) | 256 | 0.340 | 0.450 |\n\n结果显示，即使是设计良好的量化方案（如高斯软量化），其性能仍不及完全连续的回归方法。这进一步验证了连续表示对机器人控制任务的重要性。\n\n### 架构对比：TRM vs HRM\n\n在相同配置（h=256，回归输出）下：\n- TRM：平均 0.355，最高 0.434\n- HRM：平均 0.302，最高 0.393\n\n有趣的是，TRM 在这个任务上略优于 HRM。项目作者推测，可能是因为 PushT 的规划层次并不非常明显，单一层次的递归已经足够。HRM 的显式分层可能引入了不必要的复杂性。\n\n## 关键洞察与教训\n\n通过多轮实验，项目总结了几条重要经验：\n\n### 1. 连续表示至关重要\n\n无论是观测还是动作，离散化都会引入信息损失。对于需要精确控制的机器人任务，保持连续性是关键。\n\n### 2. 递归架构适合序列决策\n\n尽管 TRM/HRM 最初为离散推理设计，但其核心的迭代细化机制同样适用于连续控制。递归的多次迭代可以看作是一种隐式的规划过程。\n\n### 3. 观测增强防止过拟合\n\n在观测上添加噪声是一种简单但有效的正则化手段，强迫模型学习鲁棒的策略而非记忆训练轨迹。\n\n### 4. 动作地平线影响性能\n\n较短的执行地平线（4-8 步）配合重新规划，比长地平线一次性预测效果更好。这与模型预测控制（MPC）的理念一致。\n\n### 5. 几何先验加速学习\n\n手工设计的几何特征提供了任务相关的先验知识，帮助模型更快地收敛到有效策略。这提示我们，在数据有限的情况下，领域知识的注入仍然有价值。\n\n## 局限与未来方向\n\n### 当前局限\n\n1. **仅支持状态输入**：目前版本只使用低维状态向量，没有利用图像信息\n2. **单任务特化**：模型针对 PushT 任务进行了大量调优，迁移到其他任务需要重新设计\n3. **模拟环境限制**：仅在仿真环境中验证，真实机器人部署面临额外挑战\n\n### 未来方向\n\n1. **视觉-语言-动作（VLA）扩展**：将递归推理与视觉编码器和语言指令结合\n2. **多任务学习**：探索跨任务的迁移学习能力\n3. **真实机器人验证**：在物理机器人上测试策略的鲁棒性\n4. **与扩散模型的融合**：结合递归推理的规划能力和扩散模型的多模态建模能力\n\n## 技术实现细节\n\n### 环境配置\n\n```bash\nconda create -n vla_hrm python=3.10 -y\nconda activate vla_hrm\npip install -r requirements.txt\n\n# 下载 PushT 数据集\ncd diffusion_policy && mkdir -p data\nwget https://diffusion-policy.cs.columbia.edu/data/training/pusht.zip -O data/pusht.zip\ncd data && unzip pusht.zip\n```\n\n### 训练命令\n\n```bash\n# 训练最佳版本 V3 HRM\npython train_v3.py \\
    --model_type hrm \\
    --hidden_size 256 \\
    --output_mode regression \\
    --obs_noise_std 2.0 \\
    --wandb_entity junha\n\n# 训练 V3 TRM\npython train_v3.py \\
    --model_type trm \\
    --hidden_size 256 \\
    --output_mode regression \\
    --obs_noise_std 2.0\n```\n\n### 训练监控\n\n项目使用 Weights & Biases 进行训练跟踪，可以在 [wandb.ai/junha/pusht-hrm](https://wandb.ai/junha/pusht-hrm) 查看详细的训练曲线和指标。\n\n## 总结\n\nVLA-HRM 项目展示了递归推理模型在机器人控制领域的潜力。通过将原本为离散任务设计的 TRM/HRM 架构适配到连续控制场景，项目不仅取得了优于扩散策略的性能，还实现了更高的参数效率。\n\n这个工作的意义不仅在于 PushT 任务上的具体成果，更在于它揭示了一条连接符号推理和连续控制的桥梁。递归的迭代细化机制可以被视为一种通用的推理框架，既能处理离散的逻辑推理，也能处理连续的动作规划。\n\n对于机器人学习社区而言，这项工作提示我们：除了追逐端到端的大规模模型，精心设计的递归架构和小规模模型仍然有其价值。在资源受限的场景下，效率与性能的平衡可能比单纯的规模竞赛更重要。
