深度强化学习day01初探强化学习
深度强化学习
基本概念
强化学习
强化学习(Reinforcement Learning)是机器学习的一个重要的分支,主要用来解决连续决策的问题。强化学习可以在复杂的、不确定的环境中学习如何实现我们设定的目标。
深度学习
深度学习(Deep Learning)也是机器学习的一个重要分支,也就是多层神经网络,通过多层的非线性函数实现对数据分布及函数模型的拟合。(从统计学角度来看,就是在预测数据分布,从数据中学习到一个模型,然后通过这个模型去预测新的数据)
深度强化学习
深度强化学习(Deep Reinforcement Learning)是一种用于做决策(Decision Making)学习的算法,深度学习善于做非线性拟合,强化学习适合做决策学习。二者结合形成了深度强化学习算法。
初探强化学习
定义:受到行为心理学启发,强化学习主要在关注智能体如何在环境中采取不同的行动,以最大限度地提高累积奖励。
基本框架:智能体(Agent)、环境(Environment)、状态(State)、动作(Action)、奖励(Reward)

核心元素
- 智能体:强化学习的本体,作为学习者和决策者。
- 环境:强化学习智能体以外的一切,主要由状态集构成。
- 状态:表示环境的数据。状态集是环境中所有可能的状态。
- 动作:智能体可以做出的动作。动作集是智能体可以做出的所有动作。
- 奖励:智能体在执行一个动作后,获得的正/负奖励信号。奖励集是智能体可以获得的所有反馈信息,正/负奖励信号亦可称作正/负反馈信号。
- 策略:强化学习是从环境状态到动作的映射学习,该映射关系称为策略。(即:智能体选择动作的思考过程为策略)
- 目标:智能体自主寻找在连续时间序列里的最优策略,而最优策略通常指最大化长期累积奖励。
因此,强化学习实际上是智能体在与环境进行交互的过程中,学会最佳决策序列。
强化学习和机器学习
著名的机器学习十大算法:
- 决策树
- 支持向量机SVM
- 随机森林
- 逻辑回归
- 朴素贝叶斯
- KNN算法
- K-means算法
- AdaBoost算法
- Apriori算法
- PageRank算法
强化学习和机器学习的关系

强化学习和监督学习
区别
- 两者学习方式不尽相同。
- 两者所需的数据类型有差异,监督学习需要多样化的标签数据,强化学习则需要带有回报的交互数据。
学习方式
监督学习
监督学习是对数据进行分析,找到数据的表达模型;然后利用这个模型,在新输入的数据上进行决策(即主要分为训练阶段和预测阶段)。学习只发生在训练阶段,该阶段会出现一个预测阶段不会出现的监督信号。
强化学习
智能体在与环境的互动中,通过不断探索与试错的方式,利用基于正/负奖励的方式进行学习。强化学习的学习过程与生物的自然学习过程非常相似。
先验知识与标注数据
强化学习不需要像监督学习那样依赖先验知识数据,它通过自我博弈的方式产生更多的标准数据。强化学习可以利用较少的训练信息,让系统自主学习补充更多信息使整个系统不受标注数据和先验知识的限制。
拿围棋游戏来说,围棋的棋谱数据很容易获得,这些数据都是人类玩家的动作行为记录。如果利用监督学习模型建模,模型模拟出的对弈技能很有可能只局限在所收集的有限棋谱内。当出现新的下棋方式时,模型可能就因为找不到全局最优解而棋力大减。强化学习模型则不同,它可以利用系统自我学习和奖励的方式,让系统自动学习更多棋谱或者进行智能体间的博弈,这样可以为系统补充更多棋谱信息,进而免受监督者的限制。
深度强化学习day01初探强化学习的更多相关文章
- c++学习day01基础知识学习
一.代码示例解析: #include <iostream> int main() { using namespace std; cout << "come up an ...
- [强化学习]Part1:强化学习初印象
引入 智能 人工智能 强化学习初印象 强化学习的相关资料 经典书籍推荐:<Reinforcement Learning:An Introduction(强化学习导论)>(强化学习教父Ric ...
- 强化学习之 免模型学习(model-free based learning)
强化学习之 免模型学习(model-free based learning) ------ 蒙特卡罗强化学习 与 时序查分学习 ------ 部分节选自周志华老师的教材<机器学习> 由于现 ...
- Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks(用于深度网络快速适应的元学习)
摘要:我们提出了一种不依赖模型的元学习算法,它与任何梯度下降训练的模型兼容,适用于各种不同的学习问题,包括分类.回归和强化学习.元学习的目标是在各种学习任务上训练一个模型,这样它只需要少量的训练样本就 ...
- (zhuan) 深度学习全网最全学习资料汇总之模型介绍篇
This blog from : http://weibo.com/ttarticle/p/show?id=2309351000224077630868614681&u=5070353058& ...
- linux ubuntu 学习总结(day01)基本命令学习
个人总结,请尊重版权,转载请在显眼地方注明出处:https://www.cnblogs.com/sunshine5683/p/9948259.html day(01)基本命令学习 今天开始自学linu ...
- (转)2019年 React 新手学习指南 – 从 React 学习线路图说开去
原文:https://www.html.cn/archives/10111 注:本文根据 React 开发者学习线路图(2018) 结构编写了很多新手如何学习 React 的建议.2019 年有标题党 ...
- JavaWeb学习总结-04 Servlet 学习和使用
一 Servlet 1 Servlet概念 Servlet时运行在服务器端的Java程序. Servlet的框架核心是 javax.servlet.Servlet 接口. 所有自定义的Servlet都 ...
- 如何学习FPGA?FPGA学习必备的基础知识
如何学习FPGA?FPGA学习必备的基础知识 时间:2013-08-12 来源:eepw 作者: 关键字:FPGA 基础知识 FPGA已成为现今的技术热点之一,无论学生还是工程师都希望 ...
随机推荐
- [!!**!F6782A84A3BECEAADDB11DAC0C4E6346AC07E5344100738DAF4C6DA639D9081F!!**!]
testt 版权声明:本文博主原创文章,博客,未经同意不得转载.
- Delphi Bpl包学习
对于BPL包,我个人理解是:就是一种封装方式,和DLL,EXE类似,把代码放到包(package)里面保存而已. 一.先说说如何创建BPL包 1. 打开delphi IDE(delphi7 为例) ...
- IT引导学生成长的文章链接(十二)
链接:IT学子成长指导类文章链接(1)(2)(3) (4) (5)(6)(7)(8)(9)(10)(11) "IT学子成长指导"类我收藏过的好文(十二期:至2014年4月26日) ...
- Win7 64有点找不到MSVCP71.DLL和MSVCR71.dll
现象: win7启动好多程序都报找不到MSVCP71.DLL,网页上不去,可是非常奇怪的是好像在线给系统打补丁没有受到不论什么影响,能正常打补丁. 解决: 从本机搜索了一下msvcp71.dll ...
- [Unity3D]Unity3D游戏开发Lua随着游戏的债券(在)
---------------------------------------------------------------------------------------------------- ...
- A熟知SP.NET---WebForms UnobtrusiveValidationMode 必须“jquery”ScriptResourceMapping。
我相信,有过ASP.NET人们学习经验RequiredFieldValidator控制(验证非空控制)一定不会陌生,禁止控制输入定义的内容的作用(该属性InitialValue的值.属性默认值为空字符 ...
- WPF 3D动态加载模型文件
原文:WPF 3D动态加载模型文件 这篇文章需要读者对WPF 3D有一个基本了解,至少看过官方的MSDN例子. 一般来说关于WPF使用3D的例子,都是下面的流程: 1.美工用3DMAX做好模型,生成一 ...
- 二叉树C语言
几乎报价http://blog.csdn.net/hopeyouknow/article/details/6740616.为了这细微的地方进行了修改.他能够执行. bitree.h typedef i ...
- linux下一个rsync工具和配置
本文介绍了整个基本:http://www.2cto.com/os/201308/238733.html 一些简单的备忘录: 1. ubuntu下通过apt-get就可以安装: 2. 配置文件/etc/ ...
- jquery 表格练习
<!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml"> ...