《Federated Unlearning via Active Forgetting》论文精读

文章目录

  • 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.mzph.cn/news/11477.shtml

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

相关文章

[React]常见Hook实现之useUpdateLayoutEffect

[React]常见Hook实现之useUpdateLayoutEffect useUpdateLayoutEffect是一个自定义的React Hook,它与useUpdateEffect类似,都是用来在组件更新时执行副作用函数。不同的是,useUpdateLayoutEffect使用的是useLayoutEffect来注册副作用函数。 …

基于JAVA SpringBoot和Vue高考志愿填报辅助系统

随着信息技术在管理中的应用日益深入和广泛,管理信息系统的实施技术也越来越成熟,管理信息系统是一门不断发展的新学科,任何一个机构要想生存和发展,要想有机、高效地组织内部活动,就必须根据自身的特点进行管理信息时…

学习笔记|大模型优质Prompt开发与应用课(二)|第二节:超高产文本生成机,传媒营销人必备神器

文章目录 01 文字写作技能的革新,各行各业新机遇四大类常见文字工作新闻记者的一天新闻记者的一天–写策划prompt 新闻记者的一天–排采访prompt生成结果prompt生成结果 大模型加持,文字写作我们如何提效营销创作营销创作-使用预置法为不同平台生成文案p…

[SQL挖掘机] - 字符串函数 - concat

介绍: concat函数用于连接字符串的函数。它接受多个字符串作为参数,并将它们按顺序连接起来形成一个新的字符串。 用法: 以下是concat函数的语法: concat(string1, string2, ...)其中,string1, string2, …是要连接的字符串参数。你可以传…

Aspose.cell excel转pdf日期格式不正确yyyy/MM/dd变成MM/dd/yyyy

最近使用Aspose.cell将excel转pdf过程中excel中时间格式列的显示和excel表里的值显示不一样。 excel里日期格式 yyyy/MM/dd pdf里日期格式MM/dd/yyyy 主要原因:linux和windows里内置的时间格式不一致,当代码部署到linux服务器的时候转换格式就会发生不一…

Nginx 高可用负载均衡(三种模式)

一、nginx普通集群负载均衡 1、安装keepalived (1)下载 https://www.keepalived.org/download.html(2)解压 tar -zxvf keepalived-2.0.18.tar.gz(3)使用configure命令配置安装目录与核心配置文件所在位置: ./configure --prefix/usr/local/keepalived --sysconf/e…

Python解码张三的法外狂徒之旅,揭秘视频背后的真相!【含jS逆向解密】

前言 嗨喽,大家好呀~这里是爱看美女的茜茜呐 传说中,有人因为只是远远的看了一眼法外狂徒张三就进去了😂 我现在是获取他视频,岂不是直接终生了🤩 网友:赶紧跑路吧 😏 好了话不多说&#xff…

一枚女程序员的周末安排

周末放松一般是从周五晚上开始的,朋友同事之间的社交一般都是在周五晚上,聚餐,看电影,逛街等(毕竟大家住的都比较远,选在周五晚上最好不过了) 周末的早晨必须睡个美美的懒觉,然后慢悠…

【Android】底层逻辑深入了解(学习笔记)(未完)

step by step. 目录 init启动 Zygote进程: SystemServer处理过程 Binder: Launcher启动过程 Android系统启动流程 四大组件 Activity Service BroadcastReceiver广播 ContentProvider内容提供者(进程内和进程间的数据共享&#xff…

java语法基础--Scanner

1、使用方法 //step1、实例化Scanner类 Scanner SC new Scanner(System.in); //step2、进行java.util.Scanner的导包 //step3、进行提醒性的文字输出 System.out.println(“请输... “); //step4、根据你的业务来判断你需要获取到输入信息的类型 sc.nextInt(); s…

vue的组件化编程的详细讲解加代码演示

😀前言 本片文章是vue系列第5篇整理了vue的组件化编程的详细讲解加代码演示 🏠个人主页:尘觉主页 🧑个人简介:大家好,我是尘觉,希望我的文章可以帮助到大家,您的满意是我的动力&am…

linux安装nginx遇到的报错

1、Linux如何修改只读文件(以设置自动连网为例) vim /etc/sysconfig/network-scripts/ifcfg-ens33 然后提示 E45:已设定选项“readonly”(请加!强制执行) 如果需要强制修改,可以使用&#xff0…

Mongodb 多文档聚合操作处理方法二(Map-reduce 函数)

聚合 聚合操作处理多个文档并返回计算结果。您可以使用聚合操作来: 将多个文档中的值分组在一起。 对分组数据执行操作以返回单个结果。 分析数据随时间的变化。 要执行聚合操作,您可以使用: 聚合管道 单一目的聚合方法 Map-reduce 函…

activemq消息中间件

ActiveMQ消息中间件详解 下载地址:https://activemq.apache.org/activemq-5015009-release 1、MQ的产品种类 1.1、消息中间件的特性/共同特性/共同维度 Kafka(大数据专用、由java/scala编写) API发送和接收MQ的高可用性MQ的集群和容错配置…

【vue3】获取字典数据,封装为公共方法

前言: 后台项目中基本上都有字典管理页面,Vue封装字典数据的主要目的是为了方便数据的管理和使用 不管在哪个页面使用下拉框,el-select的options数据源需要通过调用接口获取到,不同的数据源调用不同的接口,引入和使用都是不小的工作量,如果使用字典数据管理,不管同个页…

【Spring Cloud Gateway 新一代网关】—— 每天一点小知识

💧 S p r i n g C l o u d G a t e w a y 新一代网关 \color{#FF1493}{Spring Cloud Gateway 新一代网关} SpringCloudGateway新一代网关💧 🌷 仰望天空,妳我亦是行人.✨ 🦄 个人主页——微风撞见云的博客&a…

在CSDN学Golang云原生(Docker基础)

一,docker安装配置 要在golang中使用Docker,需要先安装并配置好Docker。下面是基本的Docker安装和配置步骤: 下载并安装Docker 官方下载地址:https://docs.docker.com/get-docker/ 根据你的操作系统选择对应版本的Docker&…

Clash-Github git clone 或者 git push 特别慢的解决办法

1.在本地上使用 SSH 命令无法git push 上传 github 项目 2.使用 git clone 下载项目特别慢总是加载不了 解决办法 将 Clash 的连接模式换成:Direct 后面再找找能不能再Global 下解决该问题

C#使用LINQ查询操作符实例代码(二)

目录 六、连表操作符 1、内连接2、左外连接(DefaultIfEmpty)3、组连接七、集合操作 八、分区操作符 1、Take():2、TakeWhile():3、Skip():4、SkipWhile():九、聚合操作符 1、Count: 返回集合项数。 2、LongCount&…

linux NDK交叉编译rtmp 与 ffmpeg+rtmp交叉编译(v7a,v8a) 完成流程

最近在学RTMP,记录一下完成的编译流程 我是mac 电脑,但是mac上编译一直通过不了,后来才换到服务器上编译, 其实mac也能编译,只是最开始踩到坑里面了… 这里记录一下linux编译完整流程 环境: NDK: android-ndk-r17cFfmpeg: ffmpeg4.2.2 (高版本也可以编译)system: mac 1. …