强化学习介绍(Introduction to RL)
2017-03-25 11:55
771 查看
一、简介
机器学习有三大分支,监督学习、无监督学习和强化学习,强化学习是系统从环境学习以使得奖励最大的机器学习。人工智能中称之为强化学习,在控制论中被称之为动态规划,两者在概念上是等价的。也被翻译为增强学习。二、概念
1.不同于机器学习的其它两个分支:它不是无监督学习,因为有回报(Reward)信号
反馈是延时的,而不是即时的
数据是与时间有关的序列
智能体的动作与后续的数据有关
2.强化学习基于一种回报假设:
回报是标量反馈信号
表明智能体(Agent)在这步做得有多好
智能体(Agent)的任务就是最大化累计回报
Reinforcement learning is learning what to do —-how to map situations to actions —- so as to maximize a numerical reward signal.
强化学习关注的是智能体如何在环境中采取一系列行为,从而获得最大的累积回报。
3.连续决策(Sequential Decision Making):
目标:选择一个Action尽量最大化将来的总回报
Aciton可能有长期的影响
回报可能延时
牺牲即时回报去获得更好的长期回报
金融投资就是一个这样的过程。
4.环境状态(Environment State):
Environment State是Environment私有的表达
Environment利用这些数据寻找下个Observation或者Reward
Environment State不总是对Agent可见的
即使Environment State是可见的,也有可能包含一些不相关的信息
5.智能体状态(Agent State):
Agent State是Agent的内在表达
Agent用这些信息寻找下个Action
这些信息被用于强化学习算法
6.信息状态(Information State):包含来自历史记录的所有有用的信息,也称之为Markov State
将来信息独立给定现在信息的过去信息
一旦状态已知,历史记录就可以扔掉
这个状态是将来的充要统计
Environment State是Markov
历史记录也是Markov
5.完全可观察的环境(Fully Observable Environments):Agent可以直接观察到的Environment State
Agent State = Environment State = Information State
这是一个Markov Decision Process
6.部分可观察的环境(Partially Observable Environments)
Agent不能直接观察到Environment
Agent State不等于Environment State
这是一个Partially Observable Markov Decision Process
Agent必须创建自己的State表达自己
7.强化学习智能体的主要组件(Major Components of an RL Agent):
Policy:Agent的习惯函数
Value Function:每个State或者Action的好坏
Model:Agent的环境表达
8.策略(Policy):
Policy是Agent的习惯表达
State到Action的映射
确定策略
随机策略
9.值函数(Value Function):
Value Function是将来回报的预测
用于评估State的好坏
因此,可以用于动作间的选择
10.模型(Model):
Model预测下一步Environment做什么
预测下个状态
预测下个回报
三、Agent的分类:
1.Value Based:Value Function
2.Policy Based:
Policy
3.Actor Critic:
Policy
Value Function
4.Model Free:
Policy或Value Function
5.Model Based:
Policy或Value Function
Model
四、过程:
通过强化学习,一个智能体(Agent)应该知道在什么状态(State)下应该采取什么行为(Action),这个状态从以获取最大的回报(Reward)。强化学习是从环境状态到动作的映射的学习,我们把这个映射称之为策略(Policy)。从David Silver的图可以看出Agent和Environment之间的关系 ,每个时间点Agent都会根据上一刻的State,从可以选择的动作集合中选择一个动作a_t执行,这个动作集合可以是连续的,比如机器人的控制,也可以是离散的比如游戏中的几个按键,动作集合的数量将直接影响整个任务的求解难度,执行a_t后得到一个Reward。环境收到动作a_t,放出State和Reward。
Agent都是根据当前的State来确定下一步的动作。因此,状态State和动作Action存在映射关系,也就是一个State可以对应一个Action,或者对应不同动作的概率(概率最高的就是最值得执行的动作)。状态与动作的关系其实就是输入与输出的关系,而State到Action的过程就称之为一个Policy。我们需要找到这样一个Policy使得Reward最大。
五、例子
1.直升机特技飞行2.机器人行走
3.战胜棋类世界冠军
4.玩游戏比人类还要好
上图是一个吃豆子游戏,迷宫的每一格就是一种State,Agent在每个State下,应该选择上下左右这些Action,吃豆子会得到正的Reward,被吃掉则反之。而在每个State下会选择哪一个Action则是Policy。
输入是:
State = Observation,例如迷宫的每一格是一个State
Actions = 在每个状态下,有什么行动
Reward = 进入每个状态时,能带来正面或负面的回报
输出就是:
Policy = 在每个状态下,会选择哪个行动
再详细一点就是:
State = 迷宫中Agent的位置,可以用一对座标表示,例如(1,3)
Action = 在迷宫中每一格,你可以行走的方向,例如:{上,下,左,右}
Reward = 当前的状态 (current state) 之下,迷宫中的一格可能有食物 (+1) ,也可能有怪兽 (-100)
Policy = 一个由状态 → 行动的函数,即: 函数对给定的每一个状态,都会给出一个行动
六、预测与控制
1.Prediction:评估未来给定Policy
2.Control:优化未来
找到最好的Policy
七、一些问题
1.强化学习像一个尝试-错误的学习2.Agent发现一个最好的Policy
3.来自环境的经验
4.在这条路上不要丢掉太多的Reward
5.探索寻找更多关于Environment的信息
6.运用那些可以最大化Reward的信息
7.探索和利用通常一样重要
相关文章推荐
- Java2核心技术第七版的学习笔记(一):An Introduction to Java(Java的介绍)
- 深度强化学习(Deep Reinforcement Learning)入门:RL base & DQN-DDPG-A3C introduction
- 深度学习介绍(Introduction to Deep Learning)
- 【学习笔记】Thinking in java (第三版)第一章 对象的介绍(Introduction to objects)
- MSDN Kernel-Mode Driver Architecture学习笔记(1)——Introduction to Windows Drivers(1)
- MSDN Kernel-Mode Driver Architecture学习笔记(1)——Introduction to Windows Drivers(2)
- Introduction to Materials Management 学习笔记--编制主计划
- linq to sql 学习(5)关于排序的介绍
- Introduction to Vertex Textures(顶点纹理介绍)---转
- Introduction to Algorithms 算法导论 第3章 函数的增长 学习笔记及习题解答
- 使用伪寄存器调试MSVC++程序的介绍--An introduction to debugging in MSVC++ using Pseudoregisters
- [初探CAB]:Introduction to CAB/SCSF by Rich Newman 学习笔记
- Introduction to Endianness(大端小端介绍)
- Introduction to Algorithms (算法导论) 学习笔记 -- Chapter 9
- Introduction to Algorithms 算法导论 第1章 基础知识 学习笔记及习题解答
- MSDN Kernel-Mode Driver Architecture学习笔记(1)——Introduction to Windows Drivers(3)
- Introduction to Materials Management 学习笔记--生产计划系统
- Introduction to Ext (EXT 介绍入门)
- Tutorial:Introduction to Ext (EXT 介绍入门)
- 并行计算介绍(Introduction to Parallel Computing ) ——我主张阅读英文原著