图解强化学习 原理 超详解 (三)

上一篇博客中 我们讲述了马尔可夫决策过程中的策略优化及相关问题,在这一篇博客中我们将讲述Q-learn方法,以及深度强化学习的相关概念

六.Q-learn

QLearning是强化学习算法中value-based的算法,Q即为Q(s,a)就是在某一时刻的 s 状态下(s∈S),采取 动作a (a∈A)动作能够获得收益的期望,环境会根据agent的动作反馈相应的回报reward r,所以算法的主要思想就是将State与Action构建成一张Q-table来存储Q值,然后根据Q值来选取能够获得最大的收益的动作。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

为了解决上述问题,即平衡策略学习中的探索与利用的关系,我们引入贪心策略

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

ϵ−greedy 算法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
事实上,对于局部最优的动作a∗
,其被选择的概率最大,其余的动作概率都为 ϵ/∣A∣。
  这种贪心策略有一个问题:虽然每个动作都有被选择的概率,但是这种选择太过于随机,有一些(状态-动作)二元组应该是可以达到全局最优,但由于初始化的原因,使得它被访问的概率很低,这并不能有助于智能体很大概率的发现最优动作。

七.深度强化学习

7.1 简介

深度强化学习深度学习的感知能力和强化学习的决策能力相结合,可以直接根据输入的图像进行控制,是一种更接近人类思维方式的人工智能方法。
深度学习具有较强的感知能力,但是缺乏一定的决策能力;而强化学习具有决策能力,对感知问题束手无策。因此,将两者结合起来,优势互补,为复杂系统的感知决策问题提供了解决思路
在这里插入图片描述
在这里插入图片描述

7.2 训练策略

在这里插入图片描述

7.3 DQN算法

DQN算法融合了神经网络和Q learning的方法, 名字叫做 Deep Q Network。
在这里插入图片描述
在这里插入图片描述
DQN 有一个记忆库用于学习之前的经历。在之前的简介影片中提到过, Q learning 是一种 off-policy 离线学习法, 它能学习当前经历着的, 也能学习过去经历过的, 甚至是学习别人的经历. 所以每次 DQN 更新的时候, 我们都可以随机抽取一些之前的经历进行学习. 随机抽取这种做法打乱了经历之间的相关性, 也使得神经网络更新更有效率。Fixed Q-targets 也是一种打乱相关性的机理, 如果使用 fixed Q-targets, 我们就会在 DQN 中使用到两个结构相同但参数不同的神经网络, 预测 Q 估计 的神经网络具备最新的参数, 而预测 Q 现实 的神经网络使用的参数则是很久以前的。有了这两种提升手段, DQN 才能在一些游戏中超越人类。

7.4 深度Q学习的两个不稳定因素

在这里插入图片描述

解决方案

经验重现

在这里插入图片描述

目标网络

在这里插入图片描述

参考:

浙江大学 《人工智能
机器学习》 西瓜书


http://www.niftyadmin.cn/n/1399542.html

相关文章

Shell中常见关键字说明及区别对比

1. exit和return的区别 1.1 exit 关键字 exit命令是Shell内建命令,用于退出当前Shell进程。 可以指定退出状态n,n的取值范围是0-255,一般情况下,0表示正常退出,非零表示异常退出。 如果状态码是0-255之外的数值&am…

注意力机制最新综述解读

注意力机制最新综述解读 注意力模型(Attention Model,AM)已经成为神经网络中的一个重要概念,并在不同的应用领域进行了充分的研究。这项调查提供了一个结构化和全面的概述关于attention的发展。我们回顾了注意力机制被纳入的不同的神经网络结构&#xff…

打印模型特征重要性

以lightgbm模型为例 1. 获得特征重要性信息 def get_feature_importance_pair(gbm_model):feature_name_list gbm_model.feature_name()importance_list list(gbm_model.feature_importance())feature_importance_pair [(fe, round(im, 2)) for fe, im in zip(feature_na…

最全详细图解 策树原理(上)

决策树 1.定义: 决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种…

shell 中字符串变量处理

1. 字符串内容替换 ${变量#关键字}从头开始,将匹配到的最短子串删除 (第一个匹配到的子串删除)删除第1个分隔符及其之前的内容${变量##关键字}从头开始,将匹配到的最长子串删除 删除最后1个分隔符及其之前的内容${变量%关键字…

shell 脚本循环与case选择

1. 循环 1.1 不定循环 1.1.1 while 当条件为真时就进行循环,条件不成立时退出 提示用户输入“y”或“Y”来终止程序。 -a 用在判断式中表示"&&"(and) while [ "$aa" ! "y" -a "$aa"…

linux 字符转换命令(tr,col,expand,join,paste)

vim 中可通过dos2UNIX与UNIX2dos来完成DOS断行字符与UNIX断行字符的转换。 1. tr 用来删除一段信息中的文字,或者进行文字替换。 # 将文件中的‘#’ 删除 cat aa.txt | tr -d ## 在文件aa.txt 中将set1中的所有字符全部删除 cat aa.txt | tr -d set1# 将小写字母…

Linux 常用知识

1. 系统常用命令 1.1 当前用户相关 # 查看当前谁在使用该主机 who # 查找自己所在的终端信息 who am i # 查看当前用户 id 1.2 网络相关 # 查看对应IP机器名 host ip(10.99.199.66) # 查看默认网关和当前的路由表 route -n netstat -nr 1.3 系统相关 # 对命令取别名 alia…