Note -「Hierarchical Reasoning Model」思考,像脑子一样!
一个老生常谈的话题是, 以 transformer 架构为代表的典型 LLMs 都是固定深度的网络, 直觉上, 它们的计算能力天生限制在 \(\tb{AC}^0\) 或者 \(\tb{TC}^0\) 中. 为获得强大的推理能力, LLMs 选择用 CoT 来将复杂问题拆解到 token 级别, 并以高延迟, 高脆弱性为代价链式地在 token sequence 上用浅网络 "推理". 就像是一个只能通过打草稿-读草稿来进行思考的解题者, 听上去也不赖, 但的确不算高明.
理想的思考会是怎样的? 在脑子里想, 也就是所谓的 latent reasoning! 你会想到 RNN, 但 RNN 的过早收敛 (early convergence) 问题和昂贵的 BPTT 代价也常被鞭尸. RNN 喊着什么类脑喊着什么下一代网络就冲过来了, 但我们的大脑怎么可能做 BPTT?
网络结构
慢速迭代的高层 "指导" 快速迭代的低层.
HRM 有四个可学习网络, 分别是:
- 输入网络 \(f_I(\cdot;\theta_I)\);
- 低层循环网络 \(f_L(\cdot;\theta_L)\);
- 高层循环网络 \(f_H(\cdot;\theta_H)\);
- 输出网络 \(f_O(\cdot;\theta_O)\).
每一步高层循环对应 \(T\) 步低层循环, \(N\) 步高层循环共对应 \(N\x T\) 个时间步. 设低层和高层的隐状态分别为 \(z_L^i\) 和 \(z_H^i\), 输入为 \(x\), 则首先由
得到模型输入, 接着在循环网络中迭代
(原文红色 \(i\) 为 \(i-1\), 疑似笔误: 高层应该接受最新的低层状态作为反馈.) 最后通过高层读出
细节上, \(f_L\) 和 \(f_H\) 是维度与架构都相同的 encoder-only transformer blocks (RoPE + GLU + RMSNorm, 去除 linear bias); \(f_I\) 做 tokens 到 vector representations 的 embedding; \(f_O\) 是简单的 linear read-out + 概率归一化.
一步梯度近似 (one-step gradient)
只在最后一次 forward 开启梯度, 这居然 work? 我们来编个理由.
先回顾一下隐函数定理, 设有方程 \(G(z,\theta)=0\), \((z^*,\theta^*)\) 在其轨迹上, 且 \(G\) 关于 \(z\) 的 Jacobi 矩阵 \(\frac{\part G}{\part z}\) 在这点可逆, 那么在 \((z^*,\theta^*)\) 附近, 可以把 \(G=0\) 轨迹上的 \(z\) 视为关于 \(\theta\) 的可微函数 \(z=z^*(\theta)\), 那么对 \(G(z^*(\theta),\theta)=0\) 两侧取 \(\frac{\part}{\part\theta}\) 得到
因而
我们需要求 \(\frac{\part \mathcal L}{\part\theta}\), 而 \(\frac{\part\mathcal L}{\part z}\) 来自上游梯度, 还需要 \(\frac{\part z}{\part\theta}\), 所以就可以使用隐函数定理.
接着, 我们研究类似 RNN 的迭代形式 \(z^i=f(z^{i-1};\theta)\). 假设 \(z\) 已经取到不动点 \(z^*\), 即 \(z^*=f(z^*;\theta)\), 那么令 \(G(z,\theta)=z-f(z;\theta)\), 就有 \(G(z^*,\theta^*)=0\). 此时 \(\frac{\part G}{\part z}=\bs 1-\frac{\part f}{\part z}\). 记 \(J_f=\ev{\frac{\part f}{\part z}}_{z^*}\), 那么
这就 Deep Equilibrium Model (DEQ) 中常见的不动点梯度.
现在我们的瓶颈是对 \((\bs 1-J_f)^{-1}\) 的处理. 我们假设 \(\rho(J_f)<1\), 则由 Neumann 级数,
额... 我们直接取零阶近似 \((\bs1-J_f)^{-1}\approx\bs 1\)... 论文声称是这样, 这样有 \(\mathcal O(\|J_f\|)\) 的误差, 但论文似乎没有细致分析其安全性; 而且诸如一阶近似 \(\bs 1+J_f\) 的计算开销其实也可接受? 我们暂且承认这是一个工程上合理的近似吧, 取 \((\bs 1-J_f)^{-1}\approx\bs 1\) 得到
其中再用同样的近似
我们就得到了快速反向传播的策略. 这种近似称为一步梯度近似.
你会发现用 PyTorch 实现起来特别简单: 前若干步推理直接关掉梯度, 最后一步推理再打开梯度, 然后用优化器优化即可.
深度监督 (Deep Supervision)
把一个 \(N\x T\) 的 forward 视为一个 segment, 每个 segment 视为独立的 input-output 做训练; 后续推理时也以 segment 为单位, 决定 "要不要再推理一个 segment".
如上所述, 记 \((z^m,\hat y^m)\) 为第 \(m\) 个 segment 结束的隐状态和输出, \(\theta^m\) 为第 \(m\) 个 segment 更新后的参数, 则
注意 \(z^m\) 在传给下一个 segment 前会 detach. 也就是说,第 \(m+1\) 个 segment 的梯度不会传回第 \(m\) 个 segment. 这相当于对 "递归深监督过程" 再做一次 one-step 近似. 工程上, 这样能让高层模块更频繁收到反馈, 训练更稳定; 类脑解释上, 周期性学习窗口类似神经振荡调控何时发生学习.
自适应思考时长 (Adaptive Computational Time, ACT)
用 Q-learning 决策 continue or halt 行为.
Q-value \(\hat Q^m=\pmat{\hat Q^m_{\t{halt}}&\hat Q^m_{\t{cont}}}\) 通过
给出; 最大推理步数 \(M_{\max}\) 作为超参数取定, \(M_{\min}\) 以 \(\eps\) 的概率取 \(\t{Unif}([2:M_{\max}])\) 以鼓励长思考, 以 \(1-\eps\) 的概率取 \(1\). Q-target 自然地给出
(原文红色部分条件为 \(m\ge N_{\max}\), 是 \(m\ge M_{\max}\) 的笔误; 但 \(m=M_{\max}-1\) 时就应该强制下一步的 reward 取自 halt.)
最终, 综合 sequence-to-sequence loss 和 Q-head loss, 我们给出 ACT 的损失:
Clarify: 实现时, 每当 batch 中有 sample halt, 我们就将其替换为一个新的 sample. 此外, 带 ACT 的 HRM 在深度监督的同时做 ACT 训练, 跨 segment 的隐状态被 detach; 同一 segment 内, prediction loss 与 Q-head loss 联合优化共享表示.
关于 ACT, 还有一个值得关心的问题是它作为一个 deep Q-learning 的稳定性问题, 我们知道这类 learning 通常是不够稳定的, 需要配合 replay buffer (缓存经验, 采样 mini-batch 更新) 和 target network (保存一个旧网络计算 target 维持其稳定性). 但 Gallici et al. 指出, 若网络参数有界, 训练有 weight decay, 网络中使用 post-norm 结构, 则 Q-learning 可以收敛. HRM/ACT 中采用 post-norm 的 RMSNorm 和 AdamW (实际训练使用的 Adam-atan2) 优化器, 其稳定性被上述论断支持.
实验结果
谁想读论文的 result? 本节是 codex 写的.
实验部分的核心结论是: HRM 在不使用预训练, 不使用 CoT 监督, 仅依赖 input-output pairs 的情况下, 用约 \(27\mathrm M\) 参数和约 \(1000\) 个训练样本, 在多类需要深度推理的任务上显著超过直接预测式 transformer 和若干 CoT baselines.
论文主要报告了四个主结果:
| benchmark | training examples | HRM accuracy | 任务要点 |
|---|---|---|---|
| ARC-AGI-1 | 960 | \(40.3\%\) | 从少量输入输出网格示例中归纳抽象规则. |
| ARC-AGI-2 | 1120 | \(5.0\%\) | 更强调组合推理, 多步逻辑, 上下文规则和符号抽象. |
| Sudoku-Extreme | 1000 | \(55.0\%\) | \(9\times 9\) 数独, 要求完整预测唯一解. |
| Maze-Hard | 1000 | \(74.5\%\) | \(30\times 30\) 迷宫最短路, 预测必须 valid 且 optimal. |
对 ARC-AGI, 论文使用数据增强来提高泛化: 对训练和测试输入应用平移, 旋转, 翻转和颜色置换; 测试时对每个 test input 生成并求解 \(1000\) 个增强版本, 再反变换回原坐标, 选出现频率最高的两个预测作为最终答案. 在 ARC-AGI-1 上, HRM 的 \(40.3\%\) 高于文中列出的 o3-mini-high 的 \(34.5\%\) 和 Claude 3.7 8K context 的 \(21.2\%\). 但 ARC-AGI-2 的绝对准确率仍只有 \(5.0\%\), 因而这个结果更应理解为 "在低样本, 无预训练设定下相对更强", 而不是已经解决 ARC-AGI-2.
对 Sudoku-Extreme, 论文特意强调常用 Sudoku 数据集并不够难: Kaggle Sudoku 可以用 elementary single-digit techniques 解决, 17-clue puzzles 虽然 clue 少, 但 clue 往往较正交, 反而会产生许多直接路径. 他们构造的 Sudoku-Extreme 来自 easy puzzles 与社区公认困难 puzzles 的混合, 并用 tdoku solver 所需 backtracks 衡量难度. Sudoku-Extreme 平均需要 \(22\) 次 backtracks, 明显高于 Sudoku-Bench 的 \(0.45\) 次. 在主实验中, HRM 只用 \(1000\) 个训练样本达到 \(55.0\%\); 在用于分析的 Sudoku-Extreme-Full 上, Figure 2 显示单纯增加 transformer 宽度收益很小, 而增加计算深度才关键, HRM 能更有效利用深度并接近完美表现.
对 Maze-Hard, 任务是寻找 \(30\times 30\) 迷宫中的最短路径. 数据生成遵循 Lehnert et al. 的流程, 但额外保留 shortest path length 超过 \(110\) 的困难实例; 训练集和测试集各 \(1000\) 个样本. 论文指出, 这些需要长推理轨迹的 Sudoku/Maze 任务对 CoT baselines 和 direct-pred transformer 都很困难: 与 HRM 同尺寸, 同训练设置的 \(8\) 层 transformer direct prediction baseline 在 \(1000\) 样本设定下几乎无法解决这些任务; 即使在 Sudoku-Extreme-Full 上也只有 \(16.9\%\).
ACT 的实验主要在 Sudoku-Extreme-Full 上验证. Figure 5 显示, 与固定 segment 数 \(M\) 的模型相比, ACT 在 \(M_{\max}\) 增大时平均实际计算步数仍保持较低且稳定, 但准确率接近固定计算模型. 也就是说, ACT 学到的不是盲目多想, 而是根据样本难度分配计算量. 进一步地, 训练时给定某个 \(M_{\max}\) 的模型, 推理时增大 \(M_{\max}\) 仍可能提升 Sudoku accuracy, 说明 HRM 具有一定 inference-time scaling; 但论文也指出, 对 ARC-AGI 这类通常只需少数变换的任务, 额外推理计算带来的收益较小.
论文还可视化了中间 timestep 的预测轨迹. 在 Maze-Hard 中, HRM 看起来会先并行探索多条可能路径, 再去掉 blocked 或低效路径并逐步形成最终路线; 在 Sudoku 中, 轨迹类似 depth-first search, 会尝试候选解并在遇到矛盾时 backtrack; 在 ARC 中, 轨迹更像 hill-climbing, 即逐步调整网格直到接近解. 这些可视化支持 "HRM 在不同任务上学到不同推理策略" 的解释, 但论文也明确说这还不是对内部算法的完整刻画.
Reference.
- G. Wang et al., “Hierarchical Reasoning Model,” Aug. 04, 2025, arXiv: arXiv:2506.21734. doi: 10.48550/arXiv.2506.21734.

浙公网安备 33010602011771号