RL
Jacob Jiang
这个作者很懒,什么都没留下…
展开
-
强化学习论文汇总——更新中
1、reinforcement learning (Sutton and Barto, 1998)2、Q-learning(Watkins, 1989)3、DQN algorithm(Mnih et al., 2015)4、Double DQN(Hado van Hasselt et al., 2015)5、Dueling DQN(Wang et al., 2016)6、NOISYNET DQN(MeireFortunato et al., 2019)...原创 2020-11-23 15:34:34 · 445 阅读 · 0 评论 -
RL面试题总结
文章目录1、强化学习可以解决什么问题2、强化学习如何解决问题3、强化学习基础3.1 马尔科夫决策过程3.2 基于模型的动态规划方法4、基于值函数的强化学习方法4.1 基于蒙特卡洛的强化学习方法4.2 基于时间差分的强化学习方法4.3 基于值函数逼近的强化学习方法4.3.1 基于值函数逼近的理论讲解4.3.2 DQN及其变种5、基于直接策略搜索的强化学习方法5.1 基于策略梯度的强化学习方法5.2 基于置信域策略优化的强化学习方法5.3 基于确定性策略搜索的强化学习方法6、强化学习的商业落地6.1 推荐系统6原创 2020-11-23 15:28:27 · 833 阅读 · 0 评论 -
Noisy DQN
论文链接:Noisy DQN(MeireFortunato et al., 2019)在深度强化学习智能体中引入了参数噪声—— NoisyNet,并且该智能体策略的随机性可以用来帮助有效的探索。利用梯度下降法学习噪声参数和剩余网络权值。对于 A3C,DQN,Dueling Agent,可以使用这个 NoisyNet 来替代传统的探索启发式方法(如,熵奖励和 ϵ−greedy\epsilon-greedyϵ−greedy)。而且具有 NoisyNet 的 Agent 在 Atari 游戏中的表现常常会有很大原创 2020-07-13 16:22:43 · 2577 阅读 · 0 评论 -
Dueling DQN
论文链接:https://arxiv.org/pdf/1511.06581.pdfDueling DQN 使用了一种新的神经网络结构。Dueling 网络有两个独立的估计量:状态值函数的估计量依赖状态的动作优势函数的估计量这种分解的主要好处是在不改变底层强化学习算法的情况下,将学习泛化到多个动作。定义了新的优势函数:值函数 V 衡量的是特定状态 s 有多好,动作值函数 Q 衡量的是在这个状态下选择某一动作的值。优势函数是 Q 减去 V 的值,得到的是每个动作重要性的相对度量。...原创 2020-07-07 16:30:13 · 480 阅读 · 0 评论 -
Prioritized DQN
论文链接:https://arxiv.org/pdf/1511.05952.pdf 经验回放(Experience replay)让在线强化学习代理记住和重复使用过去的经验。在之前的工作中,experience replay 是均匀随机取样。然而,这种方法不考虑样本的重要性。Prioritized DQN 使用了一个优先级经验的框架,以便更频繁地使用重要性高的样本,从而更有效地学习。1)使用 TD 误差的优先级原创 2020-07-07 15:48:39 · 1043 阅读 · 0 评论 -
Double DQN
论文链接:https://arxiv.org/abs/1509.06461由于深度神经网络提供了灵活的函数逼近与低渐近逼近误差的潜力,DQN 在 Atari 2600 游戏中的带来了更好的性能。但是,DQN有时也会大大高估行动的价值。使用 DQN的改进版本(Double DQN)能够产生更准确的值估计,减少 DQN 的过高估计,从而在游戏中获得更高的分数。给定策略 π\piπ ,在状态 s 采用动作 a 的真实值为:标准 Q-learning 算法的参数更新方式:DQN 的目标Y值为:标准原创 2020-07-06 14:11:36 · 1051 阅读 · 0 评论 -
Deep Q-Learning(DQN)
Playing Atari with Deep Reinforcement Learning《Playing Atari with Deep Reinforcement Learning》 链接使用强化学习直接从高维感官输入成功学习控制策略的深度学习模型。该模型是一个卷积神经网络,使用Q-learning的变体进行训练,输入为原始像素,输出为估计未来奖励的值函数。早些时候,从视觉和语言等高维感官输入来控制主体的一些RL应用都依赖于与线性值函数或策略表示相结合的手动设计的特征。现在,在深度学习方面的进展原创 2020-07-06 12:47:02 · 4042 阅读 · 0 评论 -
DQN训练atari游戏:No module named ‘atari_py‘
安装好 gym 后,加载《太空入侵者》游戏。import gymenv = gym.make('SpaceInvaders-v0')出现下面的问题:Traceback (most recent call last): File "/home/jacob/anaconda3/envs/python37/lib/python3.7/site-packages/gym/envs/atari/atari_env.py", line 9, in <module> import ata原创 2020-07-04 22:46:08 · 3836 阅读 · 1 评论 -
14、RL Conclusions
文章目录1、Terminology2、Prediction and Control1、Terminology强化学习的术语和短语在心理学和工程领域中的表达并不总是相同的。reinforcement:在心理学中,最初指的是由于动物接受了与另一刺激或响应的适当时间关系的刺激(或者经历一个刺激的消失)而导致的一种行为模式的强化(通过增加它的强度或频率)。强化有时不仅指强化,还指弱化一种行为模式。...原创 2020-05-08 16:09:51 · 452 阅读 · 0 评论 -
13、Policy Gradient Methods
文章目录1、Policy Approximation2、The Policy Gradient Theorem本章中,我们考虑的方法是学习参数化的策略,该策略可以不需要值函数就能选择动作。仍然可以使用值函数来学习策略的权重,但是现在动作的选择不需要它了。继续使用 θ∈Rn\theta \in \R^nθ∈Rn 来表示需要学习的权重向量,但是这里是策略的权重向量。策略表示为:使用性能指标 ...原创 2020-04-30 17:54:50 · 483 阅读 · 0 评论 -
12、Eligibility Traces
文章目录1、The λ-return 1、The λ-return原创 2020-04-28 23:25:00 · 953 阅读 · 2 评论 -
11、Off-policy Methods with Approximation
文章目录1、Semi-gradient Methods 1、Semi-gradient Methods学习引导性的 off-policy 的结果是相当不同的,而且在近似情况下比表格情况下更加困难。第6章和第7章中提到的表格形式的 off-policy 方法很容易扩展到半梯度算法,但是这些算法的收敛性不如 on-policy 情况下的那么好。在这一章中,我们探讨了收敛问题,仔细...原创 2020-04-28 13:42:18 · 153 阅读 · 0 评论 -
10、On-policy Control with Approximation
文章目录1、Episodic Semi-gradient Control2、n-step Semi-gradient Sarsa 1、Episodic Semi-gradient Control近似控制是求策略的动作值函数,q^≈qπ\hat{q} \approx q_\piq^≈qπ ,表示为权重向量 θ\thetaθ 的参数化函数。一般的动作值预测的梯度下降更新为:...原创 2020-04-28 12:38:13 · 142 阅读 · 0 评论 -
9、On-policy Prediction with Approximation
文章目录1、值函数近似(逼近)2、预测目标(MSVE) 1、值函数近似(逼近)强化学习中的函数近似:使用已知策略 π\piπ 生成的经验来近似值函数 vπv_\pivπ,且值函数是一种以权重向量 θ∈Rn\theta \in \R^nθ∈Rn 的参数化函数形式,用 v^(s,θ)≈vπ(s)\hat{v}(s,\theta) \approx v_\pi(s)v^...原创 2020-04-28 12:34:59 · 374 阅读 · 0 评论 -
8.2、Prioritized sweeping 算法实现
算法伪代码: 使用maze环境:maze_env 的代码见这里import numpy as npimport pandas as pdfrom maze_env import Mazeimport queueclass Q(object): def __init__(self, action_space): self.nA = action...原创 2020-04-26 14:56:27 · 732 阅读 · 0 评论 -
8.1、Tabular Dyna-Q 算法实现
算法伪代码: 使用maze环境:maze_env 的代码见这里import numpy as npimport pandas as pdfrom maze_env import Mazeimport randomclass Q(object): def __init__(self, action_space): self.nA = actio...原创 2020-04-26 14:55:13 · 1008 阅读 · 1 评论 -
8、Planning and Learning with Tabular Methods(Dyna)
文章目录1、 Models and Planning1.1、Models1.2、Planning2、Dyna: Integrating Planning, Acting, and Learning3、When the Model Is Wrong在这一章中,我们开发了需要环境模型的方法的统一视图,如动态规划和启发式搜索,以及不需要模型就可以使用的方法,如蒙特卡罗和时间差方法。planning...原创 2020-04-26 14:54:44 · 458 阅读 · 0 评论 -
7.3、off-policy n-step Q(σ) 代码实现
off-policy n-step Q(σ) 的伪代码:maze_env 的代码见这里import numpy as npimport pandas as pdfrom maze_env import Mazeimport randomclass QSigma(object): # Off-policy n-step Q(σ) def __init__(self, ...原创 2020-04-21 13:51:04 · 302 阅读 · 0 评论 -
7.2、n-stepTree Backup 代码实现
算法伪代码:maze_env 的代码见这里import numpy as npimport pandas as pdfrom maze_env import Mazeclass N_StepTreeBackup(object): # Off-policy Learning Without Importance Sampling: # The n-step Tree ...原创 2020-04-21 13:46:50 · 335 阅读 · 0 评论 -
7.1、Off-policy n-step Sarsa代码实现
算法伪代码:1)maze_env.py(maze环境直接使用了MorvanZhou的代码)import numpy as npimport timeimport sysif sys.version_info.major == 2: import Tkinter as tkelse: import tkinter as tkUNIT = 40 # pixels...原创 2020-04-21 13:39:11 · 839 阅读 · 0 评论 -
7、n-step Bootstrapping(TD、Sarsa、Tree Backup、Q(σ) )
文章目录1、n-step TD Prediction2、n-step SarsaMulti-step TD 方法对MC方法和TD(0)方法进行了推广,且表现更佳。MC方法:对一个完整的episode进行计算值函数TD(0)方法:episode中每执行一步进行计算值函数如下图所示:1、n-step TD PredictionMC方法的评估值函的更新方式使用完整的回报(下面的等式称为t...原创 2020-04-21 13:30:18 · 873 阅读 · 1 评论 -
6、Temporal-Difference Learning
文章目录1、TD Prediction2、Sarsa: On-Policy TD Control3、Q-learning: Off-Policy TD Control4、Expected Sarsa5、Maximization Bias and Double LearningTD learning 是蒙特卡罗思想和动态规划(DP)思想的结合。与蒙特卡罗方法一样,TD方法可以直接从原始经验中学习...原创 2020-04-20 16:43:07 · 327 阅读 · 0 评论 -
5、Monte Carlo Methods
五、Monte Carlo Methods文章目录五、Monte Carlo Methods1、Monte Carlo Prediction2、Monte Carlo Estimation of Action Values3、Monte Carlo Control4、 Monte Carlo Control without Exploring StartsMonte Carlo Methods...原创 2020-04-20 16:42:26 · 534 阅读 · 0 评论 -
4.1、DP——Policy Iteration和Value Iteration代码实现
Policy Iteration算法实现:gridworld环境策略迭代结果:class GridWorld: def __init__(self, number): self.states = [i for i in range(number**2)] self.terminate_states = [0, number**2-1] ...原创 2020-04-16 23:20:47 · 1100 阅读 · 0 评论 -
4、Dynamic Programming
文章目录1、Policy Evaluation2、Policy Improvement3、Policy Iteration4、Value Iteration5、Generalized Policy Iteration(GPI)6、Dynamic Programming(DP)指一组可以用来计算最优策略的算法。这些算法给出了一个完整的环境模型,即 MDP。经典DP需要假设模型是完整的(即完全...原创 2020-04-16 23:20:32 · 492 阅读 · 0 评论 -
3、有限马尔可夫决策过程
三、有限马尔可夫决策过程1、Agent—Environment InterfaceRL问题是指从互动中学习以到达目标的问题的简单框架。学习者和决策者都被称为代理人(agent)。它与之交互的东西,包括了主体之外的一切,叫做环境(environment)。它们不断交互,agent选择动作,environment响应这些动作并向agent呈现新的状态,同时环境也会产生奖励,这是一种特殊的数值,随...原创 2020-04-14 23:39:54 · 804 阅读 · 0 评论 -
2、Multi-arm bandits
二、 Multi-arm bandits1、k-armed bandit problem首先符号定义:AtA_tAt:在时间 t 时选择的动作RtR_tRt:在时间 t 时获得的相应的rewardq∗(a)q_*(a)q∗(a):随机动作 a 的值(期望奖励),公式如下:如果q∗(a)q_*(a)q∗(a)已知,k-armed bandit problem就变的很简单了,只需...原创 2020-04-10 21:59:00 · 399 阅读 · 0 评论 -
1、RL Problem
一、RL Problem1、RL问题的三个最本质的区别特征:闭环的没有关于采取什么动作的直接指令动作的结果(包括奖励信号)在长时间周期内的表现2、强化学习与监督学习的区别:监督学习——试图找到隐藏的结构强化学习——试图最大化奖励信号3、RL要素:policy:定义为agent在给定时间内的行为方法。policy是从环境的感知状态到这些状态中要采取的动作的映射。reward...原创 2020-04-09 22:51:23 · 780 阅读 · 0 评论