强化学习(RL)
周周34
这个作者很懒,什么都没留下…
展开
-
强化学习系列(6) - Policy-Gradient-Softmax
Policy gradient 最大的一个优势是: 输出的这个 action 可以是一个连续的值, 之前我们说到的 value-based 方法输出的都是不连续的值, 然后再选择值最大的 action. 而 policy gradient 可以在一个连续分布上选取 action.误差反向传递:这种反向传递的目的是让这次被选中的行为更有可能在下次发生. 但是我们要怎么确定这个行为是不是应当被增加被选的概率呢? 这时候我们的老朋友, reward 奖惩正可以在这时候派上用场,"""RL_brain f.原创 2020-06-10 11:40:32 · 831 阅读 · 0 评论 -
强化学习系列(5) - DQN及其改进
采用两个深度神经网络(DNN)来学习状态到动作的映射,和神经网络权重的更新,以解决Q表状态-动作值决策时空间增长而计算存储高复杂度的问题。此外,还包括double DQN(解决过拟合),Prioritized Experience Replay(解决以更低的计算时间获得收敛效果),和Dueling DQN这些对DQN的提升方法。import osos.environ["TF_CPP_MIN_LOG_LEVEL"] = '2'import numpy as np import pandas as.原创 2020-06-09 10:41:25 · 682 阅读 · 0 评论 -
强化学习系列(4)-gym环境安装
这个网上已有成熟的教程,直接按步骤即可。附上参考链接:[1] https://blog.csdn.net/qq_34769201/article/details/95667042?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogComme.原创 2020-06-02 11:36:37 · 469 阅读 · 0 评论 -
强化学习系列(3) -Sarsa
Sarsa也是基于Q表进行增强学习,与系列(1)、(2)中的区别在于状态动作值更新的方法。Sarsa中通过创建与Q表同等大小的eligibility_trace矩阵来进行Q表值的更新。zoe这里自己理解一下eligibility_trace:增大当前动作的权重,拉开当前动作值与其他动作的差距,强化下一步的当前这里通过zoe走迷宫例子再次学习Q-learning。与强化学习系列(1)中思想一致,其区别主要是通过两个类,迷宫环境Maze和zoe大脑QLearningTable来规范化程序,同时在运行函数步骤.原创 2020-05-26 22:33:33 · 383 阅读 · 0 评论 -
强化学习系列(2) - Q-learning走迷宫例子
这里通过zoe走迷宫例子再次学习Q-learning。与强化学习系列(1)中思想一致,其区别主要是通过两个类,迷宫环境Maze和zoe大脑QLearningTable来规范化程序,同时在运行函数步骤来清晰化Q学习的过程。Part 1. 迷宫环境class Mazeimport numpy as np import time import sys# 窗口界面库if sys.version_info.major == 2: import Tkinter as tk else: .原创 2020-05-23 18:28:34 · 1169 阅读 · 1 评论 -
强化学习系列(1) - Q-learning及其实现
最近想学习在线学习方法,对强化学习感兴趣起来,打算系统的学习一下。从典型小例子的动手实践过程中再结合书籍中的理论解释,对‘从与环境交互中学习’会理解的更深刻。有时候想想人这个代理何尝不是与生存的环境交互学习。 由于目前已有针对这些参考资料的详细解释,这里作为快速的学习方法,这个系列只重点记忆一下每个方法的特征和代码实现,后期有其他感悟再不断完善。:) 这里视频,和代码资源参考的是张沫凡RL系列。书籍参考的是Sutton的经典教材,不过是翻译版,emmm。《强化学习》第二版,对应的英文教材是《Reinf.原创 2020-05-22 07:04:40 · 429 阅读 · 0 评论