Q-learning

Q-learning理解

建议参看这个链接: Q学习(Q-learning)简单理解,十分形象。

总结:

Q-Learning:通过更新Q表(Q-table)使得智能体在给定状态(given state)下选定最优动作(best action)的算法。
q-learning是一种无监督学习,不断从一个状态转至另一状态进行探索,直到到达目标。我们将agent的每一次探索称为一个 episode。在每一个episode中,agent从任意初始状态到达目标状态,当agent达到目标状态后,一个episode即结束,接着进入另一个episode。
其核心公式
好图片片描述
其中s,a表示当前的状态和行为,s,a表示s的下一个状态及行为,学习参数γ为满足
0≤γ<1的常数。
##使用ϵ−greedy策略的Q-learning
在这里插入图片描述
Q-learning在训练的时候,ϵ−greedy策略被用来选择动作。机器随机生成一个数,如果这个数超过ϵ, 那么就随机选择一个动作。反之,就选择当前Q值最大的动作,更新Q表。
得到Q表之后,当我们选择动作的时候,都是选择Q值最大的动作。

q 表

q表是q-learning的目标,其中Q值表示的不是状态,还是这个状态下选择的动作。
在这里插入图片描述

深度q-learning(dqn/dql)

核心:用神经网络代替q表
解决的问题:状态较多时,q表收敛过慢
思路:将神经网络引入到Q学习中,通过输入状态,直接得到各个动作在该状态下的Q值
在这里插入图片描述

深度q网络架构

在这里插入图片描述

深度Q神经网络把一系列的状态框架作为输入,这些将被送入到网络中,并输出在该状态下每个可能动作对应的Q值向量,之后,我们选择该向量中最大的Q值来确定我们的最优动作。
深度Q网络模型架构的输入是距离当前时刻最近的连续4帧预处理后的图像,该输入信号经过3哥卷积层和2个全连接层的非线性变换,变换成低维的,抽象的特征表达,并最终在输出层产生每个动作对应的Q值函数。

1:输入层
2:对输入层进行卷积操作
3:对第一隐藏层的输出进行卷积操作
4:对第二隐藏层的输出进行卷积操作
5:第三隐藏层与第四隐藏层的全连接操作
6:第四隐藏层与输出层的全连接操作

深度q网络核心功能

1:目标函数
使用卷积神经网络结合全连接作为动作值函数的逼近器,实现端到端的效果,输入为视频画面,输出为有限数量的动作值函数
2:目标网络
设置目标网络来单独处理TD误差 使得目标值相对稳定
3:经验回放机制
有效解决数据间的相关性和非静态问题,使得网络输入的信息满足独立同分布的条件

参考资料

https://blog.csdn.net/qq_39429669/article/details/117948150
https://blog.csdn.net/qq_43653217/article/details/120039571
https://zhuanlan.zhihu.com/p/611821957
https://blog.csdn.net/jiebaoshayebuhui/article/details/128045201
https://blog.csdn.net/qq_37266917/article/details/109151368

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值