David Silver深度强化学习第1课

强化学习-1.jpg

强化学习本质上是要找到一种最优的方式来做决策。

强化学习涉及到很多学科领域,例如它是计算机科学中机器学习的一部分,工业中的优化控制,还有模拟神经科学中的奖励机制的算法,心理学中的条件反射也是一种奖励机制,数学中的运筹学,经济学中的博弈论等,这些都是研究如何做决策能够使效用最大化。

强化学习和其他机器学习方法的区别:

  1. There is no supervisor, only a reward signal
    只告诉它怎样是好的加3分,怎样是坏的扣10分,但不会告诉它到底要怎么做才是最好的。
  2. Feedback is delayed, not instantaneous
    当前做出一个决策,可能要等好几步之后才会知道这到底是个好的决定,还是造成了灾难性的结果。
  3. Time really matters (sequential, non i.i.d data)
    顺序决策,一步接着一步,agent进行决策,采取行动,拿到奖励,所以这些数据不是独立同分布的。
  4. Agent’s actions affect the subsequent data it receives
    例如一个机器人在不同的房间,因为环境不同,会采取不同的行动,得到不同的奖励,这是一个主动学习的过程,是由不同的数据集组成的。

强化学习应用的几个小例子:
直升机演习,玩游戏,管理投资组合,控制发电站,让机器人行走,等等,这些都是需要做很多决策的,而且没有前提知识储备,自主学习。

agent 每一步的行为相应得到的奖励,所有步累积起来的奖励,最终的目标是使奖励达到最大化。
例如直升机如果沿着正确的轨迹走,就给正向奖励,如果坠落,就给负奖励。


agent 和 环境

Sequential Decision Making
用一个框架来概括上面这么多种问题:即看成连续决策问题

Goal:通过一系列的决策来得到最终的最大利益
要提前计划好,因为这个过程是长期的,尽管现在并不是我们想要的结果,但可能几步之后就是很好的结果了,有时候还需要放弃一些眼前的利益,因为最终的长远利益才是目标。

我们要做的是构建一个agent,类似于要建立一个大脑,让它在与环境不断交互中学习成长,
我们的目标也就是要找出这个大脑执行的算法。注意在这个过程中,环境也是不断变化的。

不同的目标下,根据需要会给不同的措施的奖励赋予不同的权重,比如是去见女朋友还是去见老板,这个决策在不同的场景下权重是不一样的。

History:agent 目前为止所掌握的信息,它的 action,observation,reward。这些也是我们要得到的算法所能获得的数据,而环境中可能有其他隐藏的变量,这些却无法被 agent 获得。

我们想要得到的算法,就是从 history 到 action 的一个映射。
agent 会根据 history 采取 action,
环境也会根据 history 而变化,进而影响 observation 和 rewards。

State :是 history 的一个函数,相当于对 history 的一个简明扼要的总结,根据 state 来采取行动。

  1. environment state: 环境当前的状态,是一个数字的集合,但是我们看不到的。它决定了 agent 下一步的 action,这里 agent 只能通过摄像机看到 observation,而不是具体的数字信息。这些数字对获得算法没有实际帮助。

  2. agent state:也是一个数字的集合,是 agent 目前为止所获得的数据信息。这些数字是获得算法的主要依据。我们研究的目标也就是如何构建这个 history 的函数。

  3. Markov state:即 state 符合 markov 性质,即下一状态只与当前状态有关,而与之前的历史没有太大关系。这样的话 history 就可以丢掉,可以节省很多空间。

Observability:

  1. Full observability: 此时 agent 的状态和环境的状态是相等的,并且是一个 markov 决策过程。

  2. Partial observability: 即 agent 只能通过摄像机观察到部分环境而非全局,此时 agent 的状态和环境的状态是不相等的,是一个 partially observable Markov decision process (POMDP)。

我们要做的是建立 agent 的 state,有多种方法:

  1. 记住目前为止所有的 history
  2. 用贝叶斯方法建立 belief 即环境状态的一个概率分布
  3. Recurrent neural network 用过去状态的线性非线性组合作为新的状态

agent 的三个主要内容

Policy: agent’s behaviour function, 输入是 state,输出是 action。可以是确定的函数,也可以是随机的概率。

Value function: how good is each state and/or action,即如果采取了这样的行动会得到多少什么样的奖励。这是对未来若干步的奖励的一个预测,这个预测可以当作参考用来选择状态。

Model: agent’s representation of the environment,用来感知环境的。并不是环境本身,但是是对环境变化的一个预测,包含两种 model:
transition model :predicts the next state 。例如一个直升机当前在这样的位置和角度,那么加上某一个风向后,下一刻就到某一个位置和角度。这样就可以进行建模,用来预测直升机下一刻将会遇到什么情况。
reward model:predicts the next (immediate) reward。
model 并不是必须的。

例子:以迷宫为例来看上面提到的三个函数分别什么样子

Rewards: -1 per time-step
Actions: N, E, S, W
States: Agent’s location

policy:红箭头代表 policy,表示 agent 在相应的某个 state(即位置)所采取的行动:


value:-1 代表离终点一步,起点是 -16,左下方区域离终点越来越远。可以让 agent 知道下一步决策该如何走,当然是向距离终点近的位置走:


model:下图就是 agent 建立的对环境的状态与状态之间转换的一个理解模型,是从始点走到终点的一条路径,每个位置上面-1表示每一步减去一个即时奖励:


RL agent 的分类
根据是否包含 policy,value,model 中的某个内容来进行分类:


强化学习中遇到的几个基本问题

1. sequential decision making 的两个基本问题:

Learning :agent 对环境一无所知;要不断地与环境互动;不断升级 policy

Planning:agent 知道环境的一切信息和规则;不需要与环境互动,直接内部计算;不断升级 policy

2. 如何平衡 Exploration and Exploitation 探索与开发两个问题:

Exploration: finds more information about the environment,意味着要有选择地放弃一些奖励。例如当前你明确知道向左走会有一些奖励,但是你还没有 explore 向右走会发生什么,也许会有更大的宝箱。

Exploitation: exploits known information to maximise reward,意味着要最大化利用当前掌握的信息。
It is usually important to explore as well as exploit

生活中的小例子:


3. Prediction and Control 的区别:

Prediction: Given a policy,evaluate the future。如果 agent 遵循当前的 policy 那么会得到什么样的奖励。

例如下图 a 是一个 policy,b 是在这样的 policy 下对 value 的一个预测:


Control: Find the best policy,optimise the future。怎样才能找到最好的 policy 来最大化最终奖励。

例如下图的 v* 它的值要比上一图的值大,因为它找到的是最优的 policy 而不是某个随机的:


学习资料:
http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching.html
https://www.youtube.com/watch?v=2pWv7GOvuf0
http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching_files/intro_RL.pdf


推荐阅读 历史技术博文链接汇总
http://www.jianshu.com/p/28f02bb59fe5
也许可以找到你想要的:
[入门问题][TensorFlow][深度学习][强化学习][神经网络][机器学习][自然语言处理][聊天机器人]

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 156,265评论 4 359
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,274评论 1 288
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 106,087评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,479评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 51,782评论 3 285
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,218评论 1 207
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,594评论 2 309
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,316评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 33,955评论 1 237
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,274评论 2 240
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,803评论 1 255
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,177评论 2 250
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,732评论 3 229
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,953评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,687评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,263评论 2 267
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,189评论 2 258

推荐阅读更多精彩内容