图解强化学习 |手算Q-learning

简介: Q-learning是一种基于价值的离线无模型强化学习算法,通过Q表存储状态-动作价值,利用时序差分和ε-贪心策略迭代更新,实现最优策略学习;但对连续动作适应性差,大规模状态空间易致Q表爆炸。(239字)

 Q-learning算法的基础认识

Q-learning属于基于价值的离线无模型强化学习算法.

仅通过学习动作价值指导决策,无法直接优化动作策略,对连续动作场景适配性差。

它依靠Q表存储价值,结合时序差分规则迭代更新,搭配ε-贪心策略平衡探索与利用,依赖折扣因

子、学习率调控训练效果,需完成单步交互后更新,虽逻辑简单易实现,但状态或动作空间较大时

易出现Q表爆炸问题。

image.gif


基础 Q-learning 结构

Q-Learning决策

                                          选择最大的Q值(动作价值)

Q-Learning 依据动作价值函数完成决策,核心是在 Q 表中选取价值最高的动作。 以示例说明:当

前处于状态s1,存在动作a1a2,查表得Q(s1, a1)=-2Q(s1, a2)=1

a2对应预期奖励更高,因此选择a2。执行动作后状态切换为s2,重复查表、对比 Q

值、择优选择的流程。智能体不断跟随新状态循环该逻辑,直至任务结束。

  image.gif


QLearning 更新

               一个动作的总价值,由当前即时奖励与后续状态的长期收益共同构成。

估计值:Q 表中记录的 Q(s1, a2),即当前状态下执行对应动作的预估总价值。

真实目标值:即时奖励 + 下一状态的最大动作价值;引入折扣系数\(\gamma\),弱化远期收益权

重,体现未来收益的不确定性。

算法超参数与决策策略:

epsilon- 贪心策略:用于动作选择。以 epsilon=0.9为例,90% 概率依照 Q 表择优执行,10% 概

率随机选动作,以此平衡探索与利用。

学习率alpha:取值小于 1,控制单次训练中误差的更新幅度。

折扣因子gamma:对未来奖励做衰减,衡量长期收益的重要程度。

image.gif


手动计算过程

选动作

根据当前的状态和Q表格选动作

image.gif

执行动作

根据当前的状态和动作,得到奖励和下个状态

image.gif

估算的(状态-行为)值

计算当前行为的动作价值的估计值

image.gif

计算真实值

计算当前行为的动作价值的真实值(根据下一个动态的最大动作奖励函数)

image.gif

更新Q表

更新当前状态选择当前动作的动作价值函数

image.gif


数学公式

动作价值函数(Q函数)

在状态 s 下执行动作 a,未来能够获得的累计回报期望值。

image.gif

Bellman 最优方程

Q-learning 的理论基础是 Bellman 最优方程:


当前动作价值 = 当前奖励 + 下一状态最大价值。不断逼近最优 Bellman 方程。

TD目标(Temporal Difference Target)

Q-learning 每次更新的目标值:

TD Target(时序差分目标),当前样本认为的“正确 Q 值”。

TD误差(Temporal Difference Error)

当前 Q 值与目标值之间的差距。

Q-learning 更新公式

新 Q 值 = 旧经验 + 新经验

image.gif

最优策略公式

在当前状态选择价值最大的动作。

image.gif

ε-greedy 探索策略

训练阶段不能一直贪心,否则容易陷入局部最优,因此采用 ε-greedy:

奖励累计公式(Return)

Q-learning 优化目标是最大化累计奖励:

image.gif

Q-learning 最终学习:

image.gif

image.gif

image.gif

目录
相关文章
|
2月前
|
机器学习/深度学习 算法 机器人
图解强化学习 |手算SAC算法
SAC(Soft Actor-Critic)是最稳定、强大的连续动作强化学习算法,广泛应用于机器人控制与决策任务。其核心是最大熵强化学习:通过双Q网络抑制过估计,柔性策略网络增强探索,自适应温度系数α动态平衡利用与探索,兼顾最优性与鲁棒性。(239字)
522 1
|
云栖大会 开发者
收到阿里云【乘风者计划】博主证书和奖励
收到阿里云【乘风者计划】博主证书和奖励 2023年2月对我来说是一个很好的开端,因为我在1号就收到了阿里云寄给我的【乘风者计划】博主证书和奖励。好兆头啊! 我收到的是我获得的【技术博主】【星级博主】【专家博主】三个的奖品和证书,一快给我寄过来哒!
3392 2
收到阿里云【乘风者计划】博主证书和奖励
|
2月前
|
机器学习/深度学习 数据采集 人工智能
田间杂草检测数据集分享(适用于YOLO系列深度学习分类检测任务)
本数据集含4000张真实农田图像(小麦/玉米/水稻田),YOLO格式标注杂草目标,覆盖多天气、光照与视角,适用于YOLO系列等目标检测模型训练,助力智能除草与精准农业研究。(239字)
453 16
|
2月前
|
机器学习/深度学习 编解码 算法
PyTorch深度学习实战 |手算​​U-net
本文详细解析了U-Net网络架构及其在医学图像分割中的应用。重点对比了U-Net与FCN的核心区别:U-Net采用特征拼接(Concat)保留所有层级信息,而FCN使用特征相加(Add)进行融合。文章深入剖析了U-Net的编码器-瓶颈-解码器结构,解释了其独特的裁剪拼接机制和Overlap-tile策略,并提供了完整的PyTorch实现代码。现代U-Net通过SamePadding实现了输入输出尺寸一致,显著提升了分割精度。文章还探讨了弹性形变数据增强和带空间权重的损失函数设计,为医学图像分析提供了实用解决
271 2
|
2月前
|
机器学习/深度学习 数据挖掘 PyTorch
PyTorch深度学习实战 |手算​​FCN全卷积神经网络
本文介绍了FCN-8s语义分割网络的实现细节。首先解释了语义分割的概念及其与图像分类的区别,重点分析了FCN网络结构中的全卷积化、上采样和跳跃连接三个关键技术。全卷积化将传统CNN的全连接层改为卷积层,实现像素级分类;上采样通过双线性插值恢复特征图尺寸;跳跃连接则融合高低层特征以提升细节表现。文章详细推导了损失函数的计算过程,并提供了完整的PyTorch实现代码,包括双线性插值权重初始化、VGG16骨干网络和FCN-8s主体结构。最后通过测试验证了模型能正确输出与输入尺寸匹配的预测结果。
379 3
|
2月前
|
人工智能 自然语言处理 计算机视觉
人工智能|大白话Meshed-Memory Transformer
M2Transformer是一种图像描述生成模型,由三部分构成:骨干编码器(Faster R-CNN)提取区域特征;记忆增强编码器(Transformer)对特征进行语义细化;网格解码器(Transformer)将增强特征转化为自然语言描述。结构清晰、层次分明,兼顾准确性与可解释性。(239字)
210 4
|
2月前
|
机器学习/深度学习 存储 人工智能
图解人工智能的数学基础(线性代数)
本文系统讲解线性代数核心概念,涵盖向量(定义、几何/坐标表示、内积)、矩阵(含义、运算、秩、逆、相似、分解)、行列式(几何意义与变换关系)、线性方程组、特征值与特征向量、二次型、向量空间及范数等,强调其在AI与神经网络中的实际应用。
428 7
|
2月前
|
弹性计算 前端开发 Ubuntu
阿里云服务器ECS的租用教程和简单的前端页面部署
本文详解阿里云学生福利领取(含300元卡券)及ECS轻量服务器选购与部署全流程:涵盖学生机免费申领、配置选型建议(Ubuntu/CentOS/Windows)、安全组设置、Nginx安装、网页部署及Xshell远程连接等实操步骤,新手友好。
416 8
|
2月前
|
人工智能 机器人 芯片
人工智能|YOLOv8实战
本内容为安全帽检测实战项目,基于YOLOv8模型,涵盖Kaggle数据获取、自定义yaml配置、模型训练(yolo_train.py)与测试(yolo_test.py),并提供服务器(FastAPI+Docker)、边缘(Jetson+TensorRT)及国产嵌入式(RK3588+RKNN)三类部署方案,支持工业场景实时智能识别。(239字)
499 1