AlphaGo之父亲授深度强化学习十大法则
作者 | David Silver
译者 | 杨雷
编辑 | Vincent
出处丨AI 前线
AI 前线导读:作为独立于监督和非监督机器学习之外的机器学习重要分支,强化学习在多学科多领域中发挥了重要的决策支持作用。在 9 月 9 日 -14 日举办的南非的 Deep Learning Indaba 2018 大会上,DeepMind 强化学习研究小组负责人、AlphaGo 项目负责人 David Silver 介绍了深度强化学习的十大原则,旨在帮助那些正在学习和应用强化学习来创造价值的研究人员或工程师们,深刻地了解应该遵守的思考方式和工作方式。
原则 #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