强化学习落地思考

强化学习落地思考

概括

我对强化学习的实际应用方法进行了分类,主要从两个维度出发:是否存在现成可用的模型以及是否有真实的数据。

基于这两个维度的组合,我将任务分为以下三种情况:

  1. 有现成可用的模型,无真实数据
  2. 无现成可用的模型,有真实数据
  3. 有现成可用的模型,且有真实数据

有现成可用的模型,无真实数据

在存在现成可用模型但无真实数据的情况下,指的是模型和真实场景之间不存在reality gap,训练场景即为应用场景。典型案例包括游戏领域,如DeepMind的AlphaGo。推荐系统,如美团。这些领域中,算法选择相当多样化。

在机器人领域,最近的研究包括卡梅隆的机器狗[1]。

该研究采用了直接使用无模型(model-free)的强化学习算法,训练出的机器狗能够在真实场景中进行跑步、跳跃和躲避障碍物等动作。这突显了在无真实数据情况下,通过利用现成可用的模型,成功实现对现实场景的训练。

这一类方法往往依赖于模型的可迁移性,即模型和真实世界的误差较小。这种误差较小体现在两个方面,一是对于同样的外界干扰,模型和真实世界的响应相似;二是对于同样的控制指令,模型和真实世界的响应相似。这种误差较小的模型,可以直接用于真实场景的训练,而不需要额外的调整和优化。

但是真实世界中,模型并不总是能够涵盖所有可能的真实场景,特别是当涉及到复杂和多变的环境时。在一些实际应用中,现实世界的复杂性可能导致模型在未知领域表现不佳,形成了所谓的“out-of-distribution”问题。

一种可以缓解这种问题的方法是,域随机化(domain randomization)。域随机化的思想是,通过在训练过程中,对模型的输出进行随机化,从而使得模型能够适应更多的场景。但是,域随机化的方法也有其局限性。如果随机化的范围和程度不够,那么模型的泛化能力仍然会受到限制。反之,如果随机化的范围和程度过大,策略的有效性和性能则会大打折扣。

因此,尽管有现成的模型是一个有力的起点,但在实际应用中需要谨慎考虑如何处理现实场景的多样性和复杂性,以确保强化学习模型的有效性和泛化性。

有现成可用的模型,有真实数据

当有一个不那么精确的模型,但有真实数据的情况下,可以通过一些方法来提升模型的精确度,从而提升强化学习模型的泛化能力。

这样就把问题简化成了一个模型提升问题,因为一旦模型有了提升,就可以转化为上面的情况进行训练了。这个问题在机器学习领域有很多研究,方法也都很朴素。

如今年登上Nature的Champion-level drone racing using deep RL [2]。RL控制无人机在比赛上打败了人类选手。无人机模型很难模拟出复杂的空气动力学,和一些其他噪音,因此他们采用了高斯过程和K近邻建立了一个真实飞行器和模拟器之间的误差模型,在RL训练的时候,通过这个误差模型加上模拟器的输出,来反应更加真实的飞行器的状态。但实际情况下,他们的模拟器也已经是很优秀的仿真了。

无现成可用的模型,有真实数据

在只能获取真实世界的历史数据情况下,如何学习到一个好的控制策略,这在强化学习研究中被称为offline RL。

离线 RL 方法可分为两种主要路线:model-free 和 model-based。

model-free的方法主要聚焦于学习Q函数,Q函数代表了智能体在某状态下采取某行为的价值。在历史数据中,可以通过监督训练去学习Q函数,并且希望学习到的Q函数有较强的内插泛化能力,即对于没有见过的状态和行为也能够给出合理的估计。这样,就可以通过Q函数来指导智能体的行为,从而实现对真实场景的控制。

但是,往往采集数据时的策略和最优的控制策略分布往往是不一样的,学习的Q函数本质是采集策略分布的学习,导致实际应用过程中策略的过于保守,无法发挥最优策略的效果。

model-based方法主要聚焦于学习一个完整的环境模型,包括状态转移函数和奖励函数。这种方法的优势在于,可以通过学习到的模型进行交互,从而可以进行更多的探索,尤其是对历史数据中没有出现过的状态的探索。

但是,存在的问题也很明显,学习到的模型可能会存在误差。尤其模型是一个时间序列模型,每一步的预测的输入都要依赖于上一步的预测输出,误差会随着时间的推移而累积,导致模型的预测输出越来越不准确。对抗学习的方法可以缓解这种误差[3],将原本与预测步长成平方关系的误差,降低到与预测步长成线性关系。

最新的研究是将因果理论引入到模型的学习中,传统的监督学习方法,只是在找数据之间的相关性,建立当前状态和下一步状态之间的因果关系,可以提升模型的泛化能力[4]。

但是,model-based的方法需要额外考虑环境模型的可解释性问题,针对某一干扰或者控制指令,模型的输出是否合理,是否符合真实世界的物理规律。只有这一点满足,才能保证后续的强化学习训练的有效性。

总结

从实用主义的角度看,模型对于强化学习是必不可少的,因为只有仿真模型才能赋予强化学习无限探索的能力,而不会对真实世界造成损害。

因此应该尽量找到现成可用的仿真模型,但是,模型的误差会对强化学习的训练造成影响,所以需要通过专家知识和真实数据对模型进行调整和优化,以提升仿真的精确度。同时在训练的过程中使用域随机化的方法,以提升模型的泛化能力。

如果实在没有现成可用的模型,或模型获取成本过高。也要尽量获取真实数据,通过真实数据来训练模型,这种时候就需要额外考虑模型的可解释性问题,以保证模型的有效性。

参考文献

[1]. Cheng X, Shi K, Agarwal A, et al. Extreme parkour with legged robots[J]. arXiv preprint arXiv:2309.14341, 2023.

[2]. Kaufmann E, Bauersfeld L, Loquercio A, et al. Champion-level drone racing using deep reinforcement learning[J]. Nature, 2023, 620(7976): 982-987.

[3]. Xu T, Li Z, Yu Y. Error bounds of imitating policies and environments[J]. Advances in Neural Information Processing Systems, 2020, 33: 15737-15749.

[4]. Zhu Z M, Chen X H, Tian H L, et al. Offline reinforcement learning with causal structured world models[J]. arXiv preprint arXiv:2206.01474, 2022

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值