深度强化学习
人工智能
北木.
交流分享,共同成长
展开
-
常见的深度强化学习面试题及解答(持续更新ing)
1. 不打破数据相关性,神经网络的训练效果为什么就不好? 在神经网络中通常使用随机梯度下降法。随机的意思是我们随机选择一些样本来增量式的估计梯度,比如常用的采用batch训练。如果样本是相关的,那就意味着前后两个batch的很可能也是相关的,那么估计的梯度也会呈现出某种相关性。如果不幸的情况下,后面的梯度估计可能会抵消掉前面的梯度量。从而使得训练难以收敛。 2. DQN都有哪些变种?引入状态奖励的是哪种? DQN三个经典的变种:Double DQN、Dueling DQN、Prioritized.原创 2020-05-25 22:11:08 · 1036 阅读 · 0 评论 -
CMfg-SC(云制造服务组合)、DRL、DQN的定义
CMfg-SC (cloud manufacturing service composition):云制造服务组合是将一系列较小粒度的云服务按照一定流程和规则组装起来构成较大粒度的增值服务来协同完成一个任务。云服务组合是实现云制造按需分配和使用资源的有效途径。《云制造特征及云服务组合关键问题研究》Service composition is one of the core functi...原创 2020-04-02 22:26:45 · 915 阅读 · 0 评论 -
深度强化学习之Capstone项目——基于DQN的赛车游戏
引言 本节将介绍一个对抗DQN的实现过程,这基本上与常规的DQN相同,只是将全连接层分解为两个分支,即值分支和优势分支,且这两个分支最终汇聚在一起来计算Q函数。另外,还将分析基于对抗DQN如何训练一个智能体来赢得赛车游戏。 代码实现 1. 环境封装函数 import warningswarnings.filterwarnings('ignore')import numpy as...原创 2020-03-28 19:53:57 · 2031 阅读 · 6 评论 -
深度强化学习之策略梯度和优化(二) — DDPG
DDPG 之前讨论的应用DQN来玩Atari游戏。然而这些都是在离散环境下完成的, 其中具有有限个行为。考虑一个连续的环境空间,如训练机器人行走。在这些环境下,就不能应用 QQQ 学习了,这是因为贪婪策略在每个时间步都需要大量的优化。即使将这一连续环境离散化,也可能会失去一些重要特征,从而最终得到一个庞大的行为空间。在此情况下,很难保证收敛。 为此,使用一种称为行为者评论家的新...原创 2020-03-27 17:40:33 · 1244 阅读 · 0 评论 -
深度强化学习之策略梯度和优化(一) — PolicyGradient
引言 之前所讲的各种强化学习算法,如DQN、DRQN、A3C。在这些算法中,目标都是为了找到正确的策略,以便能够获得最大的奖励。由于Q函数能够得到哪个行为是在某一状态下执行的最佳行为,因此,使用Q函数来寻找最优策略。在策略梯度的方法中,我们可以不适用策略来得到最优策略。 策略梯度 策略梯度是强化学习(RL)中一种令人惊叹的算法,可通过一些参数直接优化参数化的策略。在此之前,已学习了...原创 2020-03-27 15:35:25 · 1474 阅读 · 0 评论 -
深度强化学习之A3C网络—理论及代码(小车上山)
A3C 由于DQN学习过程需要强大的计算能力和大量的训练过程。为此,DeeoMind团队提出了一种新的算法,称为异步优势行为者评论家(A3C)算法,该算法要优于其他深度强化学习算法,因为其需要较少的计算能力和训练时间。A3C的主要思想是通过多个智能体并行学习并整合其所有经验。 A3C网络还可以与其他算法产生更好的精度,在连续和离散行为空间中均有很好的效果。该网络是使用多个智能,且每个智...原创 2020-03-26 17:49:16 · 4865 阅读 · 10 评论 -
DARQN
DARQN 上述,通过增加一个捕获时间依赖性的递归层,改进了DQN架构,这称为DRQN。 那么还能进一步改进DRQN架构吗? 是的。还可以通过在卷积层顶部增加注意力层来进一步改进DRQN架构。那么,注意力层有什么作用呢?在此,注意力就是这个词的字面意思。注意力机制广泛应用于图像文字说明、目标检测等领域。以利用神经网络对图像进行文字说明的任务为例,为了理解图像中的内容,神经网络必须关注图像中...原创 2020-03-26 10:06:40 · 863 阅读 · 0 评论 -
深度强化学习之基于DRQN玩Doom游戏
DRQN 为何在希望DQN按人类水平玩Atari游戏时需要DRQN?要回答这个问题,首先要了解什么是部分可观测马尔科夫决策过程(POMDP)。当对环境只有有限信息时,该环境就称为POMDP。到目前为止,在前面的内容中,已了解一个完全可观测的MDP是已知所有可能的行为和状态,尽管智能体不知道转移概率和奖励概率,但对环境信息是完全已知的,例如,在建一个冰冻湖环境中,完全已知关于环境的所有状态和...原创 2020-03-25 21:13:31 · 1276 阅读 · 0 评论 -
基于DQN的Atari游戏
首先吗,导入库import numpy as npimport gymimport tensorflow as tffrom tensorflow.contrib.layers import flatten, conv2d, fully_connectedfrom collections import deque, Counterimport randomfrom datetime ...原创 2020-03-21 17:18:00 · 4246 阅读 · 2 评论 -
一文浅谈P问题、NP问题、NP-hard问题、NPC问题、规约/约化
P问题: 那些可以在多项式时间内解决的问题。那什么是多项式时间呢? 答曰:时间复杂度如(n^2, n^4, n(log(n)) ) 都是多项式时间,如(2^n, n^n ) 就不是多项式时间 NP问题: 对于一类问题,我们可能没有一个已知且快速的方法得到问题的答案,但是如果给我们一个候选解,我们能够在多项式时间内验证这个侯选解到底是不是问题的答案。 NP-hard问题:...原创 2019-12-05 17:38:43 · 2851 阅读 · 0 评论 -
DQN原理及其实现方法
每一种环境都单独列出来,会使得整个Q表会非常大,且更新的时候检索时间较长。 如果可以不建立Q表,只通过每个环境的特点就可以得出整个环境的Q-Value,那么Q表庞大冗杂的问题就迎刃而解了。 其与常规的强化学习Q-Learning最大的不同就是,DQN在初始化的时候不再生成一个完整的Q-Table,每一个观测环境的Q值都是通过神经网络生成的,即通过输入当前环境的特征Features来得到当前...原创 2019-11-28 10:13:43 · 4757 阅读 · 1 评论 -
深度强化学习--试错法和奖励延迟机制
1、疑问:神经网络中对试错法机制的错误理解:神经网络的参数训练方式是通过试错法进行的,因为神经网络进行学习就是利用学习过程中的错误信息来更新网络参数的。(为什么这样理解有问题,还需要自己思考)书中说的是错误地理解了试错法学习的原理和机制2、强化学习并不是输入一个状态,模型就映射到一个动作(这是传统的机器学习的方法)。强化学习是通过应用这些映射动作,得到一系列的反馈奖励值,然后从中选出最...原创 2019-08-21 10:21:53 · 5058 阅读 · 0 评论 -
深度强化学习(二)
强化学习和深度学习有什么关系?深度学习参与的强化学习与传统的强化学习有何不同?为什么要引入深度学习?强化学习的过程中,处理的是状态,实际上,很多时候状态是连续的、复杂的、高级的。因此,求助于深度学习。深度学习善于处理高维数据,并快速地从中抽取模式。比如在图像处理中,用像素的集合体来表示完整的图像。这时,选取一个什么特征,怎么选取一个特征对于解决实际问题非常重要。人为地选取特征是一件耗时耗力且面对...原创 2019-08-05 20:13:00 · 157 阅读 · 0 评论 -
深度强化学习算法比较
通过价值选行为Q-learning 、Sarsa、 Deep Q network直接选行为policy Gradients想象环境并从中学习Model based RL基于概率(Policy-Based RL)policy Gradients基于价值(Value-Based RL)Q-learning 、Sarsa基于概率: 感官...原创 2019-08-05 20:10:14 · 2000 阅读 · 0 评论 -
深度强化学习(一)
所谓的策略,其实就是状态到动作的映射。数学表达为 π:s→a确定性策略是说只要给定一个状态s,就会输出一个具体的动作a,而且无论什么时候到达状态s,输出的动作a都是一样的。而随机策略是指,给定一个状态s,输出在这个状态下可以执行的动作的概率分布。即使在相同状态下,每次采取的动作也很可能是不一样的。Actor-Critic如果我们能够相对准确地估计状态价值,用它来指导策略更新,那么是不是会有更...原创 2019-07-22 22:39:21 · 195 阅读 · 0 评论