【论文翻译】AFLGuard: Byzantine-robust Asynchronous Federated Learning

提示:该论文标题为AFLGuard: Byzantine-robust Asynchronous Federated Learning,我将对其进行部分翻译,便于后续阅读。

文章目录

  • AFLGuard:拜占庭鲁棒的异步联邦学习
  • 一、摘要
  • 二、引言
  • 三、知识前提
    • 拜占庭鲁棒联邦学习
  • 四、问题表述
  • 五、AFLGUARD
  • 六、实验设置
    • 6.1.1 比较方法
    • 6.1.2 数据集
    • 6.1.3 中毒攻击
  • 总结


AFLGuard:拜占庭鲁棒的异步联邦学习

ACM International Conference Proceeding Series, Pages 632-646, December 5, 2022


一、摘要

联邦学习(FL)是一种新兴的机器学习范式,在这种范式中,客户端在云服务器的帮助下共同学习模型。联邦学习的一个基本挑战是客户端通常是异构的,例如,它们具有不同的计算能力,因此客户端可能以不同的延迟向服务器发送模型更新。异步联邦学习旨在通过使服务器在接收到任何客户端的模型更新后立即更新模型,而无需等待其他客户端的模型更新来解决这个挑战。然而,与同步联邦学习一样,异步联邦学习也容易受到污染攻击,恶意客户端通过污染本地数据和/或发送给服务器的模型更新来操纵模型。拜占庭鲁棒的联邦学习旨在抵御污染攻击。特别是,即使某些客户端是恶意的并具有拜占庭行为,拜占庭鲁棒的联邦学习也能学习出准确的模型。然而,目前大多数关于拜占庭鲁棒联邦学习的研究集中在同步联邦学习上,导致异步联邦学习仍然未被充分探索。在本工作中,我们通过提出AFLGuard——一种拜占庭鲁棒的异步联邦学习方法,填补了这一空白。我们理论和实证上证明,AFLGuard对各种现有和自适应的污染攻击(包括非定向和定向攻击)具有鲁棒性。此外,AFLGuard在性能上优于现有的拜占庭鲁棒异步联邦学习方法。

二、引言

在本研究中,我们提出了AFLGuard,一种拜占庭鲁棒的异步联邦学习框架,旨在解决上述挑战。在AFLGuard中,我们处理异步复杂性的关键思想是为服务器配备一个小而干净的训练数据集,我们称之为受信数据集。服务器(例如,Meta、Google)可以手动收集该受信数据集以用于学习任务。当服务器接收到来自客户端的模型更新时,它基于受信数据集和当前全局模型计算一个模型更新(称为服务器模型更新)。只有当客户端的模型更新在方向和幅度上与服务器模型更新没有太大偏差时,服务器才会接受该更新。具体来说,如果客户端和服务器模型更新之间的差异向量的幅度小于服务器模型更新幅度的一定比例,则服务器会使用客户端的模型更新来更新全局模型。更新后的全局模型随后发送给客户端。

有趣的是,我们展示了AFLGuard这一简单直观的想法具有强大的理论保证。具体来说,在拜占庭鲁棒联邦学习社区广泛采用的温和假设下,

注:在拜占庭鲁棒的联邦学习方法中,服务器无法确定每个客户端的可信度或意图。因为服务器对客户端的行为和数据没有先验的信任基础,所以在服务器看来,每个客户端都可能是恶意的。

我们证明了在没有恶意客户端的情况下最优全局模型参数与AFLGuard在任意数量恶意客户端下学习的全局模型参数之间的差异是有界的。我们还进行了实证评估,将AFLGuard与最先进的拜占庭鲁棒异步联邦学习方法在一个合成数据集和五个真实数据集上进行了比较。实验结果表明,当大部分客户端是恶意的时,AFLGuard能够抵御各种现有和自适应的污染攻击。此外,AFLGuard在性能上显著优于现有的拜占庭鲁棒异步联邦学习方法。

我们总结了以下主要贡献:

  • 我们提出了一种名为AFLGuard的拜占庭鲁棒异步联邦学习框架,以抵御异步联邦学习中的污染攻击。
  • 我们理论上证明,在拜占庭鲁棒联邦学习社区普遍采用的温和假设下,AFLGuard对任意数量的恶意客户端具有鲁棒性。
  • 我们进行了广泛的实验,以评估AFLGuard,并将其与最先进的拜占庭鲁棒异步联邦学习方法在一个合成数据集和五个真实数据集上进行了比较。

三、知识前提

拜占庭鲁棒联邦学习

对联邦学习的污染攻击:污染攻击在传统机器学习系统中已被广泛研究,例如推荐系统 [19, 21, 31]、众包系统 [20, 34] 和异常检测器 [39]。由于其分布式特性,联邦学习也容易受到污染攻击 [5, 6, 10, 18],在这些攻击中,恶意客户端通过精心操纵其本地训练数据和/或模型更新来污染全局模型。这些恶意客户端可以是攻击者注入到联邦学习系统中的虚假客户端,也可以是真实的、被攻击者攻陷的客户端。根据攻击目标,污染攻击可以分为非定向攻击和定向攻击。在非定向攻击中,污染的全局模型对无差别的测试样本具有较大的错误率,导致拒绝服务。在定向攻击中,污染的全局模型对攻击者选择的测试输入预测攻击者选择的标签,但对其他测试输入的预测不受影响。

例如,标签翻转攻击 [56]、高斯攻击 [7] 和梯度偏差攻击 [18] 是非定向攻击的例子。具体而言,在标签翻转攻击中,恶意客户端将一个本地训练示例的标签从y 翻转为C−1−𝑦,其中C 是标签的总数,标签为 0、1、···、C−1。在高斯攻击中,恶意客户端从均值为零且标准差较大的高斯分布中绘制其模型更新,而不是根据其本地训练数据进行计算。在梯度偏差攻击中,恶意客户端的模型更新被操纵,使得全局模型更新遵循梯度方向的反向(即全局模型应在没有攻击的情况下移动的方向)。

后门攻击 [5, 51] 是一种流行的定向攻击。例如,在 [5] 中的后门攻击中,每个恶意客户端复制其本地训练示例;在每个复制的训练输入中嵌入一个触发器(例如,图像右下角的一个补丁);并将其标签更改为攻击者选择的标签。恶意客户端根据其原始本地训练数据和复制的数据计算其模型更新。此外,恶意客户端在将模型更新发送给服务器之前,将其按比例放大。被污染的全局模型将对任何嵌入相同触发器的输入预测攻击者选择的标签,但对没有触发器的输入的预测不受影响。

拜占庭鲁棒同步联邦学习:拜占庭鲁棒联邦学习旨在防御污染攻击。大多数现有的拜占庭鲁棒联邦学习方法集中于同步联邦学习 [7, 9, 56]。回顾一下,同步联邦学习方法在每次迭代中有三个步骤。这些拜占庭鲁棒同步联邦学习方法在第三步采用鲁棒聚合规则。粗略来说,鲁棒聚合规则的关键思想是在聚合之前过滤掉“异常值”模型更新。例如,Krum聚合规则 [7] 输出与其 (n - f - 2) 个邻居的距离总和最小的模型更新,其中 (n) 和 (f) 分别是总客户端和恶意客户端的数量。由于这些方法旨在聚合来自多个客户端的模型更新,因此不适用于异步联邦学习,后者使用一个模型更新来更新全局模型。同步联邦学习的其他防御方法包括可证明安全的防御措施以防止污染攻击 [11] 和检测恶意客户端的方法 [57]。

拜占庭鲁棒异步联邦学习:据我们所知,与我们工作最相关的研究有 [17, 53, 55]。具体而言,Kardam [17] 根据每个客户端发送给服务器的最新模型更新维护一个Lipschitz系数。只有当某个客户端的Lipschitz系数小于所有客户端的中位数Lipschitz系数时,服务器才使用该客户端的模型更新来更新全局模型。BASGD [55] 是一种非常规的异步联邦学习方法,使用多个客户端的模型更新来更新全局模型。具体来说,服务器保持几个缓冲区,并将每个客户端的模型更新映射到其中一个缓冲区。当所有缓冲区都非空时,服务器计算每个缓冲区中模型更新的平均值,取平均模型更新的中位数或修剪平均值,并用它来更新全局模型。在Zeno++ [53]中,服务器根据可信数据集过滤客户端的模型更新。服务器基于可信数据集计算一个服务器模型更新。在收到来自任何客户端的模型更新后,服务器计算客户端模型更新与服务器模型更新之间的余弦相似度。如果余弦相似度为正,则服务器对客户端模型更新进行归一化。需要注意的是,FLTrust [9] 是一种同步联邦学习方法,使用与Zeno++类似的技术来过滤掉恶意信息。

AFLGuard与Zeno++之间的区别:我们的AFLGuard与Zeno++都在服务器上使用可信数据集。然而,它们使用的方式不同。Zeno++简单地将客户端的模型更新视为良性,如果它与服务器模型更新呈正相关。由于客户端和服务器两侧的延迟以及可信数据集与客户端训练数据之间的分布偏移,服务器的模型更新和良性客户端的模型更新可能并不呈正相关。在AFLGuard中,如果客户端的模型更新在方向和幅度上与服务器的模型更新没有显著偏差,则该模型更新被视为良性

四、问题表述

威胁模型:攻击者控制一些恶意客户端,这些客户端可能是真实客户端被攻击者攻陷,或是攻击者注入的假客户端。攻击者并未攻陷服务器。恶意客户端可以向服务器发送任意模型更新。攻击者对联邦学习系统的了解程度可能不同 [9, 18],即部分知识和完全知识。在部分知识的情况下,攻击者知道恶意客户端的本地训练数据和模型更新。在完全知识的场景中,攻击者对整个联邦学习系统有完全的了解。具体而言,攻击者知道所有客户端的本地训练数据和模型更新,以及联邦学习方法和其参数设置。需要注意的是,完全知识情况下的攻击者要比部分知识情况下的攻击者强得多 [18]。遵循 [9] 的方法,我们使用完全知识攻击设置来评估我们防御的安全性,以应对最坏情况。换句话说,我们的防御在面对较弱攻击时更加安全。

防御目标:我们的目标是设计一种异步联邦学习方法,达到以下两个目标:i) 在非对抗设置中,该方法的准确性应与AsyncSGD相当。换句话说,当所有客户端都是良性时,我们的方法应学习到与AsyncSGD同样准确的全局模型;ii) 该方法应能够在对抗环境下对现有和自适应污染攻击具有鲁棒性。自适应污染攻击指的是针对所提出方法量身定制的攻击。

服务器的能力和知识:我们假设服务器持有一个小型干净数据集,称之为可信数据集。这个假设在实践中是合理的,因为服务提供商收集和验证一个小的可信数据集以供学习任务是相当可行的。例如,谷歌在其名为Gboard的虚拟键盘应用中使用联邦学习进行下一个单词的预测 [1];谷歌可以从其员工那里收集可信数据集。可信数据集不需要遵循与联合训练数据集 (D) 相同的分布。正如我们的实验结果将显示的那样,只要可信数据集的分布与联合训练数据分布没有显著偏差,我们的方法就有效。我们承认,可信数据集应是干净的,当可信数据集被污染时,我们的方法可能不具备鲁棒性。

五、AFLGUARD

直觉:AFLGuard的关键在于确定服务器是否应接受客户端的模型更新以更新全局模型的标准。理想情况下,如果模型更新来自进行污染攻击的恶意客户端,服务器就不应该使用它来更新全局模型。我们的关键观察是,在污染攻击中,恶意客户端往往会操纵其模型更新的方向和/或幅度。因此,在决定是否接受客户端的模型更新时,我们考虑了客户端模型更新的方向和幅度。具体而言,服务器基于其自己的可信数据集计算一个模型更新(称为服务器模型更新)。当客户端的模型更新在方向和/或幅度上与服务器模型更新有显著偏离时,该更新将被拒绝。

接受标准:这段公式太多,直接看原文吧。定义了服务器对客户端模型的接受标准。下图两种情况(方向显著偏离,振幅显著偏离)都拒绝接受。
这两种情况都拒绝

AFLGuard算法:我们在算法2中总结了AFLGuard算法。请注意,算法2仅显示了AFLGuard在服务器端的学习过程。客户端的学习过程与算法1相同,因此我们为了简洁起见省略了它。在第 t 次迭代中,服务器根据公式(3)决定是否接受客户端的模型更新。如果接受,服务器将其用于更新全局模型,并将更新后的全局模型发送回客户端。否则,服务器不更新全局模型,而是将当前全局模型发送回客户端。

六、实验设置

6.1.1 比较方法

我们将AFLGuard与以下异步方法进行比较:

  1. AsyncSGD [58]:在AsyncSGD中,服务器在收到任何客户端的模型更新后,根据算法1更新全局模型。

  2. Kardam [17]:在Kardam中,服务器为每个客户端保持一个经验的Lipschitz系数,并根据Lipschitz过滤器过滤出潜在的恶意模型更新。

  3. BASGD [55]:在BASGD中,服务器持有多个缓冲区。收到任何客户端的模型更新后,服务器将其存储到这些缓冲区中的一个,依据映射表。当所有缓冲区都非空时,服务器计算每个缓冲区内模型更新的平均值,取所有缓冲区的中位数,并用其更新全局模型。

  4. Zeno++ [53]:在Zeno++中,服务器有一个可信数据集。在收到客户端的模型更新后,服务器根据可信数据集计算一个服务器模型更新。如果服务器模型更新与客户端模型更新之间的余弦相似度为正,则服务器将客户端模型更新标准化,使其与服务器模型更新具有相同的幅度,并用标准化后的模型更新来更新全局模型。

6.1.2 数据集

我们使用一个合成数据集和五个真实世界数据集(MNIST、Fashion-MNIST、人体活动识别(HAR)、结直肠组织学MNIST、CIFAR-10)评估AFLGuard及其对比方法。合成数据集用于线性回归,符合第5节中假设1-4的条件,用于验证我们的理论结果。其他数据集用于训练复杂模型,旨在展示即使在不满足假设1-4的情况下,AFLGuard的有效性。由于篇幅限制,这些数据集的详细信息展示在附录A.3中。

6.1.3 中毒攻击

我们在实验中使用以下中毒攻击方法:

  1. 标签翻转(LF)攻击 [56]:在LF攻击中,恶意客户端中的每个训练样本的标签 y被替换为 C - 1 - y,其中 C 为总类别数。例如,对于MNIST数据集,数字“1”将被替换为数字“8”。

  2. 高斯(Gauss)攻击 [7]:在Gauss攻击中,恶意客户端的每个模型更新都来自一个零均值的高斯分布(我们将标准差设为200)。

  3. 梯度偏离(GD)攻击 [18]:在GD攻击中,恶意客户端基于其本地训练数据计算模型更新,然后将其乘以一个负常数(在我们的实验中为-10)再发送给服务器。

  4. 后门(BD)攻击 [5, 9, 23]:BD攻击是一种定向的中毒攻击。我们使用[23]中的相同策略在MNIST、Fashion-MNIST和结直肠组织学MNIST数据集中嵌入触发器。根据[9],在HAR数据集中,目标标签设置为“WALKING UPSTAIRS”,触发器通过将每第20个特征设为0生成。对于CIFAR-10数据集,目标标签设置为“bird”,并使用[5]中建议的相同模式触发器。

  5. 自适应(Adapt)攻击:在[18]中,提出了一个通用的自适应攻击框架,用于攻击带有任意聚合规则的联邦学习。我们将此攻击框架应用于AFLGuard。特别地,该攻击框架设计用于同步联邦学习,其中服务器聚合来自多个客户端的模型更新以更新全局模型。其核心思想是在恶意客户端上设计模型更新,使得聚合的模型更新与攻击前的模型有显著偏差。为了将这一攻击框架应用于AFLGuard,我们假设服务器根据AFLGuard接受或拒绝客户端的模型更新,并计算接受的模型更新的平均值。然后,我们根据攻击框架在恶意客户端上设计模型更新。


总结

使用额外的数据集来构建服务器模型更新;
感觉只是将抗拜占庭攻击方法融入到异步场景中去,将异步作为场景,没有考虑解决异步中特有的问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/150261.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

排序(插入,希尔,堆排)

常见的排序算法: 插入排序: 直接插入排序:是一种简单的插入排序法,其基本思想是:把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个…

mysql如何替换数据库所有表中某些字段含有的特定值

目录 背景查询所有表名查询表的所有字段过虑特征字段替换字段中含有的特定值 背景 公司的测试域名更换了,导致存放在数据库中的域名也要跟着替换,当然把域名存放在数据库表中是不科学的,不建议这样做,但公司的同事就这样做了&…

AWS开启MFA,提高安全性

引言 多因素认证(Multi-Factor Authentication, MFA)是一种重要的安全措施,可以显著提高您的AWS账号的安全性。通过启用MFA,即使密码被盗,攻击者也难以访问您的账户。本文中九河云将详细介绍如何在AWS Management Con…

element-plus表格操作

elememt-plus安装见上文 表格的特性 element-plus中的表格和原版表格最大的不同是写法不同,原版表格以行的方式写,element-plus以列的方式写。 element-plus的表格可以更方便的展示数据,只需要考虑数据的格式即可。 表格标签 表格标签有两种…

LeetCode 257. 二叉树的所有路径,dfs

LeetCode 257. 二叉树的所有路径 给定一个二叉树,返回所有从根节点到叶子节点的路径。 说明: 叶子节点是指没有子节点的节点。 目录 LeetCode 257. 二叉树的所有路径算法选择数据结构解题步骤算法流程算法代码算法分析易错点和注意事项相似题目 算法选择 深度优…

Web端云剪辑解决方案,提供多轨视频、音频、特效、字幕轨道可视化编辑

传统视频剪辑软件的繁琐安装、高昂硬件要求以及跨平台协作的局限性,让无数创意者望而却步。美摄科技作为云端视频编辑技术的领航者,携其革命性的Web端云剪辑解决方案,正重新定义视频创作的边界,让专业级视频剪辑触手可及&#xff…

k8s StorageClass 存储类

文章目录 一、概述1、StorageClass 对象定义2、StorageClass YAML 示例 二、StorageClass 字段1、provisioner(存储制备器)1.1、内置制备器1.2、第三方制备器 2、reclaimPolicy(回收策略)3、allowVolumeExpansion(允许…

多线程:死锁

目录 死锁的条件 死锁的示例 死锁的预防与解决 死锁的检测 总结 死锁(Deadlock)是多线程或多进程环境中一种特定的状态,指的是两个或多个线程或进程在执行过程中,由于争夺资源而造成的一种相互等待的状态,导致它们…

Linux usb主机控制器HC阅读

intel的UHCI 一种usb主机控制器的接口规范,遵守它的硬件称为UHCI主机控制器,Linux中,把这种硬件叫做HC,host controller,与之对应的软件,叫做HCD,hc driver, depends on usb & pci: 它的内核软件模块代码是uhci-hcd.c uhci_hcd_init初始化开始: usb_disable函数:…

【openwrt】 libubox组件——ustream

文章目录 ustream 核心数据结构struct ustreamstruct ustream_buf_liststruct ustream_bufstruct ustream_fd ustream 核心APIustream_fd_initustream_uloop_cbustream_fd_read_pendingustream_fill_read ustream_write_pendingustream_writeustream_fd_write ustream 应用示例…

前端开发必须了解的css知识

文本过长省略显示 单行 .ellipsis {overflow: hidden;text-overflow: ellipsis;white-space: nowrap; }多行 方法一: .ellipsis {overflow: hidden;text-overflow: ellipsis;-webkit-line-clamp: 3;word-break: break-all; }方法二: .ellipsis {ove…

文献笔记 - Neural Lander: Stable Drone Landing ControlUsing Learned Dynamics

这篇博文是自己看文章顺手做的笔记 只是简单翻译和整理 仅做个人参考学习和分享 如果作者看到觉得内容不妥请联系我 我会及时处理 本人非文章作者,文献的引用格式如下,原文更有价值 [1]Guanya Shi∗,Xichen Shi∗,Michael OConnell∗,et al.Neural La…

LOGO设计新革命:5款AI工具让你秒变设计大师(必藏)

大家好,我是Shelly,一个专注于输出AI工具和科技前沿内容的AI应用教练,体验过300款以上的AI应用工具。关注科技及大模型领域对社会的影响10年。关注我一起驾驭AI工具,拥抱AI时代的到来。 你是否曾因设计一个既独特又专业的LOGO而感…

Tableau|二 如何利用功能区创建视图

一 认识 Tableau 数据 1.数据角色 维度和度量是Tableau的一种数据角色划分,离散和连续是另一种划分方式。 1.维度和度量 维度往往是一些分类、时间方面的定性字段,将其拖放到功能区时,Tableau不会对其进行计算,而是对视图区进行分…

Swin Transformer(ICCV 2021 best paper):基于卷积层级式架构的移动窗口视觉Transformer!

有关ViT的学习笔记详见:学习笔记——ViT(Vision Transformer)-CSDN博客 ViT在图像分类方面的结果令人鼓舞,但由于其低分辨率的特征映射和复杂度随图像大小的二次方增长,其架构不适合作为密集视觉任务或高分辨率输入图像的backbone。根据经验&…

JetBrains系列产品无限重置免费试用方法

JetBrains系列产品无限重置免费试用方法 写在前面安装插件市场安装插件 写在前面 支持的产品: IntelliJ IDEA AppCode CLion DataGrip GoLand PhpStorm PyCharm Rider RubyMine WebStorm为了保证无限重置免费试用方法的稳定性,推荐下载安装2021.2.2及其…

OpenAI GPT-3 API error: “This model‘s maximum context length is 2049 tokens“

题意:OpenAI GPT-3 API 错误:“此模型的最大上下文长度是 2049 个token” 问题背景: I have two issues relating to the response result from OpenAI completion. 我遇到了两个与OpenAI完成响应结果相关的问题 The following result does…

Sam Altman的博客:The Intelligence Age

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

《深入解析:水果销售数据库操作与查询技巧》

文章目录 一、数据库结构与数据源插入1.1 创建数据库与表1.2 插入数据 二、基础数据查询2.1 查询客户信息2.2 查询供应商信息 三、查询优化与技巧3.1 使用LIMIT子句 四、高级查询技巧4.1 使用聚合函数4.2 连接查询4.3 使用子查询 五、案例分析5.1 客户订单详情查询 一、数据库结…

无法将“allure”项识别为 cmdlet、函数、脚本文件或可运行程序的名称的解决方法-allure的安装配置全过程

新手在使用allure之前,以为只是pip install allure-pytest就可以,no!!! 其实,还需要下载allure,allure的具体步骤如下: 1.下载 allure。 allure的下载地址:Central Re…