AlphaGo之父亲授深度强化学习十大法则

原则 #1 评价驱动发展

客观、量化的评价驱动进展:

  • 评价指标的选择决定了进展的方向

  • 这可以说是项目过程中最重要的决策

排行榜驱动的研究:

  • 确保评价指标紧贴最终目标

  • 避免主观评估(如人为监测)

假设驱动的研究:

  • 提出假设:

    • “双 Q 学习优于 Q 学习,减少了向上偏差”

  • 在广泛的条件下验证该假设

  • 做同类比较,不对比目前最新进展

  • 要理解,而不是看排行榜排名

原则 #2 可伸缩性决定成败

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

    • 如果提供更多的资源,性能是如何增加的?

  • 资源包括计算、内存或数据

  • 可伸缩性最终决定了算法成功与否

  • 可伸缩性总是(最终)比好的出发点更重要

  • 好的算法在资源无限的条件下总是最优的

原则 #3 通用性保证算法符合未来发展

  • 算法的通用性是它在不同的强化学习环境下的性能体现

  • 避免对当前任务的过拟合

  • 寻找可以推广到未知、未来环境的算法

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

    • 或许未来的任务会至少和当前任务一样复杂

    • 而在未来,当前任务中遇到的困难很可能会增加

结论:在多样化且真实的强化学习环境中进行验证

原则 #4 信任智能体的经验

经验(观察、行为、奖励)是强化学习的数据:

  • 在智能体的整个生命历程中,可以不断积累经验

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

    • 人类的专业知识总会起诱导作用(人类数据,特征,启发式、约束、抽象、域操作)

  • 仅从经验中学习似乎是不可能的,但是:

    • 要接受的是,强化学习的核心问题是困难的

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

    • 这是值得我们努力的

  • 长远来看,从经验中学习永远是赢家

原则 #5 状态是主观的

智能体应该根据经验构建自己的状态。

智能体状态是前一状态和新观察的函数

这是一个循环神经网络的隐藏状态

永远不要根据环境的“真实”状态(部分可观察马尔可夫决策过程,POMDP)来下定义

原则 #6 控制数据流

  • 智能体存在于丰富的感觉运动的数据流中

    • 输入智能体的观察数据流

    • 智能体输出的行为数据流

  • 智能体行为影响物流

  • 控制特征 => 控制数据流

  • 控制数据流 => 控制未来

  • 控制未来 => 最大化任意奖励

原则 #7 值函数建模世界

为什么要使用值函数?

  • 值函数可以有效地总结 / 缓存未来

  • 固定时间查找,而不是指数级的正向预搜索(LookAhead),可以简化搜索规划

  • 可以独立计算和学习

学习多个值函数可以:

  • 有效地模拟世界的许多方面(通过控制数据流)

    • 包含后续的状态变量

  • 支持多种时间尺度

避免在原始时间步长上模拟世界。

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

一种有效的规划方法:

  • 想象下一步会发生什么

    • 基于模型的状态采样轨迹

  • 从想象的经验中学习

  • 使用已应用于实际经验的强化学习算法

现在,应该关注值函数近似(value function approximation)。

原则 #9 赋能函数近似器

可微分网络架构是强大的工具,有助于:

  • 丰富的方式表示状态

  • 可微分记忆

  • 可微分规划

  • 分级控制

算法复杂度应用到网络架构,可以:

  • 减少算法的复杂度(如何更新参数)

  • 增加架构的可表达性(参数用来做什么)

原则 #10 学会学习

人工智能的历史展示了一条清晰的发展足迹:

第一代:尚好的旧式人工智能

  • 手动预测

  • 不支持学习

第二代:浅尝学习

  • 手动处理特征

  • 开始学习预测

第三代:深度学习

  • 手动算法(优化器、目标、架构等)

  • 端到端的特征和预测学习

第四代:元学习

  • 无需手工

  • 端到端的算法、特征及预测学习

原文链接:

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

猜你喜欢

转载自blog.csdn.net/hellozhxy/article/details/82964826