791 lines
27 KiB
Markdown
791 lines
27 KiB
Markdown
---
|
||
title: 02-OfflineRL
|
||
draft: false
|
||
tags:
|
||
- Offline-RL
|
||
- 离线强化学习
|
||
- 强化学习
|
||
---
|
||
|
||
# Offline RL(离线强化学习)
|
||
|
||
## 1. Offline RL 的定义与挑战
|
||
|
||
### 1.1 问题定义
|
||
|
||
Offline Reinforcement Learning(离线强化学习)又称为 Batch Reinforcement Learning,旨在从一批由未知行为策略 $\pi_{\mathrm{KL}}$ 生成的固定交互数据 $\mathcal{D} = \{(s_t, a_t, r_t, s_{t+1})\}_{t=1}^N$ 中学习最优策略,而无需与环境进行任何额外交互。
|
||
|
||
形式化地,给定:
|
||
- 状态空间 $\mathcal{S}$ 和动作空间 $\mathcal{A}$
|
||
- 转移概率 $p(s'|s,a)$ 和奖励函数 $r(s,a)$
|
||
- 数据集 $\mathcal{D}$,其中样本来自 $\pi_{\mathrm{KL}}$
|
||
|
||
目标是学得一个策略 $\pi_\theta$ 使得期望累积奖励 $\mathbb{E}_{\pi_\theta}\left[\sum_{t=0}^\infty \gamma^t r(s_t, a_t)\right]$ 最大。
|
||
|
||
### 1.2 Offline RL vs Online RL:数据分布偏移问题
|
||
|
||
Online RL 的核心假设是智能体能够持续与环境交互,数据分布随策略更新而同步演化。这一特性使得 Online RL 能够主动收集对当前策略有益的样本(探索),并即时修正价值估计的偏差。
|
||
|
||
Offline RL 则面临根本性的困境:学习过程中无法进行交互,只能依赖于固定数据集 $\mathcal{D}$ 中的经验。这一限制引入了以下核心挑战:
|
||
|
||
**数据分布偏移(Distributional Shift)**
|
||
|
||
在 Offline RL 中,策略 $\pi_\theta$ 生成的动作用于计算价值函数和下一步决策,但这些动作可能从未出现在数据集 $\mathcal{D}$ 中。设 $d^{\pi_\theta}(s,a)$ 为当前策略诱导的状态-动作分布,$d^{\pi_{\mathrm{KL}}}(s,a)$ 为数据集中的分布,则两者的差异:
|
||
|
||
$$
|
||
\Delta(s,a) = d^{\pi_\theta}(s,a) - d^{\pi_{\mathrm{KL}}}(s,a)
|
||
$$
|
||
|
||
价值函数 $Q^\pi$ 在状态-动作对 $(s,a)$ 上的估计质量取决于该 $(s,a)$ 在数据中的覆盖程度。当 $\pi_\theta$ 偏离 $\pi_{\mathrm{KL}}$ 时,$Q$ 函数的泛化误差显著增大。
|
||
|
||
### 1.3 分布偏移的数学刻画
|
||
|
||
定义累计折扣状态-动作分布:
|
||
|
||
$$
|
||
d^{\pi_\theta}(s,a) = (1-\gamma) \sum_{t=0}^{\infty} \gamma^t \mathbb{P}\left(s_t=s, a_t=a \mid \pi_\theta, p\right)
|
||
$$
|
||
|
||
设 $Q_{\mathrm{KL}}$ 为真实价值函数,$\hat{Q}$ 为基于 $\mathcal{D}$ 拟合的近似价值函数,则对于任意 $(s,a)$:
|
||
|
||
$$
|
||
\left|Q^{\pi_\theta}(s,a) - \hat{Q}(s,a)\right| \leq \underbrace{\left\|Q^{\pi_\theta} - \hat{Q}\right\|_{\infty} \cdot d^{\pi_\theta}(s,a)}_{\mathrm{KL} + \underbrace{\left|\hat{Q}(s,a) - Q^{\pi_\theta}(a,a)\right|}_{\mathrm{KL}
|
||
$$
|
||
|
||
分布偏移导致的外推误差在分布支撑集外会急剧放大。
|
||
|
||
### 1.4 误差传播与复合误差(Compounding Error)
|
||
|
||
在动态规划框架下,价值函数通过贝尔曼方程递归计算:
|
||
|
||
$$
|
||
Q^{\pi}(s,a) = r(s,a) + \gamma \mathbb{E}_{s' \sim p(\cdot|s,a), a' \sim \pi(\cdot|s')}\left[Q^{\pi}(s', a')\right]
|
||
$$
|
||
|
||
即使单步价值估计仅有微小偏差,经过多步传播后误差会指数级累积。设 $\epsilon_t$ 为第 $t$ 步的价值估计误差,则第 $T$ 步的复合误差约为:
|
||
|
||
$$
|
||
\left|\epsilon_T\right| \leq \sum_{t=0}^{T-1} \gamma^t \cdot \mathbb{E}\left[\left|\epsilon_{t+1}\right|\right] \approx \frac{1}{1-\gamma} \cdot \bar{\epsilon}
|
||
$$
|
||
|
||
对于有限数据集,误差 $\epsilon_t$ 的来源包括:
|
||
1. **采样误差**:数据量有限导致的统计波动
|
||
2. **函数近似误差**:神经网络表达能力不足
|
||
3. **分布偏移误差**:当前策略与数据分布不一致导致的OOD(Out-of-Distribution)估计
|
||
|
||
### 1.5 贝尔曼算子的外推问题(Extrapolation)
|
||
|
||
定义贝尔曼最优算子 $\mathcal{T}$:
|
||
|
||
$$
|
||
(\mathcal{T}Q)(s,a) = r(s,a) + \gamma \mathbb{E}_{s' \sim p(\cdot|s,a)}\left[\max_{a' \in \mathcal{A}} Q(s', a')\right]
|
||
$$
|
||
|
||
在 Offline 设定下,期望中的 $s'$ 服从环境真实转移 $p(\cdot|s,a)$,而非数据集分布。当数据覆盖不足时:
|
||
|
||
1. 对于未见过的 $(s', a')$ 对,$Q(s', a')$ 的估计高度依赖外推
|
||
2. 神经网络的外推能力有限,OOD 动作的 $Q$ 值可能被严重高估或低估
|
||
3. 高估的 $Q$ 值会导致策略进一步偏离数据分布,形成恶性循环
|
||
|
||
**外推误差界**(参考 Kumar et al., 2019):
|
||
|
||
设 $\mathcal{D}$ 中 $(s,a)$ 的经验分布为 $\hat{d}$,真实分布为 $d^{\pi_{\mathrm{KL}}$,则对任意 $Q$ 函数:
|
||
|
||
$$
|
||
$$\left\|(\mathcal{T}Q)_{\hat{d}} - (\mathcal{T}Q)_{d^{\pi_{\mathrm{KL}}}}\right\| \leq \gamma \cdot \underbrace{\left\|Q\right\|_{\infty} \cdot \delta_{\mathrm{KL}}}_{\mathrm{KL}} + \underbrace{\left|\hat{Q}(s,a) - Q^{\pi_\theta}(s,a)\right|}_{\mathrm{KL}}$$
|
||
$$
|
||
|
||
其中 $\delta_{\mathrm{KL}} = \sup_{s,a}|\hat{d}(s,a) - d^{\pi_{\mathrm{KL}}(s,a)|$。
|
||
|
||
---
|
||
|
||
## 2. 策略约束方法
|
||
|
||
策略约束方法的核心思想是:将策略搜索限制在数据分布附近,以减轻分布偏移带来的外推误差。
|
||
|
||
### 2.1 BCQ(Batched Constrained Q-Learning)
|
||
|
||
#### 2.1.1 约束动作空间
|
||
|
||
BCQ(Fujimoto et al., 2019)的核心观察是:数据集中的 $(s,a)$ 对是"安全"的,因此将学得策略 $\pi_\theta$ 限制为仅能输出数据中见过的动作的扰动版本:
|
||
|
||
$$
|
||
\pi_\theta(s) = \underset{a \in \mathcal{A}}{\mathrm{KL} \; Q_\phi(s, a), \quad \text{s.t.} \quad a = a_{\mathrm{KL} + \epsilon \cdot \delta_a, \; \|a_{\mathrm{KL} - a\| \leq \Phi
|
||
$$
|
||
|
||
其中 $a_{\mathrm{KL}}$ 是从数据集中采样得到的与当前状态最接近的动作,$\epsilon$ 是扰动幅度,$\delta_a$ 是学得的扰动方向。
|
||
|
||
#### 2.1.2 变分自动编码器(VAE)建模
|
||
|
||
BCQ 使用条件 VAE 来建模动作分布:
|
||
|
||
**编码器**:$q_\phi(z|s,a) = \mathcal{N}(\mu_\phi(s,a), \sigma_\phi^2(s,a))$
|
||
|
||
**解码器**:$\pi_\theta(a|s,z) = \mathcal{N}(\mu_\theta(s,z), \sigma_\theta^2(s,z))$
|
||
|
||
**训练目标**:
|
||
|
||
$$
|
||
\mathcal{L}_{\mathrm{KL}}(\phi, \theta) = \mathbb{E}_{q_\phi(z|s,a)}\left[\|a - \pi_\theta(a|s,z)\|^2\right] + \beta \cdot D_{\mathrm{KL}\left(q_\phi(z|s,a) \| p(z)\right)
|
||
$$
|
||
|
||
其中 $p(z) = \mathcal{N}(0, I)$ 为先验。
|
||
|
||
**推理时**,BCQ 从先验采样潜在变量 $z$,重构动作,然后选择 $Q$ 值最大的动作:
|
||
|
||
$$
|
||
\pi_{\mathrm{KL}}(s) = \underset{z \sim p(z), a \sim \pi_\theta(\cdot|s,z)}{\mathrm{KL} \; Q_\phi(s, a)
|
||
$$
|
||
|
||
为提高效率,实际只采样 $N$ 个候选动作并选择最优。
|
||
|
||
### 2.2 CQL(Conservative Q-Learning)
|
||
|
||
#### 2.2.1 核心思想
|
||
|
||
CQL(Kumar et al., 2020)的出发点是:标准 Q-Learning 在 Offline 设定下会系统性地高估 OOD 动作的 $Q$ 值。为解决此问题,CQL 引入**保守估计**,对 OOD 动作的 $Q$ 值施加惩罚。
|
||
|
||
#### 2.2.2 目标函数数学推导
|
||
|
||
CQL 的目标函数包含两个核心项:
|
||
|
||
**第一项:标准 Q-Learning 损失**
|
||
|
||
$$
|
||
\mathcal{L}_{\mathrm{KL}}(\theta) = \mathbb{E}_{s,a \sim \mathcal{D}}\left[\left(\hat{Q}_\theta(s,a) - \mathcal{T}\hat{Q}_{\theta}(s,a)\right]^2\right)
|
||
$$
|
||
|
||
其中 $\hat{Q}_\theta$ 是当前 Q 网络的输出,$\mathcal{T}$ 是贝尔曼算子。
|
||
|
||
**第二项:Conservative 正则化项**
|
||
|
||
CQL 对所有动作(包括数据中的动作)同时进行约束,但重点惩罚 OOD 动作:
|
||
|
||
$$
|
||
\text{CONS}(s,a) = \log \sum_{a' \in \mathcal{A}} \exp(Q(a')) - Q(a)
|
||
$$
|
||
|
||
可以理解为在动作空间上对 $Q$ 值施加了**最大熵正则化**,使得策略在动作选择上更加保守。
|
||
|
||
**完整目标函数**:
|
||
|
||
$$
|
||
\min_\theta \mathbb{E}_{s,a \sim \mathcal{D}}\left[\left(\hat{Q}_\theta(s,a) - \underbrace{\left(r(s,a) + \gamma \mathbb{E}_{s' \sim \hat{p}(s'|s,a)}\left[\bar{V}(s')\right]\right)}_{\mathrm{KL}}\right)^2\right] - \lambda \cdot \text{CONS}(s,a)
|
||
$$
|
||
|
||
其中 $\bar{V}(s) = \mathbb{E}_{a \sim \pi_{\mathrm{KL}(\cdot|s)}\left[Q(s,a)\right]$ 是数据分布下的期望值,$\lambda$ 是正则化系数。
|
||
|
||
#### 2.2.3 Conservative 估计的合理性证明
|
||
|
||
**定理(Kumar et al., 2020)**:设 $Q_{\mathrm{KL}}$ 为 CQL 学得的价值函数,$Q^{\pi_{\mathrm{KL}}$ 为数据策略的价值函数,$Q^*$ 为最优价值函数。则在一定条件下,有:
|
||
|
||
$$
|
||
Q_{\mathrm{KL}}(s,a) \leq Q^{\pi_{\mathrm{KL}}}(s,a) \leq Q^*(s,a), \quad \forall (s,a)
|
||
$$
|
||
|
||
即 CQL 给出了真实价值函数的下界估计。
|
||
|
||
**证明概要**:
|
||
|
||
考虑单步 Bellman 更新后的值函数:
|
||
|
||
$$
|
||
Q_{\mathrm{KL}}(s,a) = r(s,a) + \gamma \mathbb{E}_{s'}\left[\max_{a'} Q_{\mathrm{KL}}(s', a')\right]
|
||
$$
|
||
|
||
CQL 的保守项使得:
|
||
|
||
$$
|
||
Q_{\mathrm{KL}}(s,a) \leq r(s,a) + \gamma \mathbb{E}_{s'}\left[\bar{V}(s')\right]
|
||
$$
|
||
|
||
而 $\bar{V}(s) = \mathbb{E}_{a \sim \pi_{\mathrm{KL}}\left[Q(s,a)\right] \leq \max_{a'} Q(s,a)$,因此:
|
||
|
||
$$
|
||
Q_{\mathrm{KL}}(s,a) \leq r(s,a) + \gamma \mathbb{E}_{s'}\left[\max_{a'} Q(s', a')\right] = Q^*(s,a)
|
||
$$
|
||
|
||
得证。
|
||
|
||
#### 2.2.4 实际算法步骤
|
||
|
||
**算法 1:CQL 训练流程**
|
||
|
||
1. **初始化**:$Q_\theta$ 随机初始化,数据集 $\mathcal{D}$ 包含 $\pi_{\mathrm{KL}}$ 采样的经验
|
||
2. **重复以下步骤直到收敛**:
|
||
a. 从 $\mathcal{D}$ 采样 batch $\{(s,a,r,s')\}$
|
||
b. 计算标准 Bellman 目标:$y(s,a) = r + \gamma \bar{V}(s')$
|
||
c. 计算 Conservative 惩罚:
|
||
$$
|
||
\text{CONS} = \log \frac{1}{|\mathcal{A}|} \sum_{a' \in \mathcal{A}} \exp(Q_\theta(s,a')) - Q_\theta(s,a)
|
||
$$
|
||
d. 更新 $Q$ 网络:
|
||
$$
|
||
\theta \leftarrow \theta - \alpha \nabla_\theta \left[\left(Q_\theta(s,a) - y(s,a)\right]^2 - \lambda \cdot \text{CONS}\right)
|
||
$$
|
||
e. 更新 $\bar{V}$(可选,使用指数移动平均)
|
||
|
||
### 2.3 IQL(Implicit Q-Learning)
|
||
|
||
#### 2.3.1 动机与核心思想
|
||
|
||
IQL(Kostrikov et al., 2022)观察到:CQL 需要在动作空间上计算 softmax,这对于连续动作空间计算代价高昂。IQL 转而采用**_expectile regression** 来隐式地学习一个保守的价值估计,而无需显式地枚举动作。
|
||
|
||
#### 2.3.2 Expectile Regression
|
||
|
||
对于随机变量 $X$,其 $\tau$-expectile($0 < \tau < 1$)定义为:
|
||
|
||
$$
|
||
\mu_\tau = \arg\min_m \; \mathbb{E}\left[\rho_\tau(X - m)\right]
|
||
$$
|
||
|
||
其中 expectile 损失函数为:
|
||
|
||
$$
|
||
\rho_\tau(r) =
|
||
\begin{cases}
|
||
(1-\tau) r^2 & \text{if } r < 0 \\
|
||
\tau r^2 & \text{if } r \geq 0
|
||
\end{cases}
|
||
$$
|
||
|
||
与分位数回归(quantile regression)不同,expectile 回归对正、负残差施加非对称权重但不显式预测分位数点。
|
||
|
||
#### 2.3.3 IQL 目标函数推导
|
||
|
||
IQL 不直接学习 $Q$ 函数,而是学习**优势函数** $A^\pi(s,a) = Q^\pi(s,a) - V^\pi(s)$ 的隐式分布。
|
||
|
||
设 $A_\tau(s,a)$ 表示优势函数的 $\tau$-expectile(即对优势值较大的动作给予较高权重)。IQL 定义如下双分量目标:
|
||
|
||
**1. 渐近价值估计(Asymptotic Value)**
|
||
|
||
$$
|
||
V_\psi^{\mathrm{KL}}(s) = \mathbb{E}_{a \sim \pi_{\mathrm{KL}(\cdot|s)}\left[\exp\left(\frac{1}{\beta} A_\psi(s,a)\right) \cdot Q_\theta(s,a)\right]} / Z
|
||
$$
|
||
|
||
其中 $Z$ 是归一化常数,$\beta$ 是温度参数。
|
||
|
||
**2. 期望值估计(Expectation-based)**
|
||
|
||
$$
|
||
V_\psi^{\mathrm{KL}}(s) = \mathbb{E}_{a \sim \pi_{\mathrm{KL}(\cdot|s)}\left[\tau \cdot \exp\left(\frac{1}{\beta} A_\psi(s,a)\right) \cdot Q_\theta(s,a)\right]} / Z
|
||
$$
|
||
|
||
实际实现中,IQL 采用**优势条件期望**的形式:
|
||
|
||
$$
|
||
V^{\mathrm{KL}}(s) = \mathbb{E}_{a \sim \pi_{\mathrm{KL}}}\left[\min\left(0, A(s,a)\right)\right] + \mathbb{E}_{a \sim \pi_{\mathrm{KL}}}\left[Q(s,a)\right]
|
||
$$
|
||
|
||
$$
|
||
V^{\mathrm{KL}}(s) = \mathbb{E}_{a \sim \pi_{\mathrm{KL}}}\left[\max\left(0, A(s,a)\right)\right] + \mathbb{E}_{a \sim \pi_{\mathrm{KL}}}\left[Q(s,a)\right]
|
||
$$
|
||
|
||
#### 2.3.4 IQL 的渐近无偏性
|
||
|
||
**定理**:当 $\tau \to 1$ 且 $\beta \to 0$ 时,IQL 的价值估计 $V_{\mathrm{KL}}(s)$ 收敛到 $V^{\pi_{\mathrm{KL}}(s)$(数据策略的价值函数)。
|
||
|
||
**证明**:
|
||
|
||
当 $\beta \to 0$ 时,$\exp(A/\beta)$ 的质量集中于 $A$ 最大的动作。因此:
|
||
|
||
$$
|
||
\lim_{\beta \to 0} V^{\mathrm{KL}}(s) = \max_{a \in \mathcal{A}} Q(s,a)
|
||
$$
|
||
|
||
当 $\tau \to 1$ 时,expectile 回归的权重倾向于选择较大的 $A$ 值,即:
|
||
|
||
$$
|
||
\lim_{\tau \to 1} A_\tau(s,a) \approx \max_{a'} A(s,a')
|
||
$$
|
||
|
||
综合两者,$V_{\mathrm{KL}}(s) \approx \max_a Q(s,a) = V^*(s)$,但在有限数据下受限于数据分布支撑集。
|
||
|
||
#### 2.3.5 IQL 算法步骤
|
||
|
||
**算法 2:IQL 训练流程**
|
||
|
||
1. **初始化**:$Q_{\theta_1}, Q_{\theta_2}$(双网络减少过估计),$V_\psi$,数据集 $\mathcal{D}$
|
||
2. **重复以下步骤直到收敛**:
|
||
a. 从 $\mathcal{D}$ 采样 batch $\{(s,a,r,s')\}$
|
||
b. 更新 $V$ 网络(expectile regression):
|
||
$$
|
||
\psi \leftarrow \psi - \alpha \nabla_\psi \mathbb{E}_{a \sim \pi_{\mathrm{KL}}}\left[\rho_\tau\left(A_\theta(s,a) - V_\psi(s)\right)\right]
|
||
$$
|
||
c. 更新 $Q$ 网络(标准 Bellman 更新):
|
||
$$
|
||
\theta_i \leftarrow \theta_i - \alpha \nabla_{\theta_i} \mathbb{E}_{s,a,r,s'}\left[\left(r + \gamma V_\psi(s') - Q_{\theta_i}(s,a)\right)^2\right]
|
||
$$
|
||
d. 提取策略:$\pi(a|s) \propto \exp\left(\frac{1}{\beta}\max(0, A(s,a) - \text{threshold})\right)$
|
||
|
||
---
|
||
|
||
## 3. 重要性采样方法
|
||
|
||
### 3.1 重要性采样基础
|
||
|
||
在 Off-policy 强化学习中,重要性采样比(Importance Sampling Ratio)用于修正策略差异:
|
||
|
||
$$
|
||
\rho_t = \frac{\pi(a_t|s_t)}{\mu(a_t|s_t)}
|
||
$$
|
||
|
||
其中 $\pi$ 是目标策略,$\mu$ 是行为策略(数据生成策略)。
|
||
|
||
**无偏策略梯度**:
|
||
|
||
$$
|
||
\nabla_\theta J(\pi_\theta) = \mathbb{E}_{\tau \sim \pi_\theta}\left[\sum_{t=0}^T \nabla_\theta \log \pi_\theta(a_t|s_t) \cdot R(\tau)\right]
|
||
$$
|
||
|
||
**Off-policy 修正**:
|
||
|
||
$$
|
||
\nabla_\theta J(\pi_\theta) = \mathbb{E}_{\tau \sim \mu}\left[\prod_{t=0}^T \rho_t \cdot \sum_{t=0}^T \nabla_\theta \log \pi_\theta(a_t|s_t) \cdot R(\tau)\right]
|
||
$$
|
||
|
||
### 3.2 IGEBC(Impressive Gradient Estimation for BC)
|
||
|
||
#### 3.2.1 梯度重要性采样
|
||
|
||
IGEBC(Nachum et al., 2019)提出直接估计策略梯度中的重要性权重,而无需显式计算策略比率:
|
||
|
||
**核心观察**:对于 $Q(a) = \mathbb{E}_{s'}\left[\max_{a'} Q(s',a')\right]$,梯度为:
|
||
|
||
$$
|
||
\nabla_\theta Q(a) = \nabla_\theta \mathbb{E}_{s'}\left[V(s')\right] = \mathbb{E}_{s'}\left[\nabla_\theta V(s')\right]
|
||
$$
|
||
|
||
这意味着我们可以通过价值函数对动作的梯度来估计策略改进方向。
|
||
|
||
#### 3.2.2 IGEBC 目标函数
|
||
|
||
IGEBC 的策略目标是最大化加权价值估计:
|
||
|
||
$$
|
||
J_{\mathrm{KL}(\pi_\theta) = \mathbb{E}_{s \sim \mathcal{D}, a \sim \pi_\theta(\cdot|s)}\left[Q(s,a)\right] \cdot w(s,a)
|
||
$$
|
||
|
||
其中 $w(s,a)$ 是重要性权重,用于修正策略偏移:
|
||
|
||
$$
|
||
w(s,a) = \frac{d^{\pi_{\mathrm{KL}}(s,a)}{d^{\pi_\theta}(s,a)} \approx \frac{\pi_{\mathrm{KL}}(a|s)}{\pi_\theta(a|s)}
|
||
$$
|
||
|
||
#### 3.2.3 梯度推导
|
||
|
||
对数策略梯度给出:
|
||
|
||
$$
|
||
\nabla_\theta \log \pi_\theta(a|s) = \frac{\nabla_\theta \pi_\theta(a|s)}{\pi_\theta(a|s)}
|
||
$$
|
||
|
||
IGEBC 的梯度为:
|
||
|
||
$$
|
||
\nabla_\theta J_{\mathrm{KL} = \mathbb{E}_{s,a \sim \pi_\theta}\left[\nabla_\theta \log \pi_\theta(a|s) \cdot Q(s,a) \cdot \frac{\pi_{\mathrm{KL}}(a|s)}{\pi_\theta(a|s)}\right]
|
||
$$
|
||
|
||
简化后:
|
||
|
||
$$
|
||
\nabla_\theta J_{\mathrm{KL} = \mathbb{E}_{s,a \sim \pi_\theta}\left[\nabla_\theta \pi_\theta(a|s) \cdot Q(s,a) \cdot \frac{\pi_{\mathrm{KL}}(a|s)}{\pi_\theta^2(a|s)}\right]
|
||
$$
|
||
|
||
#### 3.2.4 实际实现技巧
|
||
|
||
1. **截断重要性权重**:防止极端的权重值
|
||
$$
|
||
\bar{\rho} = \min\left(\rho, \rho_{\max}\right)
|
||
$$
|
||
|
||
2. **双时间尺度更新**:先更新 $Q$ 函数,再更新策略
|
||
|
||
3. **延迟策略更新**:每隔 $k$ 步更新一次策略,减少方差
|
||
|
||
### 3.3 策略梯度与重要性采样的权衡
|
||
|
||
Off-policy 修正的核心矛盾在于**偏差-方差权衡**:
|
||
|
||
- **高方差**:严格的重要性采样修正($\prod_t \rho_t$)在长序列中方差爆炸
|
||
- **高偏差**:忽略修正($\rho_t = 1$)在策略差异大时产生严重偏差
|
||
|
||
**Per-decision 重要性采样 (PDIS)**:
|
||
|
||
$$
|
||
\hat{g}_{\mathrm{KL}} = \frac{1}{T} \sum_{t=0}^T \mathbb{E}\left[\left(\prod_{k=0}^t \rho_k\right) \cdot \nabla_\theta \log \pi_\theta(a_t|s_t) \cdot \hat{R}_t\right]
|
||
$$
|
||
|
||
其中 $\hat{R}_t$ 是从 $t$ 时刻到结尾的折扣回报。
|
||
|
||
---
|
||
|
||
## 4. 价值函数约束与不确定性
|
||
|
||
### 4.1 不确定性估计在 Offline RL 中的作用
|
||
|
||
Offline RL 中的价值估计误差主要来源于:
|
||
1. **认知不确定性(Epistemic Uncertainty)**:由于有限数据导致的模型不确定性
|
||
2. **偶然不确定性(Aleatoric Uncertainty)**:环境固有的随机性
|
||
|
||
对于 OOD 状态-动作对,认知不确定性通常会升高。量化这种不确定性可以帮助:
|
||
- 惩罚高不确定性的价值估计
|
||
- 指导安全探索(但在 Offline 中受限于数据)
|
||
- 识别数据覆盖不足的区域
|
||
|
||
### 4.2 Ensemble 方法与 Bootstrap
|
||
|
||
#### 4.2.1 Bootstrap 集成
|
||
|
||
给定数据集 $\mathcal{D}$,通过有放回抽样生成 $K$ 个 bootstrap 数据集 $\{\mathcal{D}_k\}_{k=1}^K$:
|
||
|
||
$$
|
||
\mathcal{D}_k = \text{BootstrapSample}(\mathcal{D}, |\mathcal{D}|)
|
||
$$
|
||
|
||
每个 bootstrap 样本训练一个独立的 Q 网络 $Q_{\theta_k}$。
|
||
|
||
**价值估计集成**:
|
||
|
||
$$
|
||
\bar{Q}(s,a) = \frac{1}{K} \sum_{k=1}^K Q_{\theta_k}(s,a)
|
||
$$
|
||
|
||
**不确定性估计**:
|
||
|
||
$$
|
||
\sigma^2_Q(s,a) = \frac{1}{K} \sum_{k=1}^K \left(Q_{\theta_k}(s,a) - \bar{Q}(s,a)\right)^2
|
||
$$
|
||
|
||
#### 4.2.2 保守价值估计
|
||
|
||
基于不确定性估计,可以构造保守价值下界:
|
||
|
||
$$
|
||
Q_{\mathrm{KL}}(s,a) = \bar{Q}(s,a) - \lambda \cdot \sigma_Q(s,a)
|
||
$$
|
||
|
||
**定理**:设 $Q^*$ 为真实最优价值函数,则以概率 $1-\delta$:
|
||
|
||
$$
|
||
Q_{\mathrm{KL}}(s,a) \leq Q^*(s,a)
|
||
$$
|
||
|
||
**证明**:使用 McDiarmid 不等式或 Hoeffding-type 一致性界,可得:
|
||
|
||
$$
|
||
\mathbb{P}\left(\bar{Q}(s,a) - Q^*(s,a) \geq \epsilon\right) \leq \exp\left(-\frac{2\epsilon^2}{\sigma_{\max}^2}\right)
|
||
$$
|
||
|
||
其中 $\sigma_{\max}$ 是单步价值估计的方差上界。
|
||
|
||
### 4.3 蒙特卡洛 vs Bootstrap 集成
|
||
|
||
| 方法 | 优点 | 缺点 |
|
||
|------|------|------|
|
||
| 蒙特卡洛(多重轨迹平均) | 无偏估计 | 需要多次完整轨迹采样,计算代价高 |
|
||
| Bootstrap 集成 | 高效,可同时估计均值和方差 | 对初始化敏感,需要足够的 ensemble 数量 |
|
||
|
||
**推荐实践**:在 Offline RL 中使用 5-10 个 ensemble 成员,在计算效率和估计精度间取得平衡。
|
||
|
||
---
|
||
|
||
## 5. 模型基础 Offline RL(Model-based Offline RL)
|
||
|
||
### 5.1 问题设定
|
||
|
||
在 Model-based Offline RL(MBRL)中,我们首先从数据 $\mathcal{D}$ 中学习一个动态模型 $p_\phi(s'|s,a)$,然后基于该模型进行策略优化。
|
||
|
||
优势:
|
||
- 可以通过模型生成额外的转移样本
|
||
- 可以进行"想象力"规划
|
||
|
||
风险:
|
||
- 模型误差在外推中会被放大
|
||
- 错误模型可能导致完全错误的策略
|
||
|
||
### 5.2 不确定性感知模型
|
||
|
||
#### 5.2.1 贝叶斯神经网络
|
||
|
||
设网络权重 $\phi$ 服从后验分布 $p(\phi|\mathcal{D})$。预测分布为:
|
||
|
||
$$
|
||
p_\mathcal{D}(s'|s,a) = \int p(s'|s,a,\phi) \cdot p(\phi|\mathcal{D}) \, d\phi
|
||
$$
|
||
|
||
近似推断可采用:
|
||
- **Dropout 近似**:在推理时保持 dropout 激活,,多次前向传播估计方差
|
||
- **Mean-Field 近似**:假设 $q(\phi) \approx \mathcal{N}(\mu, \sigma^2)$
|
||
|
||
#### 5.2.2 集成模型
|
||
|
||
与价值函数集成类似,动态模型也可以用 ensemble:
|
||
|
||
$$
|
||
p_{\mathrm{KL}}(s'|s,a) = \frac{1}{K} \sum_{k=1}^K p_{\phi_k}(s'|s,a)
|
||
$$
|
||
|
||
**模型不确定性**:
|
||
|
||
$$
|
||
\sigma^2_{\mathrm{KL}}(s,a) = \frac{1}{K} \sum_{k=1}^K \left\|\mu_k(s,a) - \bar{\mu}(s,a)\right\|^2
|
||
$$
|
||
|
||
其中 $\mu_k(s,a) = \mathbb{E}_{s' \sim p_{\phi_k}(\cdot|s,a)}\left[s'\right]$。
|
||
|
||
### 5.3 保守模型学习
|
||
|
||
#### 5.3.1 约束模型训练
|
||
|
||
为防止模型外推误差,MBPO(Model-based Offline Policy Optimization, Janner et al., 2019)提出:
|
||
|
||
**模型正则化损失**:
|
||
|
||
$$
|
||
\mathcal{L}_{\mathrm{KL}}(\phi) = \mathbb{E}_{s,a,s' \sim \mathcal{D}}\left[-\log p_\phi(s'|s,a)\right] + \beta \cdot \underbrace{\mathbb{E}_{s,a}\left[\sigma^2_{\mathrm{KL}}(s,a)\right]}_{\mathrm{KL}
|
||
$$
|
||
|
||
#### 5.3.2 规划时保守修正
|
||
|
||
在基于模型进行规划时,对每步 rollout 的奖励/价值进行折扣修正:
|
||
|
||
$$
|
||
\hat{R}_{\mathrm{KL} = R - \lambda \cdot \sigma_{\mathrm{KL}
|
||
$$
|
||
|
||
其中 $\sigma_{\mathrm{KL}}$ 是沿 rollout 累积的不确定性估计。
|
||
|
||
**算法 3:MBPO 概要**
|
||
|
||
1. 从 $\mathcal{D}$ 训练 ensemble 动态模型 $\{p_{\phi_k}\}$
|
||
2. 基于模型估计不确定性 $\{\sigma_k(s,a)\}$
|
||
3. 对于当前状态 $s$,生成短-horizon rollouts:
|
||
- 从每个模型 $k$ 采样 $N$ 条轨迹
|
||
- 计算折扣累积回报 $R_k$
|
||
- 保守价值估计:$\hat{V}(s) = \min_k R_k - \lambda \cdot \sigma_k$
|
||
4. 使用 $\hat{V}$ 指导策略更新
|
||
|
||
---
|
||
|
||
## 6. 理论分析
|
||
|
||
### 6.1 最小后悔界(Minimum Regret Bound)
|
||
|
||
Regret 定义为最优策略价值与学得策略价值之差的累计:
|
||
|
||
$$
|
||
\text{Regret}(T) = \sum_{t=1}^T \left(V^*(s_t) - V^{\pi_\theta}(s_t)\right)
|
||
$$
|
||
|
||
Offline RL 的目标是**最小化 worst-case regret**。
|
||
|
||
**定理(Offline RL Regret Bound)**:
|
||
|
||
设 $\hat{\pi}$ 为从数据集 $\mathcal{D}$ 学得的策略,$|\mathcal{D}| = N$,则:
|
||
|
||
$$
|
||
\text{Regret}(T) \leq \tilde{O}\left(\frac{T \cdot H^2}{\sqrt{N}} + T \cdot \epsilon_{\mathrm{KL}\right)
|
||
$$
|
||
|
||
其中:
|
||
- $H$ 是轨迹长度(考虑有限 horizon 或折扣因子 $\gamma$)
|
||
- $\epsilon_{\mathrm{KL}}$ 是策略约束带来的近似误差
|
||
- $\tilde{O}$ 忽略对数因子
|
||
|
||
### 6.2 Fitted Q-Iteration 与收敛性
|
||
|
||
#### 6.2.1 Fitted Q-Iteration 算法框架
|
||
|
||
**算法 4:Fitted Q-Iteration**
|
||
|
||
1. **初始化**:$Q_0$ 任意初始化
|
||
2. **迭代** ($k = 0, 1, 2, \dots$):
|
||
- **E步骤(评估)**:对所有 $(s,a) \in \mathcal{D}$,计算目标值
|
||
$$
|
||
y_k(s,a) = r(s,a) + \gamma \mathbb{E}_{s' \sim \mathcal{D}}\left[\max_{a'} Q_k(s', a')\right]
|
||
$$
|
||
- **M步骤(拟合)**:更新 Q 函数
|
||
$$
|
||
Q_{k+1} = \arg\min_Q \mathbb{E}_{s,a \sim \mathcal{D}}\left[\left(Q(s,a) - y_k(s,a)\right]^2\right)
|
||
$$
|
||
|
||
#### 6.2.2 收敛性分析
|
||
|
||
**定理**:若 Q 函数类 $\mathcal{Q}$ 是函数空间的凸闭集,且每次迭代的拟合误差有界,则 Fitted Q-Iteration 收敛到唯一不动点 $Q^*$。
|
||
|
||
**证明要点**:
|
||
|
||
定义算子 $\mathcal{F}^\pi : \mathcal{Q} \to \mathcal{Q}$:
|
||
|
||
$$
|
||
(\mathcal{F}^\pi Q)(s,a) = r(s,a) + \gamma \mathbb{E}_{s'}\left[\pi(Q)(s', a')\right]
|
||
$$
|
||
|
||
其中 $\pi(Q)$ 是贪婪策略。
|
||
|
||
1. $\mathcal{F}^\pi$ 是 $\gamma$-收缩算子:
|
||
$$
|
||
\left\|(\mathcal{F}^\pi Q_1 - \mathcal{F}^\pi Q_2)\right\| \leq \gamma \left\|Q_1 - Q_2\right\|
|
||
$$
|
||
|
||
2. 由 Banach 不动点定理,存在唯一不动点 $Q^\pi = \mathcal{F}^\pi Q^\pi$
|
||
|
||
3. 对于最优策略 $\pi^*$,不动点满足 $Q^* = \mathcal{F}^{\pi^*} Q^*$
|
||
|
||
### 6.3 Offline RL 的 PAC 界
|
||
|
||
PAC(Probably Approximately Correct)界提供了样本复杂度保证。
|
||
|
||
**定义(PAC 界)**:算法 $\mathcal{A}$ 是 $(\epsilon, \delta)$-PAC 的,若以概率至少 $1-\delta$,输出策略 $\pi$ 满足:
|
||
|
||
$$
|
||
\mathbb{E}_{s \sim d^{\pi_{\mathrm{KL}}}\left[V^*(s) - V^\pi(s)\right] \leq \epsilon
|
||
$$
|
||
|
||
**定理(Offline RL PAC 界)**:
|
||
|
||
设 $\mathcal{D}$ 包含 $N$ 个 i.i.d. 样本,则存在算法使得:
|
||
|
||
$$
|
||
\mathbb{E}\left[V^* - V^{\hat{\pi}}\right] \leq \tilde{O}\left(\frac{1}{\sqrt{N}} + \frac{1}{(1-\gamma)^2} \cdot \epsilon_{\mathrm{KL}\right)
|
||
$$
|
||
|
||
其中 $\epsilon_{\mathrm{KL}}$ 是数据覆盖不足程度的度量:
|
||
|
||
$$
|
||
\epsilon_{\mathrm{KL} = \mathbb{E}_{s \sim d^{\pi^*}}\left[\left(1 - \frac{d^{\pi_{\mathrm{KL}}(s)}{d^{\pi^*}(s)}\right]_+\right)
|
||
$$
|
||
|
||
$(x)_+ = \max(x, 0)$ 是正部函数。
|
||
|
||
---
|
||
|
||
## 7. 与生成式模型的关系
|
||
|
||
### 7.1 Decision Transformer 作为 Offline RL 方法
|
||
|
||
#### 7.1.1 序列建模范式
|
||
|
||
Decision Transformer(Chen et al., 2021)将 RL 问题重新表述为序列建模问题:
|
||
|
||
**输入序列**:
|
||
|
||
$$
|
||
\mathbf{x} = \left(R_1, a_1, s_1, R_2, a_2, s_2, \dots, R_t, a_t, s_t, \right)
|
||
$$
|
||
|
||
**输出**:预测下一动作 $a_{t+1}$
|
||
|
||
其中 $R_k = \sum_{i=k}^T \gamma^{i-k} r_i$ 是未来累计回报。
|
||
|
||
#### 7.1.2 回报条件策略
|
||
|
||
Decision Transformer 学得条件分布:
|
||
|
||
$$
|
||
\pi_\theta(a_{t+1} | \tau, R_{\mathrm{KL}}) = \text{Transformer}\left(\text{Embed}(\tau), \text{Embed}(R_{\mathrm{KL}})\right)
|
||
$$
|
||
|
||
训练目标为标准的自回归分类损失:
|
||
|
||
$$
|
||
\mathcal{L}(\theta) = -\mathbb{E}_{(a_{t+1}, \tau) \sim \mathcal{D}}\left[\log \pi_\theta(a_{t+1} | \tau, R_{\mathrm{KL}})\right]
|
||
$$
|
||
|
||
#### 7.1.3 Offline RL 视角
|
||
|
||
Decision Transformer 的独特优势在于:
|
||
1. **无需显式价值函数**:避免了价值估计的外推问题
|
||
2. **回报条件控制**:通过指定目标回报引导策略
|
||
3. **序列建模的泛化能力**:Transformer 能够处理长程依赖
|
||
|
||
### 7.2 Offline RL 与扩散模型的结合
|
||
|
||
#### 7.2.1 扩散模型作为策略表示
|
||
|
||
近期工作(Diffuser, Chen et al., 2022; Decision Diffuser, Ajay et al., 2023)使用扩散模型直接建模策略分布:
|
||
|
||
**前向过程**(添加噪声):
|
||
|
||
$$
|
||
q(\mathbf{a}_t | \mathbf{a}_{t-1}) = \mathcal{N}\left(\mathbf{a}_t; \sqrt{1-\beta_t} \mathbf{a}_{t-1}, \beta_t \mathbf{I}\right)
|
||
$$
|
||
|
||
**反向过程**(去噪):
|
||
|
||
$$
|
||
p_\theta(\mathbf{a}_{t-1} | \mathbf{a}_t) = \mathcal{N}\left(\mathbf{a}_{t-1}; \mu_\theta(\mathbf{a}_t, t), \sigma_t^2 \mathbf{I}\right)
|
||
$$
|
||
|
||
**轨迹优化目标**:
|
||
|
||
$$
|
||
\mathcal{L}(\theta) = \mathbb{E}_{t, \mathbf{a}_0 \sim \mathcal{D}, \epsilon \sim \mathcal{N}(0,I)}\left[\left\|\epsilon - \epsilon_\theta(\mathbf{a}_t, t)\right\|^2\right]
|
||
$$
|
||
|
||
#### 7.2.2 Classifier-Free Guidance 在 Offline RL 中的应用
|
||
|
||
**引导分布**:
|
||
|
||
$$
|
||
\tilde{p}_\theta(\mathbf{a}_t | s, c) \propto p_\theta(\mathbf{a}_t | s) \cdot p_\theta(c | \mathbf{a}_t)^w
|
||
$$
|
||
|
||
其中 $c$ 是条件(如目标回报),$w$ 是引导强度。
|
||
|
||
这允许在推理时通过调整 $w$ 来平衡数据拟合和目标达成。
|
||
|
||
### 7.3 离线数据上的生成式模型预训练
|
||
|
||
#### 7.3.1 预训练-微调范式
|
||
|
||
大规模离线数据可用于预训练通用策略先验:
|
||
|
||
1. **预训练阶段**:在大量多样化的离线数据上训练扩散策略/Transformer 策略
|
||
2. **微调阶段**:在特定任务数据上进行策略优化
|
||
|
||
#### 7.3.2 冻结编码器的迁移学习
|
||
|
||
设预训练模型包含两部分:
|
||
- **表示编码器** $f_\psi$:提取状态/动作的通用表示
|
||
- **策略头** $\pi_\phi$:基于表示输出动作
|
||
|
||
迁移学习策略:
|
||
|
||
$$
|
||
\pi_{\phi'}(a|s) = \pi_{\phi}\left(a | f_{\psi^{\mathrm{KL}}(s)\right)
|
||
$$
|
||
|
||
其中 $f_{\psi^{\mathrm{KL}}$ 来自大规模预训练模型(如 VideoGPT, MaskGIT 等视觉编码器)。
|
||
|
||
---
|
||
|
||
## 8. 算法总结与比较
|
||
|
||
| 算法 | 核心方法 | 适用场景 | 关键超参数 |
|
||
|------|----------|----------|------------|
|
||
| BCQ | VAE + 约束动作空间 | 连续动作,数据覆盖较好 | 扰动幅度 $\epsilon$,采样数 $N$ |
|
||
| CQL | Conservative Q 正则化 | 需要理论保证的保守估计 | $\lambda$(正则化强度) |
|
||
| IQL | Expectile regression | 高效连续控制,无需枚举动作 | $\tau$(expectile),$\beta$(温度) |
|
||
| Decision Transformer | 序列建模 + 回报条件 | 长程任务,需要条件控制 | 上下文长度 $K$,embed 维度 |
|
||
| Diffuser | 扩散模型轨迹优化 | 多模态策略分布,高维动作 | 去噪步数 $T$,引导强度 $w$ |
|
||
|
||
---
|
||
|
||
## 参考文献
|
||
|
||
1. Fujimoto, S., Meger, D., & Precup, D. (2019). Off-policy deep reinforcement learning without exploration. *ICML*.
|
||
|
||
2. Kumar, A., Zhou, A., Tucker, G., & Levine, S. (2020). Conservative Q-Learning for offline reinforcement learning. *NeurIPS*.
|
||
|
||
3. Kostrikov, I., Nair, A., & Levine, S. (2022). Offline reinforcement learning with implicit Q-learning. *ICLR*.
|
||
|
||
4. Nachum, O., Dai, B., Kostrikov, I., et al. (2019). Alternating training for offline reinforcement learning with policy gradient methods. *ICLR*.
|
||
|
||
5. Janner, M., Fu, J., Zhang, M., & Levine, S. (2019). When to trust your model: Model-based policy optimization. *NeurIPS*.
|
||
|
||
6. Chen, L., Lu, K., Rajeswaran, A., et al. (2021). Decision transformer: Reinforcement learning via sequence modeling. *NeurIPS*.
|
||
|
||
7. Ajay, A., Han, D., Agrawal, P., et al. (2023). Imitating task-agnostic policies with decision diffusers. *ICML*.
|