强化学习基础认知
(第一次使用markdown)
强化学习发展迅速原因
原因有二:
1. 算力(GPU、TPU)的提升,我们可以更快地做更多的 trial-and-error 的尝试来使得 Agent 在Environment里面获得很多信息,取得很大的Reward。
2. 我们有了深度强化学习这样一个端到端的训练方法,可以把特征提取和价值估计或者决策一起优化,这样就可以得到一个更强的决策网络。
强化学习的基本结构
**强化学习是机器学习中的一个领域**,强调如何基于环境而行动,以取得最大化的预期利益。其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。强化学习的本质是智能体与环境的交互。
强化学习相比于监督学习训练更加困难
强化学习处理的为多序列数据,难以满足独立同分布条件;
强化学习存在奖励延迟,即智能体在环境中获得当前步的状态并做出反应时,会有一个反馈,该反馈不是同步进行;
强化学习是一个盲目试错的过程,通过智能体的反馈,更新自己的反应。
强化学习的基本特征
1. 有trial-and-error exploration的过程,即需要通过探索Environment来获取对这个Environment的理解。
2. 强化学习的Agent 会从Environment里面获得延迟的Reward。
3. 强化学习的训练过程中时间非常重要,因为数据都是有时间关联的;
4. 强化学习中Agent的Action会影响它随后得到的反馈。
强化学习的基本单元
策略函数(policy function):
策略函数主要分为两种:
一、随机性策略(stochastic policy)
简单理解,计算出所有的行为的概率,进一步对概率分布进行采样,进而得到采样的行为。
二、确定性策略(deterministic policy)
该概率为事先确定好的,采取极大化的可能。
通常情况下,强化学习一般使用 随机性策略 。随机性策略有很多优点:
- 在学习时可以通过引入一定随机性来更好地探索环境;
- 随机性策略的动作具有多样性,这一点在多个智能体博弈时也非常重要。采用确定性策略的智能体总是对同样的环境做出相同的动作,会导致它的策略很容易被
对手预测。
价值函数(value function):
价值函数是一个折扣的未来奖励的加和。
模型(model):
模型决定了下一个状态会是什么样的,就是说下一步的状态取决于你当前的状态以及你当前采取的行为
model-based 和model-free 学习的区别
model-based 指根据环境中的经验,构建一个虚拟的世界,同时在虚拟世界和真实世界学习;model-free则是在真实环境中交互学习。或者说,model-free属于数据驱动模型方法,而model-based多了对真实环境进行虚拟建模的环节。
免模型学习的泛化性要优于有模型学习,原因是有模型学习算需要对真实环境进行建模,并且虚拟世界与真实环境之间可能还有差异,这限制了有模型学习算法的泛化性。
强化学习的智能体(agent)不同
agent 可以分为三类:
**基于价值函数的agent:**
显式学习价值函数,隐式学习策略
**基于策略的agent:**
直接学习策略,然后输出动作概率。
**两者结合的agent:**
价值函数和策略同时学习,进而两者交互得到一个最优解。