自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 超全!深度强化学习领域值得一读的论文列表

参考自:https://spinningup.openai.com/en/latest/spinningup/keypapers.html强烈建议直接去看原文,每一篇文献都有链接以下是深度强化学习(Deep Reinforcement Learning)中值得一读的论文,实际上,这些远远不够全面,但应该能为希望在该领域上进行研究的人提供一个有用的起点。Model-Free RLDeep Q-Learning[1] Playing Atari with Deep Reinforcement Le.

2021-06-15 20:50:13 1828

原创 [TRPO] Trust Region Policy Optimization

论文链接:http://proceedings.mlr.press/v37/schulman15引用:Schulman J, Levine S, Abbeel P, et al. Trust region policy optimization[C]//International conference on machine learning. PMLR, 2015: 1889-1897.概述Trust Region Policy Optimization (TRPO) 算法是一个 model-free

2021-06-04 20:10:52 711

原创 [DDPG] Continuous Control with Deep Reinforcement Learning

论文链接:https://arxiv.org/abs/1509.02971引用:Lillicrap T P, Hunt J J, Pritzel A, et al. Continuous control with deep reinforcement learning[J]. arXiv preprint arXiv:1509.02971, 2015.概述Deep Deterministic Policy Gradient (DDPG) 是DPG算法加上深度学习的版本,是一个 model-free、o

2021-06-02 09:35:31 1903

原创 [DQN] Playing Atari with Deep Reinforcement Learning

论文链接:https://arxiv.org/abs/1312.5602引用:Mnih V, Kavukcuoglu K, Silver D, et al. Playing atari with deep reinforcement learning[J]. arXiv preprint arXiv:1312.5602, 2013.概述Deep Reinforcement Learning (DQN) 是一个 model-free、off-policy 的强化学习算法,使用深度神经网络作为非线性的函数

2021-06-01 18:04:41 600 2

原创 [Chapter 6] Reinforcement Learning (4) Policy Search

In the previous sections, we try to learn the utility function, or more usually, the action-value functions and greedily select the action with the highest Q-value:π(s)=arg⁡maxa⁡Q(s,a){\pi}(s)=arg ⁡max_a⁡{Q(s,a)}π(s)=arg⁡maxa​⁡Q(s,a)This means that once

2021-05-30 11:50:30 170

原创 [Chapter 5] Reinforcement Learning(3)Function Approximation

Function ApproximationWhile we are learning the Q-functions, but how to represent or record the Q-values? For discrete and finite state space and action space, we can use a big table with size of ∣S∣×∣A∣|S| \times |A|∣S∣×∣A∣ to represent the Q-values for

2021-05-30 10:04:46 148

原创 [Chapter 4] Reinforcement Learning (2) Model-Free Method

Model-Free RL MethodIn model-based method, we need firstly model the environment by learning/estimating the transition and reward functions. However, in model-free method, we consider learning the value/utility functions V(s)V(s)V(s) or U(s)U(s)U(s) or ac

2021-05-29 14:42:02 185

原创 [Chapter 3] Reinforcement Learning (1) Model-Based Method

Reinforcement LearningFirstly, we assume that all the environments in the following materials are all modeled by Markov decision processes. As we have known, an MDP model can be represented by a tuple (S,A,T,R)(S,A,T,R)(S,A,T,R), the rewards are returned

2021-05-29 12:54:12 217

原创 [Chapter 2] Value Iteration and Policy Iteration

We now know the most important thing for computing an optimal policy is to compute the value function. But how? (The following contents are all based on infinite horizon problems.) The solution to this problem can be roughly divided into two categories: Va

2021-05-28 23:03:22 268 1

原创 [Chapter 1] Markov Decision Process and Value Function

Markov Decision ProcessOne of the most important problems in decision making is to make sequential decisions, which is also the agent’s utility depends on. At each time step, the agent selects some actions to interact with the environment and make it tran

2021-05-28 14:32:56 185

原创 使用pysc2的环境并与其进行交互

使用pysc2的环境并与其进行交互作为应用于强化学习的SCII环境是被定义在 pysc2.env.sc2_env 中的,(action 和 observation 空间是定义在 pysc2.lib.features 中的),环境的类即 SC2Env,继承自 pysc2.env.environment.Base 类。可以作为使用一般的gym库的强化学习的环境一样使用它。要实例化并使用一个 SC2Env,需要传入几个重要的参数,完整的参数列表如下:_only_use_kwargs=None,map_na

2021-05-23 16:44:35 666

原创 详解 pysc2 中的 Observation 和 Action

详解 pysc2 中的 Observation 和 ActionSCII 环境具有非常丰富的动作空间和状态空间。Pysc2 接口从游戏中读取并提供给我们使用的信息有两类:空间/视觉类的(spatial/visual);结构性的元素(structured elements),其中结构性的元素主要是提供一些重要的数据,而且这些数据对于机器来说往往很难通过游戏画面直接读取,比如燃料的数量,所以接口直接提供这些数据。Important!从observation中获取得到的坐标信息是 (y,x) 形式的,即纵坐

2021-05-22 01:04:01 1398 7

原创 如何在PyCharm中对自己的pySC2 Agent代码进行Debug

PySC2环境在Win10系统上的部署与安装,请参考:https://blog.csdn.net/qq_38962621/article/details/112798659?spm=1001.2014.3001.5501PySC2自定义Agent类的写法,请参考:https://blog.csdn.net/qq_38962621/article/details/112861390?spm=1001.2014.3001.5501如何在PyCharm中对自己的pySC2 Agent代码进行Debug上文中

2021-05-18 22:32:53 395 4

原创 PySC2 环境的基本使用

PySC2环境在Win10系统上的部署与安装,请参考:https://www.jianshu.com/p/e4d2313fa341如何使用自定义的地图、agent来启动、运行、测试环境:python -m pysc2.bin.agent --map <Map> --agent <Agent>其中<Agent>参数是一个指向你自定义类的python路径,比如,你的项目目录为[PATH],你的agent的类名为 MyAgentClassName,它被定义在了MyA

2021-01-20 11:44:52 1203 1

原创 Win10 安装 PySC2 环境 -- DeepMind联合战网开发的《星际争霸 II》强化学习环境

DeepMind 官方 PySC2 GitHub库参考:https://github.com/deepmind/pysc2PySC2 provides an interface for RL agents to interact with StarCraft 2, getting observations and sending actions.下载 星际争霸II 游戏首先当然是先下载 StarCract II (星际争霸 II)游戏本体,可以到战网的官网进行安装:https://starcra

2021-01-19 08:26:19 1475 1

原创 PyTorch教程-8:举例详解TensorBoard的使用

PyTorch 教程系列:https://blog.csdn.net/qq_38962621/category_10652223.htmlPyTorch教程-8:举例详解TensorBoard的使用TensroBoard 是一个帮助我们对模型训练、数据处理等很有帮助的可视化工具,虽然这些可视化操作都可以通过代码配合matplotlib这些很好用的绘图库来实现,但是TensorBoard使得它变得更加简单。官方的一个简单教程:https://pytorch.org/tutorials/intermed

2020-12-14 15:52:13 1211

原创 PyTorch教程-7:PyTorch中保存与加载tensor和模型详解

PyTorch 教程系列:https://blog.csdn.net/qq_38962621/category_10652223.htmlPyTorch教程-7:PyTorch中保存与加载tensor和模型详解保存和读取TensorPyTorch中的tensor可以保存成 .pt 或者 .pth 格式的文件,使用torch.save()方法保存张量,使用torch.load()来读取张量:x = torch.rand(4,5)torch.save(x, "./myTensor.pt")y =

2020-12-14 00:36:40 38932 3

原创 PyTorch教程-6:详解PyTorch中的transforms

PyTorch 教程系列:https://blog.csdn.net/qq_38962621/category_10652223.htmlPyTorch教程-6:详解PyTorch中的transforms对于视觉方向的图像处理方面,PyTorch提供了很好的预处理接口,对于图像的转换处理,使用 torchvision.tranforms 模块使得这些操作非常高效。本文就介绍这个非常强大的工具,先引入transforms模块:import torchvision.transforms as transf

2020-12-13 22:01:37 3757

原创 PyTorch教程-5:详解PyTorch中加载数据的方法--Dataset、Dataloader、Sampler、collate_fn等

*PyTorch 教程系列:https://blog.csdn.net/qq_38962621/category_10652223.htmlPyTorch教程-5:详解PyTorch中加载数据的方法–Dataset、Dataloader、Sampler、collate_fn等数据读取是所有训练模型任务中最基础最重要的一步,PyTorch为数据集的读取、加载和使用提供了很好的机制,使得数据加载的工作变得异常简单而且具有非常高的定制性。Dataset、Dataloader、Sampler的关系PyTor

2020-12-13 22:00:24 2446

原创 PyTorch教程-4:PyTorch中网络的训练与测试

PyTorch 教程系列:https://blog.csdn.net/qq_38962621/category_10652223.htmlPyTorch教程-4:PyTorch中网络的训练与测试基本原理对于要训练的模型,首先我们需要定义其结构,实例化一个用于计算Loss的loss_function和一个用于更新参数的optimizer,之后的事情就比较简单了,只要准备训练数据,然后设定训练的代数(或者停止条件)就可以进行迭代的训练。最后保存模型。对于验证的模型,只要将数据传输进训练好的模型中就能得到预

2020-12-12 22:32:45 4674

原创 PyTorch教程-3:PyTorch中神经网络的构建与训练基础

PyTorch 教程系列:https://blog.csdn.net/qq_38962621/category_10652223.htmlPyTorch教程-3:PyTorch中神经网络的构建与训练基础基本原理在PyTorch中定义一个网络模型,需要让自定义的网络类继承自 torch.nn.Module,并且比较重要的是需要重写其 forward 方法,也就是对网络结构的前向传播做出定义,即在forward方法中,需要定义一个输入变量 input 是如何经过哪些运算得到输出结果的。这样,当一个网络作用

2020-12-12 20:29:32 785

原创 PyTorch教程-2:PyTorch中反向传播的梯度追踪与计算

PyTorch 教程系列:https://blog.csdn.net/qq_38962621/category_10652223.htmlPyTorch教程-2:PyTorch中反向传播的梯度追踪与计算基本原理torch.Tensor类具有一个属性 requires_grad 用以表示该tensor是否需要计算梯度,如果该属性设置为True的话,表示这个张量需要计算梯度,计算梯度的张量会跟踪其在后续的所有运算,当我们完成计算后需要反向传播(back propagation)计算梯度时,使用 .back

2020-12-12 10:59:17 11018 4

原创 PyTorch教程-1:PyTorch中的Tensor基础

PyTorch 教程系列:https://blog.csdn.net/qq_38962621/category_10652223.htmlPyTorch教程-1:PyTorch中的Tensor基础首先,引入PyTorch的模块:import torch设置运算资源使用 torch.cuda.is_avaliable() 来判断设备上的GPU是否可用,如果可用则返回True,使用 torch.device() 则可以参数指定计算资源:参数为"cpu"表示使用CPU计算参数为"cuda"

2020-12-10 22:18:02 920

原创 PyTorch教程-0:PyTorch的安装

PyTorch教程-0:PyTorch的安装安装PyTorch安装PyTorch参考如下的页面:https://pytorch.org/get-started/locally/根据自己电脑的系统、安装方式、CUDA版本、PyTorch版本等进行配置选择,然后复制下边的命令到命令行工具执行即可对于CUDA版本,这里介绍Windows系统的查看方式:在桌面右键选择 NVIDIA 控制面板,或者直接搜索“NVIDIA control panel”,再或者在右下角收起的程序中寻找。打开控制面板后选择上

2020-12-10 22:13:38 193 1

原创 详解使用Python中的tqdm模块显示进度条

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.html详解使用Python中的tqdm模块显示进度条Python中可以使用tqdm包来显示进度条。进度条的原理其实很简单,就是不断地删除已经打印的内容,然后重新写出新的进度,从而完成在同一行中的进度条再不断增长的效果。tqdm不是Python自有的模块,需要安装,比如使用pip安装:pip install tqdm可以从包tqdm中引入所有内:from

2020-12-10 02:14:07 11615 5

原创 Python中的collections模块详解

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.htmlPython中的collections模块详解collections 模块给出了python中一些功能更加强大的数据结构、集合类namedtuple顾名思义,namedtuple就是有了名字的tuple,声明一个namedtuple类的时候可以传入两个参数,第一个是这个tuple的名字,第二个是一个str的list,依次说明其中每一个元素的名称:fr

2020-12-10 00:05:07 987 1

原创 Python中正则表达式的匹配规则总结

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.htmlPython中正则表达式的匹配规则总结正则表达式用来匹配字符串,在python中可以使用 re 模块来完成,本篇做一个对正则表达式的匹配规则的总结精确匹配\d:匹配一个数字\s:匹配一个字母\w:匹配一个数字或字母.:匹配一个任意字符\特殊符号:匹配特殊符号,比如 \- 可以匹配一个 -模糊匹配在上述的精确匹配后可以跟上一些符号来进行模

2020-12-10 00:04:30 1076 3

原创 详解Python中的多线程、线程锁、线程变量 - threading、Thread、Lock与ThreadLocal详解

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.html详解Python中的多线程、线程锁、线程变量 - threading、Thread、Lock与ThreadLocal详解有关多进程的内容请参考:https://blog.csdn.net/qq_38962621/article/details/110767420一个进程可以包含多个线程,而且至少必须要有一个线程,这个线程被称为主线程,在Python中的名

2020-12-06 21:12:39 1139

原创 详解Python中的多进程、进程间通信(队列和管道) - multiprocessing、Process、Pool、Queue、Pipe详解

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.html详解Python中的多进程、进程间通信(队列和管道) - multiprocessing、Process、Pool、Queue、Pipe详解计算机执行任务都是多任务同步执行的,比如使用浏览器浏览网页是一个任务,同时使用编辑器写代码又是一个任务,计算机还有好多的后台任务,这些任务都是同时进行的。对于多核CUP来说,不同的任务可以被调度到多个核上平行进行,但是

2020-12-06 21:10:24 2791

原创 Python中的文件读写详解-read、readline、readlines、write、writelines、with as语句详解

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.htmlPython中的文件读写详解-read、readline、readlines、write、writelines、with as语句详解打开文件Python使用open语句打开文件,传入文件的(路径)名称,还有两个重要的参数,一个是文件处理模式(第二个参数),一个是编码方式(encoding=''):file = open("text.txt",'r',

2020-12-06 12:17:01 1727

原创 Python 中的调试与错误处理-try、assert断言语句与logging打印日志到控制台与文件详解

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.htmlPython 中的调试与错误处理-try、assert断言语句与logging打印日志到控制台与文件详解try… except… finally 语句块使用try来处理错误语句以及可能出现的异常情况,格式:try: …except ErrorType as e: …except OtherErrorType as e: …

2020-12-06 10:54:29 3441 1

原创 详解Python类中的特殊方法(前后都有双下划线的方法)-__len__、__str__、__getitem__、__iter__、__getattr__、__call__等

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.html详解Python类中的特殊方法(前后都有双下划线的方法)-len、str、getitem、iter、getattr、__call__等类中定义的一些特殊方法,也就是方法名称前后都有双下划线标识的方法,都具有特殊的意义,重写这些方法可以帮助类更好地发挥功能,这里主要介绍几种常用的、重要的方法。我们以一个偶数类(Even)为例,其中会创建一个N个偶数的列表,

2020-12-05 06:21:52 1186

原创 Python中面向对象编程的一些高级方法拾遗

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.htmlPython中面向对象编程的一些高级方法拾遗声明类中的私有变量定义类中的私有变量,只要将变量名前加双下划线即可__,如果一个变量名以__开头,它就是一个私有变量(private),只能在类内部访问,不能外部访问(比如__name)。但是开头结尾都有双下划线__的变量是特殊变量,特殊变量是可以直接访问的,不是private变量,所以不要定义这种变量(比如

2020-12-05 04:36:37 105

原创 详解Python中的偏函数(Partial Function)-functools.partial

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.html详解Python中的偏函数(Partial Function)-functools.partialpython中定义函数时通常使用默认参数使得调用时更加简单,但是有时却会遇到需要大量使用和默认值不同的默认参数的情形,这就使得需要在调用时加上对默认参数的值传入,偏函数提供了一个更简洁的方法,简单来说,偏函数(partial function)的作用就是把一个

2020-12-04 01:16:15 686

原创 详解Python中的装饰器(Decorator)-详解Python中的@符号

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.html详解Python中的装饰器(Decorator)-详解Python中的@符号本质上,装饰器(decorator)就是一个能够返回函数的高阶函数,比如说我们有很多个函数A、B、C、D等等,我们希望有一个功能是在执行一个函数之前打印这个函数的名字,当然我们可以给每个函数的第一句手动加上打印名字的代码,或者我们在每次调用前都使用 print(function._

2020-12-04 01:15:32 463

原创 在Python中处理命令行参数详解(sys.argv 与 argparse 详解)

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.html在Python中处理命令行参数详解(sys.argv 与 argparse 详解)在运行python程序的时候,往往需要传入一些参数,本节主要介绍两种设置传入命令行参数的方法。sys.argv使用sys.argv处理传入参数,需要引入sys模块:import syssys.argv即是使用命令行运行 python 命令(或者 python3 命令

2020-12-03 21:55:33 8293

原创 Python中编写与引入自己的包、模块

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.html编写与引入自己的包、模块模块(module)Python中的任何 .py 文件都可以称为一个模块(module),模块可以用来组织函数、类等代码,然后在其他的程序中引入这些模块中的功能,有利于代码的管理与提高重用性。使用import语句即可引入模块。import module_name引入模块,同时引入多个模块使用逗号隔开,然后使用如下的方法调用

2020-12-01 19:19:39 25150 1

原创 详解Python中的 zip、zip(*)、map、reduce、filter

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.html>详解Python中的 zip、zip(*)、map、reduce、filterzip和zip(*)zip() 函数接受(零个)、一个、多个可迭代对象(iterable)为参数,将这些 iterable 合并成一个tuple,返回一个对象,可以使用 list 将返回的 zip 对象转换成列表,列表的长度是所有传入的 iterable 对象中可迭代最

2020-08-20 03:03:27 359

原创 不详的解 Python 中的 lambda 与匿名函数

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.htmlPython 中的 lambda 与匿名函数Python中使用 lambda 创建一个匿名函数,匿名函数不需要使用 def 来定义函数了,是另一种比较简单的方式,但是由于只能书写一行,所以所能支持的逻辑较少,而且不能访问自己参数列表之外的或全局名称空间中的其他参数,同时也不同于C++中的内联函数,内联函数的目的是调用小函数时不占用栈内存从而增加运行效率,而

2020-08-20 03:01:46 283

原创 Python中使用函数作为参数传递和返回--函数式编程

其他关于Python的总结文章请访问:https://blog.csdn.net/qq_38962621/category_10299380.htmlPython中使用函数作为参数传递以及将函数作为参数返回–函数式编程所有定义的函数其实它的名字都是指向这个函数本身的一个变量,也就是说如果一个函数 def mySum(s,y),使用 mySum(1,2) 是调用这个函数,而 mySum 本身是一个变量,和其他任何变量一样,是可以赋值、传递等操作的。函数变量的赋值可以通过赋值操作把一个指向函数的变量(也

2020-08-19 02:24:17 9089

空空如也

空空如也

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

TA关注的人

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