机器学习与深度学习系列连载: 第三部分 强化学习(一) 强化学习简介

强化学习简介

Deepmind 大神David Silver讲过一个公式:
在这里插入图片描述
随着DeepMind公司开发的AlphaGo升级版master战胜围棋世界冠军,其背后应用的强化学习思想受到了广泛关注,也吸引了一批喜欢思考的小伙伴,想一探究竟为什么强化学习的威力这么大。本专栏主要围绕**“大名鼎鼎的围棋程序master”**的主要作者David Silver主讲的UCL-Course-强化学习视频公开课和台湾大学李宏毅老师的深度强化学习课程,较为系统、全面地介绍了强化学习的各种思想、实现算法。
推荐教材:

  1. An Introduction to Reinforcement Learning, Sutton and Barto, 1998

  2. Algorithms for Reinforcement Learning, Szepesvari, 2009

1. 概念

强化学习在不同领域有不同的表现形式:神经科学、心理学、计算机科学、工程领域、数学、经济学等有不同的称呼。

强化学习是机器学习的一个分支:监督学习、无监督学习、强化学习

强化学习的特点:

  • 没有监督数据、只有奖励信号

  • 奖励信号不一定是实时的,而很可能是延后的,有时甚至延后很多。

  • 时间(序列)是一个重要因素

  • 当前的行为影响后续接收到的数据

强化学习有广泛的应用:像直升机特技飞行(吴恩达机器学习课程最后部分有涉及)、经典游戏、投资管理、发电站控制、让机器人模仿人类行走等。

2. 强化学习的问题

(1) 奖励 Reward

是信号的反馈,是一个标量,它反映个体在t时刻做得怎么样。个体的工作就是最大化累计奖励。

R t R_{t} Rt 是强化学习主要基于这样的”奖励假设”:所有问题解决的目标都可以被描述成最大化累积奖励。
在这里插入图片描述

(2)序列决策 Sequential Decision Making

目标:选择一定的行为系列以最大化未来的总体奖励

这些行为可能是一个长期的序列

奖励可能而且通常是延迟的

有时候宁愿牺牲即时(短期)的奖励以获取更多的长期奖励(是一个有远见的算法,令人佩服!)

(3)个体和环境 Agent & Environment

在 t 时刻:
Agent 个体可以:

  1. 有一个对于环境的观察评估 O t O_{t} Ot
  2. 做出一个行为 A t A_{t} At
  3. 从环境得到一个奖励信号 R t R_{t} Rt

环境可以:

  1. 接收个体的动作 A t A_{t} At
  2. 更新环境信息,同时使得个体可以得到下一个观测 O t + 1 O_{t+1} Ot+1
  3. 给个体一个奖励信号 R t + 1 R_{t+1} Rt+1
    在这里插入图片描述

(3)历史和状态 History & State

  • 历史 History

历史是观测、行为、奖励的序列: H t = O 1 , R 1 , A 1 , . . . , O t − 1 , R t − 1 , A t − 1 , O t , R t , A t H_{t} = O_{1}, R_{1}, A_{1},..., O_{t-1}, R_{t-1}, A_{t-1}, O_{t}, R_{t}, A_{t} Ht=O1,R1,A1,...,Ot1,Rt1,At1,Ot,Rt,At

  • 状态 State

状态是所有决定将来的已有的信息,是关于历史的一个函数: S t = f ( H t ) S_{t} = f(H_{t}) St=f(Ht)

  • 环境状态

是环境的私有呈现,包括环境用来决定下一个观测/奖励的所有数据,通常对个体并不完全可见,也就是个体有时候并不知道环境状态的所有细节。即使有时候环境状态对个体可以是完全可见的,这些信息也可能包含着一些无关信息。

  • 个体状态

是个体的内部呈现,包括个体可以使用的、决定未来动作的所有信息。个体状态是强化学习算法可以利用的信息,它可以是历史的一个函数: S t a = f ( H t ) S^{a}_{t} = f(H_{t}) Sta=f(Ht)

  • 信息状态

包括历史上所有有用的信息,又称Markov状态。

  • 马儿可夫属性 Markov Property
    一个状态St是马尔可夫的,当且仅当: P [ S t + 1 ∣ S t ] = P [ S t + 1 ∣ S 1 , S 2 , . . . , S t ] P[S_{t+1} | S_{t}] = P[S_{t+1} | S_{1}, S_{2},..., S_{t}] P[St+1St]=P[St+1S1,S2,...,St]
    在这里插入图片描述

也就是说,如果信息状态是可知的,那么所有历史信息都可以丢掉,仅需要 t 时刻的信息状态就可以了。例如:环境状态是Markov的,因为环境状态是环境包含了环境决定下一个观测/奖励的所有信息;同样,(完整的)历史 H_{t} 也是马尔可夫的
示例——马儿可夫性

有如下三个针对老鼠的事件序列,其中前两个最后的事件分别是老鼠遭电击和获得一块奶酪,现在请分析比较这三个事件序列的特点,分析第第三个事件序列中,老鼠是获得电击还是奶酪?
在这里插入图片描述

假如个体状态 = 序列中的后三个事件(不包括电击、获得奶酪,下同),事件序列3的结果会是什么?(答案是:电击)

假如个体状态 = 亮灯、响铃和拉电闸各自事件发生的次数,那么事件序列3的结果又是什么?(奶酪)
假如个体状态 = 完整的事件序列,那结果又是什么?(未知)

(4)完全可观测的环境 Fully Observable Environments

个体能够直接观测到环境状态。在这种条件下:

个体对环境的观测 = 个体状态 = 环境状态

正式地说,这种问题是一个马儿可夫决定过程(Markov Decision Process, MDP)

(5)部分可观测的环境 Partially Observable Environments

个体间接观测环境。举了几个例子:

一个可拍照的机器人个体对于其周围环境的观测并不能说明其绝度位置,它必须自己去估计自己的绝对位置,而绝对位置则是非常重要的环境状态特征之一;
一个交易员只能看到当前的交易价格;
一个扑克牌玩家只能看到自己的牌和其他已经出过的牌,而不知道整个环境(包括对手的牌)状态。
在这种条件下:

个体状态 ≠ 环境状态

正式地说,这种问题是一个部分可观测马儿可夫决策过程。个体必须构建它自己的状态呈现形式,比如:记住完整的历史: S t a = H t S^{a}_{t} = H_{t} Sta=Ht

这种方法比较原始、幼稚。还有其他办法,例如 :

  1. Beliefs of environment state:此时虽然个体不知道环境状态到底是什么样,但个体可以利用已有经验(数据),用各种个体已知状态的概率分布作为当前时刻的个体状态的呈现:

  2. Recurrent neural network:不需要知道概率,只根据当前的个体状态以及当前时刻个体的观测,送入循环神经网络(RNN)中得到一个当前个体状态的呈现

3. 强化学习个体的主要组成部分

强化学习中的个体可以由以下三个组成部分中的一个或多个组成:

(1)策略 Policy

策略是决定个体行为的机制。是从状态到行为的一个映射,可以是确定性的,也可以是不确定性的。

(2)价值函数 Value Function

是一个未来奖励的预测,用来评价当前状态的好坏程度。当面对两个不同的状态时,个体可以用一个Value值来评估这两个状态可能获得的最终奖励区别,继而指导选择不同的行为,即制定不同的策略。同时,一个价值函数是基于某一个特定策略的,不同的策略下同一状态的价值并不相同。某一策略下的价值函数用下式表示:
在这里插入图片描述

(3)模型 Model

个体对环境的一个建模,它体现了个体是如何思考环境运行机制的(how the agent think what the environment was.),个体希望模型能模拟环境与个体的交互机制。

模型至少要解决两个问题:一是状态转化概率,即预测下一个可能状态发生的概率:
在这里插入图片描述

另一项工作是预测可能获得的即时奖励:
在这里插入图片描述

模型并不是构建一个个体所必需的,很多强化学习算法中个体并不试图(依赖)构建一个模型。

注:模型仅针对个体而言,环境实际运行机制不称为模型,而称为环境动力学(dynamics of environment),它能够明确确定个体下一个状态和所得的即时奖励。

4. 强化学习个体的分类

解决强化学习问题,个体可以有多种工具组合,比如通过建立对状态的价值的估计来解决问题,或者通过直接建立对策略的估计来解决问题。这些都是个体可以使用的工具箱里的工具。因此,根据个体内包含的“工具”进行分类,可以把个体分为如下三类:

  1. 仅基于价值函数的 Value Based:在这样的个体中,有对状态的价值估计函数,但是没有直接的策略函数,策略函数由价值函数间接得到。
  2. 仅直接基于策略的 Policy Based:这样的个体中行为直接由策略函数产生,个体并不维护一个对各状态价值的估计函数。
  3. 演员-评判家形式 Actor-Critic:个体既有价值函数、也有策略函数。两者相互结合解决问题。
    此外,根据个体在解决强化学习问题时是否建立一个对环境动力学的模型,将其分为两大类:

不基于模型的个体: 这类个体并不视图了解环境如何工作,而仅聚焦于价值和/或策略函数。
基于模型的个体:个体尝试建立一个描述环境运作过程的模型,以此来指导价值或策略函数的更新。

本专栏图片、公式很多来自David Silver主讲的UCL-Course强化学习视频公开课和台湾大学李宏毅老师的深度强化学习课程,在这里,感谢这些经典课程,向他们致敬!

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值