《Federated Unlearning via Active Forgetting》论文精读

news2024/11/15 20:42:11

文章目录

  • 1、概述
  • 2、方法实验
    • 主要贡献
    • 框架概述
  • 3、实验结果
    • 比较方法
    • 实验结果
      • 忘却完整性
      • 忘却效率
      • 模型实用性
  • 4、总结

原文链接: Federated Unlearning via Active Forgetting

1、概述

对机器学习模型隐私的⽇益关注催化了对机器学习的探索,即消除训练数据对数学学习模型影响的过程。这种担忧也出现在联邦学习领域,促使研究⼈员解决联邦遗忘学习问题。然⽽,联邦遗忘仍然具有挑战性。现有的遗忘⽅法⼤致可分为两种⽅法,即精确遗忘和近似遗忘。⾸先,以分布式⽅式实现精确遗忘(通常依赖于分区聚合框架)在理论上不会提⾼时间效率。其次,现有的联邦(近似)遗忘⽅法存在不精确的数据影响估计、⼤量的计算负担或两者兼⽽有之的问题。为此,该论文提出了⼀种基于增量学习的新型联邦遗忘框架,该框架独⽴于特定模型和联邦设置。本论文中的框架不同于现有的联合联邦⽅法,后者依赖于近似的再训练或数据影响估计。相反,本论文提出的方法利⽤新的记忆来覆盖旧的记忆,模仿神经病学中主动遗忘的过程。具体来说,该模型旨在遗忘,充当学⽣模型,不断从随机启动的教师模型中学习。为了防止灾难性地遗忘非⽬标数据,论文中利⽤弹性权重整合来弹性约束权重变化。在三个基准数据集上的⼤量实验证明了论文中提出的⽅法的有效性。后门攻击的结果表明,所提⽅法实现了令⼈满意的完备性。

2、方法实验

在本⽂中,论文中提出了⼀种新颖的联邦遗忘⽅法,称为FedAF,它独⽴于特定模型和联邦设置。如图 1 所示,与流⾏的遗忘⽅法相⽐,FedAF从神经病学中的主动遗忘中汲取灵感,使⽬标模型(即意图忘记的客户中的模型)能够使⽤新记忆来覆盖旧记忆。这允许⽆缝的遗忘过程集成到原始的联邦学习过程中,从根本上克服了现有联合遗忘⽅法的局限性,⽽⽆需存储历史更新或估计数据影响。
在这里插入图片描述
当使⽤增量学习来摒弃学习时,需要考虑两个关键点:
(i)产⽣有效的新记忆,以及
(ii)克服灾难性的遗忘。
FedAF由两个模块组成,即记忆⽣成器和知识保存器,分别⽤于解决这些问题。⾸先,我们需要⽣成⽆知识易于学习的新记忆来覆盖旧记忆。无知识意味着不包含关于数据的有效信息,例如随机标签向量。同时,新的记忆必须易于学习,这样就不会花费⼤量的计算开销来完成忘却。记忆⽣成器遵循师⽣学习模式来⽣成假标签并将其与原始特征配对。其次,以前的研究发现,由于灾难性遗忘现象,传统的深度学习⽅法⽆法解决增量学习问题。

主要贡献

• 论文中提出了⼀种新的联邦遗忘⽅法,即基于主动遗忘概念的FedAF,从根本上克服了现有联邦遗忘⽅法的局限性。
• 为了有效地产⽣新的记忆来覆盖旧的记忆,论文中采⽤了师⽣学习模式。⽬标客户端(即学⽣)中的模型从教师模型⽣成的操纵数据中提取知识。
• 为了缓解非目标数据的灾难性遗忘现象,论文中⾸先推导新的损失来解决任务冲突问题,然后⽤弹性权重固结动态约束模型参数的变化。
•论文中对三个基准数据集进⾏了⼴泛的实验,以评估FedAF的性能。结果表明,论文中提出的FedAF在效率、效用和完整性⽅⾯优于同类⽅法。

框架概述

在这里插入图片描述
框架概述 FedAF 从新的记忆中学习以实现遗忘。新内存不包含⽬标数据的有效知识,这可能会覆盖旧数据。图 2 显示了FedAF 的学习(⿊⾊箭头)和取消学习(蓝⾊箭头)⼯作流程。在学习⼯作流程中,FedAF 既不会⼲扰原始的联邦学习过程,也不会存储任何历史更新。我们可以将原始的联邦学习过程压缩为两个循环,即本地训练循环和联合训练循环在取消学习⼯作流中,FedAF在本地训练循环中插⼊⼀个取消学习循环,然后通过联合训练循环⼴播未学习的更新FedAF中的忘却循环由两个模块组成,即记忆⽣成器和知识保存器。这两个模块分别解决了上述问题,即产⽣有效的新记忆和克服灾难性遗忘。通常,记忆⽣成器初始化⼀组教师模型以⽣成假标签,然后将它们与原始特征配对以⽣成操作数据。知识保存者在操纵的数据上不断训练模型。借助源⾃EWC框架的新损失函数,知识边缘保护器设法缓解灾难性遗忘现象。

记忆生成器 记忆⽣成器的⽬标是产⽣⽆知识且易于学习的新记忆以进⾏覆盖。在本⽂中,论文中重点关注在监督学习中,知识通常存在于标签中。因此,论文中操纵标签来产⽣新的记忆。

知识保存器 在取消学习⽬标数据的同时,我们还需要保存从非目标数据中学到的剩余知识。传统的深度学习⽅法在增量学习⼀系列任务时会遇到灾难性遗忘现象。为了模仿⼈脑中的主动遗忘,论文中提出的 FedAF 基于增量学习的理念。⽬标客户端𝑘顺序在两个任务上训练模型,即D𝑘和M。为了避免混淆,论文中直接通过其数据集来命名任务。任务 D𝑘 和 M 分别代表学习和忘却过程。当对后⼀个任务(即 M)进⾏训练时,会发⽣灾难性遗忘。新的记忆不仅会覆盖⽬标数据的旧记忆,还会使模型忘记⾮⽬标数据的记忆。因此,我们引⼊EWC培训来缓解这种现象。正如4.1节中介绍的,我们不改变学习过程,这意味着任务D𝑘采⽤常规训练。在本⽂中,我们以经验⻛险最⼩化为例。客户端𝑘通过最⼩化任务D𝑘的损失来优化模型𝜃

实验论文中基于三个原则(即遗忘完整性、遗忘效率和模型效⽤)评估了论文中提出的⽅法在三个⼴泛使⽤的数据集上的有效性。为了进⼀步研究论文中提出的⽅法,论文中还进⾏了消融研究。

3、实验结果

比较方法

论文中将提出的 FedAF 与两种适⽤于按类别遗忘的代表性遗忘⽅法进⾏⽐较。
重新训练:从头开始重新训练是计算开销很⼤的基本事实忘却⽅法。
FRR :联邦快速再训练(FRR)是最先进的(SOTA)样本联邦取消学习⽅法,可应⽤于类别取消学习。

实验结果

在这里插入图片描述

忘却完整性

论文中利⽤后⻔攻击来评估遗忘的完整性。具体来说,论文中将后⻔触发器植⼊到论文中想要忘记的⽬标数据中,并将它们的标签翻转为随机类别。通过这个过程,后⻔攻击强制模型在触发模式和翻转标签之间建⽴映射。因此,我们可以通过⽐较取消学习前后⽬标数据的性能来评估取消学习的完整性。我们在表 2 中报告了未学习数据的ackDoor Accuracy(BD Acc)。从中,论文中得到以下观察结果:
i) 所有⽐较⽅法在取消学习后都显着降低了 BD Acc(平均从 76.21% 降⾄1.00%),表明⽬标数据的影响⼒显着降低;
ii) FRR 和FedAF ⽆法实现与Retrain ⼀样低的 BDAcc(忘记学习后)。与Retrain的BD Acc相⽐,FRR和FedAF平均分别提升了1.02%和0.90%;
iii) 在完整性⽅⾯的表现⽅⾯,FRR 和FedAF 之间仅存在微⼩差异。
总体⽽⾔,FedAF 在遗忘完整性⽅⾯略优于 SOTA ⽅法。

在这里插入图片描述

忘却效率

论文中使⽤运⾏时间来衡量⽐较⽅法的遗忘效率。具体来说,论文中在表 3 中报告了特定客户端中取消学习第⼀类的平均运⾏时间。如表 3 所示,论文中提出的 FedAF 平均将 Retrain 的效率提⾼了 39.51倍。相反,由于⽜顿优化器需要精确的计算,FRR 花费的时间明显多于Retrain。这是完全不可接受的,因为取消学习⽅法背后的设计理念是实现⽐重新训练更有效的取消学习。

模型实用性

保留模型效⽤也是联邦取消学习的⼀个重要原则。适当的遗忘⽅法应该避免过度消除⽬标数据的影响。因此,论文中通过评估模型在测试集上的性能来⽐较遗忘后模型的效⽤,并将结果报告在表2中。从中我们观察到所有⽐较的⽅法,即Retrain、FRR和FedAF,都达到了测试 Acc 接近于取消学习之前所达到的成绩。具体来说,以Retrain为基线,FRR和FedAF可以将其Test Acc与Retrain的差异分别限制在3.12%和2.31%以下,表明⾮⽬标数据没有明显的遗忘。

在这里插入图片描述

4、总结

在本⽂中,论文中提出了⼀种新的联邦遗忘⽅法,称为FedAF。受到神经病学主动遗忘的启发,FedAF通过利⽤新记忆覆盖旧记忆来取消学习,这从根本上克服了现有联合遗忘⽅法的局限性,⽽⽆需存储历史更新或估计数据影响。⼀般来说,我们基于增量学习的理念构建FedAF,以实现主动遗忘。具体来说,FedAF在每个客户端中由两个模块组成,即记忆⽣成器和知识保存器记忆⽣成器根据师⽣学习产⽣⽆知识且易于学习的假标签,并将它们与⽬标数据特征配对以产⽣新的记忆。知识保存者不断⽤新的记忆训练模型,并采⽤EWC训练,利⽤论文中得出的损失来减轻灾难性的遗忘。⽬标客户端通过提交遗忘请求来触发这两个模块,⽽其他客户端则遵循标准训练过程。在三个基准数据集上进⾏的实验表明,论文中提出的FedAF不仅可以有效地从全局模型中解读特定客户的⽬标数据,还可以保留⾮⽬标数据的知识。

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

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

相关文章

【Spring】什么是Bean的生命周期及作用域,什么是Spring的执行流程?

博主简介:想进大厂的打工人博主主页:xyk:所属专栏: JavaEE进阶 在前面的播客中讲解了如何从Spring中存取Bean对象,那么本篇我们来讲解Bean对象的生命周期是什么,Bean对象的6种作用域分别是什么,都有哪些区别&#xff…

WebDAV之π-Disk派盘 + 静读天下

静读天下 支持WebDAV方式连接π-Disk派盘。 静读天下是一款备受千万Android用户好评的阅读工具,如果你享受本地阅读带来的宁静与踏实,同时对阅读器又有着苛刻要求,符合设计简洁、高效易用、功能强大且稳定,那么不妨试试这款app。静读天下支持txt、html、epub、umd、fb2、…

Python数据分析实战-利用limit 与 offset进行数据库数据批量查询与处理(附源码和实现效果)

实现功能 利用limit 与 offset进行数据库数据批量查询与处理 实现代码 def query_batch(self,engine,batch_step,end,sql):session make_session(engine)cursor session.execute(sql.format(batch_step, end))fields cursor._metadata.keysdf pd.DataFrame([dict(zip(fi…

LeetCode-116-填充每个节点的下一个右侧节点指针

一:题目描述: 给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下: struct Node {int val;Node *left;Node *right;Node *next; }填充它的每个 next 指针,让这个指…

Flutter 的线程模型和异步原理

本文字数::36130字 预计阅读时间:91分钟 在Android应用中, 用户时常会遇到界面卡顿的情况,非常影响用户的体验。作为Android开发肯定都知道:应用在主线程里做了大量的耗时操作(例如文件读写, 数…

新一代网络安全防护体系的五个关键特征

目前,网络安全技术正面临着一个转折点,基于边界的安全防护理论存在缺陷,基于规则的威胁判别机制不再有效,围绕传统技术构建的安全工程也不再适用。新一代安全建设不能再像修“城墙”一样,专注于外部网络攻击和已知威胁…

C++:类和对象(中)---默认成员函数---运算符重载---const的含义

文章目录 默认成员函数构造函数析构函数拷贝构造函数运算符重载赋值运算符重载const的含义取地址及const取地址操作符重载 默认成员函数 首先要理解什么是默认成员函数:类在什么都不写的时,编译器会生成六个默认成员函数 用户没有显式实现,但…

谁能讲清楚Spark之小白入门

在这我假设大家都是小白,那么Spark是什么?你为什么搜索它?思考一下。 首先,Spark是大数据处理框架的一种,那么什么是大数据处理框架?什么是大数据?字面意思懂得都懂。(如果不懂去百度…

网络安全代码合集

SQL注入 联合注入 ?id1and 11-- - ?id1order by 1-- - ?id-1union select 1,2,3-- - ?id-1union select 1,database(),3-- - ?id-1 union select 1,group_concat(table_name),3 from information_schema.tables where table_schemadatabase() -- - ?id-1 union sele…

Docker啥是容器编排?

文章目录 容器编排compose案例wordpress案例swarmKubernetes特点 容器编排 Docker容器编排是一种管理和协调多个Docker容器的技术,旨在简化容器化应用程序的部署、扩展和管理。在现代应用开发中,容器化已经成为一种流行的部署方式,Docker是其…

A Deep Framework for Hyperspectral Image Fusion Between Different Satellites

1.摘要 最近,将低分辨率高光谱图像(LR-HSI)与不同卫星的高分辨率多光谱图像(HR-MSI)融合已成为提高HSI分辨率的有效方法。然而,由于不同的成像卫星、不同的照明条件和相邻的成像时间,LR-HSI和H…

15.Netty源码之EventLoop

highlight: arduino-light Netty配置主从Reactor模式 通过将NioServerSocketChannel绑定到了bossGroup。 将NioServerSocketChannel接收到请求创建的SocketChannel放入workerGroup。 将2个不同的SocketChannel绑定到2个不同的Group完成了主从 Reactor 模式。 分配NIOEventLoop的…

【Git|项目管理】Git的安装以及本地仓库的创建和配置

文章目录 1.Git简介2.安装Git2.1在Centos上安装git2.2 在ubuntu上安装git 3.创建本地仓库4.配置本地仓库 1.Git简介 Git是一个分布式版本控制系统,用于跟踪和管理文件的更改。它可以记录和存储代码的所有历史版本,并可以方便地进行分支管理、合并代码和协…

JavaScript中的this指向及绑定规则

在JavaScript中,this是一个特殊的关键字,用于表示函数执行的上下文对象,也就是当前函数被调用时所在的对象。由于JavaScript的函数调用方式多种多样,this的指向也因此而变化。本文将介绍JavaScript中this的指向及绑定规则&#xf…

【LeetCode】141.环形链表

题目 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置&#…

M.2 接口

M.2 接口 简介 M.2模块卡口类型 常用硬盘接口 • B key:传输模式为PCI-E 2X或SATA,用于SSD或WWAN • M Key:传输模式为PCI-E 4X或SATA,传输速率达到4GB/s,应用于NVMe PCIe M.2 SSD等。 接口类型 常用硬盘尺寸 M.2设…

sed命令替换 M-BM- 不可见字符 解决脚本或配置文件粘贴后莫名其妙的报错

在使用shell脚本、编辑配置文件时,如果是直接复制,有时会莫名其妙报错。 使用cat -A查看文件,可以看到非常多的 M-BM- 不可见字符 挤占在空格位,正是这些字符导致脚本或配置文件的读取出错、 使用sed命令将文件内的 M-BM- 不可见…

C# IO 相关功能整合

目录 删除文件和删除文件夹 拷贝文件到另一个目录 保存Json文件和读取Json文件 写入和读取TXT文件 打开一个弹框,选择 文件/文件夹,并获取路径 获取项目的Debug目录路径 获取一个目录下的所有文件集合 获取文件全路径、目录、扩展名、文件名称 …

原生js vue react通用的递归函数

🙂博主:锅盖哒 🙂文章核心:原生js vue react通用的递归函数 目录大纲 1.递归函数的由来 2.代码逻辑 1.递归函数的由来 递归函数的由来可以追溯到数学中的递归概念和数学归纳法。 在数学中,递归是指通过定义基本情况和…

windows切换php版本以及composer

前提 安装php8.2 安装Php7.4 下载 nts是非线程安全的,这里选择线程安全的,选择64位 解压缩 修改系统环境变量 修改为php-7的 cmd中输入php -v查看 找到composer存放路径C:\ProgramData\ComposerSetup\bin 将三个文件复制到php目录下 重启电脑…