WAPPO 论文阅读

48 阅读1分钟

0 论文信息

1 相关工作和背景

  强化学习涉及顺序决策制定 : 一个强化学习主体存在于一个世界 (环境) 中,必须基于对世界 (状态) ss 的一些信息采取行动 aa。这导致环境提供下一个状态 ss' 和奖励 rr 给主体。主体的目标是学习一个将状态映射到行动的策略 π\pi,使得期望奖励总和 E[tγtrt]\mathbb{E}\left[\sum_t \gamma^t r_t\right] 最大化,其中 γ[0,1)\gamma \in[0,1) 是一种折扣因子,用于权衡短期和长期奖励的重要性。回报被定义为累积奖励之和。主体和环境之间的交互建模为马尔科夫决策过程 (MDP),定义为一个五元组 (S,A,T,R,γ)(S, A, T, R, \gamma),其中 SS 是状态集合,AA 是动作集合,TT 是一个从状态和动作映射到下一个状态的函数,RR 是一个从状态和动作映射到奖励的函数,γ\gamma 是折扣因子。

  无模型深度强化学习使用神经网络来预测状态的价值 (预期未来奖励) 和最优行动。Proximal Policy Optimization (PPO) 是一种先进的无模型策略梯度算法,用于深度强化学习。它参数化一个策略 πθ(as)\pi_\theta(a \mid s) 和一个值函数 Vθ(s)V_\theta(s),它们在网络的 “特征提取” 部分之后共享大部分权重。值网络通过最小化均方误差 Lvalue=1ni=1n(V(s)R)2\mathcal{L}_{\text {value}}=\frac{1}{n} \sum_{i=1}^n(V(s)-R)^2 进行训练,其中 RR 是回报。策略网络通过最小化 Lpolicy=Et[min(rt(θ)A^t,clip(rt(θ),1ϵ,1+ϵ)A^t)]\mathcal{L}_{\text {policy}}=-\mathbb{E}_t\left[\min \left(r_t(\theta) \hat{A}_t, \operatorname{clip}\left(r_t(\theta), 1-\epsilon, 1+\epsilon\right) \hat{A}_t\right)\right] 进行训练,其中 E\mathbb{E} 是时间步 tt 的经验期望值,A^t\hat{A}_t 是时间步 tt 的经验优势,r(θ)=πθ(atst)πθold (atst)r(\theta)=\frac{\pi_\theta\left(a_t \mid s_t\right)}{\pi_{\theta_{\text {old }}}\left(a_t \mid s_t\right)} 是在当前策略和先前策略之间在状态 sts_t 下采取行动 ata_t 的比率,而 ϵ\epsilon 是一个小的超参数。这两个函数逼近器同时进行训练,它们的综合损失为 LPPO=Lpolicy +Lvalue \mathcal{L}_{\mathrm{PPO}}=\mathcal{L}_{\text {policy }}+\mathcal{L}_{\text {value }}

1.1 强化学习中的迁移

  在深度神经网络和深度强化学习最近出现之前,迁移学习在强化学习中就一直是一个被广泛关注的话题。关于迁移学习的研究可以分为动力学、表征和目标三个问题,涉及到环境在状态、动作、转移函数或奖励函数方面的差异。完美迁移的策略是在源马尔可夫决策过程 (MDP) 上训练,并实现与在目标 MDP 上训练的主体相等的目标奖励。

  在强化学习的 k-shot 迁移中,最流行的方法是元强化学习。这些方法通过优化深度强化学习主体的参数,使其能够快速学习从一组任务中选择的任何特定任务。具体而言,主体首先在 nn 个源任务上进行训练,然后在第 n+1n+1 个任务上进行 kk 个回合的训练,然后在第 n+1n+1 个任务上评估性能。虽然元强化学习是一个有趣且相关的研究领域,但它需要通过在目标领域进行训练来进行微调。

  领域随机化是强化学习中零样本迁移最流行的方法。在领域随机化中,强化学习主体在一组 nn 个源任务上进行训练,隐式学习到足以实现到第 n+1n+1 个任务的零样本迁移的表示和策略。为了成功完成迁移,所有 n+1n+1 个任务必须来自相同的分布。此外,为了实现这种隐式学习,nn 需要足够大,以至于主体无法记忆特定领域的策略。

  一些工作直接解决动态迁移,通过参数化 MDP 的转移函数,并学习能够在这些任务之间进行迁移的条件策略。其他工作生成课程,学习可适应具有不同动态特性的 MDP 的通用策略。

1.2 强化学习中的视觉迁移

  视觉迁移发生在一个相关的块 MDP (Markov 决策过程) 家族 M\mathcal{M} 中,其中每个块 MDP MMM\in\mathcal{M} 由一个 6 元组 (S,A,X,p,q,R)(S, \mathcal{A}, \mathcal{X}, p, q, R) 定义,其中 SS 是一个未观测到的状态空间,AA 是一个动作空间,XX 是一个观测空间,p(ss,a)p(s'|s,a) 是基于先前状态 ss 和动作 aa 的转移分布,表示下一个状态 ss' 的概率,q(xs)q(x|s) 是一个发射函数,表示基于隐藏状态 ss 的观测 xx 的概率,而 R(s,a)R(s,a) 是一个将状态和动作映射到奖励的奖励函数。发射函数 qq 和观测空间 XX 是在一个家族的块 MDP 之间唯一改变的量。块 MDP 类似于 POMDP (部分可观察的 Markov 决策过程),但它们具有发射函数而不是观测函数。这两个函数都将隐藏状态映射到观测,但发射函数产生的观测在定义上是马尔可夫的。

  为了在不同的视觉领域之间进行迁移,鲁棒领域随机化 (RDR) 旨在通过训练一个主体在解决 nn 个源领域的同时最小化跨领域内部表示的欧几里德距离,从而学习一个与领域无关的表示。然后,它尝试零样本迁移到第 n+1n+1 个领域。该方法在仅背景颜色是唯一变化属性的任务中取得了成功,但在 OpenAI Procgen 等复杂任务的视觉随机化方面,变化要大得多。当训练数据包含每个领域中具有相同语义内容的样本对时,最小化欧几里德距离将使得每个领域的表示分布对齐。如果没有成对的数据,这将错误地将具有不同隐藏状态的样本对齐,导致表示不可靠。Gupta 等人和 Tzeng 等人的类似工作学习源图像和领域图像之间的配对,并最小化配对距离,从而使特征分布在不同领域之间对齐。然而,这些方法假设在提供给主体的数据中存在跨领域的图像配对,这在复杂的视觉领域中很难偶然发生。

  其他研究使用因果推断来学习模型无关状态抽象 (MISA),以实现块 MDP 之间的迁移。MISA 成功地在低维状态的强化学习任务和背景颜色变化的视觉模仿学习任务之间进行迁移,但在视觉强化学习任务中并不适用。由于该算法依赖于重构观察结果,因此必须对可能与任务无关的因素进行建模。在视觉任务中,MISA 通过最小化观察结果与重构结果之间的均方误差来进行学习,但由于对误差信号的影响较小,它忽略了小物体的存在。而在视觉强化学习中,如玩家角色等小物体对于解决任务是至关重要的。

  在监督域适应和风格转换的研究中,通过训练生成对抗网络 (GANs) 将图像转换为不同的 "风格",例如著名画家的风格,从而将输入图像映射到在语义上等价但风格上不同的输出图像。VR Goggles for Robots 旨在通过使用风格转换网络将目标领域图像转换为源领域图像,实现在视觉上不同的领域之间的强化学习策略迁移。这使得在源领域中训练的强化学习主体可以在目标领域中发挥作用,但在推断过程中增加了额外的计算和算法复杂性,并且严重依赖于风格转换网络的成功,因为策略不是在转换后的图像上进行训练的。由于风格转换网络将真实图像与生成图像之间的均方误差和均方绝对误差最小化,它优先考虑利用更多像素的因素进行建模。在复杂的视觉强化学习任务中,重要因素 (如玩家角色) 占用的像素数量较少,优先级较低。虽然风格转换增加了计算复杂性并依赖于图像重构,但 GAN 和监督域转移的其他研究可以在没有这些缺点的情况下对齐分布。

1.3 对抗性分布对齐

  之前的 GAN 研究表明,对抗方法可以对齐任意数据分布。具体而言,给定从 "真实" 分布 PrP_r 抽取的样本,GAN 学习了一个从从高斯分布 PzP_z 中采样的噪声到 "假" 分布 PfP_f 样本的映射。它同时训练了一个对抗网络来将样本分类为真实或假的,并且一个生成网络来 "欺骗" 对抗网络,最小化分布之间的 Jensen-Shannon 散度 (JS散度)。

  一些监督学习中的领域适应方法使用类似 GAN 的对抗结构来对齐分类器在不同领域中的内部表示,并解决强化学习中视觉迁移的监督分类类比问题。它们分别引入并最小化基于对抗网络分类准确率的不同分布对齐目标。

  类似 GAN 的对抗算法可以对齐分布,但不稳定且容易出现失败,如模式崩溃。此外,最小化两个分布之间的 JS 散度在某些情况下已被证明失败,例如对齐垂直线上的两个均匀分布。Wasserstein GAN 通过将对抗分类器改变为估计真实分布 PrP_r 和假分布 PfP_f 之间的 Wasserstein-1 距离 W(Pr,Pf)W(P_r, P_f) 的对抗评论家 ff 来解决了这两个问题。最小化Wasserstein-1 距离更稳定,并经验证可以避免模式崩溃。尽管直接估计 Wasserstein-1 距离是不可行的,但 Kantorovich-Rubinstein 对偶性提供了一个可直接计算的重新参数化方法。生成器 GG 的权重 θ\theta 的梯度定义为 θW(Pr,Pf)=EzPz[θf(G(z))]\nabla_\theta W\left(P_r, P_f\right)=-E_{z \sim P_z}\left[\nabla_\theta f(G(z))\right]

2 Wasserstein 对抗性近端策略优化

图 1. 图示 Visual Cartpole 源域 (左) 和目标域 (右)。这两个领域包含相同的隐藏状态、动作、奖励和过渡,但其发射函数不同,导致观察结果不同。

  文中的新算法 Wasserstein Adversarial Proximal Policy Optimization (WAPPO) 可以从任何源任务 MsM_s 转迁移到任何目标任务 MtM_t,其中 MsM_sMtM_t 都是来自家族 M\mathcal{M} 的块 MDP。对于任何两个这样的任务,观测空间 Xs\mathcal{X}_sXt\mathcal{X}_t 和发射函数 qsq_sqtq_t 是不同的,但隐藏状态空间 SS、动作空间 A\mathcal{A}、转移函数 pp 和奖励函数 RR 是相同的。图 1 中显示的 Visual Cartpole 环境说明了发射函数的差异;源领域具有粉红色背景和蓝色轨道上的绿色小车和杆,而目标领域具有绿色背景和黄色轨道上的棕色小车和绿色杆。然而,这两个环境由相同的隐藏状态 (小车和杆的位置)、动作 (将小车向左或向右推动)、奖励 (每个 +1+1 时间步保持杆直立) 和转移 (物理模拟) 定义。此外,平衡杆的最优策略仅仅是隐藏状态 (表示小车和杆位置) 的函数,而不是物体的颜色。

  在无模型的深度强化学习中,主体不会学习其 MDP 的状态。相反,通过学习最大化奖励的策略,主体隐式地学习了一个表征函数 hθh_{\theta},其参数化为强化学习网络的前几层,将观测 xXx\in\mathcal{X} 映射到内部表征 rR\mathfrak{r} \in \mathfrak{R}。在上述定义的块 MDP 中,最优策略仅取决于隐藏状态空间 SS。因此,最优表征函数 hh^∗ 将观测 xXx\in\mathcal{X} 映射到内部表征 rR\mathfrak{r} \in \mathfrak{R},这些表征不包含比对应的隐藏状态更多的信息。

  相似地,对于源任务 MsM_s 和目标任务 MtM_t,存在最优表征函数 hsh^∗_shth^∗_t。由于 MsM_sMtM_t 的隐藏状态空间是相同的,最优策略和表征空间 RsR_sRtR_t 也是相同的。因此,存在一个表征函数 h(s,t)h^∗_{(s,t)},它将 XsX_sXmX_m 两者都映射到一个足以解决源任务和目标任务的表征空间 R=Rs=Rt\mathfrak{R}=\mathfrak{R}_s=\mathfrak{R}_t

  Wasserstein Adversarial PPO的目标是学习一个表征函数 hθ,(s,t)h_{\theta,(s,t)},以逼近最优表征函数 h(s,t)h^∗_{(s,t)}。它具有在 MsM_s 中进行训练的能力,并可以访问从 MtM_t 中采样的观测缓冲区。需要注意的是,来自 MtM_t 的观测与来自 MsM_s 的观测不成对且不是连续的。此外,WAPPO 无法访问来自 MtM_t 的奖励。鉴于块 MDP MsM_sMtM_t 都属于家族 M\mathcal{M},它们共享隐藏状态、转移函数和奖励函数,但在观测上存在差异。因此,具有领域无关表征的主体将能够在 MsM_s 中学习策略,并无缝过渡到 MtM_t。我们将表征函数 hθh_{\theta} 定义为具有参数 θ\theta 的强化学习网络的前几层。为了学习领域无关的表征,Wasserstein Adversarial PPO 同时学习解决 MsM_s,并使用对抗方法来对齐来自 MsM_sMtM_t 的表征分布。

  具体来讲,Wasserstein Adversarial PPO 在数据集 DD 上进行训练,该数据集定义为 {(xs,xt,as,rs)1,(xs,xt,as,rs)m}\left\{\left(x_s, x_t, a_s, r_s\right)_1, \ldots\left(x_s, x_t, a_s, r_s\right)_m\right\},其中 mm 是数据的数量,xsXsx_s \in \mathcal{X}_s 是源 MDP 中的观测,xtXtx_t \in \mathcal{X}_t 是目标 MDP 中的观测,asa_s 是源 MDP 中的动作,rsr_s 是源 MDP 中的奖励。需要注意的是,xsx_sasa_srsr_s 对应于源 MDP 中的同一时间步 : 主体从状态 xsx_s 采取动作 asa_s,接收奖励 rsr_s,并转移到下一个状态。xtx_t 与其他变量不对应于相同的时间步。相反,它是从目标 MDP 的观测缓冲区中随机选择的。WAPPO 使用中间层的输出,记为 hθ(x)h_{\theta}(x),作为观测 xx 的潜在表征 r\mathfrak{r}。为了确保这个潜在表征 r\mathfrak{r} 是与领域无关的,WAPPO 通过最小化 hθ(xs)h_\theta\left(x_s\right)hθ(xt)h_\theta\left(x_t\right) 的分布之间的Wasserstein-1 距离来逼近 hh^∗

图 2. 网络架构。图中的圆角矩形表示网络的层。蓝色表示在训练强化学习策略时使用 (Value 和 Action 应该也是蓝色的,自己画的时候搞错了,吐槽一下这个作者画的图真的一言难尽),黄色表示在训练评论家时使用,绿色表示同时在训练两者时使用。需要注意的是,网络架构与领域混淆和随机化的架构相似,但进行了修改以适应强化学习而不是监督学习。绿色和蓝色网络的结合在架构上与用于 Procgen 环境基准测试和 Robust Domain Randomization 的 IMPALA 网络完全相同。在测量 PPO 和 Robust Domain Randomization 的性能时,只使用了绿色和蓝色网络。

  类似于监督对抗领域适应算法,WAPPO 由两个网络组成 : 强化学习网络和对抗网络,如图 2 所示。强化学习网络学习一个潜在表示,用于计算最佳下一步动作和每个观测的值。这个潜在表示应该在源领域和目标领域中相同。对抗网络以潜在表示作为输入,并被训练用于区分源任务和目标任务。策略网络既要在源任务上最大化性能,又要最小化对抗网络识别领域的能力。具体而言,强化学习网络最小化了

LWAPPO=LPPO+λLConf\mathcal{L}_{\mathrm{WAPPO}}=\mathcal{L}_{\mathrm{PPO}}+\lambda \mathcal{L}_{\text {Conf}}

  其中,LPPO\mathcal{L}_{\mathrm{PPO}} 是 PPO 的损失函数,而 LConf\mathcal{L}_{\text {Conf}} 是最大程度混淆评论家并对齐源观测和目标观测分布的损失项。

  Wasserstein GAN 使用神经网络来近似真实分布和虚假分布之间的 Wasserstein 距离。此外,它定义了该距离的导数,用于优化生成器的损失项,展示了比标准 GAN 损失更高的稳定性。

  尽管 Wasserstein GAN 损失项似乎与 LConf\mathcal{L}_{\text {Conf}} 完全一致,但它们有一个关键的区别 : 它假设一个分布是固定的,而这在领域适应中并不成立。领域适应的目标是将由 θ\theta 参数化的两个分布进行对齐。具体而言,我们希望将源域提取特征的分布 PshθP_s^{h_\theta} 与目标域提取特征的分布 PthθP_t^{h_\theta} 进行对齐。需要注意的是,无法直接从 PshθP_s^{h_\theta}PthθP_t^{h_\theta} 中进行采样。相反,我们通过首先从观测分布 PsP_sPtP_t 中进行采样,然后应用 hθh_θ 来映射到表示中进行采样。因此,Wasserstein 距离定义为

W(Ps,Pt)=ExPs[f(hθ(x))]ExPt[f(hθ(x))]\begin{align} W\left(P_s, P_t\right)=E_{x \sim P_s}\left[f\left(h_\theta(x)\right)\right]-E_{x \sim P_t}\left[f\left(h_\theta(x)\right)\right] \end{align}

  其中,ff 是对抗评论家,梯度定义为

θW(Ps,Pft)=θ[ExPs[f(hθ(x))]ExPt[f(hθ(x))]]=θExPs[f(hθ(x))]θExPt[f(hθ(x))]\begin{aligned} \nabla_\theta W\left(P_s, P_{f_t}\right) & =\nabla_\theta\left[E_{x \sim P_s}\left[f\left(h_\theta(x)\right)\right]-E_{x \sim P_t}\left[f\left(h_\theta(x)\right)\right]\right] \\ & =\nabla_\theta E_{x \sim P_s}\left[f\left(h_\theta(x)\right)\right]-\nabla_\theta E_{x \sim P_t}\left[f\left(h_\theta(x)\right)\right] \end{aligned}
θW(Ps,Pt)=ExPs[θf(hθ(x))]ExPt[θf(hθ(x))]\begin{align} \nabla_\theta W\left(P_s, P_t\right)=E_{x \sim P_s}\left[\nabla_\theta f\left(h_\theta(x)\right)\right]-E_{x \sim P_t}\left[\nabla_\theta f\left(h_\theta(x)\right)\right] \end{align}

3 实验

  继续略

4 感想

  感觉强化学习里面的泛化貌似不是很好做,大部分工作还是选择用 meta-RL 的方式进行处理,但是这和我们想要的泛化性相去甚远。这两篇 AAAI 的论文感觉还是和 ICLR 的论文有较大差距 (要不是相关工作少还是会少看一些 AAAI 的工作)。