- 博客(20)
- 收藏
- 关注
原创 强化学习系列(十三):Policy Gradient Methods
一、前言之前我们讨论的所有问题都是先学习action value,再根据所得的action value 来选择action(无论是根据greedy policy选择使得action value最大的action ,还是根据 ϵ\epsilonϵ-greedy policy以1−ϵ1-\epsilon1−ϵ的概率选择使得action value最大的action ,action的选择都离不开act...
2018-09-27 20:42:04
8017
2
原创 强化学习系列(十二):Eligibility Traces
一、前言Eligibility Traces是强化学习的基本原理之一。例如TD(λλ\lambda)算法,(λλ\lambda)表示eligibility traces的使用情况。几乎所有TD方法,如 Q-Learning或Sarsa,都可以和eligibility traces结合起来生成更高效通用的方法。Eligibility Traces可以用于泛化TD和MC方法。当用eligibi...
2018-09-12 17:53:41
8759
1
原创 强化学习系列(十一):Off-policy Methods with Approximation
一、前言针对Policy iteration 中存在的exploitation问题,在第五章中将强化学习算法分为on-policy算法和off-policy算法。前两章中,我们讨论了对on-policy问题的函数逼近,本章中将重点介绍off-policy问题的函数逼近。两者差异很大。第六章、第七章中出现的 tabular off-policy 方法很容易用semi-gradient方法进行扩展...
2018-09-05 14:43:15
4284
3
原创 强化学习系列(十):On-policy Control with Approximation
一、前言本章我们关注on-policy control 问题,这里采用参数化方法逼近action-value函数 q̂ (s,a,w)≈q(s,a)q^(s,a,w)≈q(s,a)\hat q(s,a,\mathbf w) \approx q(s,a),其中,ww\mathbf w为权重向量。在11章中会讨论off-policy方法。本章介绍了semi-gradient Sarsa算...
2018-08-24 12:32:31
2724
原创 强化学习系列(九):On-policy Prediction with Approximation
一、前言针对 on-policy prediction 问题,用function approximate 估计 state-value function的创新在于:value function 不再是表格形式,而是权重参数为w的数学表达式,即,其中 v̂ v^\hat v 可以是state的线性函数,也可以是一个多层人工神经网络(ANN),也可以是一个决策树。值得注意的是,权重ww\...
2018-08-22 10:48:24
4516
1
原创 强化学习系列(八):Planning and learning with Tabular Methods(规划和离散学习方法)
一、前言本章是对前面七章的一个总结归纳,前七章中我们首先介绍马尔科夫决策过程(MDP),而后介绍了求解环境模型已知的MDP的方法(model-based)——动态规划方法(DP),启发式搜索也属于这类方法。最后针对环境模型未知(model free)的MDP,介绍了基于学习的强化学习方法——蒙特卡罗(MC)、时间差分(TD)等。前七章重点讨论了这两类方法的区别,但这两类方法也有以下共同点:...
2018-08-15 14:14:34
5591
原创 强化学习系列(七):n-step Bootstrapping (步步为营)
一、前言在强化学习系列(五):蒙特卡罗方法(Monte Carlo)和强化学习系列(六):时间差分算法(Temporal-Difference Learning)中,我们介绍了两种用于求解环境模型未知的MDP方法:MC和TD,MC是一种每episode更新一次的方法,TD是单步更新的方法,n-step Bootstrapping (步步为营)是一种介于TD和MC之间的方法,n-step更新一次...
2018-08-02 13:21:22
9773
2
原创 强化学习系列(六):时间差分算法(Temporal-Difference Learning)
一、前言在第五章中,我们提到了求解环境模型未知MDP的方法——Monte Carlo,但该方法是每个episode 更新一次(episode-by-episode)。本章介绍一种单步更新的求解环境模型未知MDP的方法——Temporal-Difference Learning(TD)。TD(0)算法结合了DP 和Monte Carlo算法的优点,不仅可以单步更新,而且可以根据经验进行学习。 ...
2018-07-28 13:55:15
17472
1
原创 强化学习系列(五):蒙特卡罗方法(Monte Carlo)
一、前言在强化学习系列(四):动态规划中,我们介绍了采用DP方法求解environment model 已知的MDP,本章将介绍一种无模型的强化学习方法——蒙特卡洛方法(Monte Carlo)。...
2018-07-27 14:12:10
23770
5
原创 强化学习系列(四):动态规划
一、前言在强化学习系列(三):马尔科夫决策过程中,我们提到了什么是马尔科夫过程,并且表示大部分强化学习问题都可以看做满足马尔科夫决策过程,但我们没有说如何求解马尔科夫决策过程。在本章中,我们将介绍如何用动态规划的方法求解马尔科夫决策过程,此处,我们假设需要求解的MDP是环境完全已知的。(注意:这不同于强化学习问题,大部分强化学习问题都是环境部分未知或全部未知的,但动态规划的思想对我们理解强化学...
2018-07-20 15:30:46
7414
4
原创 强化学习系列(三):马尔科夫决策过程
一、前言第二章中我们提到了多臂老虎机问题,该问题只有一个state,需要选择一个action,不需要考虑在不同state下选择action的问题——(associative problem),即不需要考虑状态间的转移,以及action对一系列state的影响。但是在第一章强化学习简介中,我们提到强化学习过程可以看做一系列的state、reward、action的组合。本章我们将要介绍马尔科夫决...
2018-07-13 16:24:48
9112
1
原创 强化学习系列(二):Multi-armed Bandits(多臂老虎机问题)
一、前言强化学习系列(一):强化学习简介中我们介绍了强化学习的基本思想,和工作过程,我们提到了强化学习的一大矛盾:平衡Exploration and Exploitation。本章我们以Multi-armed Bandits(多臂老虎机问题)为例子,简单介绍一下针对该问题的Exploration and Exploitation平衡方法。二、问题描述想想一下你可以重复一个选择过程,...
2018-07-12 13:14:22
28673
1
原创 强化学习系列(一):强化学习简介
一、强化学习是什么?首先,我们思考一下学习本身,当一个婴儿在玩耍时可能会挥舞双手,左看右看,没有人来指导他的行为,但是他和外界直接通过了感官进行连接。感知给他传递了外界的各种信息,包括知识等。学习的过程贯穿着我们人类的一生,当我们开车或者说话时,都观察了环境,并执行一系列动作来影响环境。强化学习描述的是一个与环境交互的学习问题。那么强化学习是如何描述这一学习过程的呢?以人开车为例,将人和车...
2018-07-07 15:02:44
14128
5
原创 深度强化学习(三):Policy Gradients
一、基本思想强化学习是一个通过reward来学习正确行为的机制,家族中有很多种不一样的成员,有value-based方法:通过计算value function,根据自己认为的高价值选行为, 比如 Q learning, Deep Q Network(DQN)。也有不通过分析value function,直接输出action的方法,如 Policy Gradients 。那么我们思考一个问题...
2018-05-17 10:01:32
5476
原创 深度强化学习(一): Deep Q Network(DQN)
一、背景从高维感知输入(如视觉、语音)直接学习如何控制agent对强化学习(RL)来说是一大挑战。之前很多RL算法依赖于手工选取的特征以及一个线性值函数或者一个线性策略表达式。这些系统都依赖于特征的选取质量。深度学习(DL)可以很好的提取高维特征,那么我们很自然的想到是否可以将其应用于强化学习(RL)上?二、DL和RL结合的挑战成功的深度学习应用大多都具备很好的数据集...
2018-05-15 14:46:44
19081
2
原创 Ubuntu16.04下Annaconda+Tensorflow+PyCharm安装
最近想入坑机器学习,通过查找诸多资料,打算安装Tensorflow,另外需要一个用于编写Tensorflow的IDE(集成开发环境),考虑采用PyCharm,以下为整个安装过程:安装Annaconda安装tensorflow的方式多种多样,此处采用Annaconda安装的原因是其包含了很多tensorflow的依赖库,如果自己配置会比较麻烦,可以按照以下方式安装:1.从官网下载脚本...
2018-04-17 10:16:46
4337
1
原创 C++ Primer 第一章学习笔记及习题
第1章 开始1.1 编写一个简单的C++程序一个函数的定义:返回类型、函数名、形参列表(允许为空)、函数体。main函数的返回值为0时表示成功,否则失败1.1.1 编译、运行程序集成开发环境(integrated Developed Environment,IDE) 源文件后缀:.cc .cxx .cpp .cp .c1.2 初识输入输...
2018-04-13 09:34:02
310
原创 C++ Primer 第八章学习笔记
第八章 IO库istream ——输入流类型 ostream —— 输出流类型 cin —— 一个istream对象,从标准输入读取数据 cout —— 一个ostream对象,向标准输出写入数据 cerr —— 一个ostream对象,将程序错误写入到标准错误8.1 IO 类一些用于IO类的头文件 iostream —— 定义了用于读写流的基本类型 (ist...
2018-03-01 09:50:51
487
转载 使用优快云-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I...
2018-02-28 13:42:26
292
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人