Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

Danijar Hafner作者

效率提高50倍!谷歌提出从图像中学习世界的强化学习新方法

近日,谷歌 AI 和 DeepMind 合作创建了深度规划网络(PlaNet)智能体,仅基于图像输入就能学习世界模型,并利用该模型规划未来。与谷歌一年前提出的世界模型相比,PlaNet 的运行不需要策略网络,它对动作的选择仅依靠规划。此外,它在多项任务上的性能可媲美无模型方法,但平均数据效率是后者的 50 倍。

关于人工智能体如何随时间推移提升自己决策的研究正借助强化学习(RL)取得快速进展。在这项技术中,智能体在选择动作(如运动指令)时观察一系列感官输入(如相片),有时会因为达到某个特定目标而得到奖励。RL 无模型方法旨在从感官观察结果中直接预测良好的动作,使得 DeepMind 的 DQN 可以玩 Atari 游戏、其它智能体能够控制机器人。然而,这种黑箱方法通常需要经过数周的模拟交互才能通过反复试验来学习,这限制了它在实践中的应用。

相比之下,基于模型的 RL 尝试让智能体学习世界的普遍规律。它没有将观察结果直接映射到动作上,而是允许智能体提前进行显式规划,从而通过「想象」其长期结果来更谨慎地选择动作。基于模型的方法已经取得了很大的成功,包括 AlphaGo。AlphaGo 根据已知的游戏规则,在虚拟的棋盘上想象出一系列动作。然而,为了在未知的环境中利用规划(如在仅给定像素作为输入的情况下控制智能体),智能体必须从经验中学习规则或动态变化情况。由于这种动态模型原则上允许更高的效率和自然的多任务学习,因此创建足够精确的模型以成功地进行规划是 RL 的长期目标。

为了推进这一研究挑战的进展,谷歌 AI 和 DeepMind 合作创建了深度规划网络(Deep Planning Network,PlaNet)智能体,该智能体仅从图像输入中学习世界模型并成功地利用该模型进行规划。PlaNet 解决了一系列基于图像的控制任务,在最终性能上可以媲美先进的无模型智能体,且平均数据效率是后者的 50 倍。PlaNet 的代码已开源。

代码地址:https://github.com/google-research/planet

PlaNet 智能体通过 2000 次尝试,从输入图像中学会解决多种连续控制任务。之前不学习环境模型的智能体通常需要上述数据 50 倍的尝试才能达到同样的性能。

PlaNet 工作原理

PlaNet 在给定图像输入的情况下学习动态模型,并利用该模型进行高效规划以收集新的经验。与之前在图片上进行规划的方法不同,谷歌依赖一个紧凑的隐藏或潜在状态序列。谷歌将其命名为潜在动态模型:他们预测未来的潜在状态,而不是直接从一个图像预测到下一个图像。接下来,从相应的潜在状态中生成每一步的图像和奖励。通过这样压缩图像,智能体能够自动学习更多的抽象表征,如目标的位置和速度,这样就可以更容易地预测下一步,而无需生成图像。

学习到的潜在动态模型:在潜在动态模型中,利用编码器网络(灰色梯形)将输入图像的信息整合到隐藏状态(绿色部分)中。然后将隐藏状态向前投影,以预测未来的图像(蓝色梯形)和奖励(蓝色矩形)。

为了学习准确的潜在动态模型,谷歌引入了:

  • 循环状态空间模型:这是一个含有确定和随机成分的潜在动态模型,允许预测鲁棒规划所需的各种未来状态,同时记住多个时间步上的信息。实验表明,两种成分对于规划性能的高低都至关重要。

  • Latent Overshooting 目标:谷歌将标准训练目标泛化到潜在的动态模型,以通过强化潜在空间中一步和多步预测之间的一致性来训练多步预测。这产生了一个快速、有效的目标,提高了长期预测,并与任何潜在序列模型兼容。

虽然预测未来图像允许我们教模型学习,但编码和解码图像(上图梯形)需要大量计算,这拖慢了规划的速度。但是,在紧凑潜在状态空间中的规划速度很快,因为我们只需要预测未来奖励(而不是图像)来评估动作序列。例如,智能体可以在不看到场景的情况下,想象球的位置和球与目标的距离会因为某些动作如何变化。这允许研究人员在每次智能体选择一个动作时,对比 10000 个想象的动作序列和大批量。然后执行最优序列的第一个动作,再在下一步重新进行规划

潜在空间中的规划:将之前的图像(灰色梯形)编码为当前隐藏状态(绿色)。之后高效预测多个动作序列的未来奖励。然后执行最优序列的第一个动作(红框)。

与谷歌之前的世界模型研究相比,PlaNet 的运行不需要策略网络——它对动作的选择仅依靠规划,因此可立即从模型改进中受益。技术细节参见相关论文《Learning Latent Dynamics for Planning from Pixels》。

PlaNet vs. 无模型方法

谷歌研究人员在连续控制任务上对 PlaNet 进行了评估。评估中只提供图像观察结果和奖励,评估包含以下不同任务:

  • cartpole 上翻任务:该任务使用固定摄像机,因此小车可能会超出视野。因此,智能体必须消化并记住多个帧上的信息。

  • 手指转球任务:需要预测两个不同的物体以及二者之间的互动。

  • 猎豹奔跑任务:包括与地面的接触(准确预测的难度很高),需要模型预测多个可能的未来状态。

  • cup 任务:仅在球被抓到的时候提供稀疏奖励信号。这要求对未来进行准确的预测,以规划精确的动作序列。

  • walker 任务:模拟机器人最初状态是躺在地上,因此在行走之前它必须学习站立。

PlaNet 智能体在多个基于图像的控制任务上进行训练。该动图展示的是智能体解决任务时的输入图像。这些任务的难度在于:部分可观测、接触地面、稀疏奖励、控制两足机器人。

该研究初步展示了:在基于图像的任务中,在学得模型上进行规划的方法优于无模型方法。下表对比了 PlaNet 与 A3C 智能体、D4PG 智能体(它们结合了无模型强化学习的近期进展)。这些基线数字来自于《DeepMind Control Suite》。我们可以明确看到,PlaNet 在所有任务上都优于 A3C,最终性能逼近 D4PG,而 PlaNet 与环境的平均互动数量只是这两个无模型智能体的 1/50。

一个智能体解决所有任务

谷歌研究人员训练了一个 PlaNet 智能体,可解决全部六项任务。该智能体在不了解任务的情况下被随机放置在不同的环境中,因此它需要根据图像观测结果来推断任务内容。无需改变任何超参数,该多任务智能体的性能与任务特定单个智能体的平均性能达到相同水平。尽管 PlaNet 智能体在 cartpole 任务中学习速度较慢,但它在需要探索的较难 walker 任务中学习速度很快,且达到了较高的最终性能。

在多个任务上训练的 PlaNet 智能体的视频预测结果。上面一行是智能体的 holdout episode,下面一行是开环智能体(open-loop agent)的幻觉。该智能体以观察到的前 5 帧作为背景,进而推断任务和状态,并基于动作序列准确预测接下来的 50 步。

结论

研究结果表明,学习动态模型对于构建自动强化学习智能体大有用处。谷歌研究人员希望有更多研究聚焦在更高难度的任务上学习准确的动态模型,如 3D 环境和现实世界机器人任务。可以使用 TPU 的算力来扩展这些研究。这打开了基于模型的强化学习的可能性,包括多任务学习、层级规划(hierarchical planning)等。

论文:Learning Latent Dynamics for Planning from Pixels

论文地址:https://planetrl.github.io/

摘要:规划在已知环境动态的控制任务中非常有用。要想在未知环境中利用规划技术,智能体需要从与世界的互动中学习环境动态。然而,学习足够准确的动态模型一直是一项难题,尤其是在基于图像的领域中。我们提出了深度规划网络(PlaNet),这是一个完全基于模型的智能体,它从图像中学习环境动态,并通过在潜在空间中进行快速在线规划来选择动作。为了获得高性能,动态模型必须准确预测未来多个时间步的奖励。我们使用具备确定转移(deterministic transition)和随机转移(stochastic transition)组件的潜在动态模型和多步变分推断目标函数 latent overshooting 来解决这个问题。在仅有像素观测结果的情况下,我们的智能体可解决具备接触动态、部分可观测性、稀疏奖励难题的连续控制任务,这些任务的难度超过使用学得模型进行规划的之前研究的任务难度。PlaNet 使用的训练 episode 远远少于无模型算法,但其最终性能接近甚至超过强大的无模型算法。


原文链接:https://ai.googleblog.com/2019/02/introducing-planet-deep-planning.html?m=1

理论谷歌世界模型强化学习
4
相关数据
DeepMind机构

DeepMind是一家英国的人工智能公司。公司创建于2010年,最初名称是DeepMind科技(DeepMind Technologies Limited),在2014年被谷歌收购。在2010年由杰米斯·哈萨比斯,谢恩·列格和穆斯塔法·苏莱曼成立创业公司。继AlphaGo之后,Google DeepMind首席执行官杰米斯·哈萨比斯表示将研究用人工智能与人类玩其他游戏,例如即时战略游戏《星际争霸II》(StarCraft II)。深度AI如果能直接使用在其他各种不同领域,除了未来能玩不同的游戏外,例如自动驾驶、投资顾问、音乐评论、甚至司法判决等等目前需要人脑才能处理的工作,基本上也可以直接使用相同的神经网上去学而习得与人类相同的思考力。

https://deepmind.com/
人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

变分推断技术

see Variational Bayesian methods (approximation)

规划技术

人工智能领域的「规划」通常是指智能体执行的任务/动作的自动规划和调度,其目的是进行资源的优化。常见的规划方法包括经典规划(Classical Planning)、分层任务网络(HTN)和 logistics 规划。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

策略网络技术

在强化学习中,策略网络指一组相对稳定的关系,这些关系具有非等级和相互依赖的性质,将各个行为者(actor)联系起来。

目标函数技术

目标函数f(x)就是用设计变量来表示的所追求的目标形式,所以目标函数就是设计变量的函数,是一个标量。从工程意义讲,目标函数是系统的性能标准,比如,一个结构的最轻重量、最低造价、最合理形式;一件产品的最短生产时间、最小能量消耗;一个实验的最佳配方等等,建立目标函数的过程就是寻找设计变量与目标的关系的过程,目标函数和设计变量的关系可用曲线、曲面或超曲面表示。

多任务学习技术

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

推荐文章
暂无评论
暂无评论~