Loading [MathJax]/jax/element/mml/optable/GeneralPunctuation.js
高级搜索

留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

一种目标跟踪滤波的新方法

曲洪权 李少洪

陈卓, 江辉, 周杨. 一种面向联邦学习对抗攻击的选择性防御策略[J]. 电子与信息学报, 2024, 46(3): 1119-1127. doi: 10.11999/JEIT230137
引用本文: 曲洪权, 李少洪. 一种目标跟踪滤波的新方法[J]. 电子与信息学报, 2007, 29(9): 2120-2123. doi: 10.3724/SP.J.1146.2006.00738
CHEN Zhuo, JIANG Hui, ZHOU Yang. A Selective Defense Strategy for Federated Learning Against Attacks[J]. Journal of Electronics & Information Technology, 2024, 46(3): 1119-1127. doi: 10.11999/JEIT230137
Citation: Qu Hong-quan, Li Shao-hong. Novel Sequential Monte Carlo Method to Target Tracking[J]. Journal of Electronics & Information Technology, 2007, 29(9): 2120-2123. doi: 10.3724/SP.J.1146.2006.00738

一种目标跟踪滤波的新方法

doi: 10.3724/SP.J.1146.2006.00738

Novel Sequential Monte Carlo Method to Target Tracking

  • 摘要: 对于目标跟踪系统,当观测不确定性相对系统不确定性较大时,如果采用EKF,UKF算法,由于概率密度函数(PDF)由高斯分布近似使真实的分布结构扭曲,导致系统性能下降或发散,采用粒子滤波时,因为系统不确定性相对观测不确定性较小,所以重采样会使粒子间的独立性消失,导致系统性能下降。为了提高目标跟踪的精度,该文给出一种SMCEKF及SMCUKF滤波算法,在SMC(Sequential Monte Carlo)算法中分别引入EKF及UKF,由独立滤波器更新和传播的随机采样点和相应权重来表示状态的PDF,由于初值和滤波都是独立的,所以确保了表示PDF的随机样值的独立性,在滤波器个数较少、计算量较小的情况下使滤波性能得到提高。文中给出了理论分析和仿真实例证明算法的有效性。
  • 近年来,以物联网为代表的数据采集技术的快速发展使得数据的广泛多元获取成为可能,这显著地促进了机器学习模型的迭代更新[1-3]。而传统的机器学习模型通常基于集中式的模式设计,即由互联网应用服务商将收集到的用户数据或者感知数据汇聚到数据中心,并利用数据中心的强大算力进行模型训练和结果的输出。但这种需要将数据传输并汇聚于第三方的机器学习模型却存在着潜在的数据和隐私泄露风险,这导致了越来越多的数据持有方不愿意进行数据共享,从而形成了“数据孤岛”并导致无法充分地挖掘数据价值。联邦学习(Federated Learning, FL)[4]作为一种新兴机器学习范式,基于“数据不动,模型移动”的思想而设计,即模型分别部署在参与FL的多个终端和服务器之上,而数据无需离开持有数据的终端而进行本地模型训练,终端和服务器之间仅存在模型参数或中间结果的交互,通过这样的持续协作完成全局模型的训练。但是,由于参与联邦学习的终端通常没有事先经过严格的信任度验证,这为恶意终端施行针对FL的对抗攻击提供了可能[5],例如:模型推理的时候,恶意终端通过向输入添加微小的、人类不可感知的扰动来欺骗神经网络模型,从而使得模型以更大的概率表现出不正确或意外的行为[6]

    机器学习模型的输入形式是一种数值型向量,具有恶意企图的攻击者通过有针对性的数值型向量让机器学习模型做出误判,这即是对抗性攻击。Goodfellow 等人[7]提出一种简单但有效的攻击方法-FGSM,利用损失函数的梯度符号来生成对抗样本。Kurakin等人[8]通过多次应用FGSM小步长引入基本迭代法-BIM。Madry等人[9]从干净输入附近的随机位置开始多次应用FGSM提出了一种更强大的迭代攻击-PGD。Dong等人[10]提出基于动量的迭代算法-MIM,将动量项集成到攻击的迭代过程中,并在迭代过程中摆脱较差的局部最大值,产生更多可转移的对抗性示例。文献[11]提出基于梯度的攻击算法-DeepFool,通过迭代生成最小规范对抗扰动,将位于分类边界内的图像逐步推到边界外,直到出现错误分类。为了在最小化干扰的同时获得更好的攻击效果,Carlini等人[12]提出基于优化函数的攻击方法-C&W。除此之外,文献[13]提出一种通用对抗性后门攻击,以欺骗云边缘协作中的垂直联邦学习。文献[14]基于隐私泄露和成对节点梯度添加噪声的全局节点嵌入生成对抗性扰动提出一种新的针对图神经网络的对抗性攻击方法。上述工作通过不同的扰动添加方式,如基于梯度、动量和优化函数等,使得同时防御上述攻击成为困难。

    针对各种新出现的对抗性攻击,学界也不断提出防御机制,Papernot等人[15]使用防御蒸馏平滑训练期间的模型来降低对抗样本对模型的有效性。Guo等人[16]采用未修改的模型来度量对抗样本的可转移性差异。文献[17]通过自适应地校准未归一化的概率来平衡类,解决了在具有标签偏度的非独立同分布(Non-Independent Identically Distributed, Non-IID)数据上的训练不稳定性问题。除此之外,文献[18]提出差分隐私自归一化神经网络,在没有显著增加计算开销的神经网络训练和推理情况下提高敌对的鲁棒性。但是,上述工作主要应用于集中式机器学习,难以胜任FL环境下的防御,而本文主要针对FL环境下的多攻击进行联邦防御。虽然已有工作提出联邦防御方法FDA3[19],可以聚合来自不同来源的对抗性实例的防御知识,但该方法通过聚合所有防御模型的思路会导致模型对各类对抗攻击的敏感性明显降低。针对该问题,本文提出了一种新的防御策略,称为SelectiveFL。与现有最新工作不同的是,本文不再是进行单一的模型聚合,而是在聚合阶段根据攻击特性的不同,选择性进行模型聚合,保证模型对各类攻击的高敏感性从而实现更高效的联邦防御。主要贡献概括如下。

    (1) 本文面向FL中对抗性攻击的多样性,设计了一种新的损失函数并用于对抗性训练。

    (2) 本文提出一种新的联邦防御策略(SelectiveFL),基于对抗性训练提取出不同终端的攻击特性,进而使服务器通过攻击特性进行选择性参数聚合,并实现适应性的对抗防御。

    (3) 本文在具有代表性的基准数据集上进行了深入的实验,验证了所提策略的有效性和扩展性。

    本文其余部分安排如下。第2节讨论系统模型和问题描述。第3节详细描述本文的联邦防御策略。第4节介绍实验细节和结果。最后,第5节对本文进行总结。

    传统联邦学习通过FedAvg算法聚集本地终端的模型参数来学习联邦模型参数

    ωtg=Nk=1|Dk|Nj=1|Dj|ωtk (1)

    图1所示,本文考虑在数据集(XY)的C类上进行联邦模型训练,其中X是特征空间,Y={1,2,···,C}是所有类标签的集合。传统的联邦学习目标是获得优化的全局模型参数ωtg,该参数通过最小化下式中的损失函数,如式(2)所示

    图 1  攻击下的联邦学习框架
    L(ωtg)=Nk=1|Dk|Nj=1|Dj|L(ωtk) (2)

    由于不同终端可能受到不同类型的对抗性攻击的干扰,即每个终端的损失函数由自然样本损失和对抗样本损失组成,每个终端k通过优化其本地模型参数ωtk来最小化本地损失函数L(ωtk),即

    minωtkL(ωtk)=minωtkCi=1pk(y=i)Ex|y=i[αlnFi(x,ωtk)+(1α)lnFi(xadv,ωtk)] (3)

    其中Fi表示数据点属于Y的第i类的概率,α是一个超参数,用于调整自然样本和对抗样本属于Y的第i类的概率对数值,Ex|y=i表示属于第i类的数据点的自然样本和对抗样本的概率对数期望,本文主要符号含义如表1所示。

    表 1  主要符号汇总
    符号含义
    ωtg迭代轮次t的全局防御模型
    ωtk迭代轮次t的终端k的本地防御模型
    |Dk|终端k数据集的大小
    N终端数量
    L(ωtg)迭代轮次t的全局损失
    L(ωtk)迭代轮次t的终端k的本地损失
    η学习率
    x自然样本示例
    y分类标签
    xadv对抗样本示例
    ω全局防御模型
    ωk终端k的本地防御模型
    Latt(x,xadv,y|ω)模型在att攻击下的损失函数
    |Dk|attack=att遭受att攻击的终端k所拥有的数据量
    ωatt,tg迭代轮次t中攻击att对应的全局防御模型
    ωatt,tk迭代轮次t中受到att攻击的终端k对应的本地防御模型
    δ对抗攻击扰动
    下载: 导出CSV 
    | 显示表格

    为了获得最优参数ωt+1k,使用基于梯度下降的方法并通过式(4)迭代地求解优化问题

    ωt+1k=ωtkηωL(ωtk)=ωtk+ηCi=1pk(y=i)ωEx|y=i[αlnFi(x,ωtk)+(1α)lnFi(xadv,ωtk)] (4)

    图2详细描述了SelectiveFL的框架及其工作流程。此框架由两部分组成,FL终端和聚合服务器。FL终端负责模型训练,但由于终端未经过严格的身份认证且FL环境存在各种对抗性攻击,这导致现有联邦防御部署无法实现有效的防御。聚合服务器包括攻击管理模块和防御模型生成模块。攻击管理模块负责管理攻击方案及其防御模型,并根据终端攻击方案进行模型分配。防御模型生成模块负责新防御模型的生成和同步,通过其内部聚合器进行周期性的数据收集,选择性聚合并更新旧模型生成新模型,最终将新模型同步到攻击管理模块中。

    图 2  SelectiveFL的框架和工作流程

    每轮训练中各终端需要经历3个步骤。首先,基于攻击管理模块分配防御模型,在本地生成对抗性样本形成再训练集。其次,本地对抗训练周期性上传本地模型更新到聚合器。最后,聚合器选择性聚合得到全局模型更新,并实现新模型的生成和同步。

    由于终端多样性和数据异构性,新模型具有更强的鲁棒性,可实现更有力的防御,当新终端加入时应为其分配最新防御模型。并且因为聚合服务器和FL终端之间仅有权重信息交互,并没有相关数据传递,可以保证终端间的数据隐私。除此之外,一些隐私保护方法,例如同态加密[20]和差分隐私[21]等,也可以用来保护敏感数据的隐私。

    机器学习中,损失函数用来度量模型的预测值与真实值的差异程度,损失函数越小,模型的鲁棒性越好。在考虑对抗性攻击的时候,损失函数的定义不同于传统的定义,而是由自然损失函数和对抗损失函数两部分组成,可以表示为

    L(xi,xiadv,yi|ωi)=αLnat(xi,yi|ωi)+(1α)Ladv(xiadv,yi|ωi) (5)

    其中α是超参数,用于根据自然损失函数Lnat(xi,yi|ωi)和对抗损失函数Ladv(xiadv,yi|ωi)来调整损失值的比值,α值越高,表明自然损失函数对总体损失函数的贡献权重越高。

    在FL环境中存在多种不同类型的对抗攻击,这些对抗攻击由于添加扰动方式的不同,并且同一种攻击还具有多种范数下的攻击(例如:C&W攻击有L0, L2L等3种范数)。为了涵盖N个终端所有可能遭受的攻击,本文根据攻击类型的不同重新定义了如式(6)所示的模型损失函数

    Latt(x,xadv,y|ω)=Nk=1|Dk|attack=attNj=1|Dj|attack=attL(xk,xkadv,yk|ωk) (6)

    因此,本文的联邦防御优化目标就是找出使得Latt(x,xadv,y|ω)最小的ωatt,可用公式表示为

    ωatt=argminωExD[max (7)

    其中D表示训练集,{\left\| {{{\boldsymbol{x}}_{{\rm{adv}}}} - {\boldsymbol{x}}} \right\|_\infty } < \varepsilon规定了自然样本示例和对抗样本示例之间允许的差异,{\boldsymbol{\omega}} _{{\rm{att}}}^*表示在本文的联邦防御下针对att攻击的联邦防御模型。从式(7)可以看出,本文提出的联邦防御方法试图寻找多个针对特定攻击的统一防御模型,它可以实现对多个对抗攻击的精准防御。

    本节将分别介绍SelectiveFL防御策略在聚合服务器和FL终端的算法。算法1详细描述了SelectiveFL防御方法在聚合服务器的执行部分。假设训练开始前攻击管理模块为空。步骤1中,根据攻击方案对模型进行初始化,所有攻击的初始化模型都是使用训练数据集预训练后的模型。步骤2~步骤10中,服务器需要与所有终端进行T轮交互,以形成多个针对攻击的联合防御模型。步骤3中,根据一定的比率从所有终端中选择一部分进行联合防御。在步骤5接收到终端发送的攻击方案后,步骤6服务器为其分配相应的防御模型。在步骤7接收所有终端的本地模型更新后,步骤9根据攻击特性进行选择性聚合,实现防御模型的更新,如式(8)所示。注意,步骤5和步骤7是一个阻塞事件,需要等待事件完成后才能继续执行。

    算法1 聚合服务器部署的算法伪码
     输入:数据集{{\boldsymbol{D}}_i},终端数量N,全局迭代数量T
     (1) 初始化各攻击的全局防御模型{\boldsymbol{\omega}} _{\rm{g}}^{{\rm{att}},0};
     (2) for t=0,1,···,T–1 do
     (3)  随机抽取一组终端集合{ {{S} }_t};
     (4)  for i \in {{\boldsymbol{S}}_t} in parallel do
     (5)    事件:接收终端的攻击方案att;
     (6)    发送att攻击的全局防御模型{\boldsymbol{\omega}} _{\rm{g}}^{{\rm{att}},t}给终端;
     (7)    事件:接收终端的本地模型更新\Delta {\boldsymbol{\omega}} _i^{{\rm{att}},t + 1};
     (8)  end
     (9)  {\boldsymbol{\omega} } _{\rm{g} }^{ {\rm{att} },t + 1} = {\boldsymbol{\omega} } _{\rm{g} }^{ {\rm{att} },t}
       +\displaystyle\sum\limits_{j \in {S_t} } {\frac{ { { {\left| { { {\boldsymbol{D} }_j} } \right|}_{ {\rm{attack = {\rm{att} } } }} } } }{ {\displaystyle\sum\limits_{i \in {S_t} } { { {\left| { { {\boldsymbol{D} }_i} } \right|}_{ {\rm{attack} } = {\rm{att} } } } } } }\Delta {\boldsymbol{\omega} } _j^{ {\rm{att} },t + 1} }
     (10) end
    下载: 导出CSV 
    | 显示表格
    {\boldsymbol{\omega}} _{\rm{g}}^{{\rm{att}},t + 1} = {\boldsymbol{\omega}} _{\rm{g}}^{{\rm{att}},t} + \sum\limits_{j \in {S_t}} {\frac{{{{\left| {{{\boldsymbol{D}}_j}} \right|}_{{\rm{attack}} = {\rm{att}}}}}}{{\displaystyle\sum\limits_{i \in {S_t}} {{{\left| {{{\boldsymbol{D}}_i}} \right|}_{{\rm{attack}} = {\rm{att}}}}} }}\Delta {\boldsymbol{\omega}} _j^{{\rm{att}},t + 1}} (8)

    其中{{{S}}_t}是迭代轮次t中参与者的集合, \Delta {\boldsymbol{\omega}} _j^{{\rm{att}},t + 1} 是迭代轮次t+1中受到att攻击的终端j对应的本地模型更新。 \Delta {\boldsymbol{\omega}} _j^{{\rm{att}},t + 1} 定义为

    \Delta {\boldsymbol{\omega}} _j^{{\rm{att}},t + 1} = {\boldsymbol{\omega}} _j^{{\rm{att}},t + 1} - {\boldsymbol{\omega}} _{{j}}^{{\rm{att}},t} (9)

    算法2详细描述了SelectiveFL防御方法在FL终端的执行部分。假设索引为i的FL终端已加入联邦防御。步骤1中,终端上传自身攻击方案到聚合服务器。步骤2中,终端接收聚合服务器发送的全局防御模型。注意,步骤2是一个阻塞事件,需要等待接收到对应全局防御模型后才能继续执行。步骤3将全局防御模型转换为本地防御模型。步骤4中,终端基于本地防御模型和攻击方案通过对抗工具箱将本地数据生成为对抗样本。步骤5~步骤14中,终端进行E轮的本地训练,以获得更高防御能力的本地防御模型。在步骤7和步骤8中分别得到自然样本和对抗样本通过本地防御模型后的预测标签,在步骤9和步骤10中分别计算自然样本和对抗样本的交叉熵后,步骤11将自然损失和对抗损失通过式(5)中定义的损失函数计算总损失,步骤12通过梯度下降进行权重更新,如式(10)所示。在步骤15计算本地模型更新后,步骤17将本地模型更新上传到服务器。

    算法2 FL终端部署的算法伪码
     输入数据集{{\boldsymbol{D}}_i},终端模型F,本地mini-batch大小B,本地迭
     代数量E,学习率 \eta ,超参数 \alpha
     (1) 上传攻击方案att到聚合服务器;
     (2) 事件:接收att攻击的全局防御模型{\boldsymbol{\omega}} _{\rm{g}}^{{\rm{att}},t};
     (3) 转换为本地防御模型:{\boldsymbol{\omega}} _i^{{\rm{att}},t} \leftarrow {\boldsymbol{\omega}} _{\rm{g}}^{{\rm{att}},t};
     (4) {{\boldsymbol{x}}_{i,{\rm{adv}}} } = {\rm{AdvGen}}({x_i},{\rm{att}},F,{\boldsymbol{\omega}} _i^{{\rm{att}},t}) //对抗工具箱
     (5) for e=0,1,···,E–1 do
     (6)   for b=0,1,…,\left\lceil {\dfrac{ {\left| { {{\boldsymbol{D}}_i} } \right|} }{B} } \right\rceil - 1 do
     (7)     {\boldsymbol{y} }_i^* = {\boldsymbol{F} }({ {\boldsymbol{x} }_i},{\boldsymbol{\omega} } _i^{ {{{\rm{att}},t} } })
     (8)     {\boldsymbol{y}}_{i,{\rm{adv}}}^* = {\boldsymbol{F}}({{\boldsymbol{x}}_{i,{\rm{adv}}} },{\boldsymbol{\omega}} _i^{{\rm{att}},t})
     (9)     {{\rm{nat}}_ - }{\rm{loss}} = {\rm{CrossEntropy}}({\boldsymbol{y}}_i^*,{{\boldsymbol{y}}_i})
     (10)     {{\rm{adv}}_ - }{\rm{loss}} = {\rm{CrossEntropy}}({\boldsymbol{y}}_{i,{\rm{adv}}}^*,{{\boldsymbol{y}}_i})
     (11)     L = \alpha \cdot {{\rm{nat}}_ - }{\rm{loss}} + (1 - \alpha ) \cdot {{\rm{adv}}_ - }{\rm{loss}}
     (12)     {\boldsymbol{\omega} } _i^{ {\rm{att} },t + 1} = {\boldsymbol{\omega} } _i^{ {\rm{att} },t} - \eta \cdot \nabla L({\boldsymbol{\omega} } _i^{ {{{\rm{att}},t} } },{ {\boldsymbol{x} }_i},{ {\boldsymbol{x} }_{i,{\rm{adv} } } },{ {\boldsymbol{y} }_i})
     (13)  end
     (14) end
     (15) 计算本地模型更新;
     (16) \Delta {\boldsymbol{\omega}} _i^{{\rm{att}},t + 1} = {\boldsymbol{\omega}} _i^{{\rm{att}},t + 1} - {\boldsymbol{\omega}} _i^{{\rm{att}},t}
     (17) 上传本地模型更新到聚合服务器;
    下载: 导出CSV 
    | 显示表格
    {\boldsymbol{\omega}} _i^{{\rm{att}},t + 1} = {\boldsymbol{\omega}} _i^{{\rm{att}},t} - \eta \cdot \nabla L({\boldsymbol{\omega}} _i^{{\rm{att}},t},{{\boldsymbol{x}}_i},{{\boldsymbol{x}}_{i,{\rm{adv}}}},{{\boldsymbol{y}}_i}) (10)

    其中{\boldsymbol{\omega}} _i^{{\rm{att}},t + 1}通过Adam优化器来降低随机梯度\nabla L ({\boldsymbol{\omega}} _i^{{\rm{att}},t}, {{\boldsymbol{x}}_i},{{\boldsymbol{x}}_{i,{\rm{adv}}}},{{\boldsymbol{y}}_i})实现模型更新。注意,Adam优化器绝不是定义对抗性攻击的黄金优化器,其他类型的优化器也可以集成到本文算法中。

    本节通过定理1和定理2对所提方法SelectiveFL进行可行性分析。

    定理1 对抗训练作为一种正则化方法使模型更加鲁棒和稳健。

    证明 由式(5)知,对抗训练损失函数表示为L({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) = \alpha \cdot L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) + (1 - \alpha ) \cdot L({{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ),其中, {{\boldsymbol{x}}_{{\rm{adv}}}} = {\boldsymbol{x}} + \delta ,如果扰动较小,可以使用一阶泰勒展开来近似,则损失函数变为

    \begin{split} L({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) \approx & \alpha \cdot L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) + (1 - \alpha ) \cdot L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) \\ & + (1 - \alpha ) \cdot \delta \cdot {\partial _x}L(x,y|\omega ) \\ =& L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) + (1 - \alpha ) \cdot \delta \cdot {\partial _x}L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) \end{split} (11)

    其中第2项为扰动给损失函数带来的影响,即

    \begin{split} \delta \cdot {\partial _{\boldsymbol{x}}}L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) =& \mathop {{\rm{max}}}\limits_{{{\left\| \delta \right\|}_\infty } < \varepsilon } \left| {L({\boldsymbol{x}} + \delta ,{\boldsymbol{y}}|{\boldsymbol{\omega}} ) - L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} )} \right| \\ \approx& \mathop {{\rm{max}}}\limits_{{{\left\| \delta \right\|}_\infty } < \varepsilon } \left| {{\partial _{\boldsymbol{x}}}L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) \cdot \delta } \right| \\ =& \varepsilon {\left\| {{\partial _{\boldsymbol{x}}}L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} )} \right\|_1} \\[-10pt] \end{split} (12)

    其中 {\left\| \cdot \right\|_1} {\left\| \cdot \right\|_\infty } 的对偶范数,定义为

    {\left\| {\boldsymbol{x}} \right\|_1} = {\sup _{{{\left\| {\boldsymbol{z}} \right\|}_\infty } \le 1}}{{\boldsymbol{x}}^{\rm{T}}}{\boldsymbol{z}} (13)

    将式(12)中的结果代入式(11)得到

    L({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) \approx L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) + (1 - \alpha ) \cdot \varepsilon \cdot {\left\| {{\partial _{\boldsymbol{x}}}L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} )} \right\|_1} (14)

    即加入一个特殊的针对梯度的正则化。证毕

    定理2 通过对抗攻击A得到的防御模型针对A攻击的防御力最强。

    证明 由式(7)可知{\boldsymbol{\omega}} _{\rm{A}}^* = \mathop {\arg \min }\limits_{\boldsymbol{\omega}} \mathop {\rm{E}}\limits_{{\boldsymbol{x}} \subseteq {\boldsymbol{D}}} \left[ {\mathop {\max }\limits_{{{\left\| {{{\boldsymbol{x}}_{{\rm{adv}}}} - {\boldsymbol{x}}} \right\|}_\infty } < \varepsilon } {L_{\rm{A}}}({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} )} \right] ,如果将这个最优模型用于防御A攻击,由式(6)可知{L_{{\text{att}}}}({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) \propto L({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ),可以得到防御A攻击的损失函数

    \begin{split} {L_{\rm{A}}}({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) \propto & L({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) \\ = & \alpha \cdot L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) + (1 - \alpha ) \\ & \cdot L({\boldsymbol{x}} + {\delta _{\rm{A}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) \end{split} (15)

    同理我们可以得到防御非A攻击的损失函数

    \begin{split} {L_{\bar {\rm{A}}}}({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) \propto & L({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) \\ = &\alpha \cdot L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) + (1 - \alpha ) \\ & \cdot L({\boldsymbol{x}} + {\delta _{\bar {\rm{A}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) \end{split} (16)

    由于模型 {\boldsymbol{\omega}} _{\rm{A}}^* 是通过最大最小化 {L_{\rm{A}}}({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) 得到的,由此可以得出

    \begin{split} {\boldsymbol{\omega}} _{\rm{A}}^* = &\mathop {\arg \min }\limits_{\boldsymbol{\omega}} \mathop E\limits_{{\boldsymbol{x}} \subseteq {\boldsymbol{D}}} \left[ {\mathop {\max }\limits_{{{\left\| {{{\boldsymbol{x}}_{{\rm{adv}}}} - {\boldsymbol{x}}} \right\|}_\infty } < \varepsilon } {L_{\rm{A}}}({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} )} \right] \\ \propto& \mathop {\arg \min }\limits_\omega \mathop {\rm{E}}\limits_{{\boldsymbol{x}} \subseteq {\boldsymbol{D}}} \left[ \mathop {\max }\limits_{{\delta _{\rm{A}}} < \varepsilon } \left( \alpha \cdot L({\boldsymbol{x}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) + (1 - \alpha )\right.\right.\\ & \cdot \left.L({\boldsymbol{x}} + {\delta _{\rm{A}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} ) \right) ]\\[-21pt] \end{split} (17)

    从上式知,{\boldsymbol{\omega}} _{\rm{A}}^*使得L({\boldsymbol{x}} + {\delta _{\rm{A}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} )最小,即

    L({\boldsymbol{x}} + {\delta _{\rm{A}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) \le L({\boldsymbol{x}} + {\delta _{\bar {\rm{A}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) (18)

    综上所述,可以得到

    {L_{\rm{A}}}({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) \le {L_{\overline {\rm{A}} }}({\boldsymbol{x}},{{\boldsymbol{x}}_{{\rm{adv}}}},{\boldsymbol{y}}|{\boldsymbol{\omega}} _{\rm{A}}^*) (19)

    这意味着通过对抗攻击A得到的防御模型针对A攻击的拟合效果更好。因此,模型对于A攻击的防御力是最强的。 证毕

    通过定理1和定理2说明,SelectiveFL在终端进行对抗训练得到本地最优防御模型,并在服务器端对上传的本地模型更新根据攻击特性进行选择性聚合可得到对各个攻击的全局最优防御模型。

    数据集:本文在3个常用数据集MNIST, F-MNIST和SVHN上评估了所提方法的性能。MNIST和F-MNIST分别是灰度手写数字和衣服的集合,它们都由60000个训练样本和10000测试样本组成,每个样本为28×28的灰度图像。SVHN数据集摘自Google街景图像中的门牌号,由73257个训练样本和26032个测试样本组成,每个样本为32×32的彩色图像。

    攻击方案:本文采用了6种基准对抗攻击,包括:FGSM[7], BIM[8], PGD[9], MIM[10], DeepFool[11], C&W[12]。其中FGSM, BIM, PGD, MIM的实现由Advertorch提供,DeepFool和C&W的实现由Foolbox提供。为了实验公平,除FGSM外的所有攻击的迭代次数设为10。针对MNIST和F-MNIST数据集,步长设为0.01, \varepsilon 设为0.3。针对SVHN数据集,步长设为0.007, \varepsilon 设为0.031。请注意,本文主要关注 {L_\infty } 距离。

    对比算法:为了评估我们防御算法的性能,本文使用文献[19]的FDA3算法作为本实验的基准(base)算法,为了实验公平,本文方法与基准方法采用相同的训练参数。

    架构:本文分别使用LeNet模型对MNIST 和F-MNIST数据集,ResNet-18模型对SVHN数据集进行实验。使用来自MNIST和F-MNIST数据集的训练示例分别预训练初始LeNet模型,使用来自SVHN数据集的训练示例预训练初始ResNet-18模型。请注意,本文将以上3个数据的测试集分为两半,其中一半测试集用于重新训练,另一半测试集用于测试。预训练阶段将超参数 \alpha 设为1,这表明只使用自然样本进行预训练;再训练阶段将超参数 \alpha 设为0,这表明只使用对抗样本进行再训练。

    本文首先评估在数据集符合IID分布情况下,SelectiveFL对白盒攻击的防御能力。特别的,在白盒攻击中,对手对分类器足够了解。这里主要评估6种具有代表性的对抗性攻击的防御能力,包括FGSM, BIM, PGD, MIM, DeepFool, C&W,考虑在FL环境下10个终端进行联合防御。图3给出在单一攻击下的自然和鲁棒准确性的结果。

    图 3  单一攻击下的自然和鲁棒准确性

    图3中,可以发现各数据集在干净图像都达到较高的精度,而在各攻击下的鲁棒准确性都有一定程度的下降,并且在各数据集上都很快实现了收敛。例如:在SVHN数据集的干净图像上精度达到94.22%,而在PGD攻击下的鲁棒精度只达到了71.54%。对于这种下降,我们分析主要由攻击本身特性和数据集复杂程度两个原因造成:从攻击本身特性分析,相较于单一迭代的FGSM,多次迭代的BIM, MIM, PGD以及DeepFool对FL的影响更大,而基于优化的C&W攻击添加的扰动人眼几乎无法察觉,但是攻击时间长,通过调整攻击参数可以人为控制攻击力度;从数据集复杂程度分析,MNIST数据集最简单,而SVHN数据集最复杂,由于复杂数据集所拥有的数据特征更复杂且数据量更大,通过对数据集添加微小扰动的对抗性攻击会使得复杂数据集更难以学习,从而出现更加明显的下降。该实验表明在典型的FL环境下进行联邦学习,终端容易受到对抗攻击的干扰,通过SelectiveFL能够实现不同数据集下对单一对抗攻击的防御。

    本文全面评估了SelectiveFL在多种攻击下的FL终端的鲁棒准确性。实验模拟了10个终端进行联合防御,终端受到来自FGSM, BIM, PGD, MIM等4种攻击的随机性攻击,即在各个轮次中,终端所受到的攻击都是随机的。图4显示了本文算法与基线算法在多攻击下的预测精度。

    图 4  多攻击下的鲁棒准确性

    图4所示,本文算法在MNIST, F-MNIST和SVHN数据集的预测精度分别达到91.39%, 66.62%和70.33%,而Base算法只达到88.47%, 56.60%和65.28%。这是因为在多攻击下将众多模型聚合在一起会降低模型对单一攻击的敏感性,而我们的算法通过攻击方式进行选择性聚合,保证了每个模型对攻击的敏感性。换句话说,我们的算法相较于Base算法能够达到更高的鲁棒准确性,实现更优的联合防御。

    为评估SelectiveFL在Non-IID下的性能,利用参数 \alpha =0.5的狄利克雷分布生成各终端的数据分布,在10个终端下进行联合防御,终端受到来自FGSM, BIM, PGD, MIM等4种攻击的随机性攻击,并与IID分布进行性能比较。图5显示本文算法与Base算法在IID和Non-IID下的预测精度对比。

    图 5  IID和Non-IID下的鲁棒准确性

    图5中,可以看到IID和Non-IID分布下的准确性存在一定的差异,在MNIST和F-MNIST数据集上,差异不太明显,可能是测试数据集相对较小的原因;而在SVHN数据集上,Non-IID分布下的准确性明显低于IID分布下的准确性,这说明数据分布不均的Non-IID分布同样会对防御性能产生一定的影响。其次,本文算法在Non-IID分布下的MNIST, F-MNIST和SVHN数据集上的准确性分别达到90.17%, 67.23%和66.12%,而Base算法只达到88.72%, 56.37%和62.02%,但是都在较少轮次内实现收敛,具有较优的收敛性能。可以看到,无论数据集是符合IID分布还是符合Non-IID分布的情况下,SelectiveFL算法都优于Base算法。

    之前的实验只考虑了4种攻击的情况,但是FL环境复杂且面临的潜在攻击种类较多,为了评估SelectiveFL在更为复杂的FL环境中的表现,本文继续评估了SelectiveFL对攻击的可伸缩性,表2展示了不同攻击类型下的鲁棒准确性。该实验使用10个终端进行联合防御,攻击从{FGSM, BIM, PGD, MIM, DeepFool, C&W}中依次抽取攻击类型数量A \in {2,3,4,5,6}进行实验,即当A=2时,终端受到来自FGSM和BIM两种攻击类型的混合攻击,随着A的增大,依次加入攻击类型。表中数据为收敛后的最后10个轮次的平均值。从表2中,可以发现,随着攻击类型数量的增加,准确性发生了一些不规则变化,这是由于不同攻击类型对不同复杂度的数据集影响不同。但是无论攻击类型数量如何变化,SelectiveFL所达到的准确性都是高于Base算法的,即使在复杂的FL环境下依然能达到一个较优的防御能力。

    表 2  不同攻击类型数量的鲁棒准确性(%)
    数据集算法攻击类型数量
    23456
    MNISTBase86.5090.7788.4788.2488.32
    本文SelectiveFL90.8990.9291.3989.9589.77
    F-MNISTBase60.7153.6456.6053.3354.26
    本文SelectiveFL67.8167.8766.6260.4261.27
    SVHNBase63.8163.9465.2869.3573.39
    本文SelectiveFL70.4070.9370.3373.3177.15
    下载: 导出CSV 
    | 显示表格

    前面的实验只考虑了10个终端联合防御的情况,而传统FL环境下可能同时存在规模更大的终端参与FL协同学习。为了验证SelectivFL在更大节点规模下的表现,本文继续评估了SelectiveFL对终端的可伸缩性,表3展示了不同终端数目下的鲁棒准确性。该实验考虑4种攻击类型{FGSM, BIM, PGD, MIM},终端数目C \in {10,20,30,40,50}。从表3可以发现,当更多的终端参与联邦防御时,准确性仍然有一定程度的提升。当终端从10增加到50,本文算法在MNIST, F-MNIST和SVHN的准确性分别提高了0.91%, 1.25%和0.55%。除此之外,在3个数据集上,终端数从10到50,本文算法准确性都是优于Base算法的。由此可以看出,SelectivFL在大规模FL环境下也能实现更优的防御性能。

    表 3  不同终端数目的鲁棒准确性(%)
    数据集算法终端数目
    1020304050
    MNISTBase88.4789.2389.3789.5389.53
    本文SelectiveFL91.3991.9592.1292.3192.30
    F-MNISTBase56.6055.5657.0057.2656.95
    本文SelectiveFL66.6266.1167.6467.8167.87
    SVHNBase65.2865.6865.1165.4665.66
    本文SelectiveFL70.3370.7370.8070.8970.88
    下载: 导出CSV 
    | 显示表格

    本文提出了一种面对由FL环境中终端发起对抗性攻击的防御策略。该策略通过在多个参与协同学习的终端上进行对抗性训练以提取攻击特性,而在服务器端根据攻击特性进行选择性聚合,提升了模型对攻击的敏感性,进而使得FL模型能够有效抵抗不同来源的多种对抗攻击。本文在3个著名的基准数据集上进行了大量实验,验证了该方法的有效性和可扩展性,显著提升了模型在遭受对抗攻击情况下的模型精确度。本文为在FL环境下改进模型的安全性提供了借鉴。

  • Gordon N J, Salmond D J and Smith A F M. Novel approach to nonlinear/non-Gaussian Bayesian state estimation [J]. IEE Proceedings.-F, 1993, 140(2): 107-113.[2]Julier S J and Uhlmann J K. Unscented filtering and nonlinear estimation [J].Proce. IEEE.2004, 92(3):401-422[3]Heine K. A survey of sequential Monte Carlo methods. Licentiate Thesis. Tampare University of Technology, 2005: 1-3, 53-55, 73-83.[4]Ristic B, Arulampalam S, and Gordon N. Beyond the Kalman Filter-Particle Filters for Tracking Applications [M]. Boston: Artech House, 2004: 32-45, 52-55.[5]Arulampalam M S, Maskell S, Gordon N, and Clapp T. A tutorial on particle filters for online nonlinear/non-Gaussian Bayessian tracking [J].IEEE Trans. on Signal Processing.2002, 50(2):174-188[6]Crisan D and Doucet A. A survey of convergence results on particle filtering methods for practitioners [J].IEEE Trans. on Signal Processing.2002, 50(3):736-746[7]Van der Merwe R, Doucet A, Nando de Freitas, and Eric Wan. The Unscented Particle Filter [R]. Technical Report CUED/F- INFENG/TR 380, Cambridge University Engineering Department, 2000: 7-10.[8]Nordlund P J and Gustafsson F. Sequential Monte Carlo filtering techniques applied to integrated navigation system [J]. Proceedings of the American Control Conference, Arlington, June, 2001: 4375-4380.[9]Nordlund P J. Recursive state estimation of nonlinear systems with applications to integrated navigation [R]. Technical Report LITH-ISY-R-2321, Department of Electronic Engineering. Linkoping University, SE-58183 Linkoping, Sweden, 2000: 42-52.[10]Ristic B and Arulampalam M S. Tracking a manoeuvring target using angle-only measurements: algorithms and performance [J].Signal Processing.2003, 83:1223-1238[11]Blackman S and Popoli R. Design and analysis of modern tracking systems [M]. Boston: Artech House, 1999: 178-181.
  • 加载中
计量
  • 文章访问数:  3024
  • HTML全文浏览量:  85
  • PDF下载量:  968
  • 被引次数: 0
出版历程
  • 收稿日期:  2006-05-29
  • 修回日期:  2006-10-16
  • 刊出日期:  2007-09-19

目录

/

返回文章
返回