Home / 强化学习 / BCQ:离线学习时,先别选择数据从没支持过的动作

第 37 天|BCQ:离线学习时,先别选择数据从没支持过的动作

系列首页 · 上一篇 · 下一篇

原论文与版本:Off-Policy Deep Reinforcement Learning without Exploration,2018。原论文。

先接住前作的问题

DDPG虽然离策略,却仍能在线试错并收集新证据。LSPI已暴露固定数据覆盖会限制贪心改进。BCQ把这个限制推进到没有在线纠错的连续控制:动作选择必须受现有证据约束。

五个前置概念

  1. 离线RL:只从既有数据学习控制。
  2. 外推误差:对数据外状态动作的错误估计。
  3. 条件VAE:按状态生成类似数据的动作。
  4. 扰动网络:在有限范围微调候选动作。
  5. 支持集:数据分布有概率覆盖的区域。

一、问题设定:没有新交互纠错时,怎样阻止Actor追逐数据外高Q

离线学习只能重用给定转移,无法为了核实一个高Q动作再去环境试一次。若Actor仍在全动作空间自由最大化,最高值可能恰好出现在最没证据的位置。BCQ因此先限制候选来自数据行为附近,再允许小范围改进。

要素 本文设定
研究场景 离线、连续动作、batch-constrained Q-learning
状态/观测 固定数据中的状态
动作 行为生成器候选加有界扰动
奖励或学习信号 数据记录奖励
终止/边界 数据终止标志决定自举

二、用行为生成器和有界扰动限制候选

离策略不等于可直接离线。在线DDPG选到错误高Q动作后还能用真实交互纠错;固定数据训练时,这个纠错通道不存在。未知动作的高估被放进Bellman目标,再传染到数据内动作,形成外推误差循环。

BCQ用条件生成模型产生接近数据的候选,再以有界扰动做局部改进,最后按Critic挑选。生成模型控制搜索范围,扰动控制离开行为的程度,Q决定更偏好哪个候选。Φ=0也不等于纯行为克隆,因为仍可在多次生成的行为候选里挑高价值动作。

约束越紧越少利用数据外漏洞,也越可能排除更好的行为;生成器漏掉罕见好动作则会直接限制上限。双Critic的min/max加权目标还与TD3纯min不同,阅读代码时要把候选限制和目标保守性分开。

分清候选索引、扰动动作与实际输出

a∗=arg⁡max⁡ai∼G(⋅∣s)Q(s,ai+ξ(s,ai)),∥ξ∥≤Φ.a^*=\arg\max_{a_i\sim G(\cdot|s)}Q(s,a_i+\xi(s,a_i)),\quad\|\xi\|\le\Phi. Φ控制允许偏离数据的范围;生成器通常用条件VAE,需同时优化重构与潜变量正则。

候选索引与实际执行动作要分开:上式是受限候选搜索的简写。严格地说,先抽 ai∼G(⋅∣s)a_i\sim G(\cdot\mid s),再形成 a~i=ai+ξ(s,ai)\tilde a_i=a_i+\xi(s,a_i),选择 i∗=arg⁡max⁡iQ(s,a~i)i^*=\arg\max_i Q(s,\tilde a_i),实际输出 a~i∗\tilde a_{i^*},不是未扰动的 ai∗a_{i^*}。GG 近似行为动作分布,ξ\xi 是有界扰动,Φ\Phi 是允许偏移尺度;原实现按动作分量限制扰动,还要遵守动作合法范围。有限候选的最大值只在这些候选中比较,没有解决全动作空间的精确最大化。见原文§4及Algorithm 1。

候选数控制有限搜索而不是数据覆盖

从同一行为模型多抽候选,会更容易抽到它已经赋予正概率的好动作;对生成器概率为零的动作,候选再多仍抽不到。增大候选数与改善生成模型覆盖必须分开评估。

让虚假高值动作10退出候选集合

以下是可手算的教学构造,不是论文实验。

数据在某状态只支持动作0和1,真实奖励分别0和1;Critic却误把从未见过的动作10估为100。无约束Actor会被吸引到10。BCQ生成候选0、1,即使Φ=0,也会选1而非按行为频率随机复制。

若真正最优动作是2,Φ=0.1且生成器从不接近2,BCQ也无法发现它。这是离线证据边界,不是再训练更久必能突破的问题。

三、生成候选、扰动并输出被评分的实际动作

输入:固定数据D,不新增环境训练数据
训练条件VAE G(a|s)
每批转移:
  从G(s_next)采多个候选动作
  用目标扰动网络做有界修正
  用原文双Q组合评分并取最好候选
  构造停止梯度的TD目标,训练Critic
  更新扰动网络以提高Q且保持幅度约束
  更新目标网络
评价时同样生成、扰动、挑选

实现要点:受限动作集可能排除更优行为,生成模型有覆盖误差。

四、读不同数据来源及行为回报参照

实验要素 原文设定与证据范围
环境与任务 原文Hopper等离线连续控制
数据来源与规模 专家、回放或不同质量固定批数据
对比基线 DDPG等离线应用与相关方法
训练预算与资源 固定数据规模和更新次数按场景;本文未完整核实
指标及其含义 真实回报及预测Q与Monte Carlo回报差
随机性与不确定性 图2阴影为半个标准差;完整种子数量未逐项复核
实际验证的假设 限制动作是否避免离线自举外推

实验解读(本文分析):原文§3分别分析缺数据、经验转移偏差与训练权重不匹配。图2比较不同数据来源,黑线是数据中行为回报,阴影是半个标准差,不能写成95%区间。行为回报水平与数据覆盖不同,应避免用单一“高质量数据”标签概括两者。

阴影半个标准差不是95%置信区间

BCQ在固定数据缓存及并发数据条件下的三任务学习曲线
原论文图形摘引;Fujimoto、Meger与Precup,2018/2019,Figure 2,仅(a)(b)及共用图例;原HTML图形;上排固定缓存、下排并发条件。核对原文。原版权保留。

图2选取的上排是固定缓存训练,下排是并发获得行为数据的条件;三列依次HalfCheetah、Hopper、Walker2d。纵轴均为真实评估平均回报,黑线给相应数据行为的平均回报参照。横轴虽统一标“Time steps”,上排的训练进度并不表示BCQ每一步都新增真实探索数据;下排数据随行为采集增长,黑线也随之变化。比较蓝色BCQ与黑线可问“有没有超过可见行为”,比较蓝色与其他学习器才是在问同一数据协议下的算法差异。

图1上下两排分别为实际回报和估值,细线为单次试验、粗线为平均,点线给Monte Carlo价值参照;它显示离线DDPG可以高Q而低收益。BCQ用生成候选和小扰动限制动作搜索,图2在不同批数据来源下检验控制效果,阴影为半个标准差。约束成功的前提仍包括生成器覆盖,离线“更保守”也可能排除数据外的真正好动作。 查看原文。

原论文Figure 2:此处补齐完整四行:(a)固定缓存、(b)并发数据、(c)模仿数据、(d)不完美示范;每行三列均为HalfCheetah、Hopper、Walker2d。黑线是行为回报参照,阴影为半个标准差。
完整原图摘引|Fujimoto、Meger与Precup,2018/2019,Figure 2;1812.02900v3,HTML S5.F2。核对原文与图号。原版权保留。原引用定位:原文。

读图提示:此处补齐完整四行:(a)固定缓存、(b)并发数据、(c)模仿数据、(d)不完美示范;每行三列均为HalfCheetah、Hopper、Walker2d。黑线是行为回报参照,阴影为半个标准差。

原论文Figure 1:上排为实际回报,下排为估计价值;三列依次对应固定缓存、并发数据和模仿数据。下排价值增长而上排回报不改善,才是需要警惕的外推误差现象。
完整原图摘引|Fujimoto、Meger与Precup,2018/2019,Figure 1;1812.02900v3,HTML S3.F1。核对原文与图号。原版权保留。原引用定位:原文。

读图提示:上排为实际回报,下排为估计价值;三列依次对应固定缓存、并发数据和模仿数据。下排价值增长而上排回报不改善,才是需要警惕的外推误差现象。

五、约束保护证据边界也限制改进上限

Φ太小会限制改进,太大又可能引入未知动作;行为生成器的覆盖误差与未见状态泛化也仍在。增加候选数有推理成本,不能用更长离线训练代替缺失的真实纠错证据。

六、继续追问:生成覆盖、扰动与离线评估

1. Φ如何在保守与改进间权衡?

扰动半径 Φ\Phi 小时,动作接近生成模型候选,能减少外推却限制超出数据的改进;较大时更有机会优化,但更容易离开可靠支持。即使 Φ=0\Phi=0,生成模型也可能生成数据之外的动作,因此不是硬支持保证。应按数据质量、动作尺度和候选覆盖选取,并报告真实收益与Q膨胀的折中。

2. 生成器遗漏少数好动作怎么办?

若好动作被生成器漏掉,后续有限候选搜索与小扰动通常无法恢复,保守算法便会锁在较差支持内。可增加候选数、改进多模态生成模型、对稀有高值样本分层训练,并在保留集检验覆盖;但不能用仅提高生成似然证明保留了关键少数动作。若数据本身完全没有这些行为,则需新数据或额外假设。

3. 为何离线Q增大可能是坏信号?

离线没有持续真实交互来纠正未知动作,Actor 可以追逐Q的错误高峰,自举再把这些值传播到数据内。于是预测Q不断上升、真实评测收益却下降。应同时追踪数据内 Bellman 误差、分布外动作比例和独立离线评价或允许的真实测试;只用训练Q作为模型选择指标会奖励估值漏洞。

七、比较动作约束与价值保守化

  • 平行动作约束:BEAR。同样限制数据外行为,改以样本分布差异近似支持限制,需另外检查核与阈值。

  • 平行价值约束:CQL。把干预放在Critic估值上,讨论无支持动作为何应被保守评价。

  • 原论文与图表入口。§3外推误差;批约束机制;图2实验与图注。

自测两题

第一题考查核心机制,第二题考查边界与辨析。建议先自行作答,再对照参考答案。以下数值小例子均为教学构造。

问题 1:离线学习为什么特别害怕数据外动作获得高 Q?

参考答案:网络可以给未见动作任意高分,Bellman 最大化又会选中它,并把高估向前传播。在线学习尚可能通过尝试发现错误,离线学习无法主动补数据。BCQ 用生成的候选动作与受限扰动,减少这种查询。

问题 2:限制动作接近数据,为什么可能阻止进一步改善?

参考答案:数据支持范围不一定包含最优动作,生成模型还可能漏掉少见好动作。限制越强,越难利用数据之外的潜在机会;限制太弱,又会恢复外推风险。这是可靠性与改进空间之间的取舍。

系列首页 · 上一篇 · 下一篇