深度强化学习:0 到 100

使用 RL 教机器人驾驶无人机《深度强化学习:0 到 100》一文首先出现在《走向数据科学》上。

来源:走向数据科学

如何教机器人着陆无人机而不需要对每一个动作进行编程?这正是我打算探索的。我花了几周的时间开发了一款游戏,其中虚拟无人机必须弄清楚如何降落在平台上——不是通过遵循预先编程的指令,而是通过从反复试验中学习,就像你学会骑自行车一样。

这就是强化学习(RL),它与其他机器学习方法有根本的不同。你不用向人工智能展示数千个“正确”着陆的例子,而是给它反馈:“嘿,那很好,但也许下次尝试更温和一点?”或者“哎呀,你崩溃了——可能不会再这样做了。”通过无数次的尝试,人工智能弄清楚什么有效,什么无效。

强化学习 (RL)

在这篇文章中,我记录了我从 RL 基础知识到构建一个(主要是!)教无人机着陆的工作系统的旅程。您将看到成功、失败以及我一路上必须调试的所有奇怪行为。

1. 强化学习:概述

很多想法都与巴甫洛夫的狗和斯金纳的老鼠实验有关。这个想法是,当主体做了你想让它做的事情(正强化)时,你给它一个“奖励”,当它做了坏事(负强化)时,你给它一个“惩罚”。通过多次重复尝试,你的受试者从这种反馈中学习,逐渐发现哪些行动会带来成功——类似于斯金纳的老鼠如何知道按下杠杆会产生食物奖励。

奖励 处罚
图 1. 巴甫洛夫的经典条件反射实验(Google Gemini 的 AI 生成图像)

以同样的方式,我们想要一个能够学习做事(或任务)的系统,以便最大化奖励并最小化惩罚。请注意有关最大化奖励的事实,稍后会介绍。

1.1 核心概念

  • 代理人(或演员):这是我们上一节的主题。这可以是狗、试图在大型工厂中导航的机器人、视频游戏 NPC 等。
  • 代理人(或演员) 主题 NPC