26 KiB
title, draft, tags
| title | draft | tags | ||||
|---|---|---|---|---|---|---|
| 3-Decision Transformer | false |
|
Decision Transformer: 将强化学习视为序列建模
Author: 深度学习与强化学习交叉领域研究员 Date: 2026-05-14
1. 背景:从 RL 到序列建模
1.1 传统强化学习的问题
传统强化学习方法主要分为两大类:基于值函数的方法(Value-Based)和基于策略梯度的方法(Policy Gradient)。这些方法虽然取得了显著成功,但在实际应用中面临诸多挑战。
1.1.1 On-Policy 限制
On-Policy 学习的核心问题在于:智能体必须使用当前策略收集的样本进行学习。这导致了严重的样本效率问题:
\theta_{\text{new}} = \theta_{\text{old}} + \alpha \nabla_\theta J(\theta_{\text{old}})
其中 J(\theta) 是当前策略 \pi_\theta 下的期望累积回报。On-Policy 算法(如 SARSA、A3C)每更新一次策略,就需要用新策略重新采样,导致大量历史数据被丢弃。
Off-Policy 方法(如 DQN、DDPG)试图重用历史数据,但引入了更复杂的问题。
1.1.2 Bootstrap 导致的误差传播
Temporal Difference (TD) 学习的核心是 bootstrap 思想:
V(s_t) \leftarrow V(s_t) + \alpha \left[ r_t + \gamma V(s_{t+1}) - V(s_t) \right]
然而,bootstrap 导致的价值估计存在误差传播问题。考虑 n 步TD目标:
G_t^{(n)} = r_t + \gamma r_{t+1} + \cdots + \gamma^{n-1} r_{t+n-1} + \gamma^n V(s_{t+n})
当 V(s_{t+n}) 估计不准确时,这个误差会通过 \gamma^n 的系数传播到 V(s_t) 的更新中。在长序列决策中,这种误差累积会导致价值函数的严重高估或低估。
1.1.3 探索-利用权衡与数据分布偏移
Off-Policy 方法还面临数据分布偏移问题:
\pi_{\text{new}}(a|s) \neq \pi_{\text{data}}(a|s)
这意味着用 \pi_{\text{data}} 分布的数据训练的 Q 函数,在 \pi_{\text{new}} 分布下可能完全失效。DQN 的经验回放缓冲区虽然缓解了部分问题,但无法根本解决分布偏移。
1.2 将 RL 问题转化为序列建模问题
核心动机:是否能像语言模型一样,直接通过监督学习的方式训练一个决策智能体?
传统观点认为 RL 与监督学习有本质区别:
- 监督学习:独立同分布(i.i.d.)样本
- 强化学习:序贯决策,后继动作影响未来状态和回报
Decision Transformer 的核心洞察:将 $R$(回报)、$A$(动作)、$S$(状态)视为序列 token,直接用序列建模的方法学习策略。
这借鉴了语言模型的思想:
- 语言模型:
P(x_1, x_2, \ldots, x_T) = \prod_{t=1}^T P(x_t \mid x_{<t}) - Decision Transformer:
P(A_t \mid S_t, A_{<t}, R_{\leq t}, G_t)
1.3 Decision Transformer 的核心思想
关键创新:用未来期望回报(Return-to-Go)作为条件变量,而非直接优化累积回报。
\text{Sequence} = [S_1, G_1, A_1, R_1, S_2, G_2, A_2, R_2, \ldots, S_T, G_T, A_T, R_T]
\text{Conditioned on: } G_t = \sum_{t'=t}^{T} \gamma^{t'-t} r_{t'}
这样,DT 将条件生成问题(给定当前状态和目标回报,生成最优动作序列)与序列建模问题统一起来。
2. Decision Transformer 架构
2.1 输入表征
Decision Transformer 的输入是一个异构序列,由三种不同类型的 token 组成:
| Token 类型 | 含义 | 维度 |
|---|---|---|
S_t |
状态嵌入 | d_{\text{model}} |
A_{t-1} |
上一时刻动作 | d_{\text{act}} |
R_t |
时刻 t 的即时回报 |
d_{\text{return}} |
G_t |
Return-to-Go(目标回报) | d_{\text{return}} |
2.1.1 Return-to-Go 的定义
Return-to-Go G_t 是从时刻 t 到 episode 结束的折扣累积回报:
\boxed{G_t = \sum_{t'=t}^{T} \gamma^{t'-t} r_{t'} = r_t + \gamma r_{t+1} + \gamma^2 r_{t+2} + \cdots + \gamma^{T-t} r_T}
其中 \gamma \in [0, 1] 是折扣因子。DT 离线训练时绝大多数实验默认取 $\gamma = 1$(无折扣返回)。注意:训练集轨迹中存储的 G 是该轨迹的初始全局返回 $G_1$(整条轨迹未来总折扣回报),而非逐时刻独立的 $G_t$;推理时则人为设定固定目标返回 $G_{\text{target}}$ 控制策略行为。
2.1.2 输入序列结构
对于一个长度为 T 的 episode,输入 Decision Transformer 的序列为:
\sigma = \left[ S_1, G_1, A_1, R_1, S_2, G_2, A_2, R_2, \ldots, S_T, G_T, A_T, R_T \right]
注意:每步优先放入当前状态 S_t + 目标回报 $G_t$ 作为条件,再放入动作 A_t 和即时回报 $R_t$。
条件输入:在 t 时刻,模型以 (S_t, G_t) 作为条件,预测动作 $A_t$:
\underbrace{P(A_t \mid S_t, G_t, A_{<t}, R_{\leq t})}_{\text{条件生成}} = \text{DT}(S_t, G_t, A_{<t}, R_{\leq t}; \theta)
2.2 嵌入层设计
由于状态、动作、回报是异构的 token,DT 使用线性投影 + LayerNorm 将它们映射到统一的高维空间:
\mathbf{s}_t = \text{LayerNorm}(W_s \cdot \text{embed}(S_t) + b_s)
\mathbf{a}_t = \text{LayerNorm}(W_a \cdot \text{embed}(A_t) + b_a)
\mathbf{r}_t = \text{LayerNorm}(W_r \cdot \text{embed}(R_t) + b_r)
\mathbf{g}_t = \text{LayerNorm}(W_g \cdot \text{embed}(G_t) + b_g)
对于连续动作(如 \mathbb{R}^n 空间),动作嵌入通过对动作向量的每个维度进行线性投影得到。
2.3 自回归预测
Decision Transformer 采用 causal masking 的 Transformer 架构进行自回归预测:
\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}} + M\right)V
其中 M 是 causal mask,确保位置 i 只能 attend 到位置 \leq i 的信息:
M_{ij} = \begin{cases}
0 & \text{if } j \leq i \\
-\infty & \text{if } j > i
\end{cases}
2.3.1 预测目标
在时刻 $t$,模型接收以下输入:
- 目标回报嵌入:$\mathbf{g}_t$(条件变量)
- 当前状态嵌入:
\mathbf{s}_t - 历史动作:
\mathbf{a}_1, \mathbf{a}_2, \ldots, \mathbf{a}_{t-1} - 历史回报:
\mathbf{r}_1, \mathbf{r}_2, \ldots, \mathbf{r}_t
输出为动作 A_t 的预测分布:
\hat{P}_\theta(A_t \mid S_t, G_t, A_{<t}, R_{\leq t}) = \text{Transformer}(\mathbf{s}_t, \mathbf{g}_t, \mathbf{a}_{<t}, \mathbf{r}_{\leq t}; \theta)
2.4 Transformer 架构细节
Decision Transformer 使用标准的 Transformer 解码器架构:
多头自注意力(Multi-Head Attention):
\text{MHA}(\mathbf{x}) = \text{concat}(\text{head}_1, \ldots, \text{head}_h) W^O
\text{head}_i = \text{Attention}(Q_i, K_i, V_i) = \text{softmax}\left(\frac{Q_i K_i^T}{\sqrt{d_k}}\right) V_i
逐位置前馈网络(Position-wise FFN):
\text{FFN}(\mathbf{x}) = W_2 \cdot \sigma(W_1 \cdot \mathbf{x} + b_1) + b_2
其中 \sigma 为 ReLU 激活函数。
层归一化(Layer Normalization):
\text{LayerNorm}(\mathbf{x}) = \gamma \odot \frac{\mathbf{x} - \mu}{\sqrt{\sigma^2 + \epsilon}} + \beta
2.5 推理时的自回归生成
推理阶段,Decision Transformer 采用自回归生成方式:
Input: S_target, G_target
Output: A_1, A_2, ..., A_T
a_1 = sample from DT(S_1, G_1; θ)
s_2 = env.step(a_1)
a_2 = sample from DT(s_2, G_2; θ)
...
其中 G_t 可以是固定的(等于目标回报),也可以根据实际获得的回报动态调整。
3. 训练目标与损失函数
3.1 离线数据集上的监督学习目标
Decision Transformer 的训练基于离线数据集 $\mathcal{D}$:
\mathcal{D} = \{(\tau_1, g_1), (\tau_2, g_2), \ldots, (\tau_N, g_N)\}
其中 \tau_i = (s_1, a_1, r_1, s_2, a_2, r_2, \ldots, s_T, a_T, r_T) 是完整轨迹,g_i 是该轨迹的初始目标回报(通常是轨迹的实际累积回报)。
训练目标:给定状态序列、动作序列、回报序列和目标回报,最大化动作预测的对数似然:
\boxed{\mathcal{L}(\theta) = -\mathbb{E}_{(s_{1:T}, a_{1:T}, r_{1:T}, G) \sim \mathcal{D}} \left[ \sum_{t=1}^{T} \log \pi_\theta(a_t \mid s_t, G, a_{<t}, r_{\leq t}) \right]}
3.2 动作预测的交叉熵损失
对于离散动作空间(如 Atari 游戏),动作预测的损失为标准交叉熵:
\mathcal{L}_{\text{action}}^{\text{disc}} = -\sum_{t=1}^{T} \sum_{a \in \mathcal{A}} \mathbb{1}_{a_t = a} \log \hat{p}_\theta(a \mid s_t, G, a_{<t}, r_{\leq t})
其中 \hat{p}_\theta 是模型输出的动作概率分布。
对于连续动作空间(如机器人控制),DT 假设动作服从高斯分布:
\pi_\theta(a_t \mid s_t, \ldots) = \mathcal{N}(\mu_\theta(s_t, \ldots), \sigma^2 I)
损失函数为负对数似然:
\mathcal{L}_{\text{action}}^{\text{cont}} = -\sum_{t=1}^{T} \log \mathcal{N}(a_t; \mu_\theta(s_t, \ldots), \sigma^2 I)
3.3 Return-to-Go 的预测(变体拓展模块,非原生DT)
注意:原版 Chen 2021 Decision Transformer 仅使用动作预测对数似然损失,无返回回报预测辅助损失。以下回归损失是后续改进变体(如 RT-1、Trajectory Transformer 等)新增的拓展模块。
\hat{G}_t = \text{MLP}(\text{Transformer output at position } t)
\mathcal{L}_{\text{return}} = \mathbb{E} \left[ \sum_{t=1}^{T} \| G_t - \hat{G}_t \|^2 \right]
总损失(变体形式):
\mathcal{L}_{\text{total}} = \mathcal{L}_{\text{action}} + \lambda \cdot \mathcal{L}_{\text{return}}
3.4 与 Behavior Clone(BC)的关系与区别
Behavior Clone 的目标是直接从状态映射到最优动作:
\pi_{\text{BC}}(a \mid s) = \arg\max_{a} P(a \mid s; \theta)
关键区别:
| 方面 | Behavior Clone | Decision Transformer |
|---|---|---|
| 输入 | 仅状态 s_t |
状态 + 历史上下文 + 目标回报 |
| 泛化能力 | 分布内泛化 | 可通过目标回报控制策略 |
| 误差传播 | 存在(训练与测试分布偏移) | 因果 masking 缓解 |
| 回报条件化 | 无 | 有(核心创新) |
数学上,DT 相比 BC 的优势在于:DT 学习的是条件策略分布 $\pi(a \mid s, G, a_{<t}, r_{\leq t})$,而非边缘分布 $\pi(a \mid s)$。
这使得 DT 能够:
- 根据不同目标回报生成不同策略
- 通过历史回报的反馈调整当前决策
- 更好地处理部分可观测性(通过历史上下文)
4. Trajectory Transformer(后续工作)
4.1 将整个轨迹作为序列建模
Trajectory Transformer(TT)是 Decision Transformer 的扩展,其核心思想是:将对单个时间步的预测扩展为对整个轨迹的联合建模。
TT 将轨迹表示为三种 token 的交错序列:
\mathcal{T} = [s_1, a_1, r_1, s_2, a_2, r_2, \ldots, s_T, a_T, r_T]
这与 DT 的结构相似,但 TT 在以下方面有所不同:
- 使用统一的 token 表征
- 同时预测状态、动作和回报
- 采用更细粒度的离散化策略
4.2 状态、动作、回报的离散化
TT 的关键创新是对连续变量进行离散化:
状态离散化:
s_t^{\text{disc}} = \text{Quantize}(s_t; C_s)
其中 C_s 是状态空间的 codebook 大小。TT 使用 k-means 或 RVQ(残差向量量化)对状态进行聚类。
动作离散化:
a_t^{\text{disc}} = \text{Quantize}(a_t; C_a)
对于高维连续动作,TT 沿每个维度独立量化。
回报离散化:
r_t^{\text{disc}} = \text{Quantize}(r_t; C_r)
离散化后的序列建模:
TT 将整个轨迹视为一个 token 序列,使用标准的语言模型目标训练:
\mathcal{L}_{\text{TT}} = -\sum_{t=1}^{3T} \log P(x_t \mid x_{<t}; \theta)
其中 $x_t \in {s^{\text{disc}}, a^{\text{disc}}, r^{\text{disc}}}$。
4.3 与 Decision Transformer 的对比
| 特性 | Decision Transformer | Trajectory Transformer |
|---|---|---|
| 预测目标 | 仅动作 A_t |
状态、动作、回报联合预测 |
| 离散化 | 连续动作使用嵌入 | 全部变量量化离散 |
| 生成方式 | 自回归动作生成 | 可以从任意位置生成 |
| 应用场景 | 离线策略评估与控制 | 轨迹生成与规划 |
| 模型规模 | 较小(~3层 Transformer) | 较大(~12层 Transformer) |
4.4 TT 的规划能力
TT 可以通过 beam search 或 采样 进行轨迹规划:
- 从初始状态
s_1开始 - 迭代生成
(a_t, r_t, s_{t+1})三元组 - 评估生成轨迹的累积回报
- 选择最优轨迹
\hat{\tau} = \arg\max_{\tau \in \text{Generated}} \sum_{t=1}^{T} r_t
5. Decision Transformer 的理论分析
5.1 为什么离线数据足够好时 DT 可以超越在线 RL
传统在线 RL 算法面临的核心困境是探索-利用权衡。DT 通过离线训练的方式绕过了这一问题。
离线数据足够好的条件:
设离线数据集 \mathcal{D} 是由某个"专家策略" \pi^* 生成的轨迹:
\mathcal{D} = \{ \tau_i \sim \pi^* \}_{i=1}^N
定理 1(DT 的理论上界):
假设 \mathcal{D} 覆盖了状态-动作空间的关键区域,且目标回报 G 在数据集的支撑集内,则 DT 学到的策略 \pi_{\text{DT}} 满足:
J(\pi_{\text{DT}}) \geq J(\pi^*) - \underbrace{\epsilon_{\text{approx}} + \epsilon_{\text{gen}} + \epsilon_{\text{return}}}_{\text{误差上界}}
其中:
- $\epsilon_{\text{approx}}$:函数逼近误差
- $\epsilon_{\text{gen}}$:泛化误差(由于分布偏移)
- $\epsilon_{\text{return}}$:回报估计误差
超越在线 RL 的原因:
- 避免探索开销:DT 不需要在线探索,可以直接利用离线数据中的最优行为
- 消除 bootstrapping 误差:DT 不进行 TD bootstrap,所有预测都是基于真实回报的监督学习
- 利用大规模数据:DT 可以利用海量离线数据,而在线 RL 受到样本收集速度的限制
5.2 DT 与 Out-of-Distribution(OOD)泛化的关系
DT 的一个关键设计是回报条件化,这与 OOD 泛化有密切关系。
分布内(ID)vs 分布外(OOD):
对于传统 RL,智能体在状态 s 下选择动作 $a$,要求 (s, a) 在数据分布内。
对于 DT,给定目标回报 $G$,智能体在状态 s 下选择动作 $a$,条件是 (s, G, a) 在联合分布内。
回报条件化的 OOD 效应:
DT 学到的是条件分布 $P(A \mid S, G)$。当测试时的目标回报 G_{\text{test}} 与训练时的回报分布不同时:
G_{\text{test}} \notin \{ G^{(i)} \mid \tau^{(i)} \in \mathcal{D} \}
这意味着 DT 需要外推到未见过的回报条件。
理论分析:
设 f_\theta(s, g) 是 DT 学到的从 (s, g) 到动作的映射。假设 f 是 g 的线性函数:
f_\theta(s, g) = w_s^T s + w_g^T g + b
则对于 OOD 回报 $g_{\text{new}} = \alpha g_1 + (1-\alpha) g_2$($\alpha \in [0,1]$),DT 可以通过线性插值进行外推。
经验观察:
实验表明,DT 对回报条件的外推能力有限。当 G_{\text{test}} 显著高于训练数据中的最大回报时,DT 的性能会下降。这提示我们:回报条件化并不能完全解决 OOD 问题,但它提供了一种机制来控制策略的行为方向。
5.3 回报条件化的作用分析
形式化定义:
设 \pi_{\text{DT}}(a \mid s, G) 为 DT 学到的条件策略。回报条件化的作用可以通过以下分解理解:
\pi_{\text{DT}}(a \mid s, G) = \underbrace{P(a \mid s)}_{\text{状态条件}} \cdot \underbrace{\phi(G \mid s, a)}_{\text{回报调制}}
其中 \phi(G \mid s, a) 是给定状态-动作对的回报似然。
三种回报条件化机制:
-
重加权机制:调整不同动作的相对概率
\pi_{\text{DT}}(a \mid s, G) \propto \pi_{\text{BC}}(a \mid s) \cdot \exp(\beta \cdot \mathbb{E}[G \mid s, a])其中
\beta是温度参数。 -
过滤机制:排除达不到目标回报的动作
\pi_{\text{DT}}(a \mid s, G) = 0 \quad \text{if} \quad \mathbb{E}[G \mid s, a] < G_{\text{target}} -
序列调整机制:通过调整历史回报的预测来微调当前决策
回报条件化的实验验证:
Chen 等人在 2021 年的实验中表明:
- 当目标回报
G增加时,DT 选择的动作更"激进"(追求更高风险高回报) - 当目标回报
G减小时,DT 选择更保守的动作 - 这种行为在连续控制任务中表现尤为明显
6. 算法变体
6.1 Decision Transformer(DT)- 原始版本
论文:Chen et al., "Decision Transformer: Reinforcement Learning via Sequence Modeling", 2021
核心特点:
- 离线训练,自回归预测
- 使用 return-to-go 作为条件变量
- causal masking 保证时序因果性
算法流程:
Algorithm: Decision Transformer Training
Input: Offline dataset D = {(τ_i, G_i)}
Input: Transformer parameters θ
Output: Trained policy π_θ
1: Initialize θ randomly
2: for epoch = 1 to E do
3: Sample batch B ⊂ D
4: for each (τ, G) ∈ B do
5: Compute embeddings: s_t, a_t, r_t, g_t
6: Pass through Transformer
7: Compute action loss L_action
8: θ ← θ - α ∇_θ L_action
9: end for
10: end for
11: return π_θ
适用场景:
- 已有大量离线数据的任务
- 目标回报明确可量化的任务
- 动作空间为离散或连续均可
6.2 Online Decision Transformer(ODT)- 结合在线探索
动机:原始 DT 完全依赖离线数据,无法在线改进。
核心思想:将 DT 与在线探索结合,形成"离线预训练 + 在线微调"的范式。
ODT 算法框架:
- 离线阶段:同原始 DT,在
\mathcal{D}上训练 - 在线阶段:
- 使用当前策略
\pi_{\text{ODT}}收集新数据 - 将新数据加入回放缓冲区
\mathcal{D} - 定期在
\mathcal{D}上重训练\pi_{\text{ODT}}
- 使用当前策略
探索机制:
ODT 引入随机性到回报条件中:
G_{\text{explore}} = G_{\text{target}} + \mathcal{N}(0, \sigma^2 I)
这鼓励智能体探索不同回报水平的动作空间。
理论保证:
ODT 的收敛性可以通过以下不等式保证:
J(\pi_{\text{ODT}}^{(k+1)}) - J(\pi_{\text{ODT}}^{(k)}) \geq \frac{\eta}{1-\gamma} \cdot \mathbb{E}_{\mathcal{D}^{(k)}}[\delta Q]
其中 \delta Q 是价值函数的变化量,\eta 为学习率(避免与折扣因子 \gamma 混淆)。
6.3 Prompt-based RL - 用自然语言描述奖励
核心创新:将自然语言引入强化学习,实现"语言条件化的决策"。
Prompt Decision Transformer(PDT):
\pi_{\text{PDT}}(a \mid s, \text{prompt}) = \text{DT}(s, \text{LLM}(\text{prompt}), a; \theta)
其中 \text{LLM}(\text{prompt}) 将自然语言描述转换为回报嵌入。
语言条件化的三种方式:
-
奖励描述 → 回报嵌入:将语言描述编码为向量
e_{\text{reward}}e_{\text{reward}} = \text{Encoder}(\text{"maximize distance from obstacles"}) -
目标规范 → 目标回报:用语言指定目标状态
G_{\text{language}} = \text{LLM}(\text{"reach the green zone"}) -
偏好学习:通过自然语言偏好数据学习 reward 模型
P(\text{preferred} \mid \tau, \text{language}) = \text{softmax}(R(\tau) \cdot \text{sim}(\text{偏好描述}, \tau))
优势:
- 无需手动设计奖励函数
- 可以处理抽象、难以量化描述的任务目标
- 与人类意图对齐更加直接
6.4 Multi-task Decision Transformer
动机:如何让 DT 同时处理多个任务?
多任务 DT 的架构:
-
任务嵌入:
\mathbf{t}_k = \text{Embedding}(\text{task}_k) \in \mathbb{R}^{d_{\text{model}}} -
任务条件化的策略:
\pi_\theta(a \mid s, G, \mathbf{t}_k) = \text{Transformer}(\mathbf{s}, \mathbf{g}, \mathbf{a}_{<t}, \mathbf{r}_{\leq t}, \mathbf{t}_k; \theta) -
任务共享 vs 任务专用:
- 浅层参数共享(仅 embedding 层)
- 深层参数共享(Transformer blocks)
- 专家混合(Mixture of Experts)
多任务训练目标:
\mathcal{L}_{\text{MT}} = -\sum_{k=1}^{K} \sum_{t=1}^{T} \log \pi_\theta(a_t^{(k)} \mid s_t^{(k)}, G^{(k)}, \mathbf{t}_k)
任务间迁移:
多任务 DT 展现出正向迁移能力:
J(\pi_{\text{MT}}) \geq \frac{1}{K} \sum_{k=1}^{K} J(\pi_k)
其中 J(\pi_k) 是单任务 DT 的性能。任务间的共享结构使得知识可以跨任务复用。
7. 与其他范式的比较
7.1 DT vs 值函数方法(DQN/A3C/PPO)
核心范式对比:
| 特性 | 值函数方法(DQN/A3C/PPO) | Decision Transformer |
|---|---|---|
| 学习目标 | 状态/状态-动作价值 | 条件策略 |
| 优化方式 | Bellman 方程 + 梯度下降 | 监督学习 + 因果 attention |
| Bootstrap | 是(TD learning) | 否(纯监督学习) |
| 样本效率 | 较低(on-policy)或中等(off-policy) | 较高(离线监督学习) |
| 回报条件化 | 无(学习单一价值函数) | 有(条件生成) |
| 训练稳定性 | 受 bootstrap 误差影响 | 相对稳定 |
DQN 的目标:
y_j = r_j + \gamma \max_{a'} Q_{\text{target}}(s_j', a')
DT 的目标:
\mathcal{L}_{\text{DT}} = -\mathbb{E}\left[ \sum_t \log \pi_\theta(a_t \mid s_t, G_t) \right]
PPO 的目标:
L^{\text{PPO}}(\theta) = \mathbb{E}_t \left[ \min\left( r_t(\theta) \hat{A}_t, \text{clip}(r_t(\theta), 1-\epsilon, 1+\epsilon) \hat{A}_t \right) \right]
主要差异分析:
- 误差传播:DQN/A3C/PPO 都涉及 bootstrap,误差会随时间步传播;DT 是纯监督学习,无误差传播
- 回报处理:值函数方法学习
V(s)或 $Q(s,a)$,隐式地编码了回报信息;DT 显式地将回报作为条件输入 - 探索机制:值函数方法通常需要 $\epsilon$-greedy 或熵正则化进行探索;DT 的探索发生在训练数据收集阶段(离线)或通过回报扰动(ODT)
7.2 DT vs Model-Based RL
Model-Based RL 的框架:
Model-Based RL 学习环境动力学模型:
\hat{P}(s_{t+1} \mid s_t, a_t), \quad \hat{R}(s_t, a_t)
然后使用这个模型进行规划或想象 rollouts。
DT vs Model-Based RL 对比:
| 特性 | Model-Based RL | Decision Transformer |
|---|---|---|
| 世界模型 | 显式建模 | 隐式(通过序列建模) |
| 规划能力 | MCTS/最优控制 | 自回归生成 |
| 样本效率 | 高(可想象 rollouts) | 高(离线学习) |
| 模型误差 | 存在(model bias) | 无 |
| 计算成本 | 规划时计算量大 | 推理时计算量适中 |
| 长期规划 | 优秀(通过模型展开) | 受序列长度限制 |
数学表述:
Model-Based RL:
\pi_{\text{MB}}(a_t \mid s_t) = \arg\max_{a_t} \underbrace{\hat{r}(s_t, a_t)}_{\text{learned reward}} + \gamma \underbrace{V^{\pi}(\hat{s}_{t+1})}_{\text{value on imagined next state}}
Decision Transformer:
\pi_{\text{DT}}(a_t \mid s_t, G_t) = \arg\max_{a_t} \log P_\theta(a_t \mid s_t, G_t, a_{<t})
互补性:DT 和 Model-Based RL 可以结合——用 Model-Based 方法生成想象轨迹,用 DT 作为策略或价值函数的表示。
7.3 DT vs 蒙特卡洛树搜索(MCTS)
MCTS 的核心思想:
MCTS 通过树搜索进行决策:
- 选择(Selection):UCB 准则选择子节点
\text{UCB}(s, a) = Q(s, a) + c \sqrt{\frac{\ln N(s)}{N(s, a)}} - 扩展(Expansion):添加新节点
- 模拟(Simulation):随机 rollout 到终端状态
- 回传(Backpropagation):更新节点统计量
DT vs MCTS 对比:
| 特性 | MCTS | Decision Transformer |
|---|---|---|
| 规划方式 | 显式树搜索 | 隐式序列建模 |
| 计算方式 | 推理时计算密集 | 训练后推理高效 |
| 世界知识 | 需要(用于 rollout) | 不需要 |
| 长期规划 | 优秀 | 受限于序列长度 |
| 适用场景 | 完美模拟器可用 | 仅离线数据可用 |
| 在线适应 | 可以 | 受限(ODT 除外) |
数学上:
MCTS 的值估计:
V_{\text{MCTS}}(s) = \frac{1}{N} \sum_{i=1}^{N} G_i(s)
DT 的动作选择:
a_{\text{DT}}^* = \arg\max_{a} \log P_\theta(a \mid s, G)
核心权衡:
- MCTS 精确但慢,适合有精确模型的场景(如游戏 AI)
- DT 粗略但快,适合需要快速响应的实时控制系统
8. 总结与展望
8.1 Decision Transformer 的贡献
- 范式革新:首次将强化学习问题重新定义为序列建模问题
- 离线学习:摆脱了 on-policy 的样本效率限制
- 回报条件化:通过目标回报作为条件,实现策略的可控生成
- 架构创新:将 Transformer 架构应用于 RL,展现了序列建模的通用性
8.2 局限性
- OOD 泛化有限:对未见过的目标回报外推能力不足
- 序列长度限制:Transformer 的
\mathcal{O}(T^2)复杂度限制了长 horizon 任务 - 训练效率:需要大量离线数据才能达到良好性能
- 探索能力:原始 DT 无在线探索能力
8.3 未来方向
- 高效 Transformer:线性注意力和状态空间模型(如 Mamba)的引入
- 更好的 OOD 泛化:基于对比学习、因果推断的方法
- 多模态 DT:结合视觉、语言等多种模态
- 层次化 DT:处理多时间尺度决策问题
参考文献
-
Chen, L., Lu, K., Rajeswaran, A., Lee, K., Grover, A., Laskin, M., ... & Mordatch, I. (2021). Decision transformer: Reinforcement learning via sequence modeling. NeurIPS.
-
Janner, M., Li, Q., & Levine, S. (2021). Offline reinforcement learning as one big sequence modeling problem. NeurIPS.
-
Kumar, A., Zhou, A., Tucker, G., & Levine, S. (2020). Conservative q-learning for offline reinforcement learning. NeurIPS.
-
Silver, D., et al. (2014). Monte-carlo tree search and rapid action value estimation in computer Go. Artificial Intelligence.
本文档由 Claude Code 生成,面向深度学习与强化学习交叉领域研究人员