当前位置: 首页 > 科技观察

离线强化学习的新范式!京东科技&清华大学提出了一种解耦学习算法

时间:2023-03-17 22:19:31 科技观察

离线强化学习算法(OfflineRL)是强化学习最热门的子方向之一。离线强化学习不与环境交互,旨在从先前记录的数据中学习目标策略。在数据收集昂贵或危险但可能存在大量数据的领域(例如,机器人、工业控制、自动驾驶),离线RL与在线RL相比特别有吸引力。在使用Bellman策略评估算子进行策略评估时,目前的离线强化学习算法根据X的不同可以分为RL-based(x=π)和Imitation-based(x=μ),其中π为目标strategy,μ为行为策略(注:targetstrategy:学习和更新的策略;behaviorstrategy:离线数据中的策略)。目前,RL-based和Imitation-based都各有优缺点:1.RL-based优势:可以泛化到数据之外,最终达到学习超越行为策略的目标策略。缺点:在政策评估中需要在准确的价值估计(更多的行为正则化)和政策促进(更少的行为正则化)之间进行权衡。在策略评估过程中,如果选择了数据分布之外的动作,则无法准确估计动作状态值,最终导致目标策略学习失败。2.Imitation-basedadvantage:由于策略评估过程中的动作都在数据分布之内,既可以带来训练的稳定性,又可以避免数据分布之外的策略评估,可以学到最好的行为策略库。好策略。缺点:因为所有的动作都在数据分布内进行,很难超越原始数据中存在的行为策略。基于此,POR不仅可以避免政策评估过程中的权衡取舍,而且具有数据外的泛化能力。该工作已被NeurIPS2022录用并受邀进行口头报告。论文和代码都是开源的。论文:https://arxiv.org/abs/2210.08323代码:https://github.com/ryanxhr/PORstate-stitchingvs.action-stitching任务:走格子,终点在右上角,然后起点在右下角。找到从开始到结束的最短路径。规则:agent可以在任意一个格子中选择自己周围的八个格子,走到尽头给予奖励1,其他所有行为奖励为0。数据:绿色行走路径为现有路径数据。以前基于模仿的算法使用动作拼接:将数据中可用的轨迹拼凑在一起以实现目标策略学习。比如视频中的蓝色轨迹是在action-stitching下可以学习到的最佳轨迹,但是在数据外无法有效泛化,从而学习到数据中行为策略之外的目标策略。然而,通过解耦学习范式,POR能够在行为策略的性能之外有效地泛化目标策略。如何实现状态拼接?Policy-guidedOfflineRL(POR)的学习过程分为三个步骤。这三个步骤是分开解耦的,互不影响。值得注意的是,POR全程基于imitation-basedlearning,即in-samplelearning,不评估数据分布之外的动作价值。1.使用分位数回归来学习价值函数的置信上限。2.使用学习到的值函数来学习可以在给定当前状态的样本内生成下一个最佳状态位置(s')的指导策略。后一项用作约束条件,以确保生成的状态满足MDP条件。3.使用数据中的所有样本学习一种执行策略,在给定当前状态(s)和下一个状态(s')的情况下,可以采取正确的动作从当前状态(s)移动到下一个状态(s')).步骤状态(s')。在测试过程中,首先根据当前状态信息(s),通过引导策略给出下一步的最优状态(s')。给定(s,s'),执行策略可以进行动作选择和执行。虽然POR的整个学习过程都是样本内学习,但是可以利用神经网络的泛化性能进行数据外泛化学习,最终实现状态拼接。实验作者比较了POR和其他算法在D4RLBenchmark上的性能。从表中可以看出,POR在次优数据上的表现非常可观,在难度更大的Antmaze任务上的表现达到了最好的算法性能。同时作者对比了POR(state-stitching)和IQL(action-stitching)的训练曲线,展示了state-stitching的优势。解耦的额外好处是什么1.重新学习指导策略,以实现算法的性能提升。在现实世界中,往往存在大量次优甚至随机的数据集(D_o),如果直接引入到正在学习的原始数据集(D_e)中,可能会导致学习到一个糟糕的策略,但是对于解中耦合学习算法而言,针对不同的组件,学习不同的数据集以提高性能。学习价值函数时,数据集越多越好,因为可以更准确地学习价值函数;相反,策略的学习不想引入(D_o)。作者比较了三种不同算法在不同训练场景下的表现:1.Main:在原始数据集(D_e)上学习,不引入额外的次优数据集。2.More:将原数据集(D_e)和新数据集(D_o)混合,作为新的数据集进行学习。3.Mix:对于解耦算法,对于不同的学习部分,可以使用不同的数据集进行学习,所以只有POR才能有Mix学习范式。从上图可以看出,当加入新的次优数据一起训练时(More),可能会导致比原来只有原始数据集(Main)更好或更差的性能,但它针对的是可以训练的decoupled以(D_o+D_e)的形式重新学习引导策略,作者的实验表明,更多的数据可以增强引导策略的选择和泛化能力,同时保持行为策略不变,从而实现对执行策略。4.面对新任务时,由于执行策略与任务无关,只需要重新学习引导策略。为此,作者提出了三个任务:(a):四房间:要求代理人从绿色方块走到红色方块。(b)除了完成任务(a)外,还要求代理人不要接触河流。(c)除了完成任务(a)、(b)外,agent还必须获得key才能完成任务。上图显示了策略学习完成后50次rollout的轨迹。在任务(b)和任务(c)中,作者沿用了任务(a)的执行策略,只是重新学习了引导策略。从上图可以看出,解耦学习方法可以在使用尽可能少的计算资源的情况下完成任务的迁移。