通用智能需要解决多个领域的任务。人们认为强化学习算法具有这种潜力,但它一直受到为新任务调整所需资源和知识的阻碍。在 DeepMind 的一项新研究中,研究人员展示了基于世界模型的通用可扩展的算法 DreamerV3,它在具有固定超参数的广泛领域中优于以前的方法。
DreamerV3 符合的领域包括连续和离散动作、视觉和低维输入、2D 和 3D 世界、不同的数据量、奖励频率和奖励等级。值得一提的是,DreamerV3 是第一个在没有人类数据或主动教育的情况下从零开始在《我的世界》(Minecraft)中收集钻石的算法。研究人员表示,这样的通用算法可以使强化学习得到广泛应用,并有望扩展到硬决策问题。
钻石是《我的世界》游戏中最受欢迎的物品之一,它是游戏中最稀有的物品之一,可被用来制作游戏中绝大多数最强的工具、武器以及盔甲。因为只有在最深的岩石层中才能找到钻石,所以产量很低。
DreamerV3 是第一个在我的世界中收集钻石的算法,无需人工演示或手动制作课程。该视频显示了它收集的第一颗钻石,发生在 30M 环境步数 / 17 天游戏时间之内。
如果你对于 AI 玩我的世界没有什么概念,英伟达 AI 科学家 Jim Fan 表示,和 AlphaGo 下围棋比,我的世界任务数量是无限的,环境变化是无限的,知识也是有隐藏信息的。
对于人类来说,在我的世界里探索和构建是有趣的事,围棋则显得有些复杂,对于 AI 来说,情况刚好相反。AlphaGo 在 6 年前击败了人类冠军,但现在也没有可以和我的世界人类高手媲美的算法出现。
早在 2019 年夏天,我的世界的开发公司就提出了「钻石挑战」,悬赏可以在游戏里找钻石的 AI 算法,直到 NeurIPS 2019 上,在提交的 660 多份参赛作品中,没有一个 AI 能胜任这项任务。
但 DreamerV3 的出现改变了这一现状,钻石是一项高度组合和长期的任务,需要复杂的探索和规划,新算法能在没有任何人工数据辅助的情况下收集钻石。或许效率还有很大改进空间,但 AI 智能体现在可以从头开始学习收集钻石这一事实本身,是一个重要的里程碑。
DreamerV3 方法概述
论文《Mastering Diverse Domains through World Models》:
DreamerV3 算法由三个神经网络组成,分别是世界模型(world model)、critic 和 actor。这三个神经网络在不共享梯度的情况下根据回放经验同时训练,下图 3(a)展示了世界模型学习,图(b)展示了 Actor Critic 学习。
为了取得跨域成功,这些组件需要适应不同的信号幅度,并在它们的目标中稳健地平衡项。这是具有挑战性的,因为不仅针对同一领域内的相似任务,而且还要使用固定超参数跨不同领域进行学习。
DeepMind 首先解释了用于预测未知数量级的简单变换,然后介绍了世界模型、critic、actor 以及它们的稳健学习目标。结果发现,结合 KL 平衡和自由位可以使世界模型无需调整学习,并且在不夸大小回报(small return)的情况下,缩小大回报实现了固定的策略熵正则化器。
Symlog 预测
重建输入以及预测奖励和价值具有挑战性,因为它们的规模可能因领域而异。使用平方损失预测大目标会导致发散,而绝对损失和 Huber 损失会使学习停滞。另一方面,基于运行统计数据的归一化目标将非平稳性引入优化。因此,DeepMind 提出将 symlog 预测作为解决这一难题的简单方法。
为此,具有输入 x 和参数 θ 的神经网络 f (x, θ) 学习预测其目标 y 的变换版本。为了读出该网络的预测 y^,DeepMind 使用了逆变换,如下公式(1)所示。
从下图 4 中可以看到,使用对数(logarithm)作为变换无法预测具有负值的目标。
因此,DeepMind 从双对称对数族中选择一个函数,命名为 symlog 并作为变换,同时将 symexp 函数作为逆函数。
symlog 函数压缩大的正值和负值的大小。DreamerV3 在解码器、奖励预测器和 critic 中使用 symlog 预测,还使用 symlog 函数压缩编码器的输入。
世界模型学习
世界模型通过自编码学习感官输入的紧凑表示,并通过预测未来的表示和潜在行为的奖励来实现规划。
如上图 3 所示,DeepMind 将世界模型实现为循环状态空间模型 (RSSM)。首先,编码器将感官输入 x_t 映射到随机表示 z_t,然后具有循环状态 h_t 的序列模型在给定过去动作 a_t−1 的情况下预测这些表示的序列。h_t 和 z_t 的串联形成模型状态,从中预测奖励 r_t 和 episode 连续标志 c_t ∈ {0, 1} 并重建输入以确保信息表示,具体如下公式(3)所示。
下图 5 可视化了 world world 的长期视频预测。编码器和解码器使用卷积神经网络 (CNN) 进行视觉输入,使用多层感知器 (MLP) 进行低维输入。动态、奖励和持续预测器也是 MLPs,这些表示从 softmax 分布的向量中采样而来。DeepMind 在采样步骤中使用了直通梯度。
Actor Critic 学习
Actor Critic 神经网络完全从世界模型预测的抽象序列中学习行为。在环境交互期间,DeepMind 通过从 actor 网络中采样来选择动作,无需进行前瞻性规划。
实验结果
DeepMind 进行了广泛的实证研究,以评估 DreamerV3 在固定超参数下跨不同领域(超过 150 个任务)的通用性和可扩展性,并与已有文献中 SOTA 方法进行比较。此外还将 DreamerV3 应用于具有挑战性的视频游戏《我的世界》。
对于 DreamerV3,DeepMind 直接报告随机训练策略的性能,并避免使用确定性策略进行单独评估运行,从而简化了设置。所有的 DreamerV3 智能体均在一个 Nvidia V100 GPU 上进行训练。下表 1 为基准概览。
为了评估 DreamerV3 的通用性,DeepMind 在七个领域进行了广泛的实证评估,包括连续和离散动作、视觉和低维输入、密集和稀疏奖励、不同奖励尺度、2D 和 3D 世界以及程序生成。下图 1 中的结果发现,DreamerV3 在所有领域都实现了强大的性能,并在其中 4 个领域的表现优于所有以前的算法,同时在所有基准测试中使用了固定超参数。
更多技术细节和实验结果请参阅原论文。