量化强化学习中的泛化

我们将发布CoinRun,这是一种训练环境,它为agent将其经验转移到新颖情况中的能力提供了度量标准,并且已经帮助澄清了强化学习中的长期难题。CoinRun在复杂性方面取得了理想的平衡:环境比传统的平台游戏(如Sonic)简单,但仍对最先进的算法提出了有价值的泛化挑战。

即使是令人印象深刻的RL策略,也经常在没有监督学习技术(如dropout和batch normalization)的情况下进行训练。但是,在CoinRun泛化机制中,我们发现这些方法确实产生了积极影响,并且我们以前的RL策略过分适合特定的MDP。

The generalization challenge

对于现有技术的深度强化学习(RL)算法,任务之间的归纳仍然很困难。尽管训练有素的agent可以解决复杂的任务,但他们仍努力将其经验转移到新的环境中。即使人们知道RL agent倾向于过度适应-即锁定其环境的具体细节而不是学习通用技能-RL agent仍通过评估他们所接受的环境来进行基准测试。这就像在监督学习中对您的训练集进行测试!

先前的工作使用了Sonic基准测试,过程生成的gridworld迷宫以及通用视频游戏AI框架来解决此问题。在所有情况下,泛化都是通过训练和测试agent在不同级别上进行的。在我们的Sonic基准测试中训练的agent在训练水平上很棒,但在测试水平上表现不佳,没有任何微调。在过拟合的类似显示中,接受过程序生成的迷宫训练的agent学会了记忆大量的训练水平,而GVG-AI agent在难度设置下的表现很差,这在训练期间是看不到的。

Rules of the game

CoinRun的设计易于使用现有算法,并模仿了Sonic等平台游戏的风格。通过程序生成 CoinRun的级别,使agent可以访问大量且易于量化的训练数据。每个CoinRun关卡的目标都很简单:收集位于关卡末尾的单个硬币。agent和硬币之间存在固定和非固定的几个障碍。与障碍物的碰撞会导致agent立即死亡。通过收集硬币可以获得环境中的唯一奖励,并且该奖励是固定的正常数。该级别在agent死亡,收集硬币或经过1000个时间步长后终止。

在这里插入图片描述

CoinRun的每个级别的难度设置为1到3。上面显示两个级别:难度1(左)和难度3(右)

Evaluating generalization

我们训练了9位agent来玩CoinRun,每个agent都有不同数量的可用训练级别。前8位agent接受了100至16,000级训练。我们对最终agent的训练没有限制,因此该agent永远不会两次看到相同的等级。我们使用常见的 3层卷积架构(称为Nature-CNN)对我们的agent进行了策略训练。我们的agent接受了近端策略优化(PPO)训练,总共有256M个时间步。由于一个突发事件平均持续100个时间步长,因此具有固定训练集的agent将看到每个训练级别数千到数百万次。经过无限制训练的最终agent将看到大约200万个不同的级别-每个级别恰好一次。

通过平均最终agent在10,000集中的表现,我们收集了下图中的每个数据点。在测试时,会对agent进行前所未有的评估。我们发现,当训练水平低于4,000时,就会出现大量的过度拟合。实际上,即使有16,000个训练水平,我们仍然认为过拟合!毫不奇怪,受过无限制级别训练的agent表现最佳,因为这些agent可以访问最多的数据。下图中的虚线表示这些agent。

我们将我们的Nature-CNN基线与IMPALA中使用的卷积架构进行了比较,发现IMPALA-CNN agent在使用任何训练集时的泛化性都更好,如下所示。

在这里插入图片描述

在256M个时间步后,Nature-CNN agent的最终训练和测试性能随训练水平数量而变(左)。在256M个时间步后,IMPALA-CNN agent的最终训练和测试性能随训练级别数而变(右)。

Improving generalization performance

在接下来的实验中,我们使用了500个CoinRun水平的固定训练集。我们的基线agent很难用这么少的水平进行泛化,这使其成为基准测试的理想训练。我们鼓励其他人通过在相同500个级别上进行训练来评估自己的方法,直接比较测试时间表现。使用此训练集,我们研究了几种正则化技术的影响:

扫描二维码关注公众号,回复: 11459498 查看本文章

Dropout and L2 regularization: 尽管L2正则化的影响更大,但两者都明显减小了泛化差距。

Data augmentation (modified Cutout) and batch normalization: 数据扩充和批处理归一化都可以显着提高泛化性。

Environmental stochasticity: 与前面提到的任何一种技术相比,具有随机性的训练在更大程度上提高了泛化能力(有关详细信息,请参见论文)。

在这里插入图片描述

Additional environments

我们还开发了两个额外的环境来研究过度拟合:一个名为CoinRun-Platforms的CoinRun变体,一个名为RandomMazes的简单迷宫导航环境。在这些实验中,我们使用了原始的IMPALA-CNN架构以及LSTM,因为在这些环境中要保持良好的性能是必需的。

在CoinRun平台中,agent尝试在1000步的时限内收集几个硬币。硬币随机散布在关卡中的各个平台上。在CoinRun-Platforms中,级别是一个较大的固定大小,因此,agent必须更积极地进行探索,偶尔回溯其步骤。

当我们通过基线实验同时运行CoinRun-Platforms和RandomMazes时,我们的agent在所有情况下都严重过拟合。我们观察到在RandomMazes情况下特别强的过度拟合,因为即使使用20,000个训练水平,仍然存在相当大的泛化差距。

Next steps

我们的结果提供了对RL泛化潜在挑战的见解。使用程序生成的CoinRun环境,我们可以精确地量化这种过度拟合。使用此指标,我们可以更好地评估关键的体系结构和算法决策。我们认为,从这种环境中汲取的经验教训将适用于更复杂的环境,并且我们希望使用此基准以及其他类似基准来迭代更通用的agent。

我们建议以下以供将来研究:

  • 研究环境复杂性与良好泛化所需的级别数之间的关系
  • 调查不同的循环体系结构是否更适合这些环境中的泛化
  • 探索有效结合不同正则化方法的方法

参考资源

[1] Quantifying Generalization in Reinforcement Learning
[2] Cobbe, Karl, et al. “Quantifying generalization in reinforcement learning.” arXiv preprint arXiv:1812.02341 (2018). [paper]

猜你喜欢

转载自blog.csdn.net/u010705932/article/details/105761200