强化学习:Introduction

本文围绕强化学习展开,介绍其与机器学习的关系、与其他机器学习方法的差异及应用场景。阐述了强化学习的目标、四个元素,还介绍了Model-free和Model-based等方法。同时讲解序列化决策,包括Agent与环境、状态等概念,以及RL Agent的组成和分类法。

 


参考资料:墙裂推荐:【强化学习视频】Reinforcement Learning Course by David Silver

                    David Silver强化学习课程的ppt   

                《机器学习》西瓜书by周志华

                 2018年强化学习领域十篇重要论文(附源码)

     入门推荐看看这个:强化学习


课程中推荐的教材: 

【1】An Introduction to Reinforcement Learning, Sutton and Barto, 1998 MIT Press, 1998

【2】Algorithms for Reinforcement Learning, Szepesvari ,Morgan and Claypool, 2010


1. 强化学习基础概念

机器学习与强化学习的关系

强化学习与其它机器学习方法有什么不同?

  • 没有 supervisor, 只有一个奖赏信号( reward signal)
  • Feedback is delayed, not instantaneous,反馈信息是延迟的,而不是即时的
  • Time really matters (sequential, non i.i.d data)  由于是序列问题,时间属性很重要,并且数据不满足独立同分布的假设
  • Agent’s actions affect the subsequent data it receives 【agent的动作会影响它后续接收到的奖赏和它的下一个状态】

强化学习的应用举例

直升机做特技表演、打败十五子棋的世界冠军、管理投资组合、发电站的控制、使仿真机器人行走、打游戏打得比人类水平高;


目录

1. 强化学习基础概念

机器学习与强化学习的关系

强化学习与其它机器学习方法有什么不同?

强化学习的应用举例

1.1  强化学习的目标

1.2 强化学习的四个元素:Agent、环境状态、行动、奖励

1.3  Model-free方法

1.4 Model-based 方法

1.5 基于概率

1.6 基于价值

1.7 回合更新 & 单步更新

1.8 在线学习 和 离线学习

1. 9 在线策略

1.10 离线策略

1.11  Reward Rt

强化学习是基于 reward hypothesis的

序列化决策 Sequential Decision Making

Agent &  Environment

 history   &    State

 环境状态

agent state

Information State 信息状态

Fully Observable Environments :完全可观测的环境

Partially Observable Environments: 部分可观测的环境

  RL Agent 的主要组成部分

策略Policy

值函数 Value function 

模型 Model 

举例: 迷宫游戏

 RL agents 的分类法 Taxonomy

学习& 规划 Learning and Planning :序列决策的两个基本问题

探索&利用的平衡: Exploration and Exploitation

预测 & 控制   Prediction and Control


 


 

1.1  强化学习的目标

最大化所有时间步的累计奖励。

1.2 强化学习的四个元素Agent环境状态行动奖励

agent :在西瓜书中把Agent翻译为 “机器”,有的书中又称为计算机。The agent’s job is to maximise cumulative reward 

environment: 环境,和agent互动,对于agent的动作,反馈下一个state和reward。

 state:有部分可观测&完全可观测两种,后续讲MDP马尔可夫过程再详说

agent通过与environment互动,不断地试错【trial & error】来学习。 这个试错的过程就是:环境会产生可观测的状态state,agent会根据当前所处的状态来采取某个action【动作、行动】,然后environment 会对这个action反馈一个reward【奖励、奖赏】,这样的一个回合【一次尝试】称为一个时间步t;重复上述过程,然后agent的目标是要最大化所有时间步的累计奖励,也就是求出每一步该采取的action,使  \max_{a_{t}} \: \: \sum_{t=1}^{T} r_{t} 最大;共有T个时间步。【后面也会讲T为无穷大时的情形】

我们通过这种尝试就可以得到由state和action、reward组成的序列。

1.3  Model-free方法

 不理解环境,从环境中得到反馈然后从中学习;Model-free 中, 计算机只能按部就班,一步一步等待真实世界的反馈,再根据反馈采取下一步行动。Q learning、Sarsa、Policy Gradients

1.4 Model-based 方法

 用模型来表示环境,对环境建模;比Model-free多出了一个虚拟环境,我们可以先在虚拟环境中尝试,如果没问题,再拿到现实环境中来。Model-based 能通过想象来预判断接下来将要发生的所有情况,然后选择这些想象情况中最好的那种,并依据这种情况来采取下一步的策略。

1.5 基于概率

强化学习中最直接的一种,通过所处的环境,输出下一步要采取的各个动作的概率,所以每种动作都有可能被选中,只是概率不同。基于概率的方法,不一定会选择概率最高的某个动作 .

基于概率的方法用一个概率分布在连续动作中选取特定动作,是它的优点之一。

1.6 基于价值

基于价值的方法输出的是所有动作的价值根据最高价值来选择动作不适用于连续动作的选取,基于价值的决策部分更为肯定,就选价值最高的。


1.7 回合更新 & 单步更新

假设强化学习就是在玩游戏,游戏回合有开始和结束。回合更新指的是游戏开始后,需要等待游戏结束再总结这一回合,再更新我们的行为准则。而单步更新则是在游戏进行中每一步都在更新,不用等待游戏的结束,这样边玩边学习

1.8 在线学习 和 离线学习

在线学习,就是指必须本人在场,并且一定是本人一边行动边一学习

离线学习是你可以选择自己行动,也可以选择看着别人行动,通过看别人行动来学习别人的行为准则

离线学习 同样是从过往的经验中学习,但是这些过往的经历没必要是自己的经历,任何人的经历都能被学习。

1. 9 在线策略

 

1.10 离线策略


1.11  Reward Rt

【reward:“奖励、奖赏、回报”的意思,西瓜书上采用“奖赏”这个术语。】

A reward Rt is a scalar feedback signal ,it Indicates how well agent is doing at step t 

时间步t 的奖励Rt是一个标量,作为一个反馈信号来衡量agent在t步的表现有多好。


强化学习是基于 reward hypothesis的

 不同的学习任务中,reward的形式不同:

  • 直升机做特技表演:       沿着预期的轨道飞行就获得正的奖赏;飞机坠毁则得到负的奖赏。
  • 打败十五子棋的世界冠军:      游戏的 赢 / 输 对应着奖赏的 正/负
  • 管理投资组合:        获得账户里的资金作为奖赏
  • 发电站的控制:     产生电力则奖赏为正;超过安全临界点则奖赏为负。
  • 使仿真机器人直立行走:     向前行走时奖赏为正;走路摔倒则奖赏为负。
  • 打Atari游戏打得比人类水平高;     游戏得分的增加/减少对应着奖赏的正负。

序列化决策 Sequential Decision Making

  • 目标:  通过选择一系列的动作 来maximise total future reward

  • 采取的动作可能有长时依赖【 long term consequences】,
  • 对应的Reward也可能是延迟反馈的。甚至有的时候可能要牺牲眼前的回报,来获得长远来看更好的回报。比如说金融投资可能要花上几个月才开始有收益,下棋时要用几步棋来堵死对手的路才能扭转输赢的局面。

Agent &  Environment


 history   &    State

  • history 历史数据,是由观测O、奖赏R 和采取的动作 A组成的序列,这三个是在时间t上,agent可以观测到的所有变量。

    历史数据决定了下一步会发生什么:  agent 来选择 动作, environment 选择 被agent观测到的状态或者奖赏 。

  • State 是history的函数,是用来确定下一步所用到的信息。

 环境状态

  • 环境状态 \mathbf{S_{t}^{e}}  是 环境的内部表征,

  • \mathbf{S_{t}^{e}} 是环境用来选择下一个 observation或reward 所用到的任何信息,

  • \mathbf{S_{t}^{e}} 通常不能被 agent观测到, agent最多只能观测到与\mathbf{S_{t}^{e}} 无关的信息。


agent state

  • agent的状态 \mathbf{S _{t}^{a}} 是agent的内部表示,
  • 是agent用来选择下一个 action 所用到的任何信息,
  • 也是强化学习算法所使用到的信息。
  • 它可以是history 的任意函数。
  • 环境state 和 Agent State 的区别啊?

Information State 信息状态

  • 又叫Markov state,是history中所有有用的信息。环境状态 \mathbf{S_{t}^{e}} 和历史数据 H_{t} 都具有马尔可夫性。

  • 当且仅当 一个状态S_{t} 的下一状态S_{t+1}只与它当前所处的状态S_{t}有关,而与之前的状态无关时,我们称状态S_{t}具有马尔可夫性。也就是“The future is independent of the past given the present”

我们用状态S_{t} 来切分历史数据,H_{1:t}\, \rightarrow \, S_{t}\, \rightarrow \, H_{t+1:\infty }, 若已知状态S_{t},则H_{1:t}\,就可以被丢掉,因为状态 S_{t}H_{t+1:\infty } 的充分统计量【sufficient statistic】。


Fully Observable Environments :完全可观测的环境

  • 【Full observability】对于完全可观测的情形,agent可以直接观测到环境状态
  • 此时有 ,Agent的状态\mathbf{S _{t}^{a}} 等于环境状态 \mathbf{S_{t}^{e}}  ,也等于信息状态 ,
  •  正式地说,这是一个马尔可夫过程【Markov decision process ,MDP】

Partially Observable Environments: 部分可观测的环境

  • 【Partial observability】: agent可以间接地观测到环境:比如一个自带摄像头的机器人不知道它自己所处的绝对位置,投资交易的代理人也只能观察到股票/证券的当前价格,一个扑克玩家也只能看到别人已经出的牌。
  • 此时agent state 不等于环境状态
  • 正式地说,这是一个 部分可观测的马尔可夫过程【partially observable Markov decision process ,POMDP】
  • Agent 必须构造\mathbf{S _{t}^{a}}来表示它的状态。 比如说

 完全利用历史数据: \mathbf{S _{t}^{a}} = H_{t} .

对环境状态的信度Beliefs:

使用循环神经网络RNN:   


  RL Agent 的主要组成部分

 An RL agent 包含以下至少一个部分:

  • 策略:   agent的行为函数【 behaviour function】
  • 值函数: 衡量 每个 state and/or action有多好
  •  模型: 是 agent对 环境建模,所得的表示环境的模型

策略Policy

  • 它代表了 agent的行为,是一个从state 到 action的映射。
  • 对于Deterministic 确定性策略:
  • Stochastic 随机的策略 :

值函数 Value function 

  • 值函数是对未来回报的预测,用来估计一个状态的好坏,以作为选择下一个动作的根据。
  • agent 在t步处于状态s , 在后面的t+1,t+2,... 时间步的回报分别表示为 R_{t+1},\, R_{t+2},\, ... ,【由于考虑到总的时间步T可能区域无穷,为了使累计奖赏是一个有限数;又或者为表示我们更看重近期的回报;我们乘以一个折扣因子\gamma 【0 < \gamma < 1】

在策略 \pi 下, 我们对未来累计回报的预期,也就是值函数,可以表示为


模型 Model 

  • 模型:预测 环境下一步会采取的行动,这个模型就是Agent对环境的建模。
  • 状态转移概率阵P: 预测agent的下一个状态
  • R 预测下一步的奖赏


举例: 迷宫游戏

那么我们先看看可以采取的策略,也就是在每个白色空格的位置,可以移动的方向,标注成下面左图的样子。

再来看看值函数,类似于动态规划的逆序解法,我们从终点那里开始标注,如果可以通过相邻的白色空格向上/下/左/右移动到同一个白色空格,那么这两个空格的得分一样。看下面右图。

          

求出来的解就如下图所示:


 RL agents 的分类法 Taxonomy

                  

 


学习& 规划 Learning and Planning :序列决策的两个基本问题

  • 强化学习: 最开始,环境是未知的, agent 通过与环境互动,来改善它的策略policy
  • 规划问题Planning: 已知环境的模型,agent 不需要与环境互动,直接用模型来进行计算,以改进策略。规划问题又叫做推理思考【  deliberation, reasoning, introspection, pondering, thought, search】


 

 


探索&利用的平衡: Exploration and Exploitation

  • 强化学习通过不断试错来进行学习【trial-and-error learning】, agent既要从与环境的互动经历中找出一个好的策略,又不能在探索的过程中丢分太多。
  • 探索Exploration 能找出关于环境的更多的信息。
  • Exploitation 利用已知信息来最大化 reward
  •  explore 和exploit通常是同样重要的

举例:

  • 选择吃饭的餐馆:环境可理解为你可以选择的餐馆,agent代表你,回报就是迟到好吃的美食:

Exploitation是去你喜欢的店吃,可以吃到味道不错的;

而Exploration代表尝试一家新的餐馆,这就意味着可能reward并不一定高

  • 石油钻井

Exploitation: 在已知的最佳地点钻井

Exploration : 去尝试一个新的位置

  • 玩游戏

Exploitation :选择你认为最佳的动作

Exploration 试探性地做不同的动作

预测 & 控制   Prediction and Control

  • 预测: 给定一个策略,估计未来的问题
  • 控制: 找出最佳的策略,来使未来的结果最优

 

The authoritative textbook for reinforcement learning by Richard Sutton and Andrew Barto. Contents Preface Series Forward Summary of Notation I. The Problem 1. Introduction 1.1 Reinforcement Learning 1.2 Examples 1.3 Elements of Reinforcement Learning 1.4 An Extended Example: Tic-Tac-Toe 1.5 Summary 1.6 History of Reinforcement Learning 1.7 Bibliographical Remarks 2. Evaluative Feedback 2.1 An -Armed Bandit Problem 2.2 Action-Value Methods 2.3 Softmax Action Selection 2.4 Evaluation Versus Instruction 2.5 Incremental Implementation 2.6 Tracking a Nonstationary Problem 2.7 Optimistic Initial Values 2.8 Reinforcement Comparison 2.9 Pursuit Methods 2.10 Associative Search 2.11 Conclusions 2.12 Bibliographical and Historical Remarks 3. The Reinforcement Learning Problem 3.1 The Agent-Environment Interface 3.2 Goals and Rewards 3.3 Returns 3.4 Unified Notation for Episodic and Continuing Tasks 3.5 The Markov Property 3.6 Markov Decision Processes 3.7 Value Functions 3.8 Optimal Value Functions 3.9 Optimality and Approximation 3.10 Summary 3.11 Bibliographical and Historical Remarks II. Elementary Solution Methods 4. Dynamic Programming 4.1 Policy Evaluation 4.2 Policy Improvement 4.3 Policy Iteration 4.4 Value Iteration 4.5 Asynchronous Dynamic Programming 4.6 Generalized Policy Iteration 4.7 Efficiency of Dynamic Programming 4.8 Summary 4.9 Bibliographical and Historical Remarks 5. Monte Carlo Methods 5.1 Monte Carlo Policy Evaluation 5.2 Monte Carlo Estimation of Action Values 5.3 Monte Carlo Control 5.4 On-Policy Monte Carlo Control 5.5 Evaluating One Policy While Following Another 5.6 Off-Policy Monte Carlo Control 5.7 Incremental Implementation 5.8 Summary 5.9 Bibliographical and Historical Remarks 6. Temporal-Difference Learning 6.1 TD Prediction 6.2 Advantages of TD Prediction Methods 6.3 Optimality of TD(0) 6.4 Sarsa: On-Policy TD Control 6.5 Q-Learning: Off-Policy TD Control 6.6 Actor-Critic Methods 6.7 R-Learning for Undiscounted Continuing Tasks 6.8 Games, Afterstates, and Other Special Cases 6.9 Summary 6.10 Bibliographical and Historical Remarks III. A Unified View 7. Eligibility Traces 7.1 -Step TD Prediction 7.2 The Forward View of TD( ) 7.3 The Backward View of TD( ) 7.4 Equivalence of Forward and Backward Views 7.5 Sarsa( ) 7.6 Q( ) 7.7 Eligibility Traces for Actor-Critic Methods 7.8 Replacing Traces 7.9 Implementation Issues 7.10 Variable 7.11 Conclusions 7.12 Bibliographical and Historical Remarks 8. Generalization and Function Approximation 8.1 Value Prediction with Function Approximation 8.2 Gradient-Descent Methods 8.3 Linear Methods 8.3.1 Coarse Coding 8.3.2 Tile Coding 8.3.3 Radial Basis Functions 8.3.4 Kanerva Coding 8.4 Control with Function Approximation 8.5 Off-Policy Bootstrapping 8.6 Should We Bootstrap? 8.7 Summary 8.8 Bibliographical and Historical Remarks 9. Planning and Learning 9.1 Models and Planning 9.2 Integrating Planning, Acting, and Learning 9.3 When the Model Is Wrong 9.4 Prioritized Sweeping 9.5 Full vs. Sample Backups 9.6 Trajectory Sampling 9.7 Heuristic Search 9.8 Summary 9.9 Bibliographical and Historical Remarks 10. Dimensions of Reinforcement Learning 10.1 The Unified View 10.2 Other Frontier Dimensions 11. Case Studies 11.1 TD-Gammon 11.2 Samuel's Checkers Player 11.3 The Acrobot 11.4 Elevator Dispatching 11.5 Dynamic Channel Allocation 11.6 Job-Shop Scheduling Bibliography Index
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值