在论文 “DynaAct: Large Language Model Reasoning with Dynamic Action Spaces” 中,作者提出了一种基于 Embedding 的动态动作空间选择方法。为了训练这个 Embedding 模型,论文设计了一个特定的损失函数。
乍看之下,这个公式略显复杂。但如果我们从强化学习的基本原理出发,会发现它本质上只是软 Bellman 方程的TD 残差。
本文将一步步拆解该损失函数的推导逻辑,探究其背后的数学原理。
核心公式
首先,让我们把论文中的损失函数写出来:
$$L(s_t, a, s_{t+1}) = \Bigg( \underbrace{e(s_t)^\top e(a)}{\text{Current Q}} - \Big[ \underbrace{r + \log \sum{a’ \in \mathcal{A}} \exp(e(s_{t+1})^\top e(a’))}_{\text{Soft Target}} \Big] \Bigg)^2$$
其中:
- $e(s_t)^\top e(a)$:网络预测的 Q 值近似 $Q(s_t, a)$。
- $r$:执行动作 $a$ 后得到的 即时奖励(通常离线构造,关键动作给 1,其他给 0)。
- $\log \sum \exp(\cdot)$:下一状态 $s_{t+1}$ 的 软价值。
这个公式是如何一步步推导出来的?
推导步骤
第一步:参数化 Q 值
DynaAct 的目标是学习一个能够衡量“动作 $a$ 在状态 $s_t$ 下有多好”的函数,即 Q 值函数。为了适应大模型的文本空间并支持后续的子模函数计算,作者做了一个假设:Q 值可以通过状态与动作的 Embedding 内积来近似。
定义参数化 Q 函数:
$$Q_\theta(s,a) := e_\theta(s)^\top e_\theta(a)$$
为什么要用内积?
- 计算高效:内积计算非常快,适合处理大量候选动作。
- 表征统一:状态和动作共享同一个 Encoder(LLM),将它们映射到同一个语义+价值空间。
- 适配子模函数:论文后续使用的子模函数形式(基于行列式或相似度)天然契合内积形式。
第二步:引入 Soft Bellman 方程
在标准的 Q-Learning 中,目标值通常由“硬”最大化操作计算:
$$y_t = r_t + \gamma \max_{a’} Q(s_{t+1}, a’)$$
但在 DynaAct 中,作者使用了 Soft Q-Learning(最大熵 RL) 的思路,将 $\max$ 替换为 $\text{log-sum-exp}$:
$$V_{\text{soft}}(s_{t+1}) = \log \sum_{a’ \in \mathcal{A}} \exp(Q(s_{t+1}, a’))$$
因此,目标值变为(假设 $\gamma \approx 1$):
$$y_t = r_t + \log \sum_{a’ \in \mathcal{A}} \exp(e(s_{t+1})^\top e(a’))$$
为什么要用 log-sum-exp 替代 max?
- 平滑性:$\max$ 操作只对最大值敏感,梯度稀疏;而 $\log\sum\exp$ 是 $\max$ 的光滑近似,所有有潜力的动作都能提供梯度信号,训练更稳定。
- 最大熵视角:这隐含了策略 $\pi(a|s) \propto \exp(Q(s,a))$。对于文本生成的动作空间,我们往往不希望模型坍缩到单一动作,而是保留一定的多样性(Entropy),这有利于后续从候选池中选出多样化的动作子集。
第三步:构建 TD 残差
TD 学习 的核心思想是:让当前时刻的预测值 $Q(s_t, a_t)$ 去逼近更准确的未来估计值 $y_t$。
定义 TD 残差 $\delta_t$:
$$\delta_t = \text{Target} - \text{Current Estimate}$$
$$\delta_t = \left( r + \log \sum_{a’} \exp(e(s_{t+1})^\top e(a’)) \right) - e(s_t)^\top e(a)$$
为了最小化这个误差,我们使用均方误差(MSE)作为损失函数:
$$L = \delta_t^2$$
这就得到了论文中最终的损失函数形式。
Soft Bellman Equation
标准的 Bellman 最优方程描述了最优 Q 值之间的递归关系:
$$Q^(s,a) = \mathbb{E}[r + \gamma \max_{a’} Q^(s’, a’)]$$
软 Bellman 方程则是在目标中引入了熵正则化。在最大熵强化学习中,我们不仅希望最大化奖励,还希望最大化策略的熵(即保持策略的随机性)。
在这种框架下,值函数 $V(s)$ 不再是最大 Q 值,而是所有 Q 值的 Log-Sum-Exp:
$$V_{soft}(s) = \log \sum_{a} \exp(Q(s,a))$$
当某个动作 $a^*$ 的优势极显著时,$V_{soft}(s) \approx \max Q(s, a)$;当所有动作差不多时,$V_{soft}(s)$ 会比单纯的平均值更大,包含了“可选路很多”的信息量。
TD Residual
TD 残差是强化学习中驱动网络更新的动力源。
- 直观理解:
- 我现在的估计:$Q(s_t, a_t)$
- 我走了一步之后,基于现实反馈 $r_t$ 和对未来的新看法 $V(s_{t+1})$ 形成的新估计:$r_t + V(s_{t+1})$
- 残差 = 新估计 - 旧估计
在深度学习中,我们通过反向传播最小化这个残差的平方,强迫 $Q_\theta$ 函数满足 Bellman 方程定义的自洽性。