客观、量化的评价驱动进展:
评价指标的选择决定了进展的方向
这可以说是项目过程中最重要的决策
排行榜驱动的研究:
确保评价指标紧贴最终目标
避免主观评估(如人为监测)
假设驱动的研究:
提出假设:
“双 Q 学习优于 Q 学习,减少了向上偏差”
在广泛的条件下验证该假设
做同类比较,不对比目前最新进展
要理解,而不是看排行榜排名
可伸缩性是算法相对于资源的性能梯度
如果提供更多的资源,性能是如何增加的?
资源包括计算、内存或数据
可伸缩性最终决定了算法成功与否
可伸缩性总是(最终)比好的出发点更重要
好的算法在资源无限的条件下总是最优的
算法的通用性是它在不同的强化学习环境下的性能体现
避免对当前任务的过拟合
寻找可以推广到未知、未来环境的算法
我们无法预测未来,但是:
或许未来的任务会至少和当前任务一样复杂
而在未来,当前任务中遇到的困难很可能会增加
结论:在多样化且真实的强化学习环境中进行验证
经验(观察、行为、奖励)是强化学习的数据:
在智能体的整个生命历程中,可以不断积累经验
要相信经验是知识的唯一来源
人类的专业知识总会起诱导作用(人类数据,特征,启发式、约束、抽象、域操作)
仅从经验中学习似乎是不可能的,但是:
要接受的是,强化学习的核心问题是困难的
这是人工智能的核心问题
这是值得我们努力的
长远来看,从经验中学习永远是赢家
智能体应该根据经验构建自己的状态。
智能体状态是前一状态和新观察的函数
这是一个循环神经网络的隐藏状态
永远不要根据环境的“真实”状态(部分可观察马尔可夫决策过程,POMDP)来下定义
智能体存在于丰富的感觉运动的数据流中
输入智能体的观察数据流
智能体输出的行为数据流
智能体行为影响物流
控制特征 => 控制数据流
控制数据流 => 控制未来
控制未来 => 最大化任意奖励
为什么要使用值函数?
值函数可以有效地总结 / 缓存未来
固定时间查找,而不是指数级的正向预搜索(LookAhead),可以简化搜索规划
可以独立计算和学习
学习多个值函数可以:
有效地模拟世界的许多方面(通过控制数据流)
包含后续的状态变量
支持多种时间尺度
避免在原始时间步长上模拟世界。
一种有效的规划方法:
想象下一步会发生什么
基于模型的状态采样轨迹
从想象的经验中学习
使用已应用于实际经验的强化学习算法
现在,应该关注值函数近似(value function approximation)。
可微分网络架构是强大的工具,有助于:
丰富的方式表示状态
可微分记忆
可微分规划
分级控制
…
算法复杂度应用到网络架构,可以:
减少算法的复杂度(如何更新参数)
增加架构的可表达性(参数用来做什么)
人工智能的历史展示了一条清晰的发展足迹:
第一代:尚好的旧式人工智能
手动预测
不支持学习
第二代:浅尝学习
手动处理特征
开始学习预测
第三代:深度学习
手动算法(优化器、目标、架构等)
端到端的特征和预测学习
第四代:元学习
无需手工
端到端的算法、特征及预测学习
原文链接:
http://www.deeplearningindaba.com/uploads/1/0/2/6/102657286/principles_of_deep_rl.pdf
如果你喜欢这篇文章,或希望看到更多类似优质报道,记得给我留言和点赞哦!