强化学习(1)

在开始之前个人觉得有必要把概念给大家说清楚,用大写字母表示一类事物的集合,用小写字母表示一类事物的实例。

在强化学习中出现术语解释

  • Agent: 是学习主体也就是机器或者说是智能体,agent 通过观察环境(Environment),观察到就是环境具体的 state ,也就是当前的环境一个快照。AlphaGo 就是 Agent
  • Environment: Agent 所处环境,Agent 是无法控制环境,也可以理解为 Agent 的对手,Agent 不断通过跟环境进行抗争来进行学习从而战胜环境,环境还会 Agent Reward 不能简单理解 Environment 为对抗
  • State 就是环境的一个快照,也就是 Agent 所观察到的
  • Action 是 Agent 根据当前 state 为了获得更高 reward 采取行动
  • Reward 是在某个 state 给予 Agent 反馈,也就是奖罚

推荐 《Reinforcement Learning An Introduction》

在随后强化学习分享中我们会介绍一下内容,其实无论在机器学习,我们需要学习如何通过抽象将实际问题转化为数学模型,然后我们在想用什么方法来解决问题。其实这里要说一件事,就是为什么老师喜欢在给出答案前,让学生自己思考,然后尝试给出答案,其实并不期望你个给出正确答案,其目标是在于让你加深对答案印象,因为当人发现实际期望(自己答案)差别很大时,印象会很深刻

强化学习

  • 微软小 bing
  • AlphaGo
  • 自动学习

基于价值选行为的算法

  • Q learning(基于表格)
  • Sarsa
  • Deep Q Network (基于神经网络)

基于选行为

Policy Gradients

经典条件反射

经典条件反射又称巴甫洛夫条件反射,简单就是一摇铃就给 dog 食物,这样当摇铃即使没有喂 dog 食物,狗也会流口水(这里流口水表示 dog 开心也就是得到 reward)。也就是通过 dog 通过反射方式在摇铃和食物建立关系。

  • State 表示状态,dog 和摇铃就是一个状态,需要花一些时间和精力来通过训练。

  • Value 就是表示 us 和 cs 间关系的强弱,这个关系强弱是 dog 建立的,所以是主观。

  • reward 表示 dog 对状态反应,也就是 dog 在这种 state 下是否开心。

    state(s) value(v) reward(r)
    铃,食物 馋: v(铃) >0 好事
    拒绝给食物,电击 恐惧: v(电击) < 0 不好事
    CS US 期望 结果
  • CS(Conditioned stimuli state) 摇铃 state 就是 dog 并不了解的,也就是不是天生会有好感的状态。

  • US(Unconditioned stimuli State)食物就是 US 是 dog 天生就对其有好感的条件刺激,那么对于 dog US 就是本身就具有 reward 效果

在这里 state 和 reward 是客观的条件,value 是主观的,可以改变的,这里铃并没有 Reward,因为 dog 不会天生对摇铃有任何感觉。需要定义 value 是通过学习可以改变 Value。我们不断通过摇铃给 dog 食物来更新 value 值。value 表示 US 和 CS 之前关系的强弱。value 是 dog 将食物和铃建立关系,所以是主观的东西。

RW(Rescorla-Wagner) Model

  • , 为是或否,取值 1 和 0
  • A 为学习速率,有关 A 为学习速率,应该小于 1 大于 0

当 us 和 cs 值都为 1 表示 us 和 cs 同时出现,在开始

为 0 , 为 1 那么就等于 加上一个乘以一个系数,我们希望通过训练,而且这是一个迭代过程,每一次都是上一次 进行增加的。

解释一下这个公式吧,这里

表示对于摇铃的值,默认为 0 因为 dog 对摇铃没有什么感觉,而 给事物的值却是 1 表示 dog 喜欢事物,一看到食就会流口水。A 表示学习速率这里取值应该为 0 到 1 之间,也大说明 dog 学习越快,如果为 1 表示 dog 听见一次摇铃给食物后就学会了摇铃会给食物。这显然不对的。这个公式并不难而且很好理解,简单解释一下,V(cs)默认为 0 当摇铃和给食物同时出现 1 * 学习率(例如 0.2) 就会更新 V(cs) 为 0.2 下一次就会更新 0.36 。

操作性条件反射

在经典条件反射中 dog 并不需要做任何动作 Action 就可以得到奖励,我们现在进一步思考一下,例如我们都看过马戏团表演,给 dog 10 元 100 元,如果 dog 能够根据主人或观众说出数字找到对的卡片便可以得到奖赏。这一次 dog 在给卡片的状态下,做出选择正确 action 会根据 action state 得到 reward。

state(s) action(a) reward(r)
10 元和 100 元 选择 10 元 食物
10 元和 100 元 选择 100 元 给不食物
CS US 期望 结果

这是 reward 是取决于 Action 这是我们如何来定义 value,

例如我们给 5 卡片希望 dog 对应位置支持 5 这是给出奖励,追女朋友

  • state 她的心情
  • action 根据 state 采用不同 action
  • 根据 state 和 action 得到不同 reward

接下来我们尝试将 Alpha Go

  • reward 是取得胜利
  • state 棋盘状态
  • action
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章