带敌手的多任务联邦强化学习
文献引用
A. Anwar, Z. Wan and R. Arijit, “Multi-task federated reinforcement learning with adversaries,” in Proc. of the 39th International Conference on Machine Learning, 9099-9117, 2022.
摘要
在本文中,我们分析了多任务联邦强化学习算法,其中多个协作代理在各种环境中试图在敌手存在的情况下最大化折现收益总和。我们认为常见的攻击方法并不能保证对多任务联邦强化学习进行成功的攻击,并提出了一种攻击性能更好的自适应攻击方法。此外,我们对传统的联邦强化学习算法进行了修改,以解决在有无攻击者情况下均能有效工作的问题。
介绍
常见的攻击方式包括数据投毒和模型投毒。其中,敌手试图操纵输入数据或直接学习模型。这些漏洞会显著降低系统的性能(作恶的目的)。在本文中,我们有兴趣对多任务联邦强化学习( MT-FedRL )问题在模型中毒攻击下的脆弱性进行数学建模。现在已有各种工作通过对抗训练、特征去噪、修改联邦聚合算子等方法解决了RL和Federated ML中的对抗攻击问题。然而,在解决MT - FedRL系统的脆弱性方面,并没有太多的研究,其中多个代理共同最大化折现收益的总和。这项工作的关键动机是在对抗镜头下严格分析MT - FedRL,使其能够对对抗攻击免疫。
贡献:
- 我们给出了MT - FedRL问题在敌手存在的情况下的一个干净的数学表达式,并分析了此类系统的脆弱性。
- 我们认为一般的对抗方法不足以对MTFedRL产生有效的攻击,并提出了一种基于最小化训练中获得的信息的模型中毒攻击方法AdAMInG。
- 关键的动机是使MT - FedRL系统易于进行对抗操作,因此我们通过提出对一般FedRL算法ComA - FedRL的修改来解决对抗攻击问题,ComA - FedRL在有和无敌手的情况下都能很好地工作。
- 我们对MT - FedRL系统从小的(基于网格的任务)到大的(无人机自主导航任务)计算规模进行了深入的对抗攻击研究。我们的结果证明了我们提出的方法AdAMInG和ComA - FedRL在不同参数和场景下的有效性。
相关工作
ML中敌手的影响最早是在(塞盖迪等, 2013)中发现的,观察到对训练分类器模型的输入进行一个小的lp范数扰动会导致对输入进行确定的错误分类。这里的对手以专门创建对抗性输入的形式对学习到的模型产生错误的输出。对于有监督学习问题,在网络模型已经训练好的情况下,攻击输入是对手最可能的选择。我们的工作重点是针对强化学习问题的攻击方法,其中系统是在进行训练的。
在RL中,攻击者可以以数据中毒攻击的形式来行动,例如创建对抗样本,或者可以直接攻击底层学到的策略。要么是恶意伪造奖励信号,要么是从批量数据集估计RL动态并毒化策略。Gleave通过选择在多Agent环境中执行的对抗策略来攻击RL Agent,其结果是创建对抗观测。他们在两人零和博弈上的结果表明,一个对抗智能体可以被训练来与受害者进行可靠的交互。然而,这类攻击不能直接扩展到多任务RL问题,这也是本文的研究范围。
在联邦RL中,除了数据投毒和策略投毒攻击外,我们还不得不担心模型投毒攻击。由于我们有不止一个学习智能体,一个完整的智能体可以充当对手的角色。在模型中毒攻击中,攻击者通过有目的地向全局模型输入虚假信息,试图直接修改学习到的模型参数。本文研究了MT - FedRL问题的模型中毒攻击,该问题尚未被详细研究。
Tessler表明数据中毒事件可以作为强化学习训练的一部分,以学习更稳健的政策。它们在RL训练过程中提供扰动观测,以使训练后的策略在测试时间内对动态变化的条件更加鲁棒。Rodr ́ıguez-Barroso表明联邦学习中的数据中毒攻击可以通过修改联邦聚合算子基于诱导有序加权平均算子来解决并过滤掉可能的对手。
据我们所知(To the best of our knowledge),这是首次在存在敌手的情况下对MTFedRL进行研究。通过对MT - FedRL问题漏洞的数学分析,研究了模型中毒攻击对MT - FedRL问题的影响。然后,根据观察到的漏洞,我们对现有的解决敌手问题的算法提出了修改。
多任务联邦强化学习( MT-FedRL )
考虑了一个具有n个智能体的多任务联邦强化学习( MT-FedRL )问题。每个智能体运行在自己的环境中,可以用不同的马尔科夫决策过程来表征。MT-FedRL的目标是学习一个统一的策略,在n个环境中联合最优。每个智能体与一个集中式服务器共享其信息。我们考虑RL的策略梯度方法。则目标是找到一个统一的策略π ,使得所有环境的长期折现收益之和最大。我们用θ对策略族π进行建模,MT - FedRL问题的目标是寻找满足的策略网络的参数θ 。一般来说,学习到的联合策略是从状态空间的并集到动作空间的映射。
在MT - FedRL中,由于隐私问题,数据不与服务器共享。数据保留在本地代理,而策略网络参数 θ i \theta_{i} θi与服务器共享。每个智能体 i i i利用其本地可用数据 D i D_{i} Di,通过SGD最大化其本地价值函数 V i π V^{ π}_{ i} Viπ来训练策略参数 θ i \theta_{i} θi 。每个阶段k结束后,代理人将自己的策略参数 θ i k − θ^{k-}_{ i} θik−与一个集中的服务器共享。服务器进行平滑平均,并为每个代理生成N组新的参数(服务器共享给每个智能体的模型参数都不同,本文未讨论则目标是找到一个统一的策略π) θ i k + = α k θ i k − + β k ∑ j ≠ i θ j k − , α k = 1 n m a x ( 1 , k / t ) , β k = 1 − α k n − 1 θ^{k+}_{ i}=\alpha^{k} θ^{k-}_{ i}+\beta^{k}\sum_{j\neq i} θ^{k-}_{ j},\alpha^{k}=\frac{1}{n}max(1,k/t),\beta^{k}=\frac{1-\alpha^{k}}{n-1} θik+=αkθik−+βkj=i∑θjk−,αk=n1max(1,k/t),βk=n−11−αkt是平滑平均阈值,迭代。这种平滑平均的目标是实现智能体参数之间的一致性,即。
带有敌手的MT - FedRL
设
L
L
L表示n 智能体MT - FedRL问题中的敌手agent集合。服务端的平滑均值可以基于对抗和非对抗智能体进行如下分解:
θ
i
k
+
=
α
k
θ
i
k
−
+
β
k
∑
j
≠
i
,
j
∉
L
θ
j
k
−
+
β
k
∑
l
∈
L
θ
l
k
−
,
\begin{equation} θ^{k+}_{ i}=\alpha^{k} θ^{k-}_{ i}+\beta^{k} \sum\limits_{j\neq i,j\notin L} θ^{k-}_{ j}+\beta^{k} \sum\limits_{l\in L} θ^{k-}_{ l}, \end{equation}
θik+=αkθik−+βkj=i,j∈/L∑θjk−+βkl∈L∑θlk−,在带有敌手MT - FedRL中,敌手智能体的目标是通过有目的地提供对抗策略参数
θ
l
k
−
θ^{k-}_{ l}
θlk−来防止MT - FedRL达到统一的θ *。
敌手可以通过向服务器提供对抗策略来影响统一策略。这导致对环境所获得的贴现回报产生负面影响。
影响学习的参数:利用梯度上升,每个智能体在本地更新自己的策略参数集。
θ
i
k
−
=
θ
i
(
k
−
1
)
+
+
δ
i
∇
θ
i
V
i
π
θ
i
(
ρ
i
)
\begin{equation} θ^{k−}_{ i} = θ^{(k−1)+}_{ i} + δ_{i}∇_{θ_{i}} V^{ π_{θ_{i}}}_ i (ρ_i) \end{equation}
θik−=θi(k−1)++δi∇θiViπθi(ρi)
策略参数的服务器更新可以分解为三个部分。
- 服务器与智能体共享的前一组策略参数 θ i ( k − 1 ) + 1 θ^{(k-1)+1}_{ i} θi(k−1)+1的加权和。
- Agent的局部更新,试图将策略参数分布向目标方向移动。
- 对抗性策略参数,旨在使策略参数偏离实现目标。
如果敌手智能体进行的更新大于每个智能体的策略梯度更新之和,则策略参数将开始偏离期望的共识θ *。因此,对抗攻击的成功取决于对抗策略参数 θ l k − θ^{k-}_{ l} θlk−的性质、非对抗智能体的局部学习率 δ i δ_{ i} δi和非对抗智能体的个数 n − ∣ L ∣ n - | L | n−∣L∣。
威胁模型:敌手智能体的目标是改变策略分布以产生不良行动。在MTFed - RL中,敌手可以通过与服务器共享的策略参数 θ l k − θ^{k-}_{ l} θlk−来控制收敛。对抗性智能体需要共享策略参数,将非对抗性智能体的平均分配向均匀分布或有意产生坏行为的方向移动。一般来说,将分布转移到均匀分布比将其转移到非最优动作分布需要更少的能量。这就要求对手取消所有其他非对抗性代理人所获得的信息,从而无法区分好与坏的行动,使所有的行动都具有同等的可能性。
我们将假设如下的威胁模型。在迭代k时,每个对抗智能体
l
l
l与服务器共享如下策略参数
θ
l
k
−
=
λ
k
θ
a
d
v
k
θ^{k-}_{ l}=λ^{k}θ^{k}_{ adv}
θlk−=λkθadvk。因此,威胁模型是通过选择攻击模型
θ
a
d
v
θ_{adv}
θadv和
λ
k
∈
R
λ^{ k}∈R
λk∈R来定义的,而
λ
k
∈
R
λ^{ k}∈R
λk∈R是一个非负迭代依赖的缩放因子将用于控制对抗性攻击的规范。为了使缩放因子更有意义,我们将对此进行假设(敌手的模型参数大小尽可能的与所有非敌手的模型参数大小平均值相等,但方向相反)
∣
∣
θ
a
d
v
∣
∣
2
≈
1
(
n
−
∣
L
∣
)
∑
i
∉
L
∣
∣
θ
i
∣
∣
2
.
\begin{equation} ||θ_{adv}||^2 \approx \frac{1}{(n-|L|)}\sum\limits_{i\notin L}||θ_{i}||^2. \end{equation}
∣∣θadv∣∣2≈(n−∣L∣)1i∈/L∑∣∣θi∣∣2.
如果两个威胁模型达到相同的攻击性能,则认为缩放因子
λ
k
λ^{ k}
λk较小的威胁模型较好。对抗策略参数的范数越小,威胁模型越容易被服务器忽略。
攻击模型-- Adamin
在这一部分,我们提出了一个针对MT - FedRL系统的数学攻击模型。我们提出了一种攻击方法AdAMInG,它考虑了MT - FedRL平滑平均的性质,并在本地可用信息的情况下设计了最佳攻击。AdAMInG的目标是通过迫使服务器逐渐忘记从非对抗性代理那里学到的东西,设计一种使用具有小缩放因子的单个对抗性代理的攻击。为了平滑服务器上的平均,以丢失其他非对抗性代理所获得的所有信息
θ
l
k
−
=
−
1
β
k
∣
L
∣
(
α
k
θ
i
k
−
+
β
k
∑
j
≠
i
,
l
θ
j
k
−
)
\begin{equation} θ^{k-}_{ l}=-\frac{1}{\beta^{k}|L|}(\alpha^{k} θ^{k-}_{ i}+\beta^{k} \sum\limits_{j\neq i,l} θ^{k-}_{ j}) \end{equation}
θlk−=−βk∣L∣1(αkθik−+βkj=i,l∑θjk−)
利用上式将导致公式1中
θ
i
k
+
=
0
θ ^{k +}_{ i} = 0
θik+=0,从而丢失由
θ
i
k
−
θ^{ k -}_{i}
θik−得到的信息。
攻击模型是估计非对抗性代理的平滑平均值。对抗代理有两个可用信息:( 1 )对抗代理共享给服务器的策略参数的前一组
θ
l
(
k
−
1
)
−
θ ^{( k-1 ) -}_{ l}
θl(k−1)−。( 2 )服务器共享给对抗代理的联邦策略参数
θ
l
(
k
−
1
)
+
θ ^{( k-1 ) +}_{ l}
θl(k−1)+。
对抗智能体可以从这些量中估计出非对抗智能体的平滑平均值。AdAMInG攻击共享以下策略参数
θ
l
k
−
=
λ
k
(
α
k
θ
l
(
k
−
1
)
+
−
θ
l
(
k
−
1
)
−
)
β
k
\begin{equation} θ^{k-}_{ l} = \lambda^k\frac{(\alpha^{k} θ^{(k-1)+}_{ l}- θ^{(k-1)-}_{ l})}{\beta^{k} } \end{equation}
θlk−=λkβk(αkθl(k−1)+−θl(k−1)−)
与OppositeGoal或Rand攻击方法相比,AdAMInG攻击方法的唯一缺点是需要两倍的存储量。AdAMInG攻击方法需要存储上一次迭代得到的敌手共享策略参数 θ l ( k − 1 ) − θ ^{( k-1 ) -}_{ l} θl(k−1)−和服务器共享策略参数 θ l ( k − 1 ) + θ ^{( k-1 ) +}_{ l} θl(k−1)+,以计算新的待共享策略参数集 θ l k − θ^{k-}_{ l} θlk−。AdAMInG攻击方法不需要从环境采样的数据中学习(攻击的第k轮不需要训练),节省了大量的计算成本。
之后分析了缩放因子 λ k λ^{k} λk的取值,效果最好应该是等于n-1,与迭代轮次无关。如果学习率δ不太高,我们仍然可以在较小的缩放因子下实现成功的攻击。具体见论文原文。
检测攻击 - ComA - FedRL
我们不是在一个固定的通信间隔下向所有Agent通信策略参数,而是根据Agent是敌手的置信度为其分配不同的通信间隔。减少与敌手代理人的沟通次数可以极大地降低其对学习到的统一策略的影响。既然我们不能保证某个代理人是否是对手,那么我们就不能断绝与我们认为是对手的代理人的通信。根据代理在其他环境中的平均表现,自适应地改变服务器和代理之间的通信间隔。
预训练阶段:ComA - FedRL,每个Agent试图学习一个独立于其他Agent的局部乐观策略。每经过一定次数的情节(episodes)后(即本地强化学习训练后),服务器将一个策略随机分配到所有的环境中,不进行替换而进行评估,并记录该策略所获得的累积奖励(交叉评估阶段每个策略都要评估)。在预训练阶段的最后,对于给定的策略,平均累积奖励并与阈值进行比较。
在一定的迭代次数后,不断地对智能体进行重新评估,并更新与智能体相关的类别。在重新评估后,如果一个已经标记的可能敌手被重新标记为可能敌手,那么该Agent的通信间隔就会增加一倍,这意味着它成为敌手的概率更高,并且使得它对服务器平滑平均的贡献更小。因此,随着训练的进行,对抗代理对服务器平滑平均的贡献越来越小。
当非对抗智能体在本地学习到的策略在非对抗智能体的环境中进行评估时,由于底层任务的相关性,它通常比随机策略表现得更好。因此,相对于其他情况,我们得到了略高的累积报酬。如果一个对抗性政策在一个非对抗性代理人的环境中被交叉评估,它通常会因为对手的固有性质而表现得更差,从而给予较低的累积回报。当策略在对抗代理的环境上进行评估时,敌手可以提出伪造累积奖励的二次攻击。它故意报告一个低回报,希望让服务器混淆一个非对抗性代理人和一个对抗性代理人。由于对抗代理人无法知道服务器共享的策略是属于对抗代理人还是非对抗代理人,所以它总是分享较低的累积收益。
进一步详细介绍了Alg2中使用的变量和函数。可参见原文附录A部分。
细节:
在预训练阶段,每个智能体被分配一个base_comm(本地训练的次数),并且在每个base _ comm情节数之后,将本地学习到的策略与服务器进行共享以进行交叉评估。
评估后更新通信间隔(更新所有智能体的间隔),大于阈值设置为low_comm,小于阈值且不为low_comm设置两倍的间隔(只有两次都认为是敌手智能体通信间隔才加倍),小于阈值且为low_comm设置为high_comm(标记为可能的敌手)。
在第一轮中,base_comm如果等于1,策略参数在预训练就更新,不管好坏都聚合。
预训练相当与初始化n个智能体,先初始的判定每个智能体的好坏。
正常情况,本地训练,上传服务器聚合,如果有n个智能体同时在线则需交叉检验,若多次检验出敌手智能体则不让其上传参数,如果不作恶就允许聚合。
第k轮使用了服务器下发的第k轮策略,那第1轮服务器发的策略是哪来的?
附录a .常见攻击模型
随机策略攻击( Rand )
该攻击将作为其他攻击方式的基线。在随机策略攻击中,对抗代理维护一组从均值为0,标准差
σ
∈
R
i
σ∈R_{i}
σ∈Ri的高斯分布采样的随机策略参数。
对立性目标策略攻击( OppositeGoal )
这种攻击方法假设有一个样本环境可供代理设计攻击。在这种攻击方法中,敌手利用其本地环境学习一个策略
π
θ
a
d
v
O
G
π ^{OG}_{ θ_{adv}}
πθadvOG,目标是最小化(而不是最大化)的长期折扣回报。
J
(
θ
a
d
v
)
=
−
V
l
π
θ
a
d
v
(
ρ
l
)
。
J (θ_{adv}) = −V^{ π_{θ_{adv}}}_{ l} (ρ_{l})。
J(θadv)=−Vlπθadv(ρl)。