zoukankan      html  css  js  c++  java
  • 强化学习十大原则

    强化学习十大原则

    https://mp.weixin.qq.com/s/cFSalws3XP0FOF58TK8wuQ

    【导读】强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益。David Sliver 总结了强化学习的十大原则,以指导强化学习的良好进行。

    作者 | David Sliver

    编译 | Xiaowen

                           

    原则#1评估(Evaluation)推动进步

    客观,量化的评估推动了进步:

    ●评估指标的选择决定了进度的方向

    ●可以说是项目过程中最重要的单一决策

    排行榜驱动的(Leaderboard-driven)研究:

    ●确保评估指标对应最终目标

    ●避免主观评估(例如人工检查)

    假设驱动的(Hypothesis-driven)研究:

    ●提出一个假设:

    ○“Double-Q学习优于Q-learning,因为它减少了向上偏差(upward bias)”

    ●在广泛的条件下验证假设

    ●比较相似的现有stat-of-the-art技术

    ●寻求理解而不是排行榜绩效


    原则#2可伸缩性(Scalability)决定成功

    ●算法的可伸缩性是其相对于资源的性能梯度

    ○给定更多资源,性能如何提高?

    ●资源可以是计算(computation),内存(memory)或数据(data)

    ●算法的可扩展性最终决定了它的成功与否

    ○图像

    ●可伸缩性始终(最终)比起点更重要

    ●给定无限资源,(最终)优化算法是最佳的


    原则#3通用性(Generality)未来证明算法

    ●不同的RL环境中,算法的通用性表现不同

    ●避免过度拟合当前任务

    ●寻求推广到未知未来环境的算法

    ●我们无法预测未来,但是:

    ○未来的任务可能至少与当前任务一样复杂

    ○当前任务遇到的困难很可能会增加

    ●结论:针对RL环境进行测试


    原则 #4:信任Agent的经验

    ●经验(观察observations,行动actions,奖励rewards)是RL的数据

     

     

    ●相信经验是唯一的知识来源

    ○总是有诱惑力来利用我们的人文专长(人类数据,功能,启发式,约束,抽象,域操作)

    ●从经验中学习似乎是不可能的

    ○接受RL的核心问题很难

    ○这是人工智能的核心问题

    ○值得努力

    ●从长远来看,从经验中学习总能赢得胜利


    原则#5状态(State)是主观的

    ●Agents应根据自己的经验构建自己的状态

     

     

    ●Agent状态是先前状态和新观察的函数

     

     

     

     

    ●它是循环神经网络的隐藏状态

    ●从未根据环境的“真实”状态定义


    原则#6控制流(Control theStream)

    ●Agents生活在丰富的感觉运动数据流中

    ○Observations流入Agent

    ○Actions流出Agent

    ●Agent的操作会影响流

    ●控制功能=>控制流

    ●控制流=>控制未来

    ●控制未来=>可以最大化任何奖励


    原则#7值函数(Value Functions)建模世界

    为什么要使用值函数?

    ●价值功能有效地总结/缓存未来

    ●将计划减少到恒定时间查找,而不是指数前瞻

    ●可以独立于其跨度进行计算和学习

    学习多种值函数:

    ●有效地模拟世界的许多方面(控制流)

        ○包括后续状态变量

    ●多个时间尺度

    避免在原始时间步骤对世界进行建模。


    原则#8规划(Planning):从想象的经验中学习

    一种有效的规划方法:

    ●想象一下接下来会发生什么

        ○模型中状态的样本轨迹

    ●从想象的经验中学习

        ○使用我们应用于实际实验的相同RL算法

    现在,关注值函数近似值。


    原则#9:授权函数近似器(FunctionApproximator)

    ●差异化的网络架构是强大的工具,可以促进:

        ○丰富的状态表示

        ○不同的记忆

        ○不同的计划

        ○分层控制

        ○...

    ●将算法复杂性推入网络架构

        ○降低算法的复杂性(如何更新参数)

        ○提高架构的表现力(参数的作用)


    原则#10学会学习(Learn toLearn)

    人工智能的历史显示了明确的进展方向:

    ●第一代:良好的老式人工智能

        ○手工预测

        ○什么都不学

    ●第二代:浅学习

        ○手工功能

        ○学习预测

    ●第3代:深度学习

        ○手工算法(优化器,目标,架构......)

        ○端到端地学习功能和预测

    ●第4代:元学习

        ○无手工

        ○端到端学习算法和功能以及预测

    原文链接:

    http://www.deeplearningindaba.com/uploads/1/0/2/6/102657286/principles_of_deep_rl.pdf

    -END-

  • 相关阅读:
    mysql索引
    springboot mybatis 后台框架平台 shiro 权限 集成代码生成器
    java 企业网站源码模版 有前后台 springmvc SSM 生成静态化
    java springMVC SSM 操作日志 4级别联动 文件管理 头像编辑 shiro redis
    activiti工作流的web流程设计器整合视频教程 SSM和独立部署
    .Net Core中的ObjectPool
    文件操作、流相关类梳理
    .Net Core中的配置文件源码解析
    .Net Core中依赖注入服务使用总结
    消息中间件RabbitMQ(一)
  • 原文地址:https://www.cnblogs.com/DicksonJYL/p/9704774.html
Copyright © 2011-2022 走看看