入门强化学习

2020-10-20  本文已影响0人  ShowMeCoding

参考内容:https://www.bilibili.com/video/BV1g7411Z7SJ(强化学习纲要 第一课 概括与基础)

什么是强化学习

强化学习讨论的问题是一个智能体(agent)怎么在一个复杂不确定的环境(environment)里面去极大化它能获得的奖励。

  1. 输入的数据,标定的数据,它都是没有关联的,尽可能没有关联。因为如果有关联的话,这个网络是不好学习的。
  2. 我们告诉这个 learner 正确的标签是什么,这样它可以通过正确的标签来修正自己的这个预测。

强化学习和监督学习的区别

就是我们没有标签来说明你现在这个动作是正确还是错误,必须等到这个游戏结束可能,这个游戏可能十秒过后才结束。现在这个动作往左往右到底是不是对最后游戏的结束能赢有帮助,其实是不清楚的的。这里就面临一个延迟奖励(Delayed Reward) ,所以就使得训练这个网络非常困难。所以这也是强化学习和监督学习不同的地方。
监督学习获取的这些监督数据,其实是人为标定的。比如说 ImageNet,这些图片都是人类标定的。那么我们就可以确定这个算法的 upper bound(上限),人类的这个标定结果决定了它永远不可能超越人类。但是对于强化学习,它在环境里面自己探索,有非常大的潜力,它可以获得超越人的能力的这个表现,比如说AlphaGo

强化学习是有一定的历史的,把强化学习跟深度学习结合起来,就形成了深度强化学习(Deep Reinforcemet Learning) 。

奖励

奖励是由环境给的一个反馈信号,这个信号指定了这个 agent 在某一步采取了某个策略是否得到奖励。强化学习的目的就是为了极大化 agent 可以获得的奖励,agent在这个环境里面存在的目的就是为了极大它的期望积累的奖励。

full observability与partially observed

agent 的状态跟环境的状态等价的时候,我们就说这个环境是 full observability
在玩雅达利游戏的时候,观测到的只是当前电视上面这一帧的信息,你并没有得到游戏内部里面所有的运作状态。也就是说当 agent 只能看到部分的观测,我们就称这个环境是部分可观测的(partially observed) 。

强化学习 agent的组成成分:

agent的分类

  1. 基于价值函数的 agent。这一类 agent 显式地学习的是价值函数,隐式地学习了它的策略。因为这个策略是从我们学到的价值函数里面推算出来的。
  2. 基于策略的 agent,它直接去学习 policy,就是说你直接给它一个 state,它就会输出这个动作的概率。在这个 policy-based agent 里面并没有去学习它的价值函数。
  3. 另外还有一种 agent 是把这两者结合,把 value-based 和 policy-based 结合起来就有了 Actor-Critic agent 。这一类 agent 就把它的策略函数和价值函数都学习了,然后通过两者的交互得到一个最佳的行为。

agent 到底有没有学习这个环境模型来分类

Exploration 和Exploitation 概念对比

以挖油为例
a. Exploitation 就是说我们直接在已知的地方挖油,我们就可以确保挖到油。
b. Exploration 就是说我们在一个新的地方挖油,就有很大的概率,你可能不能发现任何油,但也可能有比较小的概率可以发现一个非常大的油田。

博客:http://karpathy.github.io/2016/05/31/rl/
阻碍AI的四个独立因素:

And of course, our goal is to move the paddle so that we get lots of reward.

Policy network.


Our policy network is a 2-layer fully-connected net.
上一篇 下一篇

猜你喜欢

热点阅读