Lecture One--RL introduction
David Silver
PPT链接:http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching_files/intro_RL.pdf
视频链接:https://www.youtube.com/watch?v=2pWv7GOvuf0&index=1&list=PL5X3mDkKaJrL42i_jhE4N-p6E2Ol62Ofa
Bilibili中文字幕:https://space.bilibili.com/74997410/#/
强化学习与其它机器学习的区别:
RL中的决策:
Agent与环境:
PPT里的图和视频不太一致,这里用视频中的图。图中大脑就是就是agent,在时刻t ,agent观测到环境信息Ot后得知自己所处的状态,经过算法决定执行动作action At, 周围的环境(地球)接收到此动作At, 反馈一个奖励Rt,并更新环境的状态St。环境所处的状态对Agent而言是未知的,Agent只能感知环境输出给他的observation Ot
符号及意义
history是所有动作、状态、奖赏的序列,Ht=A1,O1,R1,…,At,Ot,Rt
environment state,Set,环境当前的状态,它反应了环境发生什么改变。这里需要明白的一点是环境自身的状态和环境反馈给agent的observation并不一定是相同的。这取决于Agent是完全可以观察(感知)到环境,还是只能观察(感知)到部分环境。例如Agent在社交网络中不可能总览全网的所有信息,这时Agent便处于一种部分可观测的环境中,也就是说Agent这时候不能够总是知道自己所处的环境是如何发生变化的。
agent state,是agent的现在所处状态的表示,它可以是history的任何函数。即状态St = f(Ht),这里的状态是Agent的状态。
information(Markov) state,它包含了history的所有有用信息。一个状态有马尔可夫性质是指下一个时刻的状态仅由当前状态决定,与过去状态无关。Agent state是有马尔可夫性质的,H 1:t ---->St ---->H t+1:无穷
对未来事情的预测取决于状态表征方法。例如下图的示例:
状态表述的不同,会导致预测结果的不同。
当状态表征为标签序列时,从老鼠学习到的前两次的结果,其会预测第三次的时序下会被电。
当状态表征为标签出现频次时,其会预测出第三次会吃到奶酪。
Fully Observable Environment & Partially Observable Environment
环境又分为全面观测环境和局部观测环境,全面观测环境即我们是上帝视角,可以看到整个环境的变化,比如下围棋,环境是整个棋面,我们可以完全观测到,而像人在微博环境中,即是一个部分可观察的环境。
Fully Observable Environment:
上述公式也就是MDP的表示方式。
Partially Observable Environment:
Policy :Agent的行为函数,状态S作为输入,行动A作为输出
Value : 用于评价Agent在某种特殊状态下的好坏,或采取某一行动之后的好坏。
Model:用于描述Agent眼中环境是如何变化的。
Policy: 是一个状态-动作的映射函数
有两种形式,一种是确定性的policy,即从历史经验中学习得到:,
另外一种是个随机的policy,以概率决策。概率模型:
Value: 值函数,用于评估某一状态的好坏,预测未来的奖励。
,其中是衰减因子。
Model: Agent学习环境中的行为,以预测下一刻的环境。分为两种模型:
预测下个状态,即转移概率,主要用于动态环境变化的问题。
预测下个奖励,也就是即时奖励。
RL agent的分类:
两种分类方式:
第一种方式 分为 Value Based Policy Based 以及Actor Critic(兼有Policy和Value Function)
第二种分类方式分为 Model Free 和 Model Based
有关序列决策的问题分类:
RL 问题:对环境未知,Agent需要与环境不断地进行试错交互,来形成最优决策
Planning问题:已知环境信息,且已知游戏规则,Agent不需要与环境进行交互,只需要进行内部运算便可得知下一步的action,并形成最优决策
RL 中的经典问题:Exploration&Exploitation的平衡问题。
Exploration就是探索,偏向于随机,即发现环境的更多信息。例如在广告投放问题中,选择投放新的广告就是一种exploration。
Exploitation就是利用,尽可能利用已知信息来最大化累积奖励,即按学到的最优解走。选择投放点击率最高的广告来获得更大的利润就是一种exploitation。
这两个不能只顾某一方,需要平衡才是算法的最佳形式。在其他问题中,例如在一个优化问题中,我们需要兼顾多样性和集中性。
预测算法和控制算法:
预测算法:用于评估一个决策所能获得的奖励;
控制算法:用于寻找最优决策。
二者是相辅相成的存在。