顾 扬 程玉虎 王雪松
由于兼具了强化学习优良的决策能力以及深度学习强大的表征能力和泛化性能,深度强化学习已成为解决复杂环境下感知决策问题的一个可行方案[1].近年来,深度强化学习已经在机器人控制[2]、电力系统优化[3]、网络安全[4]、视频游戏[5-6]、医疗健康[7]、自动驾驶[8-9]等领域取得了成功应用.
随着深度强化学习理论和方法的发展,学者们尝试开发智能体去处理一些数据采集困难,对硬件设备安全构成威胁的学习任务[10].2020 年之前,参考机器学习中批量学习的方法,学者们提出了一种无需进行探索、经验缓存固定的深度强化学习,并命名为批强化学习[11].2020 年后,随着批强化学习热度的提升,Levine 等[10]将此类算法重新命名为离线强化学习.离线强化学习有着行为策略下固定大小的经验缓存,可以避免在线探索带来的环境噪声和危险行为[12].一方面,离线强化学习可以从在线强化学习的经典算法中汲取灵感[13],有较长远的发展前景.另一方面,离线强化学习中,大部分算法通过引入模仿学习[14]来减小分布偏移,降低了强化学习与其他机器学习方法之间的壁垒.但一个值得关注的问题是: 习得策略下,智能体对离线经验缓存分布之外的(Out-of-distribution,OOD)状态评估会包含误差,从而表现并不理想.
针对这一问题,研究者们提出了许多解决方案.Fujimoto 等[15]率先提出了第一个能够从任意批数据(离线数据)中学习而无需探索的批约束深度Q学习(Batch-constrained deep Q-learning,BCQ).BCQ 采用Q 学习技术,在选取最大化Q 值对应的动作时,希望只考虑实际出现在离线数据集中的状态-动作对,而不考虑分布外的动作.为此,Kumar等[16]利用变分自编码器来生成与离线数据集分布相近的动作,并结合一个扰动网络模型对生成的动作进行调优,从而使动作具有多样性.测试阶段,在生成的动作空间中选择使Q 值最大的那些动作.由于BCQ 不涉及对未知状态-动作对的考虑,因此不会在策略与值函数上引入额外的偏差,同时,动作与值函数分开学习,也避免了误差累积.然而,Kumar 等[16]指出: 由于BCQ 对策略施加的约束较强,因此当离线数据集质量较差时,BCQ 只能有限地改善策略性能.进一步,Kumar 等[16]分析了分布偏移导致的自举误差,提出了使用两个独立值函数结构的自举误差累积消减算法(Bootstrapping error accumulation reduction,BEAR),利用支持集匹配的思想来防止自举误差累积.此外,BEAR 通过约束当前策略与行为策略之间的最大均值差异(Maximum mean discrepancy,MMD)[17]来使习得策略尽可能接近行为策略以缓解分布偏移问题.然而,由于需要计算MMD 距离,BEAR 的计算代价较大.Jaques 等[18]通过减小习得策略和行为策略之间的KL 散度,使学习到的策略逼近行为策略.与之类似,Maran 等[19]使用Wasserstein 距离来描述策略间差异,将减小策略分布间的Wasserstein 距离作为正则化项添加到优化目标中.为评估不同行为策略正则化项的重要性,Wu 等[20]引入一个通用的算法框架,称为行为正则化Actor-Critic.该框架涵盖了BCQ、BEAR 等,同时提供了多种实际选择方案,使研究人员能够以模块化的方式比较不同变体的性能.进一步,Wu 等[20]提出两类正则化方法:BRAC-v 与BRAC-p,前者是对值函数进行正则化,后者则是对策略进行正则化.值得注意的是,值函数正则化虽然可以提高OOD 状态评估的准确程度,但也会在值函数更新过程中增加噪声,使习得策略难以收敛.策略正则化虽然能有效降低分布偏移且提高习得策略的稳定性,但会增大习得策略陷入局部最优的概率.
上述离线强化学习方法都倾向于通过降低分布偏移来提高习得策略的质量,但忽视了离线数据集质量对离线强化学习性能的影响.类似的,在在线强化学习方法中,经验的好坏对智能体的训练起到非常重要的作用.因此,如何让智能体高效地选择样本也是提高强化学习算法性能的一个有效措施.Schaul 等[21]在在线强化学习(深度Q 网络)中采用了优先经验回放技术,主要思路为: 通过时序差分(Temporal difference,TD)误差估计经验池(经验缓存区)中样本的重要程度并赋予样本不同的优先级,使那些在训练过程中对智能体更加重要的样本更容易被选择.Horgan 等[22]在优先经验回放技术的基础上提出了分布式经验池的思想,进一步提升了强化学习智能体在复杂环境中的表现.
离线经验缓存的质量主要会通过以下两个方面来影响离线强化学习的训练: 1) 行为策略下生成的离线经验缓存中会包含折扣回报低于平均水平的失误经验,这些经验所占比例往往不高.因此,训练过程中智能体容易忽视失误经验,无法在对应的场景下做出最优的行为.2) 离线经验缓存中的样本根据其是否有利于策略优化可以分为正样本与负样本,负样本更多的存在于失误经验集合中,过多采样负样本进行训练会导致习得策略的质量不理想.于是,参考在线强化学习采用的优先经验回放技术,离线强化学习也需要通过优化采样模型来改善强化学习智能体的训练效果,从而提高习得策略的质量.为此,本文提出两种离线优先采样模型: 1) 基于时序差分误差的采样模型,可以提高值函数的估计精度,有效地应对可能出现的OOD 状态.2) 基于鞅的采样模型,可以对经验数据进行筛选,使智能体自主地优先学习对策略优化有利的正样本.进一步,将这两种采样模型与BCQ 相结合,提出基于时序差分误差的优先BCQ (TD-PBCQ)和基于鞅的优先BCQ (M-PBCQ).D4RL 和Torcs 数据集上的实验结果表明: 1) TD-PBCQ 适用于行为策略基本收敛,且离线经验缓存中包含少量失误经验的离线强化学习任务.2) M-PBCQ 适用于离线经验缓存中包含较多失误经验的离线强化学习任务.
为提高离策略深度强化学习算法在离线强化学习场景下的工作效果,Fujimoto 等[15]通过构建编码器网络和扰动网络来生成更好的策略,提出了批约束深度Q 学习.在BCQ 中,编码器网络和扰动网络输出的动作可表示为状态到动作的映射µBCQ:
通过变分自编码器V AEω和扰动网络ξϕ,BCQ可以在不与环境进行交互的限制条件下,遍历到一个受限域区间内的多个动作,因此BCQ 有概率学习到比行为策略更好的策略.在值函数更新部分,BCQ 使用了两个Q 值网络Q θ1和Q θ2来降低过估计误差,其目标值的计算方法为:
其中,λ为在区间 (0,1) 取值的参数,可以通过选择不同的λ来调节未来时间步不确定性给值函数更新带来的影响.当 Φ=0 且n=1 时,BCQ 会退化为行为克隆算法,机械地学习所有离线经验数据.当Φ趋向于动作的上下限且n →∞时,BCQ 等价于在线Q 学习,会产生较大的外推误差.BCQ 通过在线强化学习使值函数估计逼近最优值函数,通过行为克隆算法减小测试时OOD 状态出现的概率.
BCQ 算法定义了外推误差,主要用于描述强化学习算法由于经验数据不足导致的估计误差.在离线强化学习场景下应用离策略算法,离线值函数和在线值函数Qπ之间的差异为:
其中,P π(s) 为策略π下遍历到状态s的概率.
假设离线经验缓存为B,其中包含的样本数为M,对应的行为策略为πB.行为克隆(Behavior clone,BC)可以高效地学习B中状态到动作的映射,但B中经验数据相关性较高,BC 的训练很容易过拟合,因此训练得到的策略鲁棒性很差.与行为克隆算法相比,离线强化学习算法的样本效率虽然不高,但会根据经验数据学习状态值等指标来评价状态和动作的好坏.这些指标可以帮助智能体在访问OOD状态时做出合理的动作,因此离线深度强化学习习得策略的鲁棒性更高.但是,离线深度强化学习仍面临着这样一个问题: 经验数据分布不理想会导致学习过程中产生累积误差.
假设离线数据集中存在两类状态s+和s-,其中状态s-对应的经验即为失误经验.离线经验缓存B中s+被采样的概率越大,意味着s+有更高的概率被采样,由s+计算得到的损失会主导模型的训练,离线强化学习算法对s+的状态值的估计越准确.如果s-被采样的概率很小,由失误经验计算得到的梯度很容易被忽略,进而导致智能体无法在状态s-做出正确的行为.因此,增强对状态s-的学习有利于逼近真实的策略评价指标.
对于优先经验回放(Prioritized experience replay,PER)来说,样本的采样概率定义为[21]:
其中,υ为对应的经验数据,p(υ) 为经验数据υ对应的优先级.o为指数参数,用于决定优先级使用的程度.如果取o=0,则采样模型在B中均匀采样.我们考虑将优先经验回放引入离线强化学习算法中,并命名为基于时序差分误差的采样模型.
在基于时序差分误差的采样模型中,p(υ)=|δυ|+σ,σ为优先级修正系数,用来避免优先级为0 的经验被采样的概率为0.如果使用一步更新的Q 学习算法,则B中经验数据υ对应的TD 误差δυ为:
由于离线经验缓存的数据分布是固定的,离线经验优先级的计算比在线场景下的确定性更强.离线训练中,PER 会使智能体更多地关注失误经验,减少信息的浪费.然而,如果失误经验中包含较多的负样本,PER 反而会增大负样本的采样概率,阻碍策略的优化.
鞅论是现代概率论的一个重要内容,也是随机过程和数理统计研究的重要工具.实际上,在强化学习算法的发展过程中,鞅论和强化学习之间一直存在着很深的联系,很多鞅论的方法被用于理论证明强化学习算法的有效性.例如,Mandl[23]找到了有限控制Markov 过程中存在的鞅过程.Hernández-Lerma 和Ozak[24]研究了离散Markov 过程,并给出了策略优化的等价命题,其中研究的很多值迭代过程与鞅有关.Even-Dar 和Mansour[25]使用Azuma 不等式来约束鞅的变化偏差,估计值函数在某更新步完成优化的概率,进而估计策略优化所需的时间.Hu 等[26]使用杜布分解来简化下鞅过程,使得复杂系统更容易被智能体学习.Chow 等[27]利用上鞅收敛性来确保Lyapunov 函数的收敛,并用于求解约束MDP 问题.为此,本文尝试通过分析采样数据对应的轨迹是否为下鞅来推断经验数据是否有利于策略优化.
进一步,可以得出
由此可以得出: 如果 E [r(st+1)|st]=r(st),则有 E [V(st+1)|st]=V(st).
通过定理1 可以看出: 如果回报函数为鞅,即E[r(st+1)|st]=r(st),说明经验对应的路径和值函数更新过程都为鞅.由停时定理和鞅的一致收敛性可知,对任意停时T<∞,总有 E [VT]=E[V0].也就是说,此时无论训练多少步,值函数的期望都不会发生变化.当且仅当 E [V(st+1)|st]>V(st) 时,值函数更新才满足强化学习的策略优化条件.于是,可以通过估计 E [V(st+1)|st] 与V(st) 之间的大小差异来评估经验数据对策略优化的有利程度.
为了更好地解释鞅与策略优化之间的关系,以格子世界环境为例加以阐述.如图1(a)所示环境示意图,智能体从O出发,到达目标G终止一个情节.如图1(b)所示最优值函数热图,由于到达G点情节被终止,因此G点的状态值并不会迭代更新,导致其数值较小.本次实验使用基于线性函数逼近的Q 学习在迷宫中训练300 个迭代步,每隔50 次迭代绘制一张值函数热图.共进行了两个批次的训练,值函数迭代更新过程如图2 所示.图2 中,相比于训练批次2,训练批次1 的值函数明显更趋近于最优值函数.于是,可以得出如下观点:
图1 格子世界实验图 Fig.1 Experimental diagram of grid-world
图2 值函数更新热图Fig.2 Heatmap of value function updating
1) 图2 中每一个像素点s的亮度用于描述对应状态值V(s) 的大小.如果热图中像素点s′比s的亮度高,则说明V(s′)>V(s).
2) 值函数的更新会按照被访问的先后顺序s →s′,从亮点逐级反向传播,即有效的值函数更新从满足 E [V(s′)|s]>V(s) 的状态s开始.如图2 所示,批次1 中满足 E [V(s′)|s]>V(s) 的状态数量明显高于批次2 中的状态数量.因此,经验缓存中,满足 E [V(s′)|s]>V(s) 的经验数据占比越高,越有利于值函数的学习.
3) 如图2(b)所示,前150 次迭代没有亮点出现,值函数热图维持不变.因此,如果状态值满足E[V(s′)|s]≤V(s),值函数优化效率很低.150 次迭代后,批次2 的热图中虽然出现了亮点,但亮度十分有限.说明训练批次2 的经验缓存中,满足E[V(s′)|s]≤V(s)的经验数据占比较高,从而会产生累积误差,不利于值函数的学习.
综上所述,我们认为经验缓存中包含越多符合E[V(s′)|s]>V(s)的经验数据越有利于值函数和策略的优化,这一观点在离线强化学习场景中同样适用.
由于负样本会一直存在于离线经验缓存B中,其对习得策略的不良影响会随着重复采样而增强.于是,为减少对负样本的采样频率,提出基于鞅的采样模型.设策略π下状态-动作对 (s,a) 被采样的概率为由于强化学习会贪心地选择动作,因此状态s下选择不同动作的概率差异一般会较大,可以得到推论1.
推论 1.在离线强化学习场景下,均匀采样学习得到的策略有概率不为离线经验中的最优策略.
推论1 说明: 离线经验缓存中如果折扣回报低的经验数据占比很高,则离线强化学习算法就有高概率陷入局部最优.
根据第3.1 节的描述可知,如果 (s,a,r,s′) 对应的轨迹为下鞅,则认为 (s,a,r,s′) 更有利于策略的优化.如果 (s,a,r,s′) 对应的轨迹为鞅或上鞅,则频繁地采样 (s,a,r,s′) 以更新网络参数反而会出现如图2(b)一样的误差累积状况,从而阻碍值函数的优化.为此,可以考虑基于 E [V(st+1)|st] 与V(st)之间的数值差异来设计一种样本评估方法,得到下述推论.
推论 2.经验数据有利于值函数优化的程度与鞅差 E [V(s′)|s]-V(s) 正相关.
证明.设在第k个迭代步,值函数优化的幅度为 ΔVk:=Vk+1(s)-Vk(s),使用期望状态值来计算目标值,则有:
由于同一状态下即时回报r(s) 是一个常数,且γ大于 0,因此得到:
如果 ΔVk很大,则说明当前的状态值过于低估了数据 (s,a,r,s′),优先学习这个数据可以让值函数找到优化的方向,并可在此基础上更准确地判断其他数据的 ΔV,使得整个策略向着一个好的方向发展.反之,如果 ΔVk很小,则说明数据(s,a,r,s′)所在的过程更可能是上鞅,此时状态值会随更新迭代变小或维持原样,不利于策略的优化.
推论2 表明在值函数的优化过程中,应当着重学习 E [V(s′)|s]-V(s) 数值较高的数据 (s,a,r,s′),并降低对数值过低数据的采样频率.在实际训练过程中,鉴于增加额外的网络用于学习 E [V(s′)|s] 和V(s)会比较耗时,此处考虑使用一种近似的简便计算方法来求取基于鞅的优先级.
推论 3.对于数据基于鞅的优先级为:
证明.对于离线强化学习来说,其状态值迭代公式为:
对应地,有利于值函数优化的程度可以表征为:
其中,β=1/(1-γ) 为大于0、小于1 的常数,离线经验数据对训练的有利程度与EB[V(s′)]/βr(s,a)的大小正相关.当值函数估计存在误差时,EB[V(s′)]/β-r(s,a)的值会很小,使得优先级差异不大,难以区分.可以进一步推导出:
因此,推论3 成立.
综上所述,基于鞅的采样模型使用基于鞅的优先级来决定数据υ被采样的概率:
其中,σ为优先级修正系数,用于避免样本的采样概率完全为0.
将基于时序差分误差的采样模型和基于鞅的采样模型分别与BCQ 相结合,得到两种离线强化学习方法: TD-PBCQ 和M-PBCQ.为表述方便,算法1 给出BCQ 的伪代码.
算法 1.BCQ
TD-PBCQ 通过变分自编码器生成n个动作,并根据这些动作进行目标值的计算和网络的优化.考虑到目标值中会包含一定的扰动,优先级δ改写为:
将BCQ 伪代码中的步骤1)、2)、3)替换为算法2 中的步骤,即可得到TD-PBCQ 的伪代码.
算法 2.TD-PBCQ
由式(12)可以看出,基于鞅的采样模型需要计算 E [V(s′)].由于扰动网络会生成置信区间内的n个动作,如果使用贪心策略,则可以认为E[V(s′)]=因此,将这些状态-动作对应的Q值取平均作为期望状态值E[V(s′)],使得对基于鞅的优先级评估更加保守.为此,基于鞅的优先级可改写为:
将BCQ 伪代码中的步骤1)、2)、3)替换为算法3 中的步骤,即可得到M-PBCQ 的伪代码.
算法 3.M-PBCQ
1) 计算重要性采样权重: M-PBCQ 不计算重要性采样权重
2) 更新优先级: 根据式(18)计算优先级uj,根据式(16)更新经验数据的优先级
3) 累积Q 值网络参数变化 Δθ和扰动网络参数变化 Δϕ:
累积Q 值网络参数变化
累积扰动网络参数变化
首先,将TD-PBCQ、M-PBCQ 和BCQ 在D4RL提供的公用离线数据集上,针对Ant、HalfCheetah、Hopper、Walker2d 等任务在中等(medium)和专家(expert)数据集上进行实验.然后,将TD-PBCQ、M-PBCQ 和BCQ 在Torcs 任务的离线经验缓存上进行实验.实验中,具体的参数设置如表1 所示.
表1 参数设置Table 1 Parameter settings
当离线数据集中的经验数据为medium 等级时,TD-PBCQ、M-PBCQ 和BCQ 在D4RL 任务上取得的回报曲线如图3 所示,其中实线为平均回报曲线,阴影区域为平均奖励的标准差.图4 给出了medium 离线数据集中各路径所对应总回报的统计直方图.由图3、4 可以得出如下结论:
图3 平均回报曲线对比(medium 经验数据)Fig.3 Comparison of average reward curves(medium experience data)
图4 回报的统计直方图(medium 经验数据)Fig.4 Statistical histogram of reward(medium experience data)
1) 在Ant、HalfCheetah 和Walker2d 中TDPBCQ 取得了最高的回报.这是由于: Ant、HalfCheetah 和Walker2d 任务中medium 离线经验数据的回报统计直方图是右偏的,且最高峰在最右侧.此种情况下,TD-PBCQ 通过降低时序差分误差,得到了更准确的值函数;BCQ 和M-PBCQ 均是更倾向于最优路径的学习,值函数估计误差的累积使得其最终性能不如TD-PBCQ.也就是说,如果策略没有收敛,且离线经验都分布在缓存中最优路径周围,TD-PBCQ 可以取得更好的实验效果.
2) 在Hopper 任务中,M-PBCQ 的平均回报收敛到1 600 以上,而BCQ 和TD-PBCQ 的平均回报均在1 600 以下.由图4(c)可以看出,与其他3 个任务不同,Hopper 任务中medium 离线经验缓存中的路径总回报大都分布在1 100~1 600 的中等水平区间内.因此,Hopper 任务中medium 的离线经验缓存中有较多负样本,导致BCQ 和TD-PBCQ陷入局部最优.但是,M-PBCQ 能够减弱负样本对策略优化的负面影响,使得习得策略明显优于离线经验缓存中的平均水平.
3) 在所有4 个测试任务上,TD-PBCQ 和MPBCQ 的平均回报曲线都要高于BCQ.这是由于:medium 策略并不是最优策略,如果使用均匀采样,正、负样本有相同的概率被选择,因此BCQ 的性能被抑制.也就是说,改变采样模型可以有效降低离线强化学习中的误差累积,提高算法的学习性能.
expert 策略等价于最优策略,收集得到的经验数据集也基本上都分布在最优路径的周围.当离线数据集中的经验数据为expert 等级时,TD-PBCQ、M-PBCQ 和BCQ 在D4RL 任务上取得的回报曲线如图5 所示.图6 给出了expert 离线数据集中各路径所对应总回报的统计直方图.由图5、6 可以看出:
图5 平均回报曲线对比(expert 经验数据)Fig.5 Comparison of average reward curves(expert experience data)
图6 回报的统计直方图(expert 经验数据)Fig.6 Statistical histogram of reward(expert experience data)
1) TD-PBCQ 在Ant 和Hopper 任务上取得了最高的回报.这是由于: Ant 和Hopper 任务中expert 离线经验数据的回报统计直方图是右偏的且最高的峰在最右侧.另外,这两个任务中的expert行为策略并没有完全收敛,都有一定概率访问远离主要路径的经验数据.在此类离线强化学习任务中,TD-PBCQ 有效减小了值估计误差,因此取得了最好的实验效果.
2) 如果策略完全收敛到最优策略,TD-PBCQ的训练会过拟合,影响实验效果.从图6(b)可以看出,HalfCheetah 任务中回报统计直方图左侧的数据非常少.TD-PBCQ 由于过度采样左侧的数据导致值函数的训练过拟合,算法性能受到抑制,最终表现不如BCQ.
3) 从图6(d)可以看出,Walker2d 任务中的离线经验数据基本都分布在最优路径上.BCQ、TDPBCQ 和M-PBCQ 的平均回报曲线较为相似,最后都取得了超过4 500 的平均回报.这是因为在经过多次迭代后,BCQ 和TD-PBCQ 的采样模型均为均匀采样,抑制了回报的上升趋势.然而,M-PBCQ 可以一直降低对负样本的采样频率,因而以较小的优势强于BCQ 和TD-PBCQ.
Torcs 是一款开源3D 赛车模拟游戏,其赛道较长、路况复杂且没有公开的经验数据集.在实验过程中,使用中等行为策略收集了平均回报为7 820的离线数据.表2 和图7 给出了BCQ、TD-PBCQ和M-PBCQ 在Torcs 任务上的实验结果,可以得出:
表2 Torcs 任务上平均回报对比Table 2 Comparison of average reward on Torcs task
图7 平均回报曲线对比(Torcs)Fig.7 Comparison of average reward curves (Torcs)
1) 如图7 所示,50 000 步之前,TD-PBCQ 学习到了优于BCQ 的策略.然而,TD-PBCQ 习得策略的稳定性并不高.在93 000 个训练步后,随着TD误差的降低,基于TD 误差的采样模型会退化为均匀采样.因此,负样本对算法训练的不良影响逐渐变强,使得习得策略发生了退化.
2) 相比于TD-PBCQ 和BCQ,M-PBCQ 的习得策略有着明显的优势,这是因为离线优先采样模型可以降低负样本对训练的影响,使智能体学习到更好的策略.另一方面,与基于TD 误差的采样模型不同,基于鞅的采样模型不会退化为均匀采样,一些不利于策略优化的经验数据在整个训练过程中被采样的频率都会受到限制,因此M-PBCQ 的稳定性更好.
强化学习通过智能体与环境在线交互来学习最优策略,近年来已成为求解复杂环境下感知决策问题的重要手段.然而,在线收集数据的方式可能会引发安全、时间或成本等问题,极大限制了强化学习在实际中的应用.幸运的是,离线强化学习能够仅从历史经验数据中学习策略,而无需与环境产生交互,这种数据驱动的方式为实现通用人工智能提供了新契机.然而,离线数据集的质量将影响算法的学习性能,想要从离线数据集中学到一个好的策略并非易事.为此,本文围绕如何从离线数据集中高效地选择有价值的样本展开研究,利用时序差分误差和鞅来构造样本优先级,提出两种离线优先采样模型: 基于时序差分误差的采样模型和基于鞅的采样模型.在智能体训练过程中,这两种采样模型可以有针对性地选择经验数据,引导值函数估计和策略优化.进一步,将所提两种采样模型与BCQ 相结合,提出基于时序差分误差的优先BCQ 和基于鞅的优先BCQ.需要指出的是,所提离线优先采样模型具有通用性,可以方便地与其他离线强化学习方法相结合.