![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
强化学习
文章平均质量分 93
oO蛋蛋Oo
这个作者很懒,什么都没留下…
展开
-
PAC learning
引自知乎,兴致勃勃地看了一会,太监了。。。引自Leslie Valiant说实话,网上很多关于PAC看完还是一头雾水,这篇文章主要是对英文的翻译和一些自己的理解引言PAC学习是莱斯利·瓦利安特(Leslie Valiant)于1984年发明的,自此诞生了计算机科学的一个新的领域——计算学习理论,文中提到可以去看一看这本书《An Introduction to Computational Learning Theory.》Learning intervals举个栗子,两个玩家,玩家1给出一个区间[原创 2020-09-05 19:42:04 · 1188 阅读 · 0 评论 -
RLChina2020 学习笔记(2)
RLChina2020 学习笔记(2)这节课老师主要回顾了VI以及PI的方法,然后给出了RL中PAC(Probably Approximately Correct)问题的理论推导思路。首先是PAC(Probably Approximately Correct),不得不说,这是一个百度不到的词,也确实是一个目前RL的理论研究方向。PAC的含义有大概正确的意思,老师分了两个角度去分析学习的误差:Approximation error: 数学模子不完善致使的误差,也就是说由于模型维度空间考虑的不周所带来的d原创 2020-08-27 16:22:14 · 343 阅读 · 0 评论 -
多维状态的哈希存储
在尝试写mdp环境的时候,state可能是一个多维的状态,比如迷宫有{x,y},当然也可以用x*size(y)+y来表示,或者直接识别成字符串,如书上所写key = "%d_%s"%(state, action)再或者将内容转化为byte然后存入hash(这种方法我很怀疑能不能行,毕竟不同的object转化为byte的结果不同)在一位ACMer的解题思路中,我找到了解决这个多维hash的一...原创 2019-04-13 14:47:00 · 837 阅读 · 0 评论 -
MCMC方法整理与理解
首先感谢大神的整理http://www.cnblogs.com/xbinworld/p/4266146.html这篇博客从这几点引入,并介绍了MCMC方法蒙特卡洛数值积分均匀分布,Box-Muller 变换Monte Carlo principle接受-拒绝抽样(Acceptance-Rejection sampling)重要性抽样(Importance sampling)马尔科...原创 2019-04-11 22:23:52 · 3941 阅读 · 2 评论 -
monte_carlo方法(maze代码实现)
首先,在上文的Maze方法中要实现随机采样的方法,这里采用了简单的随机采样方法(用U(0,1)U(0,1)U(0,1)来模拟随机动作)# 续Maze # 随机取样 def gen_randompi_sample(self, num): state_sample = [] action_sample = [] reward_samp...原创 2019-04-11 21:39:59 · 591 阅读 · 0 评论 -
强化学习学习[1]——基于蒙特卡罗的强化学习方法
前面的知识主要是最优控制(optimal control)部分的介绍,从现在开始,开始学习强化学习内容。蒙特卡罗方法蒙特卡罗方法(Monte Carlo method),就是统计模拟的方法,蒙特卡洛的实现绝对比听起来要容易的多,最简单的例子就是当事件服从0-1分布时,我们反复去做nnn次实验,其中mmm次成功,根据大数定律,v(s)→vπ(s)asN(s)→∞v(s) →v_\pi(s) as...原创 2019-04-08 15:26:47 · 879 阅读 · 0 评论 -
基于模型的动态规划方法理论——bootstrapping算法(自举算法)
强化学习分类bootstrapping算法(自举算法)直接上公式,前面的推导过程就不粘了,跟马尔可夫那块差不多。vπ(s)=∑a∈ Aπ(a∣s)(Rsa+γ∑s′∈SPss′avπ(s′))v_\pi(s) = \sum_{a\in\ A}\pi (a|s)\left( R_s^a + \gamma \sum_{s\prime \in S} P_{ss\prime}^av_\pi...原创 2019-04-02 11:13:27 · 3353 阅读 · 0 评论 -
GridEnv环境代码
直接上代码emmm 就算是强化学习的HelloWorld了吧import loggingimport numpyimport randomfrom gym import spacesimport gymclass GridEnv(): metadata = { 'render.modes': ['human', 'rgb_array'], '...原创 2019-04-01 14:06:43 · 581 阅读 · 0 评论 -
MDP中常用的概率分布
马尔可夫决策过程(Markov Decision Process, MDP)在MDP中有一些常用的随机策略[1]. 贪婪策略贪婪策略是一个确定性策略,即只有在使得动作值函数最大的动作处取概率1,选其他动作的概率为0其中π∗(a∣s)={1,if a = argmaxa∈Aq∗(s,a)0,otherwise\pi ^*(a|s) = \begin{cas...原创 2019-04-01 13:15:28 · 641 阅读 · 1 评论 -
基于模型的动态规划方法理论——策略迭代方法 and 值迭代方法(maze代码实现)
直接上代码policy_iteration_method.pyimport randomimport numpy as npclass PIM: def __init__(self): self.pi = dict() self.v = dict() def create(self, mdp): for state in...原创 2019-04-05 22:54:03 · 995 阅读 · 0 评论 -
马尔科夫决策过程
[1].第一个概念是马尔科夫性定义:P[St+1∣St]=P[St+1∣S1,...,St].P[S_{t+1}|S_{t}] = P[S_{t+1}|S_{1},...,S_{t}].P[St+1∣St]=P[St+1∣S1,...,St].[2].第二个概念是马尔科夫过程马尔可夫过程是一个二元组(S,P)(S,P)(S,P)其中S是有限状态集合,P是状态转移概率。状态转移矩...原创 2019-03-31 21:46:53 · 472 阅读 · 0 评论 -
博客开通~
博客开通~终于考上了研究生,希望在研究生阶段能够学到自己感兴趣的东西~从今天开始,每天学习机器学习算法,从会用到理解原创 2019-03-24 09:53:14 · 164 阅读 · 1 评论 -
第一个Gym程序(实验)
import gym#导入MountainCar-v0环境env = gym.make('MountainCar-v0')#初始化环境env.reset()#循环1000次for _ in range(1000): #绘图 env.render() #进行一个动作 env.step(env.action_space.sample()) # take a ...原创 2019-03-30 21:05:31 · 2012 阅读 · 0 评论 -
搭建gym环境
之前已经安装过Anaconda和Git 所以跳过了教程安装Anaconda和Git的步骤首先在CMD下输入命令conda create --name gymlab python=3.6安装的过程如下C:\WINDOWS\system32>conda create --name gymlab python=3.6Collecting package metadata: doneS...原创 2019-03-30 19:20:04 · 3615 阅读 · 0 评论 -
Maze环境以及DQN的实现
环境5*5的迷宫,其中(4,3)位置是出口,障碍物的位置分别为(1,1)、(1,2)、(1,3)、(1,4)、(3,2)、(3,3)、(4,2)动作空间当然4个,上下左右直接上代码~import gymimport tensorflow as tfimport numpy as npimport timeimport sysif sys.version_info.major ...原创 2019-04-03 21:47:40 · 4110 阅读 · 0 评论