论文分享:Bootstrap State Representation usingStyle Transfer for Better Generalizationin Deep Reinforce

文章提出了Thinker方法,这是一种使用风格转移来改善深度强化学习(RL)智能体泛化能力的自举技术。通过无监督地去除观测中的混淆特征,Thinker能提高RL代理在不同环境中的表现。实验显示,与基础算法和数据增强技术相比,Thinker在Procgen基准上表现出更好的泛化性能。
摘要由CSDN通过智能技术生成

深度强化学习中使用风格转移进行更好泛化的Bootstrap状态表示

摘要: Abstract. Deep Reinforcement Learning (RL) agents often overfit the training environment, leading to poor generalization performance. In this paper, we propose Thinker, a bootstrapping method to remove adversarial effects of confounding features from the observation in an unsupervised way, and thus, it improves RL agents’ generalization. Thinker first clusters experience trajectories into several clusters. These trajectories are then bootstrapped by applying a style transfer generator, which translates the trajectories from one cluster’s style to another while maintaining the content of the observations. The bootstrapped trajectories are then used for policy learning. Thinker has wide applicability among many RL settings. Experimental results reveal that Thinker leads to better generalization capability in the Procgen benchmark environments compared to base algorithms and several data augmentation techniques.

        深度强化学习(Deep Reinforcement Learning, RL) agent往往会过度适应训练环境,导致泛化性能较差。在本文中,我们提出了一种自举(bootstrapping)的方法,通过无监督的方式从观测中消除混淆特征的不利影响,从而改进了RL agent的泛化。Thinker首先把经历轨迹分成几个簇。然后通过应用样式转换生成器引导这些轨迹,样式转换生成器将轨迹从一个集群的样式转换到另一个集群的样式,同时保持观察的内容。然后,引导的轨迹被用于政策学习。Thinker在许多RL设置中具有广泛的适用性。实验结果表明,与基础算法和几种数据增强技术相比,Thinker在Procgen基准环境下具有更好的泛化能力

 

问题:

  • 深度强化学习(Deep Reinforcement Learning, RL) agent往往会过度适应训练环境,导致泛化性能较差。
    • 过度拟合混淆特征:混淆性特征(如背景颜色)通常与奖励无关;因此,最优agent在策略学习过程中应该避免关注它们。
  • 为解决问题的方法:数据增强方法,如随机裁剪、在基于图像的观测中加入抖动、随机噪声注入、网络随机化和正则化(通过增加训练数据的多样性,方便策略推广)
    • 问题:
      • 干扰主要是在孤立的任务语义中完成的,这可能会改变观察的一个基本方面,导致次优策略学习。
      • 此外,在不同的观测操作中,如剪切、阻塞或合并来自不同环境级别的两个随机图像时的随机扰动可能会导致智能体在训练阶段被训练的环境是测试情况下不太可能出现的不现实观测(否则,智能体可能会学习到意想不到的和不安全的行为,而完全专注于最大化奖励,甚至利用环境中的缺陷,如不完善的奖励设计。)

本文贡献

  • 我们引入Thinker,一种引导方法,以无监督的方式从观察中去除混淆特征的不利影响
    • 提出了一种新的自举方法-Thinker,以消除观测中混淆特征的不利影响,并提高深层RL智能体性能。
    • 与之前的方法相比,我们提出的方法侧重于在保持语义不变的情况下,真实地转换观测的视觉风格。
    • 我们的方法的设计是基于人类“如果图像观察的背景颜色是红色而不是蓝色呢?”的反事实思维本质;因此它的名字叫思想者。这种基于想象的思维往往有利于未来事件中类似场景的决策。
  • Thinker可以与现有的深度RL算法一起使用,其中经验轨迹被用于策略训练。我们提供了一个算法来利用思考者在不同的RL设置
  • 我们在Procgen环境中评估Thinker,它通常能够成功地转换观察到的视觉特征,同时保持游戏语义的完整性。总的来说,我们的Thinker智能体在样本效率和泛化方面比基本的PPO算法和两种基于数据扩充的方法:随机裁剪和随机裁剪表现得更好。

 

解决思想

  • 我们提出的方法包括一种基于风格转换的观察翻译方法,该方法考虑了观察的内容。将来自智能体重放缓冲区的轨迹数据聚集到不同的类别中,然后将观察结果从一个集群风格转换到另一个集群风格。这里的风格是由集群中观察特征的共同性决定的。因此,这种风格的翻译是针对非泛化特征的。智能体应该对这些特性的变化保持健壮性。此外,翻译后的轨迹对应于那些可能出现在测试环境中的轨迹,帮助智能体适应不可见的场景。
  • 思想家使用对抗性损失[12]和循环一致性损失来学习每对簇之间的生成器[35,5]。生成器可以将观测结果从一个星团转换到另一个星团;这意味着在保持底层任务中的观察语义的同时,将样式更改为另一个集群。经过训练后,RL智能体可以使用所有生成器,以在其策略学习过程中使用它们。
  • 请注意,思想者完全以无监督的方式工作,不需要任何额外的环境交互。因此,智能体可以在不收集环境中更多数据的情况下学习策略,从而潜在地提高了在不可见环境中的样本效率和泛化。
  • 思想者经常能够成功地将样式从一个集群转移到另一个集群,生成语义上等效的观察数据。此外,我们的智能体在未知测试环境下的泛化性能优于PPO。我们进一步用两种常用的数据增广方法:随机裁剪和随机裁剪[21]来评价我们的方法。我们证明,当我们提出的方法时,这些数据增强方法有时会恶化基础PPO算法
  • 在本文中,我们使用了零距离概化[31]设置,其中智能体在不同的环境实例上进行了训练和测试。在不可见的环境实例上评价智能体的性能;因此,智能体必须在训练过程中掌握技能,才能更好地进行泛化。
  • 基于生成式对抗网络的风格迁移。风格转换的任务是将给定图像的特定特征转换为另一个图像,生成式对抗网络(generative adversarial network, GAN)取得了巨大的成功[19,18,35,5]。这种设置通常包含来自两个领域的图像,模型学习如何将图像从一个领域转换到另一个领域。然后,共享特征定义域中图像之间的样式。两个域图像之间的匹配是许多翻译方法工作所必需的。然而,这些信息在强化学习设置中是不可用的。然而,可以使用一种未配对的图像到图像的翻译方法,它不需要来自两个域的带注释的图像的一对一映射。在本文中,我们利用StarGAN[5],使用单一的发生器和鉴别器,有效地学习不同域之间的映射。在RL设置中,我们应用了一种聚类方法,该方法首先将轨迹数据分成多个簇。然后我们在这些集群上训练StarGAN,学习如何在这些集群之间进行图像转换。

 

Thinker(procgen中测试的背景变换)

  • 方法概述1bdc08fb8f6e455c9f5a40bc3fedf614.png
    • 思考者维护了一组分布,这些分布是通过对来自经验轨迹的观察数据进行聚类而实现的。我们在一个高维RGB图像观测空间上实现了该方法。
    • 聚类轨迹:
      • 轨迹数据首先被聚成几个簇(尽管任何聚类算法都可以用于这种聚类过程)
      • 我们使用高斯混合模型(GMM)进行聚类,并使用ResNet进行特征提取和降维。(聚类过程完全集中于观察的视觉方面,而不一定集中于相应的奖励结构。因此,可以根据这些视觉特征对图像进行聚类。)
    • 生成器训练(starGAN):
    •  传统的GAN,右边是 starGAN。传统的域迁移 需要在不同的两个域之间相互进行特征提取,这就导致在有 k 个域的情况下需要 k(k-1) 个生成器。而 starGAN 则解决了这个问题,自始至终只需要一个生成器8d379356fa9c4d60b8874d1a84ddf78b.png
      • 训练单个生成器G将图像从一个簇转换到另一个簇
      • 生成器:
        • 在之前作品的基础上构建了生成器,它是一个用于多域图像到图像转换的统一框架。给定源集群中的输入图像x,输出转换后的图像x`以目标簇号c为条件,即x`←G(x, c),其中c是随机选择的簇号。
        • 生成器G通过生成真实图像分布表示的真实图像,试图在对抗性设置中欺骗鉴别器D。
        • 对于给定的输入图片x和目标域标签c,网络的目标是将x转换成输出图片y,输出图片x`能够被归类成目标域c。
      • 鉴别器:
        • 使用鉴别器D区分G生成的真实图像和伪图像。
        • Dsrc区分源图像的伪图像和真实图像,Dcls确定给定输入图像x的簇数(类别)
        • 该鉴别器从给定类数据中的真实图像中检测出由生成器G生成的假图像。(loss包含对抗loss和真实图像的分类损失,因为要找出假图像,所以希望对抗损失越大,分类损失越小)
      • 关于loss
        • 为了实现生成器的功能就需要鉴别器有判别域的功能。所以在D的顶端加了一个额外的域分类器Dcls,域分类器loss在优化D和G时都会用到,作者将这一损失分为两个方向,分别用来优化G和D。
        • 对抗损失Ladv计算为梯度惩罚的Wasserstein GAN目标,与常规GAN目标相比,它稳定了训练。(其中ˆx沿一对真实图像和生成的假图像之间的直线均匀采样)
        • 真实图像的分类损失Lcls(r):代表D对真实图片计算得到的域标签概率分布。这一学习目标将会使得D能够将输入图片x识别为对应的域c'
        • 伪生成图像的分类损失Lcls(f):检测伪生成图像的loss,它用来优化G,也就是让G尽力去生成图片让它能够被D分类成目标域c
        • 为了在翻译过程中保留图像内容,应用了重建损失,使用了L1范数
          • 目的:通过最小化对抗损失与分类损失,G努力尝试做到生成目标域中的现实图片。但是这无法保证学习到的转换只会改变输入图片的域相关的信息而不改变图片内容。所以加上了周期一致性损失
    • 使用Thinker训练agent
      • 思考者方法可以应用于现有的深度RL算法,其中经验数据用于训练策略网络。在这篇文章中,我们用on-policy的PPO和[30]来评价思想者。

     

实验

  •  聚类实现:
    • 使用Scikit-learn中提供的高斯混合模型(GMM)实现
    • 降维步骤大大减少了高斯混合模型的训练和推理时间。给定n个集群,该模型在n个集群上进行训练。
    • 这n个集群数据由智能体存储,稍后用于生成器训练。
    • 聚类的数量是超参数,它可以依赖于环境水平的多样性。(实验中使用的聚类数为3)
  • 生成器训练:
    • 聚类之后,所有的数据都被提供给generator模块,该模块学习单个生成器,在任何一对集群之间进行样式转换。
    • 智能体可以在训练时间内选择不同的簇数(超参数)。
    • 在我们的实验中,我们在训练开始时对generator进行一次训练。
    • 所收集的轨迹数据应该具有足够的代表性,以训练出优秀的生成器。因此,最初,智能体必须充分探索环境,以便在缓冲区中进行不同的观察。
    • 在我们的实验中,我们使用了一个初始策略,该策略的参数是随机选择的,以便为集群和生成器训练探索和支持不同的数据收集。
    • 参数设置:starGAN训练使用500次迭代,每次迭代从可用的集群数据集中采样数据用于训练生成器模型,生成器模型使用带有6个残差块的基于ResNet的CNN
  • 实验设置:d25799926b1c44eebc31a34efe98defb.png
    • 训练(见)的水平与测试(见)的环境有很大的不同。智能体必须在不过度拟合环境中不相关的、不可概括的方面的情况下掌握该技能,以便在不可见的级别上表现得更好。
    • 我们在4个OpenAI Procgen[6]环境中进行了实验,这些环境由不同的程序生成环境和不同的行动集组成:Maze, CaveFlyer, Dodgeball和Jumper。之所以选择这些环境,是因为它们的泛化差距比较大
    • 效果展示:以平均值或中位数形式的单一度量可以隐藏由不同运行[2]所隐含的不确定性。在本文中,我们以箱线图的形式报告了所有5次随机种子运行的奖励分配,以缓解上述问题。
  • 实验内容
    • 泛化:我们展示了每个智能体如何在经过2500万时间步长的训练后实现泛化。这个场景是zero-shot设置,这意味着我们没有在测试环境级别上训练智能体(训练过的智能体看不到)。我们在盒子图中以不同的随机种子运行来报告奖励。通过评估128个随机集试验的训练代理的测试水平(全分布),计算泛化结果。

       

      • 我们的方法更好,使用随机裁剪的效果有时候会比基线ppo性能更差
      • 这些结果显示了策略训练过程中引导观测数据的重要性,它可以帮助我们学习一种策略,这种策略在不可见的环境级别上执行得比基线更好。cb4d8fdd98ea4378bc14e8a7dad0ea1b.png
    • 训练的样本效率:由于重点是在泛化,所以更加注重于测试阶段的效果,但我们方法的训练结果仍有一定的竞争性(2500万时间步长的训练效果)
    • 集群数量(簇的数量):我们发现集群数量对政策学习有一定的影响。泛化(Test Reward)性能随着集群数量的增加而下降。但集群数量对训练结果的影响则不大
      • 当簇数较大时,为10;生成器可能会过拟合每个集群的特征,并转换观察结果的基本语义部分,从而导致较低的性能。
    •  

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值