【机器学习11】强化学习

1 基本概念

一个机器人在环境中会做各种动作, 环境会接收动作, 并引起自身状态的变迁, 同时给机器人以奖励。 机器人的目标就是使用一些策略, 做合适的动作, 最大化自身的收益。

整个场景一般可以描述为一个马尔可夫决策过程:

动作: 所有可能做出的动作的集合, 记作A(可能是无限的) 。

状态: 所有状态的集合, 记作S。

奖励: 机器人可能收到的奖励, 一般是一个实数, 记作r。

时间(t=1,2,3...) : 在每个时间点t, 机器人会发出一个动作at, 收到环境给出的收益rt, 同时环境进入到一个新的状态st。

状态转移: S×A→S满足从当前状态到下一状态的转移, 只与当前状态以及当前所采取的动作有关。

累积收益: 从当前时刻0开始累积收益的计算方法是:

强化学习的核心任务是, 学习一个从状态空间S到动作空间A的映射, 最大化累积受益。 常用的强化学习算法有Q-Learning、 策略梯度, 以及演员评判家算法(Actor-Critic) 等。

2 价值迭代和策略迭代

价值迭代:

上面的迭代过程实际上运用了贝尔曼方程(Bellman Equation) , 来对每个位置的价值进行更新:

价值V(s)由两部分组成:

策略迭代:

策略就是根据当前状态决定该采取什么动作。

如何衡量策略的好坏? 这就需要介绍策略评估(Policy Evaluation) 。 给定一个策略π, 我们可以计算出每个状态的期望价值 V(s)。 策略迭代可以帮助我们找到更好的策略, 即期望价值更高的策略, 具体步骤如下:

3 Q-learning和与Deep Q-learning

Qlearning的本质是, 当前状态sj、 回馈aj、 奖励rj, 以及Q函数之间存在关系:

依据平方差距, 可以对Q函数的取值做迭代改进。

4 策略梯度

包括深度Q-learning在内的大多数强化学习算法, 都没有收敛性的保证, 而策略梯度(Policy Gradient) 则没有这些问题, 它可以无差别地处理连续和离散状态空间,同时保证至少收敛到一个局部最优解。

策略梯度的基本思想就是, 直接用梯度方法来优化R(θ)。 和Q-learning不同的是, 策略梯度并不估算Q函数本身, 而是利用当前状态直接生成动作at。

设τ为某一次0到T时间所有状态及行动的集合(称作一条轨迹) , 则R(θ)=E(r(τ)), 其中函数r计算了轨迹τ的得分。

一个简单的算法描述如图:

∇θR(θ)实际上是一个随机变量g(τ)的期望。 我们对g(τ)进行若干次独立采样, 可以获得对其期望的一个估计。

如果能在不改变期望的前提下减少g(τ)的方差, 则能有效提高对其期望估计的效率。 由于所有可能的状态和动作序列构成了整个轨迹空间,概率密度在整个轨迹空间中的总和必须等于 1。这是因为所有可能事件的总概率应该等于 1。即

对g(τ)求期望可得:

对于任一个常量b, 我们定义一个强化梯度:

因为b是常数,增加前后期望值都不变,但是改变后的方差更小。

经过计算可以得到最优的b为:

因此改良后的策略梯度为:

相关推荐
小毅&Nora34 分钟前
【人工智能】【AI外呼】系统架构设计与实现详解
人工智能·系统架构·ai外呼
jianqiang.xue1 小时前
别把 Scratch 当 “动画玩具”!图形化编程是算法思维的最佳启蒙
人工智能·算法·青少年编程·机器人·少儿编程
Coding茶水间2 小时前
基于深度学习的安全帽检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·深度学习·yolo·目标检测·计算机视觉
weixin79893765432...3 小时前
Vue + Express + DeepSeek 实现一个简单的对话式 AI 应用
vue.js·人工智能·express
nju_spy3 小时前
ToT与ReAct:突破大模型推理能力瓶颈
人工智能·大模型·大模型推理·tot思维树·react推理行动·人工智能决策·ai推理引擎
AI-智能3 小时前
别啃文档了!3 分钟带小白跑完 Dify 全链路:从 0 到第一个 AI 工作流
人工智能·python·自然语言处理·llm·embedding·agent·rag
y***86693 小时前
C机器学习.NET生态库应用
人工智能·机器学习
deng12044 小时前
基于LeNet-5的图像分类小结
人工智能·分类·数据挖掘
ChoSeitaku4 小时前
线代强化NO20|矩阵的相似与相似对角化|综合运用
线性代数·机器学习·矩阵
OpenAnolis小助手4 小时前
直播预告:LLM for AIOPS,是泡沫还是银弹? |《AI 进化论》第六期
人工智能