独家 | 浅谈强化学习原理(附代码&链接)

作者: Michel Kana
翻译: 王琦
校对: 王雨桐

本文约4900字,建议阅读15分钟。

本文介绍了强化学习的基本原理,并通过代码实例来讲解如何找到最优策略。


Google在2017年年底发布了AlphaZero,这个零基础的AI系统能够在4小时内自学并掌握国际象棋、围棋和将棋。

极短的训练时间是 AlphaZero击败世界顶级国际象棋程序的致命武器。

Andriy Popov / Alamy Stock 照片

最近,OpenAI 展示了强化学习不是一个仅限于虚拟任务的工具。Dactyl的类人机械手已经学会了如何独立解魔方(见下面链接)。

附链接:https://openai.com/blog/solving-rubiks-cube/


Google AlphaZero和OpenAI Dactyl的本质都是强化学习算法,它不基于任何相关领域的知识,我们只需要给定游戏的规则。一些AI专家认为这是实现人类或超人类的通用人工智能的最可行方法。

我们之前的文章介绍了强化学习的基础概念(见下面链接)。

附链接:

https://towardsdatascience.com/dont-ever-ignore-reinforcement-learning-again-4d026ee81371

现在让我们继续深入AI智能体的工作原理, 探索它是如何通过自学来采取恰当的行动流程,从而实现全局最优的目标。

什么是策略?

让我们假设一个OpenAI冰湖的简单情景,在此环境下智能体能够控制一个人物在坐标格上运动。网格里的一些是可走的,其他格子则意味着人物将掉进冰洞里。 当智能体发现一条可走的并且能达到目标地点(图中黄色星星)的路径时,它就会得到奖励。


在这种很简单的环境下,我们可以有很多策略。比如说,智能体可以一直向前移动,或者随机选择一个方向移动,还可以通过前车之鉴来学习如何绕过障碍,甚至可以原地转圈来娱乐。

从直观上来讲,策略可以被定义为一些能够控制智能体行为的规则集合。不同的策略会给我们不同的收益,因此找到一个好的策略很重要。

策略的正式定义是每个可能状态下采取的行为的概率分布:

最优策略能够最大化预期的值函数 V:

区分于短期收益,值函数 V(s) 是状态s下含折扣的预期长期收益,它表示智能体所处状态的好坏。对一个从该状态开始的智能体来说,这相当于预期的总收益。换言之,这就是在状态s下采取行动a这一步的总收益,被定义为 V(s)。

如何选择最好的行动?

值函数取决于智能体选择行动所用的策略。学习最优策略需要使用所谓的Bellman方程。

让我们通过下面的例子来直观地了解一下Bellman方程。智能体能够执行行动1, 2, …, N,这会让它转移到未来的状态S1, S2, …, SN, 从而分别得到相应的收益 r1, r2, …, rN。对于未来各个状态来说,预期的长期收益是V1, V2, …, VN。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值