设为首页 加入收藏

TOP

学习笔记TF037:实现强化学习策略网络(一)
2017-10-09 14:10:17 】 浏览:2325
Tags:学习 笔记 TF037: 实现 强化 策略 网络

强化学习(Reinforcement Learing),机器学习重要分支,解决连续决策问题。强化学习问题三概念,环境状态(Environment State)、行动(Action)、奖励(Reward),目标获得最多累计奖励。强化学习模型根据环境状态、行动和奖励,学习出最佳策略,以最终结果为目标,不能只看某个行动当下带来的利益,还要看行动未来带来的价值。

AutoEncoder属于无监督学习,MLP、CNN、RNN属于监督学习,强化学习目标变化、不明确,或不存绝对正确标签。

Google DeepMind结合强化学习和深度学习,提出DQN(Deep Q-Network,深度Q网络)。AlphaGo结合策略网络(Policy Network)、估值网络(Value Network,DQN)、蒙特卡洛搜索树(Monte Carlo Tree Search)。

无人驾驶是非常复杂、困难强化学习任务。无人驾驶汽车通过摄像头、雷达、激光测距仪、传感器观测环境,获取丰富环境信息,深度强化学习模型CNN、RNN处理、抽象、转化环境信息,结合强化学习算法框架预测最应执行动作(加速、减速、转换方向),实现自动驾驶。每次执行动作,到目的地路程更短,作为每次行动奖励。最终目标是安全顺利到达目的地,得到奖励最多。

强化学习两大类,Policy-Based(Policy Gradients)和Value-Based(Q-Learning)。Policy-Based直接预测环境状态下应采取Action,Value-Based预测环境状态下所有Action期望价值(Q值),选择Q值最高Action执行。Value-Based适合少量离散取值Action,Policy-Based适合Aciton种类多或连续取值Action环境。Policy Network、Value Network。

根据环境状态和采取行动预测后续环境状态,利用信息训练强化学习模型,是Model-Based RL。Model-Free RL直接对策略或Action期望价值预测,计算效率高。复杂环境,主要用Model-Free RL,供给更多样本训练,弥补没有Model预测环境状态问题。

环境中,强化学习模型载体Agent,负责执行模型行动。环境,Agent无法控制,可以观察。根据观察结果,模型给出行动,Agent执行。Reward,环境状态下执行Action获得,模型争取目标。Reward延迟获到Delayed。Action即时获得Reward,和未来获得Reward有很大关系。

策略网络,建立神经网络模型,通过观察环境状态,直接预测目前最应该执行策略(Policy),执行策略获得最大期望收益(包括现在、未来Reward)。没有绝对正确学习目标,样本feature不再和label对应。特定环境状态,不知道对应最好Action,只知道当前Action获得Reward,试验后获得未来Reward,强化学习模型通过试验样本学习环境状态下比较好的Action。样本没有绝对正确label,只有估算label。策略网络,不只用当前Reward作label,用Discounted Future Reward,所有未来奖励依次乘以衰减系数y。衰减系数,略小于但接近1,防止没有损耗积累导致Reward目标发散,代表未来奖励不确定性估计。

Policy Gradients方法训练策略网络。模型通过学习Action在Environment获得反馈,用梯度更新模型参数。训练过程,模型接触到好Action及高期价值,和差Action及低期望价值。通过样本学习,模型逐渐增加选择好Action概率,降低选择坏Action概率,完成策略学习。直接学习当前环境应该采取策略,如选择Actionc概率,或Action具体数值。策略网络是End-to-End(端对端)方法,直接产生最终策略。

Policy-Based比Value-Based,收敛性更好,通常可以保证收敛到局部最优,且不会发散。对高维、连续值Action,训练、输出结果都更高效。能学习出带有随机性的策略。

Gym辅助策略网络训练。Gym,OpenAI开源强化学习环境生成工具。OpenAI,Tesla、Space X CEO Elon Musk发起非营利人工智能研究机构。研究安全、开放人工智能技术,确保人工智能技术广泛、公平普及服务社会。Gym,提供方便强化学习任务环境,强化学习算法效率、性能比较。Gym提供大量标准化环境,用来公平横向对比强化学习模型性能。Gym用户上传模型效果、训练日志到OpenAI Gym Service接口,参与任务排名,比较模型效果,分享算法思路。

OpenAI Gym,对用户开发模型方式无限制,和其他机器学习库完全兼容(TensorFlow、Theano)。可以用Python语言、任何Python Library编写强化学习模型Agent。如创建简单经验规则,使用State-Action一一对应策略表,深度神经网络模型训练。

Gym,两个核心概念。Environment,任务、问题。Agent,策略、算法。Agent将执行Action传给Environment,Environment接受Action,结果Observation(环境状态)和Reward返回Agent。Gym提供完整Environment接口,Agent完全由用户编写。Gym包含环境,Algorithmic(算法)、Atari游戏(Arcade Learning Environment)、Board Games(棋牌类游戏 Pachi)、Box2D(二维物理引擎)、Classic Control(经典控制)、MuJoCo(高效处理引擎)、Toy Text(文本类型)任务。执行full install安装全部环境依赖程序。

Gym环境接口,Env类。env=gym.make('Copy-v0')创建任务环境。env.reset()初始化环境,返回初始observation state。evn.step(action)当前状态执行一步Action,返回observation、reward、done(完成标记)、info(调试信息)。env.render()渲染一帧任务图像,Agent直接从图像像素学习信息策略。

Gym CartPole环境,《Neuronlike Adaptive Elements That Can Solve Difficult Learning Control Problem》,经典可用强化学习解决控制问题。CartPole环境有小车,一维无阻力轨道,行动。车上绑连接不太结实杆,左右摇晃。环境信息observation 是有4个值数组,包含小车位置、速度,杆角度、速度。不需要知道数值物理含义。设计策略网络,从数值学习环境信息,制定最佳策略。Action,小车施加正向力、负向力。Action Space,Action离散数值空间。CartPole Action Space,Discrete(2),只有0?1。只要模型学习到采取Action后带来的影响。Action只是编码。CartPole任务,尽可能保持杆竖直不倾倒,小车偏离中心超过2.4个单位距离,杆倾角超过15度,任务失败,自动结束。每坚持一步,rewar

首页 上一页 1 2 3 4 5 下一页 尾页 1/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇R语言——任务2 下一篇学习笔记TF043:TF.Learn 机器学习..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目