自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 深度强化学习中的NAF算法-连续控制(对DQN的改进)

DQN算法以及之前的种种改进都是面向离散的action的,DQN算法没有办法面向连续的action,因为Q值更新的时候要用到求最大的action。本来DQN主要是输出Q值的,aciton是通过argmax顺便实现的,但是现在NAF需要用神经网络输出了,那么就是同时输出Q 和 a。基本的idea就是引入了Advantage函数A(s,a),也就是每一个动作在特定状态下的优劣。

2017-06-20 17:13:43 5624 1

原创 深度强化学习中DDPG算法

深度强化学习总的来说都是以强化学习为骨架,用神经网络代替耗内存很高的组件,加速计算。DDPG算法是的Actor-Critic算法和神经网络的集合,就是actor部分和critic部分都用神经网络来表示。重要的是两个神经网络怎么优化。actor部分(就是策略函数):a = π (s,u) critic部分(就是Q函数): Q(s,a,w) 怎么求策略梯度呢?策略梯度就是Q对u 的梯度,先Q对a求

2017-06-20 15:06:30 2314

原创 深度学习中的sarsa(lambda)和 Q(lambda)算法

这个没什么好说的,因为在莫烦python中出现了,可能会引起一些疑惑,普通的sarsa 和q-learning就是普通的时序差分(TD)的实现,sarsa(lambda) 和 Q(lambda)算法 就是TD(lambda)的实现。

2017-06-20 14:13:09 2685

原创 深度强化学习中的DQN系列算法

DQN是考虑到维度灾难,在q-learning算法的价值函数近似Value Function Approximation基础上修改的。主要是对Q(s,a,w)进行修改,s可能是非常大的,比如输入一个图像,a可能是很小的,比如玩游戏时候几个操作键。这种情况下引入神经网络,可以把Q(s,a,w)变成a = Q(s,w),输出的是a大小的向量,每个元素表示每个动作a下的Q(s,a)值。

2017-06-20 11:11:24 3692

原创 强化学习中的backups

在强化学习中可能会遇到backups,意思就是备份,在本周期中进行评估或者优化的时候会用到上一个周期的value数据,或者策略数据,这些数据在上一个周期结束时都被备份起来了。backups有两种方式:Full-Width Backups: 全部备份,用于动态规划,实际上也不算是备份的意思,它需要的model,也就是状态转移概率函数和reward函数。Sample Backups: 采样备份,这个

2017-06-19 15:39:31 1589

原创 强化学习中同步动态规划和异步动态规划 Synchronous and Asynchronous dynamic programminging

同步动态规划是基础:一次性更新所有的S的value。异步动态规划分集中常见类型: in-place 动态规划: 不对上一周期的value进行备份,直接使用这一周期的value(当然,本周期的value本来就是上一周期优化的结果,只是少了备份这一步,节省了一些内存)Prioritised Sweeping:计算优化目标值和现实值之差,对多个S计算后排成一列,差值大的在前,依次优化对应的s的

2017-06-19 15:21:58 3383

原创 矩阵表示的多项式和线性空间的关系

Ax = b 表示一个多项式 A: n * m x: m * 1 b: n * 1A的列向量的长度是n,代表一个在n维空间中的向量,m表示有m个这样的向量, x的各个元素和A的列向量相乘,比如x1 和 A1 相乘表示把向量A1的向量扩展为原来的x1倍,得到一个新的向量,这些向量相加就得到最终的结果b,b也是n维空间的一个向量。如果希望Ax能表示这个n维空间的所有向量的话,那么m必须大于等于n

2017-06-14 17:11:32 4304

原创 Dyna - 结合模型学习和直接强化学习

model_free的算法可以和模型学习结合。 方法是向环境(environment)传递了S,A后获得反馈S_,R,保存这个关系,记为 S_,R = Model(S, A),如此多次就学习了model的一部分,就像是有了对外界环境的想象,如此就可以在不接触外界环境的情况下进行学习。Q-learning和模型学习结合就是Tabular Dyna-Q方法:Initialize Q(s,a)Q(s,

2017-06-12 15:24:52 1526

原创 增强学习中mode_Free 的意思

深度学习中模型用数学来表示: S_,R= Model(S,A)model可以是概率性的,也可以是确定性。 现行的大多数算法都是model_free的,因为model不容易取的,model_free不是不和model打交道,相反,必须和model交互,交互的方式也是这个公式: S_,R= Model(S,A) 关键在于,agent只能把S,A发送给环境(environment)

2017-06-12 15:11:20 743

原创 深度学习中sarsa算法和Q-learning算法的区别

sarsa 和 Q-learning都是时序差分下对动作价值函数优化的单步方法,算法基本上一样,只有一点: 为了更新St的动作价值函数,需要St+1的动作价值函数,St+1具体是什么St+1是由上个episode决定了,但是St+1对应的action由什么决定呢?sarsa的处理方式是episinon + greedy,和St选择aciton采取的方法是一样的,称为 on-policy; Q-l

2017-06-12 10:07:01 9112 1

原创 强化学习中的蒙特卡洛(monte-carlo)算法和时序差分算法

【未完成】蒙特卡洛特点周期性更新:一整个周期结束了(到达了终点)才回进行一个更新(更新所有经历过的state的value)所以是无偏估计First-Visit:第一个周期经历了 某个状态s,第二个周期也第一次经历了这个状态s,待第二个周期结束之后,计算出了第二个周期s对应的G值(G = 这一步的reward + 打折系数 ^ 1 * 下一步的reward + 打折系数 ^ 2 * 下下步的rew

2017-06-12 09:52:55 6003

原创 梯度下降算法

【持续更新】 【个人理解,可能有错】标准梯度下降算法每次输入一个batch的数据,每个数据对参数进行偏微分,得到的结果在batch中平均,用于更新参数;随机梯度下降算法每次只输入一个数据,数据对参数进行偏微分,得到的结果用于更新参数,好像可以理解为batch为1的标准梯度下降算法;

2017-06-09 11:27:09 453

原创 增强学习的初步理解- 周志华《机器学习》

马尔可夫决策过程四元组[X, A, P, R]X : 状态的集合; A:动作的集合; P:状态转移函数,在给定状态x 和动作a 的情况下,转移到其他各个状态的概率; R:转移到下个状态后获得的奖赏;另有策略函数策略函数是在给定的状态x下,决定采取什么样的动作a; 注意:1、策略函数和状态转移函数是完全不一样的,策略函数是给定x选择a,状态函数是给定x和a,选定下一个状态,一般来说,策略函

2017-06-09 11:22:42 402

原创 TensorFlow中CNN/卷积神经网络算法的理解

tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, name=None)主要是理解input 和filter的结构input: [batch, in_height, in_width, in_channels]in_height, in_width 表示图片的宽度和高度,一般是以像素为单位; batch 表示这

2017-06-02 10:25:08 450

原创 TensorFlow-gpu 无法导入_pywrap_tensorflow_internal的错误

解决方法在安装的cuda/bin文件夹下,把cudnn64_6.dll 文件改名为 cudnn64_5.dll来源 https://stackoverflow.com/questions/43577923/cannot-import-tensorflow-for-gpu-on-windows-10

2017-06-02 09:50:16 4258

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除