强化学习
文章平均质量分 77
HGGshiwo
这个作者很懒,什么都没留下…
展开
-
强化学习问题设计技巧
原因:强化学习相当于是加强版的搜索算法,需要对动作空间进行探索,高维的动作空间非常稀疏,模型很难学习到有用的东西。更加具体来说,当动作奖励更高的时候,对模型来说才是比较有用的。模型陷入局部最优中。原因:因为是无监督学习,标签并非是一对一的,模型收敛很困难。原因:假设环境是在纸上画一条线,要和最优解的线重合,那么是擦掉之前画的,重新画容易,还是在原来的基础上修改容易?是画了以后告诉你偏差多少容易,还是告诉你和之前相比,偏差更大/更小容易?原因:比较容易收敛,且对于连续动作,离散动作都能很好支持。原创 2024-11-07 18:36:51 · 250 阅读 · 0 评论 -
【torchrl】强化学习训练流程
如果采集到数据,马上就计算state value,那么其实不需要保存state,也就是critic(no grad)这一步可以放在step之前,然后在replay buffer中不再存储state,而是state value。有些算法可能会直接在这里估计state value,即这步的下面一步合并到这步中,那么就会增加state value, 和next state value。一般是采集一步数据,加入replay buffer,然后采样若干数据训练多次。也有是采集多步数据,然后训练多次。原创 2024-05-28 18:01:24 · 1006 阅读 · 0 评论 -
强化学习库torchrl介绍和强化学习五问
torchrl是一个基于pytorch的强化学习库,我发现根据torchrl的结构可以对强化学习知识点有更加深入的理解,下面将我的理解记录如下:'next''reward'4.4f可以看出torchrl对强化学习的抽象做的比较好,另外也提供了一个叫做Trainer的类,可以不需要手动迭代了。原创 2023-10-09 13:47:12 · 1659 阅读 · 4 评论 -
如何分辨on-policy和off-policy
这里一个(s,a)对看成一个随机变量,服从均匀分布,因此分布和策略无关(至于为什么s,a是均匀分布,那个是算法自己假设的),因此采样的时候需要用到experience replay,使得不管什么策略采样得到的reward,都变成均匀分布的。如果目标函数中s,a的分布和策略相关的,那么一定是on-policy的,如果是策略无关的,那么一定是off-policy的。就是一个期望+一个类似正则项的东西,而非常明显看出来,这个期望是服从策略theta’的,也就是说s,a分布和策略相关,因此是on-policy的。原创 2023-03-05 17:59:42 · 722 阅读 · 0 评论 -
强化学习中对on-policy和off-policy的理解
我觉得说的不对,因为Sarsa使用的是下一个state的action value来估计state value,但是下一个action的选择也倾向于选择action value最大的,因此和Q-learning也就是determistic和stomastic的区别。因此最开始的图片其实两者都是on-policy的。我觉得Sarsa和Q-learning最大的不同在于Sarsa在算reward的这个s,a必须是上一次估计state value获得的s,a,而Q-learning则是可以任意的选择一个s,a。原创 2023-02-22 17:57:08 · 526 阅读 · 0 评论 -
model free算法中的action value以及state value的理解
model free算法中,由于未知模型,因此缺少两个重要的分布: p(r|a,s)和p(s’|a,s),因此求解贝尔曼方程或者贝尔曼最优方程必须估计state value和action value的期望。这里就涉及到重要的问题,如何理解action value和state value。原创 2023-02-15 23:24:29 · 740 阅读 · 0 评论 -
强化学习中,值迭代(value iteration)和策略迭代(policy iteration),Truncated policy iteration区别的理解
值迭代的过程是: v->q->pi->v->q->pi->v->q->…,策略迭代的过程是:v->q->v->q->v->q->pipi->…值迭代是一次v->q就更新了策略pi,策略迭代是v->q->v->q这样迭代了若干次,直到v收敛才更新pi,理论上需要迭代无数次,Truncated policy iteration指的是不需要更新到v收敛,v->q迭代若干次就更新pi。原创 2023-02-12 22:39:07 · 2222 阅读 · 1 评论