【机器学习西瓜书学习笔记——强化学习】

机器学习西瓜书学习笔记【第十六章】

第十六章 强化学习

.在强化学习任务中,学习的目的就是要找到能使长期累积奖赏最大化的策略。

16.1 任务与奖赏

四种主要的机器学习方式

监督学习:已知训练数据的标签。

无监督学习:未知训练数据的标签。

半监督学习:将无监督学习和监督学习融合在一起。

强化学习:基于环境的反馈而行动,通过不断与环境的交互、试错,最终完成特定目的或者使得整体行动收益最大化。(不需要训练数据的标签)

马尔可夫决策过程

16.2 K K K-摇臂赌博机

探索与利用

"仅探索"算法就是将机会平均分配给每一个赌博机,随机挑选赌博机。

"仅利用"算法就是选取当前平均价值最高的那台赌博机。

但由于尝试的次数有限,所以要在探索与利用之间进行权衡,这也是强化学习面临的一大问题:探索-利用窘境。

$\epsilon $-贪心

原理:每次以 ϵ \epsilon ϵ的概率来探索,即以均匀概率随机挑选一个摇臂。以 1- ϵ \epsilon ϵ 的概率利用,即挑选当前平均价值最高的那个摇臂。

ϵ \epsilon ϵ一般取值为较小值0.1或者0.01,当然也可以随着尝试次数增加而减小,如果尝试次数为 n n n,那么设为 ** ϵ \epsilon ϵ =1/ n \sqrt n n **即可。

S o f t m a x Softmax Softmax

原理:据Boltzmann分布$P(k)=\frac{e^{\frac{Q(k)}{T}}}{\sum_{i=1}^{k} e^{\frac{Q(i)}{T}}} $来进行抉择。其中 T被称作"温度",T越小的话平均价值越高的摇臂被选取的概率越高,T趋向于无穷大的话选取概率就很均匀了,这时候就变成了仅探索。

16.3 有模型学习

策略评估

在模型已知的前提下,我们可以对任意策略的进行评估(后续会给出演算过程)。一般常使用以下两种值函数来评估某个策略的优劣:

状态值函数( V V V) : V ( x ) V(x) V(x),即从状态x出发,使用π策略所带来的累积奖赏;

状态-动作值函数( Q Q Q) : Q ( x , a ) Q(x,a) Q(x,a),即从状态x出发,执行动作a后再使用π策略所带来的累积奖赏。

策略改进

理想的策略应能使得每个状态的累积奖赏之和最大,简单来理解就是:不管处于什么状态,只要通过该策略执行动作,总能得到较好的结果。因此对于给定的某个策略,我们需要对其进行改进,从而得到最优的值函数

最优 B e l l m a n Bellman Bellman等式改进策略的方式为:将策略选择的动作改为当前最优的动作,而不是像之前那样对每种可能的动作进行求和。易知:选择当前最优动作相当于将所有的概率都赋给累积奖赏值最大的动作,因此每次改进都会使得值函数单调递增。

策略迭代与值迭代

策略迭代:先给定一个随机策略,现对该策略进行评估,然后再改进,接着再评估/改进一直到策略收敛、不再发生改变。

策略迭代法在每次改进策略后都要对策略进行重新评估,因此比较耗时。若从最优化值函数的角度出发,即先迭代得到最优的值函数,再来计算如何改变策略,这便是值迭代算法。

16.4 免模型学习

免模型学习:学习算法不依赖于环境建模。

蒙特卡罗强化学习

蒙特卡罗强化学习基于采样来估计状态-动作值函数 :对采样轨迹中的每一对状态-动作,记录其后的奖赏值之和,作为该状态-动作的一次累积奖赏,通过多次采样后,使用累积奖赏的平均作为状态-动作值的估计(求平均是批处理式的),并引入 ϵ \epsilon ϵ-贪心策略保证采样的多样性

本质:通过多次尝试后求平均未作为期望累积奖赏的近似。

同策略" (on-policy )蒙特卡罗强化学习算法
异策略" (off-policy) 蒙特卡罗强化学习算法

时序差分学习

  • 结合动态规划和蒙特卡罗的思想
  • 更高效的免模型学习
Sarsa算法
  • 同策略算法
  • 评估ϵ-贪心策略
  • 执行ϵ-贪心策略
Q-学习算法

Q − L e a r n i n g Q-Learning Q−Learning 是一种无模型( m o d e l − f r e e model-free model−free)的强化学习算法,用于找到一个代理( a g e n t agent agent)在给定环境中的最佳策略,使得其累积的奖励最大化。

  • 异策略算法
  • 评估ϵ-贪心策略
  • 执行原始策略

16.5 值函数近似

值函数:关于有限状态的表格值函数,数组表示,i对应的函数值就是数组i的值。

状态空间离散化

  • 状态空间离散化:转换为有限空间后求解
  • 转换:是难题
  • 简化情形:值函数为状态的线性函数: V θ ( x ) = θ T x V_θ(x)=θ^Tx Vθ(x)=θTx
  • x x x:状态向量, θ θ θ:参数向量

16.6 模仿学习

定义:现实任务中,往往能得到人类专家的决策过程范例,从这样的范例中学习,就是模仿学习。

直接模仿学习

  • 多步决策搜索空间巨大
  • 缓解:直接模仿人类专家的"状态-动作对"。

逆强化学习

逆强化学习:从人类专家提供的范例数据中反推奖赏函数有助于解决问题。

现实任务:设计奖赏函数困难。

基本思想
  • 使机器做出与范例一致的行为,等价于在某个奖赏函数的环境下寻求最优策略,该策略所产生的轨迹与范例数据一致。
  • 寻找某种奖赏函数使得范例数据最优,然后使用这个奖赏函数来训练强化学习策略。
算法
相关推荐
zz_wen39 分钟前
第十八章 番外 余弦相似度
机器学习
基算仿真2 小时前
基于sklearn的机器学习 — KNN
人工智能·机器学习·sklearn
Achanss3 小时前
C#学习笔记 .NET Core使用注意事项
笔记·学习·c#
爱分享的益达3 小时前
往年互联网大厂腾讯华为百度等校招面试笔试题合集
学习·程序人生·面试·生活
B.-3 小时前
Remix 学习 - 路由模块(Route Module)
前端·javascript·学习·react·web
limengshi1383924 小时前
通信工程学习:什么是GFP通用成帧规范
服务器·网络·网络协议·学习·信息与通信
月夕花晨3744 小时前
C++学习笔记(14)
c++·笔记·学习
xcato4 小时前
k8s笔记
笔记·容器·kubernetes
lagransun4 小时前
Linux内核学习之 -- 系统调用open()和write()的实现笔记
linux·笔记·学习
Qiuner4 小时前
【机器学习】分类与回归——掌握两大核心算法的区别与应用
算法·机器学习·分类