机器学习
文章平均质量分 92
CristianoC20
公众号:计算机视觉漫谈,CV/RL爱好者
展开
-
深度强化学习落地指南总结(二)-动作空间设计
本系列是对《深度强化学习落地指南》全书的总结,这本书是我市面上看过对深度 强化学习落地讲的最好的一本书,大大拓宽了自己对RL落地思考的维度,形成了强化学习落地分析的一套完整框架,本文内容基本摘自这本书,有兴趣的读者可以点击文末链接自行购买。作者对这本书的推荐序:https://zhuanlan.zhihu.com/p/4031916912.1 动作空间设计:这里大有可为2.1.1 被忽视的价值关于动作空间的设计容易被大家忽视,因为Agent控制的方式往往在一开始就限制死,正如游戏玩家无法决定DOT原创 2021-10-14 20:54:45 · 2798 阅读 · 0 评论 -
深度强化学习落地指南总结(一)-需求分析
本系列是对《深度强化学习落地指南》全书的总结,这本书是我市面上看过对深度强化学习落地讲的最好的一本书,大大拓宽了自己对RL落地思考的维度,形成了强化学习落地分析的一套完整框架,本文内容基本摘自这本书,有兴趣的读者可以自行购买。第一章 需求分析1.1 需求分析:勿做DRL铁锤人须知任何机器学习方法都有各自的优势和适用范围,DRL算法也同样有其鲜明的优势和局限性,因此务必要做到具体问题具体分析。不是所有需求都适合用DRL解决,适合用DRL解决的需求在性能上也未必超越传统方法。因此在面对一个新需求的适.原创 2021-09-03 11:21:59 · 925 阅读 · 2 评论 -
机器学习中的频率派和贝叶斯派-以极大似然估计和最大后验估计为例
这是一个新的系列,会整理一下以前在ipad上写的笔记。前言把概率引进到机器学习当中是一件很自然的事情,许多机器学习当中问题的本质都可以从概率中的频率派(Frequentist)或贝叶斯派(Bayesian)的观点去看待,学习越成体系,对这点的感受就越多。为了方便接下来的阐述,举个例子:我们现在用XXX表示数据,θ\thetaθ表示参数,假设我们有NNN个样本,每个样本的维度是PPP,即X=(x1,x2,⋯ ,xN)N×PT=(x11x12⋯x1Px21x12⋯x1P⋮⋮⋮⋮x1x12⋯x1P)X.原创 2021-04-26 16:53:18 · 314 阅读 · 0 评论 -
强化学习算法总结(一)——从零到DQN变体
这是新开的一个系列,将结合理论和部分代码(by ElegantRL)介绍强化学习中的算法,将从基础理论总结到现在常用的SAC,TD3等算法,希望能帮助大家重温知识点。本文是第一部分,将从基础理论讲解到DQN的各种变体。目录基础理论复习Q-learningSarsaDQNPrioritized Experience ReplayDouble DQNDueling DQNNoisy Network其他参考基础理论复习强化学习简单来说就是智能体agent根据当前的状态state.原创 2021-04-08 16:26:41 · 538 阅读 · 0 评论 -
深入浅出解读并思考AlphaGo
本文是对2016年发表在Nature的<< Mastering the game of Go with deep neural networks and tree search >>的解读与思考,即AlphaGo原版算法的解读与思考。目录引言监督学习策略网络(Supervised Learning of Policy Networks)与快速走子网络(Rollout Policy Networks)强化学习策略网络( Reinforcement Learning of .原创 2021-02-24 17:49:29 · 625 阅读 · 0 评论 -
强化学习之不基于模型的控制(五)
前一讲讲解了智能体如何在不基于模型的情况下如何进行预测,也就是求解在给定策略下的状态价值或行为价值函数.本章则主要讲解在不基于模型的条件下如何通过个体的学习优化价值函数,同时改善自身行为的策略以最大化获得累积奖励的过程,这一过程也被称为不基于模型的控制.目录简介行为价值函数的重要性ϵ\epsilonϵ-贪婪策略现时策略蒙特卡洛控制现时策略时序差分控制离线策略学习编程实践(蒙特卡洛学习求二十一点游戏最优策略)编程实践(构建基于gym的有风格子世界,个体以及交互参考简介生活中有.原创 2020-12-26 20:58:52 · 477 阅读 · 0 评论 -
蒙特卡洛积分和重要性采样
重要性采样在强化学习有着重要作用,它是蒙特卡洛积分的一种采样策略.目录概率论基础蒙特卡洛积分重要性采样参考概率论基础本文先补充两条基础的概率论公式,方便大家更好地看懂全文假设某一连续型随机变量XXX的样本空间为DDD,其概率密度分布函数为p(x)p(x)p(x),则其数学期望为:E(X)=∫Dxp(x)dxE(X) = \int_D xp(x)dxE(X)=∫Dxp(x)dx若另一连续随机变量Y满足Y = f(X),则Y的数学期望为:E(Y)=∫Df(x)p(x)dxE(Y) .原创 2020-12-15 19:52:52 · 1725 阅读 · 1 评论 -
强化学习之蒙特卡洛学习,时序差分学习理论与实战(四)
前言上一讲讲解了如果应用动态规划算法对一个已知状态转移概率的MDP进行策略评估或通过策略迭代或直接的价值迭代来寻找最优策略和最优价值函数,同时也指出了动态规划算法的一些缺点.从本讲开始的连续两讲将讲解如何解决一个可以被认为是MDP,但却不掌握MDP具体细节的问题,也就是讲述个体如何在没有对环境动力学认识的模型的条件下如何直接通过个体与环境的实际交互来评估一个策略的好坏或者寻找到最优价值函数和最优策略.其中这章将聚焦于策略评估,也就是预测的问题.本章分为三个部分,将分别从理论上阐述基于完整采样的蒙特卡原创 2020-12-10 14:17:20 · 133 阅读 · 0 评论 -
强化学习之动态规划寻找最优策略理论与实战(三)
前言本讲将着重讲解如何利用动态规划(Dynamic programming)来解决强化学习中的规划问题。"规划"是指在已知环境动力学的基础上进行评估和控制,具体来说就在了解包括状态和行为空间,转移概率矩阵,奖励等信息的基础上判断一个给定策略的价值函数,或判断一个策略的优劣并最终找到最优的策略和最优的价值函数。尽管多数强化学习问题并不会给出具体的环境动力学,并且多数复杂的强化学习问题无法通过动态规划算法来快速求解,但本讲在讲解利用动态规划算法进行规划的同时将重点阐述一些非常重要的概念,例如预测和控制,策原创 2020-12-07 17:26:39 · 396 阅读 · 0 评论 -
强化学习核心之马尔科夫决策过程理论与实战(二)
前言本讲将从基础的马尔科夫过程开始讲解,到马尔科夫奖励过程,马尔科夫决策过程,最后也会用代码巩固这部分理论.目录马尔科夫过程马尔科夫奖励过程马尔科夫决策过程编程实践参考马尔科夫过程理论讲解在上一讲我们提到过,在一个时序过程中,如果t+1t+1t+1时刻的状态仅取决于t时刻的状态StS_tSt而与ttt时刻之前的任何状态都无关时,则认为ttt时刻的状态StS_tSt具有马尔科夫性(Markov property)如果过程中每一个状态都具有马尔科夫性,则这个过程具备马尔科夫性原创 2020-12-02 10:36:40 · 276 阅读 · 0 评论 -
强化学习总体介绍-初步搭建强化学习理论体系(一)
前言两年前接触强化学习是通过莫烦的课程,那时候对强化学习整体有一个基础的认识,最近听了David Silver的课程后又建立起了完整的强化学习体系,故连载David Silver系列的笔记.本讲会对强化学习整体做一个介绍,也会介绍强化学习中常用的概念,帮助读者理解,看完本文只需要建立起一个概念体系就行,不需要深究细节,细节在后面会展开说明.目录关于强化学习强化学习中的要点智能体内部强化学习中的问题参考关于强化学习强化学习在各种领域都有着它的应用,比如:(1)在计算机科学领域,强化原创 2020-11-18 16:43:03 · 1083 阅读 · 0 评论 -
Double DQN——解决DQN中的过估计问题
文章目录1.前言2.算法2.1更新方法2.2 记录Q值2.3对比结果1.前言本篇教程是基于Deep Q network(DQN)的教程,缩减了在DQN方面的介绍,着重强调Double DQN和DQN的不同之处。接下来我们说说为什么会有Double DQN这种算法,所以我们从Double DQN相对于Natural DQN(传统DQN)的优势说起。一句话概括,DQN基于Q-Learning,...原创 2019-07-23 09:35:56 · 2608 阅读 · 0 评论 -
周志华《机器学习》学习笔记(2)——性能度量
说是学习笔记二,其实上一次的介绍已经把部分第二章模型评估与选择的内容介绍了一些,这次主要是对第二章剩余知识的理解,包括:性能度量、比较检验和偏差和方差。在上一篇中,我们解决了评估学习器泛化性能的方法,即用测试集的“测试误差”作为“泛化误差“的近似,当我们划分好训练/测试集后,那如何计算”测试误差“呢?这就是性能度量,例如:均方差,错误率等,即”测试误差“的一个评价标准。有了评估方法和性能度量,就可...原创 2019-07-22 21:35:42 · 400 阅读 · 0 评论 -
强化学习之Sarsa
在强化学习中,Sarsa和Q-Learning很类似,本次内容将会基于之前所讲的Q-Learning的内容。目录算法简介更新准则探险者上天堂实战算法简介Sarsa决策部分和Q-Learning一抹一样,都是采用Q表的方式进行决策,所以我们会在Q表中挑选values比较大的动作实施在环境中来换取奖赏。但是Sarsa的更新是不一样的更新准则和上次一样用小学生写作业为例子,我们会...原创 2019-07-18 20:56:39 · 349 阅读 · 0 评论 -
Prioritized Experience Replay (DQN)——让DQN变得更会学习
目录文章目录目录1.前言2.算法2.1 SumTree有效抽样2.2 Memory类2.3 更新方法3.对比结果1.前言这次我们还是使用MountainCar来进行实验,因为这次我们不需要重度改变它的reward了。所以只要是没有拿到小旗子reward=-1,拿到小旗子时,我们定义它获得了+10的reward。比起之前DQN中,这个reward定义更加准确。如果使用这种reward定义方式,...原创 2019-07-24 10:30:53 · 2167 阅读 · 2 评论 -
Sarsa(Lambda)-Sarsa的升级版
目录前言单步更新和回合更新算法公式探险者上天堂实战小结前言今天介绍的Sarsa(lambda)算法是Sarsa的改进版,二者的主要区别在于:Sarsa是每次获取到reward之后只更新到reward的前一步,而Sarsa(lambda)就是更新获取到reward的前lambda步。也就是说,Sarsa在没有获得reward之前,当前步的Q值其实是没有任何变化的,直到获得re...原创 2019-07-19 16:55:24 · 277 阅读 · 0 评论 -
强化学习之Q——learning
部分专有名词在上一篇文章有介绍,本文不作过多赘述。目录前言算法思想算法详解算法公式探险者寻宝藏实战(一维)前言我们做事情都会有自己的一个行为准则,比如小时候爸妈常说“不写完作业就不准看电视”。所以我们在写作业的状态(state)下,好的行为就是继续写作业,直到写完它,我们还可以得到奖励(reward),不好的行为就是没写完作业就跑去看电视了,被爸妈发现就会被惩罚,这种事情做的...原创 2019-07-17 16:20:06 · 1502 阅读 · 0 评论 -
深度强化学习之DQN-深度学习与强化学习的成功结合
目录概念深度学习与强化学习结合的问题DQN解决结合出现问题的办法DQN算法流程总结一、概念原因:在普通的Q-Learning中,当状态和动作空间是离散且维数不高的时候可以使用Q-Table来存储每个状态动作对应的Q值,而当状态和动作空间是高维连续时,使用Q-Table不现实。一是因为当问题复杂后状态太多,所需内存太大;二是在这么大的表格中查询对应的状态也是一件很耗时的事情。通...原创 2019-07-20 17:04:56 · 5143 阅读 · 0 评论 -
深度强化学习之DQN实战
今天我们会将我们上一篇文章讲解的DQN的理论进行实战,实战的背景目前仍然是探险者上天堂游戏,不过在下一次开始我们会使用OpenAI gym的环境库,玩任何我们想玩的游戏。算法公式看上去整个算法似乎很复杂,其实就是Q-Learning的框架加了三样东西experience replay(经验池)神经网络计算Q值暂时冻结q_target参数接下来我们就一步步把上篇文章学习到的理论实现...原创 2019-07-21 11:59:49 · 1350 阅读 · 1 评论 -
Policy Gradient——一种不以loss来反向传播的策略梯度方法
目录文章目录目录1.前言2.核心算法3.Add a Baseline4.总结1.前言这次介绍的基于策略梯度的Policy Gradient的算法属实比之前的算法没那么好理解,笔者看完莫烦教程之后还是有许多细节没搞懂,又看了李宏毅教授的DRL Lecture才弄懂,希望能把他讲清楚。2.核心算法之前我们所学的DQN,Q-Learning都是通过计算动作得分来决策的,我们是在确定了价值函数...原创 2019-07-25 16:51:47 · 1070 阅读 · 2 评论 -
OpenAI gym——一款开发和比较RL算法的工具包
文章目录一、前言二、安装三、CartPole例子主循环四、MountainCar例子一、前言手动编写环境是一件很耗时间的事情,所以如果可以直接使用比人编写好的环境,可以节约我们很多时间。OpenAI gym就是这样一个模块,他提供给我们很多优秀的模拟环境。我们的各种强化学习算法都能使用这些环境。之前的环境都是用tkinter来手动编写,或者想玩玩更厉害的,像OpenAI一样,使用pyglet模...原创 2019-07-22 10:02:36 · 1168 阅读 · 1 评论 -
强化学习-让机器自学习
目录概念和监督学习,非监督学习的区别分类应用举例概念强化学习(Reinforcement Learning,简称RL)是机器学习的一个重要分支,前段时间人机大战的主角AlphaGo正是以强化学习为核心技术击败人类。在强化学习中,包含两种最基本的元素:状态与动作,在某个状态下执行某种动作,这便是一种策略,学习器要做的就是通过不断探索学习,从而获得一个好的策略。例如:在围棋中,一种落棋...原创 2019-07-16 10:59:07 · 1531 阅读 · 0 评论