
强化学习
文章平均质量分 79
到达起点
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
AlphaGo Zero算法讲解
本篇博客讲解AlphaGo Zero算法。它对比于AlphaGo的改进在于它并不是学习人类棋谱。学习人类棋谱有一定的局限,第一就是人类下棋有局限,创新比较少;第二就是人类的棋谱少。AlphaGo Zero算法通过自我对弈完成棋力提高,可以克服以上两点。在学习AlphaGo Zero之前需要先学习MCTS搜索。MCTS搜索首先看下公式:score = wi...原创 2020-02-27 13:35:09 · 2509 阅读 · 1 评论 -
深度确定性策略梯度(DDPG)
在上一篇,我们使用了多线程解决问题,今天我们该讨论深度确定性策略梯度(DDPG)Pytorch实现代码,参考Tensorflow代码import torchimport numpy as npimport gymfrom torch import nnfrom torch.nn import functional as Fimport time###################...原创 2019-12-19 18:09:34 · 1718 阅读 · 0 评论 -
A3C
今天我们开始讲下A3C。解决问题收敛速度慢是之前Actor-Critic算法的问题。对此提出三点改进:1.还记得之前的参数更新公式:θ=θ+α∇θlogπθ(St,A)δ\theta = \theta + \alpha \nabla_{\theta}log \pi_{\theta}(S_t,A)\deltaθ=θ+α∇θlogπθ(St,A)δA3C使用了另外的优势函数形式:A...原创 2019-12-18 15:00:05 · 1323 阅读 · 0 评论 -
Actor-Critic多种变体
在之前,我们学习了基于策略(Policy Based)的强化学习方法,我们使用的是蒙特卡罗策略梯度reinforce算法。问题:1.但是由于该算法需要完整的状态序列,同时单独对策略函数进行迭代更新,2.不容易收敛改进在上篇文章中(基于策略的强化学习方法),我们做了如下的改进,也就是使用了神经网络进行了如下的近似。第一个就是策略的近似:πθ(s,a)=P(a∣s,θ)≈π(a∣s)\p...原创 2019-12-18 10:53:57 · 336 阅读 · 0 评论 -
策略梯度(Policy Gradient)
本章我们主要讲解Policy Based解决问题:之前的强化学习算法是Value Based的方法,主要就是根据Q值和V值,进行选择。但是它有以下几个缺点。第一点是对连续动作的处理能力不足。第二点是对受限状态下的问题处理能力不足。导致真实环境下本来不同的两个状态却再我们建模后拥有相同的特征描述。第三点是无法解决随机策略问题。Value Based强化学习方法对应的最优策略通常是确定性策略...原创 2019-12-17 17:58:01 · 439 阅读 · 0 评论 -
DQN变体:Dueling DQN
本篇文章主要讲解Dueling DQN的结构。解决问题对比之前的DQN,Dueling DQN主要对结构进行了优化。Dueling DQN考虑将QQQ网络分成两部分,第一部分是仅仅与状态S有关,与具体要采用的动作AAA无关,这部分我们叫做价值函数部分,记做V(S,w,α)V(S,w,α)V(S,w,α),第二部分同时与状态状态SSS和动作AAA有关,这部分叫做优势函数(Advantage Fu...原创 2019-12-17 12:13:04 · 1090 阅读 · 0 评论 -
DQN变体:Prioritized Replay DQN
这篇文章主要讲解Prioritized Replay DQN主要解决问题之前的DQN算法系列有个问题,每一次从经验回放集合里面抽取数据,每一个数据都是有相同的概率被抽取。这是有问题的,这也是导致收敛速度变慢的原因之一,我们应该着重关注TD误差绝对值比较大的数据,而不是那些效果已经比较好的数据。算法基础讲解还记得之前的损失函数是:1m∑j=1m(yj−Q(ϕ(Sj),Aj,w))2\fra...原创 2019-12-17 10:06:35 · 1405 阅读 · 5 评论 -
DQN变体:DDQN
这篇文章,主要讨论DDQN。DQN的变体,它主要对yjy_jyj的计算进行了解耦。目标Q值的计算在以前的DQN中yjy_jyj的计算公式如下:yj=Rj+γmaxa′Q′(ϕ(Sj′),Aj′,w′)y_j = R_j+γmax_{a^′}Q^′(ϕ(S^′_j),A^′_j,w^′)yj=Rj+γmaxa′Q′(ϕ(Sj′),Aj′,w′)其中Aj′A^′_jAj′是通过...原创 2019-12-16 16:37:05 · 974 阅读 · 0 评论 -
DQN变体:Nature DQN
这篇文章主要讨论DQN的变体,Nature DQN。解决问题它主要解决了DQN算法的一个问题,也就是相关依赖问题,收敛速度比较慢。 还记得计算当前目标QQQ值yjy_jyj的公式是:yj={Rj is_endj is trueRj+γmaxa′Q(ϕ(Sj′),Aj′,w) is_endj is false...原创 2019-12-16 13:57:14 · 559 阅读 · 0 评论 -
对Q-Learning算法的改进:Deep Q-Learning(DQN)
本篇主要讲述Q-Learning的改进算法,Deep Q-Learning,首先了解一下Q-Learning算法咯Q-Learning算法众所周知,Q-Learning是解决强化学习问题的算法。解决强化学习问题用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。强化学习主要有三个因素:状态,行动和奖励。简单来说主要解决在一个环境下,智能体采取...原创 2019-12-05 15:30:24 · 5618 阅读 · 0 评论