如何提高强化学习效果?内在奖励和辅助任务( 五 )


本文插图
由于GVFs可以表达丰富的预测知识 , 因此被成功的用作辅助任务 。
3.3 发现问题辅助任务架构
图14中展示的是通用辅助任务架构 , 以最近一次的观察作为输入 , q为模型参数 , 输出为任务策略和预先定义的问题的回答(GVF) 。
如何提高强化学习效果?内在奖励和辅助任务
本文插图
图14:通用辅助任务架构
在训练过程中 , 损失函数包含两部分 , 分别为:主任务损失函数
如何提高强化学习效果?内在奖励和辅助任务
本文插图
和辅助任务损失函数
如何提高强化学习效果?内在奖励和辅助任务
本文插图
。 本文中提出将发现问题作为辅助任务 , 而不只是回答问题 , 架构如图15所示 。 针对于发现问题 , 提出单独的问题网络 , 用未来的观察作为输入 , h表示参数 , 输出为累积向量和折扣因子向量 。 注意:未来的观察只能在训练阶段可以获取到 , 无法在验证阶段获得 。 但这对于本文提出的方法没有影响 , 因为本身在验证阶段就不需要问题 , 只需要在训练阶段提供与回答网络相对应问题的语义表示 。
如何提高强化学习效果?内在奖励和辅助任务
本文插图
图15:发现问题辅助任务架构
文中采用Meta-Gradients方法学习更新参数 , 具体的参数更新过程如图16、17所示 。
如何提高强化学习效果?内在奖励和辅助任务
本文插图
图16:Meta-Gradients(inner-loop)
如何提高强化学习效果?内在奖励和辅助任务
本文插图
图17:Meta-Gradients(outer-loop)
3.4 实验
为了验证发现问题辅助方法效果 , 作者设计了两组实验 , 分别为:只有辅助任务学习更新参数(图18)、主任务和辅助任务共同学习更新参数(图19) , 同时设计问题发现辅助任务方法与其他辅助任务方法进行比较(图20) 。 实验结果显示采用问题发现辅助任务方法更新参数达到最好的效果 。
如何提高强化学习效果?内在奖励和辅助任务
本文插图
图18:Representation Learning Experiments
如何提高强化学习效果?内在奖励和辅助任务
本文插图
图19:Joint Learning Experiments
如何提高强化学习效果?内在奖励和辅助任务
本文插图
图20:Comparison of Auxiliary Tasks on ATARI
3.5 总结
文章中提出的方法解决了在强化学习领域如何从自身数据中发现问题作为辅助任务的方法 。 这个方法可以快速发现问题来提高强化学习效果 , 但是仍然存在一些限制 , 比如:计算长序列问题参数更新受内存大小影响 。 这也是Satinder Singh教授他们未来的研究方向 。
4 结语
Satinder Singh教授分享了他的团队最近的两篇研究工作[1]和[2] , 讨论了如何将Meta-Gradient方法应用的学习发现强化学习智能体中的内在奖励和辅助任务问题中 。 并通过实验证明通过数据驱动的方式可以发现很多有用的知识来优化强化学习效果 。
5 Q&A
Q1:在强化学习中 , 内在奖励学习和熵正则化之间的关系?
Singh:让我用两种方式来回答 。 第一种是可以通过Meta-Gradient方法来学习熵正则化系数 。 Deepmind的Junhyuk Oh曾经采用过类似的方法 , 利用反向传播方法学习熵正则化 。 第二种是熵正则化可以看成是一种质量比较差的探索方法 , 它无法学习到有用的探索策略 。 内在奖励学习可以跨多个epsoides学习到有用的知识 , 这一点熵正则化是无法做到的 , 但它确实是另外一种特别的探索方法 。