![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Reinforce Learning
.
BananaScript
上至前后端人工智能,下至嵌入式树莓派,无所不能的IT全栈
展开
-
【RL】从on-policy到off-policy
1. 什么是on-policy,什么是off-policy其实这个概念我们之前已经提到了,这里不妨再提一下:on-policy就是获取数据的动作和最终策略的动作是一致的,比如Sarsa。 off-policy就是获取数据的动作和最终策略的动作不一致,比如QLearning。从这种定义我们也可以得知:我们的强化学习流程中涉及到两个关键流程:一个是选择用来获取数据的动作,另一个则是我们...原创 2020-02-11 19:13:31 · 716 阅读 · 0 评论 -
【RL】强化学习另一种思路:policy-based方法
之前我们所介绍的,都是所谓value-based方法,它的中心思想是:既然我们要求的策略,是在给定状态的基础上选择动作。那么我通过研究动作的价值,就可以得到最优的策略。接下来要讲的是另一种所谓的policy-based的方法,他所研究的,并不是相同状态下各个动作的价值,而是相同状态下,选择各个动作的概率。但是他这个概率,也是要根据所谓的价值进行更新的。所以这二者并没有什么太大的差别。0....原创 2020-02-11 16:05:47 · 2006 阅读 · 0 评论 -
【RL】DQN及其各种优化算法
上一篇博文的末尾,我们介绍了传统QLearning的劣势——那就是需要维护一个Q表,而对于很多状态,连续动作的情况,我们Q表的大小将会爆炸性地增长。我们微小的内存必然存不下这么大的Q表。所以我们要转换我们的思路。其实,Q表在之前的QLearning中,只是扮演了一个函数的角色——这句话怎么理解?给定动作和状态,他会给你返回一个价值。所以我们为什么不直接建立一个函数呢? 这样我们既可以完成Q...原创 2020-02-10 00:40:31 · 3745 阅读 · 0 评论 -
【RL】深入TD:基于QTable的SARSA和QLearning
之前的一篇博文提到TD是我们现在用得非常多的一种算法。它的公式如下:之前一片博文讲到就讲到这里为止。我们并没有具体地提到我们该如何计算G。只讲了,我们的G跟我们的下一个状态有关。这一个状态肯定是指我们的动作状态,也就是Q(st, ?)。问题是,我们的动作应该怎么选择呢?1. TD算法的分类根据之前讨论的结果,TD主要可以分为两类——一类叫做on-policy,另一类叫做off...原创 2020-02-09 22:25:13 · 379 阅读 · 0 评论 -
【RL】策略迭代法的DP, MC和TD三种实现
在第一篇博文的时候,我们已经把强化学习的目标给介绍了,基本上就是围绕两个价值函数和策略。但是求解这个问题并没有那么简单,一个显然的困难就是我们在改变策略的时候,价值函数也会发生变化,如何处理这个问题就是我们今天算法的核心。0. 关于这两个价值函数为了更深入地了解这个问题,我们应该更深入地思考这两个价值函数,下面我直接给出他们的性质:(1)q函数和v函数互转:q转v: v转q...原创 2020-02-09 21:23:14 · 1450 阅读 · 0 评论 -
【RL】前言和强化学习基本概念
0. 前言不得不说Github确实是一个社交网站,我在这个上面follow了其他人以后,就可以看到其他人最近的动向。这不,我在GitHub上follow了一个大三的学长,发现他正在搞这个,所以我也萌生了搞强化学习的主意。经过一比对,我发现他的代码都是借(chao)鉴(xi)Morvan Zhou的。然而现在,2020年为止,Morvan Zhou的强化学习是使用tensorflow框架实现...原创 2020-02-09 15:24:18 · 442 阅读 · 0 评论