AWAC:使用离线数据集加速在线强化学习技术博客技术支持京天机器人官网

该方法通过从先前的数据集(专家演示,先前的实验数据或随机探索数据)进行离线训练,然后通过在线交互快速进行微调来学习复杂的行为

经过强化学习(RL)训练的机器人有潜力用于各种挑战性的现实世界中的问题。要将RL应用于新问题,通常需要设置环境,定义奖励功能,并通过允许机器人从头开始探索新环境来训练机器人解决任务。尽管这最终可能行得通,但是这些“在线”RL方法非常耗费数据,并且针对每个新问题重复执行这种数据效率低下的过程,因此很难将在线RL应用于现实世界中的机器人技术问题。如果我们能够在多个问题或实验之间重用数据,而不是每次都从头开始重复数据收集和学习过程。这样,我们可以大大减少遇到的每个新问题的数据收集负担。

图1:使用离线数据集加速在线RL的问题。在(1)中,机器人完全从离线数据集中学习策略。在(2)中,机器人可以与世界互动并收集策略样本,以改进策略,使其超出脱机学习的范围。

我们使用标准基准HalfCheetah移动任务来分析从离线数据学习和后续的微调问题中的挑战。以下实验是使用先前的数据集进行的,该数据集包含来自专家策略的15个演示和从这些演示的行为克隆中采样的100个次优轨迹。

图2:与非策略方法相比,基于策略的方法学习起来较慢,这是因为非策略方法能够“缝合”良好的轨迹,如左图所示右:在实践中,我们看到在线改进缓慢使用策略上的方法。

1.数据效率

利用诸如RL演示之类的先前数据的一种简单方法是,通过模仿学习对策略进行预训练,并通过基于策略的RL算法(例如AWR或DAPG)进行微调。这有两个缺点。首先,先验数据可能不是最佳的,因此模仿学习可能无效。第二,基于策略的微调是数据效率低下的,因为它不会在RL阶段重用先前的数据。对于现实世界的机器人技术而言,数据效率至关重要。考虑右边的机器人,尝试以先前的轨迹达到目标状态T1和T2。策略上的方法不能有效地使用此数据,但是可以有效地“缝合”进行动态编程的策略外算法T1和T2以及使用价值函数或模型。在图2的学习曲线中可以看到这种效果,其中按策略使用的方法要比按策略使用的参与者批评方法慢一个数量级。

图3:使用离线策略RL进行离线培训时,引导错误是一个问题。左:该策略利用了远离数据的错误Q值,从而导致Q函数的更新不佳。中:因此,机器人可能会执行超出分配范围的动作。正确:引导错误在使用SAC及其变体时会导致不良的离线预训练。

原则上,该方法可以通过贝尔曼自估计未来回报的价值估计V(s)或行动价值估计Q(s,a),从非政策性数据中高效学习。但是,当将标准的非策略参与者批评方法应用于我们的问题(我们使用SAC)时,它们的性能较差,如图3所示:尽管重放缓冲区中已有数据集,但这些算法并未从脱机中显着受益训练(通过比较图3中的SAC(从头开始)和SACfD(在先)行可以看出)。此外,即使策略已通过行为克隆进行了预训练(“SACfD(预训练)”),我们仍然会观察到性能最初出现下降。

此挑战可归因于策略外引导错误累积。在训练期间,Q估计值将不会完全准确,尤其是在推断数据中不存在的动作时。策略更新利用了高估的Q值,使估计的Q值更糟。该问题如图所示:错误的Q值导致对目标Q值的错误更新,这可能导致机器人采取较差的措施。

3.非平稳行为模型

诸如BCQ,BEAR和BRAC之类的现有脱机RL算法建议通过防止策略偏离数据太远来解决引导问题。关键思想是通过将策略π限制为接近“行为策略”πβ来防止引导错误,即重播缓冲区中存在的动作。下图说明了这个想法:通过从πβ采样动作,可以避免利用远离数据分布的错误Q值。

但是,πβ通常是未知的,尤其是对于脱机数据,必须从数据本身进行估计。许多离线RL算法(BEAR,BCQ,ABM)明确地将参数模型拟合到来自重播缓冲区的πβ分布的样本。在形成估计值后,现有方法以各种方式实施策略约束,包括对策略更新的惩罚(BEAR,BRAC)或针对策略训练的采样动作的体系结构选择(BCQ,ABM)。

尽管具有约束的离线RL算法在离线状态下表现良好,但仍难以通过微调来改进,如图1中的第三幅图所示。我们看到,纯离线RL性能(图1中为“0K”)要好得多。比SAC。但是,通过在线微调的其他迭代,性能提高非常缓慢(从图1中的BEAR曲线的斜率可以看出)。是什么原因导致这种现象?

问题在于当在微调期间在线收集数据时,要建立一个准确的行为模型。在脱机设置中,行为模型仅需训练一次,但在在线设置中,必须在线更新行为模型以跟踪传入数据。在线(在“流”环境中)训练密度模型是一个具有挑战性的研究问题,在线和离线数据的混合导致了潜在的复杂多模式行为分布,这使难度变得更大。为了解决我们的问题,我们需要一种策略外的RL算法,该算法会约束该策略以防止脱机不稳定和错误累积,但并不过于保守,以至于由于行为建模不完善而无法进行在线微调。我们提议的算法(将在下一部分中讨论)通过采用隐式约束来实现。

图4:AWAC的示意图。高权重的过渡将以高权重回归,而低权重的过渡将以低权重回归。右:算法伪代码。

那么,这在解决我们较早提出的问题方面的实际效果如何?在我们的实验中,我们表明,我们可以从人类示范和非政策性数据中学习困难,高维,稀疏的奖励灵巧操纵问题。然后,我们使用随机控制器生成的次优先验数据评估我们的方法。本文还包括标准MuJoCo基准环境(HalfCheetah,Walker和Ant)的结果。

灵巧的操纵

图5.顶部:在线培训后显示的各种方法的性能(笔:200K步,门:300K步,重新安置:5M步)。下图:显示了具有稀疏奖励的敏捷操作任务的学习曲线。步骤0对应于离线预训练后开始在线训练。

我们的目标是研究代表现实世界机器人学习困难的任务,其中最重要的是离线学习和在线微调。其中一种设置是Rajeswaran等人在2017年提出的一套灵巧操作任务。这些任务涉及使用MuJoCo模拟器中的28自由度五指手进行复杂的操作技能:笔的手旋转,通过解锁手柄打开门,捡起球体并将其重新定位到目标位置。这些环境面临许多挑战:高维动作空间,具有许多间歇性接触的复杂操纵物理以及随机的手和物体位置。这些环境中的奖励功能是任务完成的二进制0-1奖励。Rajeswaran等。为每个任务提供25个人工演示,虽然这些演示不是完全最佳的,但确实可以解决任务。由于此数据集非常小,因此我们通过构造行为克隆策略,然后从该策略中进行采样,又生成了500条交互数据轨迹。

使用脱离策略的RL进行强化学习的优势在于,我们还可以合并次优数据,而不仅仅是演示。在本实验中,我们使用Sawyer机器人在模拟的桌面推动环境中进行评估。

为了研究从次优数据中学习的潜力,我们使用了由随机过程生成的500条轨迹的非政策数据集。任务是将对象推入40cmx20cm目标空间中的目标位置。

结果显示在右图中。我们看到,尽管许多方法以相同的初始性能开始,但是AWAC可以在线上最快地学习,并且实际上能够有效地使用离线数据集,这与某些完全无法学习的方法相反。

能够使用先前的数据并在新问题上快速进行微调,为研究开辟了许多新途径。我们对使用AWAC从RL中的单任务机制到多任务机制以及任务之间的数据共享和通用化感到非常兴奋。深度学习的优势在于其在开放世界环境中进行概括的能力,我们已经看到,它改变了计算机视觉和自然语言处理的领域。为了在机器人技术中实现相同类型的概括,我们将需要利用大量先验数据的RL算法。但是机器人技术的一个主要区别是,为一项任务收集高质量的数据非常困难-通常与解决任务本身一样困难。这与例如计算机视觉相反,在计算机视觉中,人可以标记数据。因此,主动数据收集(在线学习)将成为难题的重要组成部分。

这项工作还提出了许多算法方向。请注意,在这项工作中,我们专注于策略π和行为数据πβ之间的不匹配动作分布。在进行非政策学习时,两者之间的边际状态分布也不匹配。凭直觉,考虑两个解决方案A和B的问题,其中B是更高收益的解决方案,而非政策性数据则说明了提供的解决方案A。即使机器人在在线浏览过程中发现了解决方案B,非策略数据仍主要包含来自路径A的数据。因此,Q函数和策略更新是针对遍历路径A时遇到的状态进行计算的,即使它不会遇到这些状态执行最佳策略时。以前已经研究了这个问题。考虑到两种类型的分布不匹配,可能会导致采用更好的RL算法。

最后,我们已经在使用AWAC作为加快研究速度的工具。当我们着手解决任务时,我们通常不会尝试使用RL从头开始解决它。首先,我们可以遥控机器人以确认任务可以解决;那么我们可能会进行一些硬编码的策略或行为克隆实验,以查看简单的方法是否已经可以解决它。使用AWAC,我们可以保存这些实验中的所有数据,以及其他实验数据(例如超参数扫描RL算法时的数据),并将其用作RL的先前数据。

DonghuRobotLaboratory,2ndFloor,BaoguInnovationandEntrepreneurshipCenter,WuhanCity,HubeiProvince,ChinaTel:027-87522899,027-87522877

THE END
1.onlinetraining和offlinetraining在深度学习中什么意思?文章浏览阅读1.6k次。在线学习与离线学习是两种不同的机器学习模式。离线学习用于处理大数据和复杂模型,需要完整数据集,训练完成后才应用模型。在线学习则按顺序处理数据,实时更新模型,适用于数据流场景,如监控视频分析。两种方式各有优劣,常结合使用,如离线预训练加https://blog.csdn.net/Adam897/article/details/129908295
2.相比于离线训练,在线训练的好处有什么?问答在线模型训练的流程如下图所示。在线模型训练意味着我可以用实时线上传输化的数据,然后用我们的实时机器学习模型训练框架去做训练。在线训练虽然数据是实时进来的,但你的模型并不是从 0 开始的。而是说我从离线先训练好这个模型,我站在离线模型的巨人的肩膀上,再往上去优化。 以上内容摘自《个性化推荐系统开发指南》https://developer.aliyun.com/ask/446535
3.推荐系统中模型训练及使用流程的标准化腾讯云开发者社区在实践中,我们对特征的采集、配置、处理流程以及输出形式进行了标准化:通过配置文件和代码模板管理特征的声明及追加,特征的选取及预处理等流程。由于使用哪些特征、如何处理特征等流程均在同一份配置文件中定义,因而,该方案可以保证离线训练和在线预测时特征处理使用方式的代码级一致性。https://cloud.tencent.com/developer/article/1539413
4.科学网—[转载]群视角下的多智能体强化学习方法综述对于大规模多智能体系统,处理数量和规模方面的动态变化是当前深度强化学习方法面临的突出挑战。基于学习(深度学习、强化学习)设计的迭代式问题求解方法是离线策略学习的基础范式。由于环境及对手的非平稳性,离线训练的蓝图策略通常很难直接运用于在线对抗。在线博弈对抗过程与离线利用模拟多次对抗学习博弈过程不同,博弈各方https://blog.sciencenet.cn/home.php?mod=space&uid=3472670&do=blog&id=1422698
5.蚂蚁金服核心技术:百亿特征实时推荐算法揭秘备注:弹性特征带来一个显著的优势:只要用足够强的L1稀疏性约束,在单机上就能调试任意大规模的特征训练,带来很多方便。我们的hashmap实现是KV化的,key是特征,value是vector的首地址。 离线训练优化 经过这样的改造后,在离线批量学习上,带来了以下变化: 在线训练优化 https://maimai.cn/article/detail?fid=1010621115&efid=mIQCHnkj0zjxlpygUmo5mg
6.粗排优化探讨得物技术离线在线一致性分析 待补充实际效果 四 样本设计 粗排相较于精排样本选择偏差(SSB)的问题更加严重,借鉴召回经验,可以通过适当采样减少偏差。采样设计的目的也是希望离线训练样本尽可能与线上分布一致。 样本选择方法 负样本可选范围: 曝光未点击样本; 全库除转化外样本; https://blog.itpub.net/70027824/viewspace-3000851/
7.基于Kmeans聚类的CSI室内定位AET基于指纹的定位模型分为离线训练阶段和在线定位阶段,模型如图1所示。 离线训练阶段的任务是建立一个位置指纹数据库。首先要选择参考点的位置,然后在每个参考点处测量来自信标的信号特征,最后处理信号特征保存在数据库中。这个数据库也被称为位置指纹地图。 http://www.chinaaet.com/article/3000057028
8.京东搜索在线学习探索实践参数更新:首先我们将用离线的 30 天的数据训练出来的模型参数导入 ps,之后 flink 的在线训练将实时更新参数,该 ps 直接服务于线上。目前在线和实时共用一套 ps,为了之后的稳定性要求,我们之后会将实时和在线分开。 模型校准:为了确保模型的准确性,支持天/周粒度的完整模型更新进行校准。 https://www.infoq.cn/article/Z6lL9VNskAH3BCxZS1A7
9.强化学习离线模型离线模型和在线模型推荐系统里非常常见,并且往往非常的隐蔽的一种数据分布不一致的情况被称之为冰山效应,也就是说离线训练用的是有偏的冰山上的数据,而在线上预估的时候,需要预测的是整个冰山的数据,包括大量冰面以下的数据!我们看下面这张图。左边是我们的Baseline,绿色的表示正样本,红色表示负样本,灰色部分表示线上由于推荐系统的“https://blog.51cto.com/u_14499/11815202
10.如何在本地(离线)使用PrivateGPT训练自定义AI聊天机器人PrivateGPT是一个新的开源项目,可以让你在AI聊天机器人界面中与你的文件进行私人互动。为了了解更多,让我们学习如何在本地使用PrivateGPT训练一个定制的人工智能聊天机器人。https://www.wbolt.com/how-train-ai-chatbot-using-privategpt-offline.html
11.基于多时间尺度多智能体深度强化学习无功电压控制方法与流程8.(2)将有载调压分接头(oltc)、电容器组(cb)和储能(es)均定义为智能体,在第一时间尺度阶段,搭建环境和智能体交互的马尔科夫决策过程的交互训练环境;在该过程的交互训练中,输入光伏、风机和负荷的预测数据,采用ddqn算法(double q network)进行离线训练无功优化离散动作策略;训练完毕,得到智能体oltc、cb和es的调https://www.xjishu.com/zhuanli/60/202110597000.html
12.飞桨开源框架的大规模分布式训练能力工业级稀疏参数弹性调度在线服务方面,ElasticCTR采用Paddle Serving中高吞吐、低延迟的稀疏参数预估引擎,高并发条件下是常见开源组件吞吐量的10倍以上。 3.可定制 用户可以通过统一的配置文件,修改训练中的训练方式和基本配置,包括在离线训练方式、训练过程可视化指标、HDFS上的存储配置等。除了通过修改统一配置文件进行训练任务配置外,ElasticCTRhttps://github.com/PaddlePaddle/ElasticCTR/
13.趋动云平台为工程师提供了在线的开发环境,内置多种 AI 算法库和开发工具,工程师可以在线编辑优化模型。另外在开发环境中,工程师可随时提交训练任务,在线训练和分析,实时进行模型优化。 ▌主要功能 AI 模型在线开发 深度整合算法开发环境,支持 JupyterLab/网页终端/ssh 登录等多种开发调试工具。 https://2d.ciftis.org/view/productmgr/productdetail?productId=50485