EnforceLearning-被动强化学习
前言:
画图挺好:深度学习进阶之路-从迁移学习到强化学习
专家系统给出了知识节点和规则,使用粒度描述准确性,依靠分解粒度解决矛盾,并反馈知识和推理规则更新。专家系统与机器学习有本质区别,但从机器学习的角度看,专家系统是一个给出了规则/函数又给了函数参数的学习模型,其直接影响是泛化性能极差,容易导致矛盾。这样,每一个专家系统的更新都涉及到知识节点(规则参数)的分解重构,形式上等价于函数复合化。
机器学习系统设计也遵循了模式识别的一般构架与过程。一般在特定或者广泛的应用领域,先给出目标/评价函数,以期待完成预期的结果。再依据目标/评价函数设计满足目标函数的规则系统/数学模型,以期待能完成目标函数所要求的功能。而应对与每个领域,由实体到数学模型的转化,产生了一个特征描述的专家过程,把领域实体表示为学习系统可以接受的输入数据。
机器学习划分出的非监督学习与监督学习,在于是否使用了示例来指导数学模型的优化过程。监督学习给出了形式化的目标函数,形式化的数学模型,形式化的特征提取过程,并且给出了同伦映射空间模型参数的一些阈值确界,学习过程是通过阈值确界通过目标函数约束来优化数学模型的过程。非监督学习没有给出模型参数阈值,但依然有形式化的目标函数,形式化的数学模型和形式化的特征提取过程,主要通过目标函数和数学模型精细结构调整来达到预期目标。
传统的机器学习系统是一个模型逐渐优化的学习系统,学习的终极目标是收敛到一个最优解,期待是确定的数学模型。传统的ML系统方法期待模型直接学习到模式的空间结构,并得到空间结构的等价模型映射,相对于任意模型,学习到的模型是e精度最优的,即是e精度最接近的,这就意味着最大的准确率和最大的泛化性能。
跨越到连接主义的范畴,强化学习是一个反馈式学习系统,其期待是一个不断根据反馈进行优化的模型,并非一次成型。
专家系统由专家构建明确的推理规则和知识节点,模型约束为逻辑约束;监督学习构建明确的函数模型和模型参数,模型约束为拓扑约束;非监督学习形式与监督学习不同而结果相同。强化学习系统附加了一个强化规则/函数,用于实时更新模型。
专家系统、机器学习系统可以构建一个反馈系统的外围,构建一个强化学习系统,以应对交互和反馈、以及时序输入和在线模型更新。
被动强化学习:
直接抄书.....
摘抄于:AI:A Modern approach 第三版
- reinforcement learning-RL又称为评价学习,在传统ML领域不存在此种概念,接近于在线弱监督学习。在连接主义学习中,ML划分为监督学习、非监督学习、强化学习RL。
本章主要讲Agent如何从成功与失败中、回报与惩罚中进行学习。
reinforcement learning的任务是利用观察到的回报来学习针对每个环境的最优或者接近最优策略。在此,Agent没有完整的环境模型或者回报函数 两者的先验知识。RL囊括了人工智能的全部,一个Agent被置于一个环境中,并学会在其间游刃有余。
强化学习,致使Agent面临一个未知的马尔科夫过程。
被动强化学习:
在完全可观察环境的状态下使用基于状态表示的被动学习。在被动学习中,Agent的策略是Pi是固定的:在状态s中,它总是执行行动Pi(s)。
其目标只是简单的学习:该策略有多好,即是学习效用函数U(s).
被动学习的任务类似于 策略评价 任务。
1、直接效用估计
由widrow和hoff在1950s末末期在自适应控制理论里面提出的 直接效用估计。思想为:认为一个状态的效用是从该状态开始往后的期望总回报,二每次实验对于每个被访问状态提供了该值的一个样本。
直接效用估计使RL成为监督学习的一个实例,其中每一个学习都以状态为输入,以观察得到的未来回报为输出。此时,RL已经被简化为 标准归纳学习问题。
后记:作为作准归纳学习的直接效用估计,是稳定的且收敛的。
2、自适用动态规划
直接效用估计DUE.(direct utility estimatation )将RL简化为归纳学习问题(决策树?),基于它忽略了一个重要的信息来源:状态的效用并非相互独立的。每个状态的回报等于它自己的回报加上其后记状态的期望效用,即是,效用值服从固定策略的贝尔曼方程:
动态规划方程
忽略了状态之间的联系,直接效用估计错失了学习的机会。并且,直接效用估计可视为在比实际大得多的假设空间中搜索U,其中包括了违反Berman方程组的函数,因此DUE.算法收敛的非常慢。
自适应动态规划ADP.(Adaptive Dynamic program),Agent通过学习连接状态的转移模型,并使用动态规划方法来求解Markov过程,来利用状态效用之间的约束。
后记:作为规划过程的自适应动态规划,整个过程是不稳定的,且收敛性更不确定。
3、时序差分学习
时序差分学习TD.(Timporal-difference)
求解前一节内在的MDP并不是让Berman方程来承担学习问题的唯一方法。另外一种方法是:使用观察到的转移来调整观察到的状态的效用,使得它满足约束方程。
................................
ADP方法和TD方法实际上是紧密相关的。二者都试图对效用估计进行局部调整,以使每一状态都与其后继状态相“一致”。一个差异在于 TD调整一个状态使其与所有已观察的后继状态相一致,而ADP则调整该状态使其与所有可能出现的后继状态相一致,根据概率进行加权。.......
..................
演化出的近似ADP算法可以提高几个数量级的运算速度,然后......
后记:
时序差分学习的学习对象是所有已观察状态,所以预计的结果是有偏的。
EnforceLearning-被动强化学习的更多相关文章
- 【整理】强化学习与MDP
[入门,来自wiki] 强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益.其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的 ...
- 强化学习之 免模型学习(model-free based learning)
强化学习之 免模型学习(model-free based learning) ------ 蒙特卡罗强化学习 与 时序查分学习 ------ 部分节选自周志华老师的教材<机器学习> 由于现 ...
- (译) 强化学习 第一部分:Q-Learning 以及相关探索
(译) 强化学习 第一部分:Q-Learning 以及相关探索 Q-Learning review: Q-Learning 的基础要点是:有一个关于环境状态S的表达式,这些状态中可能的动作 a,然后你 ...
- 强化学习读书笔记 - 02 - 多臂老O虎O机问题
# 强化学习读书笔记 - 02 - 多臂老O虎O机问题 学习笔记: [Reinforcement Learning: An Introduction, Richard S. Sutton and An ...
- 强化学习读书笔记 - 05 - 蒙特卡洛方法(Monte Carlo Methods)
强化学习读书笔记 - 05 - 蒙特卡洛方法(Monte Carlo Methods) 学习笔记: Reinforcement Learning: An Introduction, Richard S ...
- 强化学习读书笔记 - 06~07 - 时序差分学习(Temporal-Difference Learning)
强化学习读书笔记 - 06~07 - 时序差分学习(Temporal-Difference Learning) 学习笔记: Reinforcement Learning: An Introductio ...
- 强化学习之Q-learning ^_^
许久没有更新重新拾起,献于小白 这次介绍的是强化学习 Q-learning,Q-learning也是离线学习的一种 关于Q-learning的算法详情看 传送门 下文中我们会用openai gym来做 ...
- 强化学习 - Q-learning Sarsa 和 DQN 的理解
本文用于基本入门理解. 强化学习的基本理论 : R, S, A 这些就不说了. 先设想两个场景: 一. 1个 5x5 的 格子图, 里面有一个目标点, 2个死亡点二. 一个迷宫, 一个出发点, ...
- TensorLayer官方中文文档1.7.4:API – 强化学习
API - 强化学习¶ 强化学习(增强学习)相关函数. discount_episode_rewards([rewards, gamma, mode]) Take 1D float array of ...
随机推荐
- Linux 实用指令(4)
目录 实用指令 1.指定运行级别 2.切换到指定运行级别的指令 3.帮助指令 3.1man获得帮助信息 3.2help指令 4.文件目录类 4.1pwd指令 4.2 ls指令 4.3 cd指令 4.4 ...
- javascript 闭包笔记
先来解释一下闭包: 1.闭包就是函数嵌套函数 2.内部函数可以引用外部函数的参数和变量 3.参数和变量不会被垃圾回收机制所收回( 垃圾回收机制就是用完变量之后就在内存中释放 ) 使用闭包的好处: ...
- N天学习一个linux命令之xz
前言 最近使用gitbook写接口文档,gitbook需要nodejs执行环境.安装nodejs时,发现安装包使用的是xz后缀,它是使用LZMA无损数据压缩算法生成的文件,压缩率很高.GNU已经内置了 ...
- 怎样跟程序猿谈一场没有Bug的恋爱
<iframe width="580" height="90" align="center,center" id="cpro ...
- Eclipse ADT 导入别的电脑开发的项目
用Eclipse开发的时候常常要导入别的电脑开发的项目,常常会出错,甚至导入不了. 方法一: 把你正在使用的Eclipse开发的随便一个项目.打开,把下图这三个文件复制过去你要导入的项目.覆盖.然后再 ...
- bootstrap学习——javascript插件篇
飞近期做的一个小项目须要用到一个模态框和一个图片浏览插件,并把二者结合,刚好bootstrap有相应插件,下面是学习应用流程: 1. 引入js文件: 能够单个引入相应插件文件,或一次所有引入.飞 ...
- 移动互联网App推广的十大难题
常常有朋友来问."我做了一个App,请问怎么推广啊?"或者就是"我们公司开发了一个App.想短时间内获取巨大的量."还有的就是问"有没有什么好渠道三个 ...
- [RK3288][Android6.0] 调试笔记 --- 系统第一次开机进入Recovery模式原因【转】
本文转载自:http://blog.csdn.net/kris_fei/article/details/53464461 latform: ROCKCHIPOS: Android 6.0Kernel: ...
- 在Android中创建文件
import java.io.File; import java.io.IOException; import android.app.Activity; import android.os.Bund ...
- SQL Server 2005数据库定期备份(非常详细)与 SQL Server 2005数据库备份定期清理
SQL Server 2005数据库定期备份 分类: SQL Server 20052011-01-06 16:25 3320人阅读 评论(1) 收藏 举报 sql server数据库sqlserv ...