READ-2307 The Limitations of Federated Learning in Sybil Settings
READ-2307 The Limitations of Federated Learning in Sybil Settings
论文名称 | The Limitations of Federated Learning in Sybil Settings |
---|---|
作者 | Clement Fung, Chris J. M. Yoon, Ivan Beschastnikh |
来源 | RAID 2020 |
领域 | Machine Learning - Federal learning - Security - Defense targeted & data poisoning attac |
问题 | 1.对于FL的基于女巫攻击的研究较少 2.已有的防御方式难以抵御训练膨胀攻击 |
方法 | 本文定义了一种女巫拒绝服务攻击,并且针对这种新型攻击方式设计了相应的防御方式,即根据客户端更新的相似性调整客户端学习率 |
创新 | 提出女巫攻击及防御方法 |
阅读记录
一、攻击
- 女巫攻击:多个恶意客户端由一个攻击者控制
- 攻击类型:女巫发起的有目标投毒攻击
- 假设
(1)客户端的数据不可相互访问,攻击者也不能访问其他诚实客户端的数据
(2)攻击者只能通过FL API访问并影响模型的状态
(3)攻击者可以获取全局模型,但不能获取诚实客户端的本地模型
(4)服务器是可靠非恶意的
(5)女巫可以躲避基于非对称密钥的防御方式 - 攻击者的能力
(1)攻击者对系统的影响随着女巫的增加而增加
(2)女巫获取的知识是固定的:女巫只能获取全局模型 - 攻击目标
(1)攻击类型
(2)女巫攻击
(3)女巫攻击和不同类型攻击结合
二、防御
- 已有的防御方式
对于Multi-Krum、median、trimmed mean,这三种健壮性聚合方法在拜占庭攻击者数量较少时可以进行较好的防御,但是攻击者数量大于一定限制时,防御失效。 - 模型假设
(1)客户端的数据集集合拥有所有标签空间中的所有标签
(2)由于scaling attack已经被其他工作很好的防御,本文并不考虑对于这种攻击的防御
(3)FoolsGold中不使用安全聚合方法,并且要求同步执行FL
(4)恶意客户端在执行攻击时无需进行差分隐私操作 - 原理
在实施有目标投毒攻击时,女巫之间的更新比诚实客户端之间的更新更相似,当客户端更新高度相似时,将赋予其较低的学习率。基于女巫之间的更新比诚实客户端之间的更新更相似的原理,FoolsGold可以很好的区分诚实客户端和act-alike女巫,在non-IID设置中尤其明显。
- FoolsGold
(1)Cosine similarity
余弦相似度:由于女巫可以通过改变梯度的大小从而实现不相似性,而梯度的方向表示了更新的目标,因此选择余弦相似度比欧氏距离更合理
note:
①余弦相似度:把目标当作向量,计算两个向量间的角度,以衡量二者方向上的相似程度
②欧氏距离:把目标当作点,计算两点之间的绝对距离,以衡量二者的位置上的相似程度
(2)Feature importance
特征重要性:
①从投毒攻击的角度,一个模型由三种特征:
- 与模型正确性相关的特征,并且修改了这种特征后才能实施成功的攻击
- 与模型正确性相关的特征,但是是否修改这种特征与攻击的成功与否无关
- 与模型正确性和攻击成功与否都无关的特征
注意,本文只关注第1、2种类型的指示性特征
②寻找指示性特征
由于全局模型输出层的模型参数直接映射到预测结果,因此可以通过测量该层参数的改变幅度寻找指示性特征。
(3)Update history
更新历史:由于SGD的偏差,即使两个女巫的目标相同,同一轮迭代种二者之间的差别仍然较大,因此使用历史更新之间的相似度而非当前迭代更新相似度
(4)Pardoning
赦免:
①由于诚实客户端可能被当作恶意客户端,因此通过重新对余弦相似度进行赋值,减少假阳率
②将余弦相似度翻转后形成学习率,对学习率进行正则化后,可以保证至少有一个客户端的更新不被修改,从而鼓励诚实客户端不被惩罚
(5)Logit
逻辑回归:即使非常相似的更新也可能导致余弦相似度小于1,为了鼓励函数末端值的发散性,同时避免诚实客户端由于较低的非零相似度被惩罚,使用置信参数扩大中心为0.5的逻辑函数,使得学习率在0-1之间
总结
本文从恶意客户端与诚实客户端之间的区别出发,设计了Fools Gold防御方式,但存在以下问题:
- 在攻击者数量较少时假阳率较高
- 在恶意客户端较多时假阴率较高
因此,我认为,如果从相似度的角度进行防御,我们不仅需要思考恶意客户端和良性客户端之间的区别,还需要思考恶意客户端之间的共性和良性客户端的共性。用分类问题的思想来思考,就是需要增大类间距,缩小类内距。
同时,尽管 FoolsGold 在对抗有目标投毒攻击方面表现出色,但不能很好地捍卫其他基于女巫的策略,如协同攻击、适应性攻击、智能扰动、分布式后门。
READ-2307 The Limitations of Federated Learning in Sybil Settings相关推荐
- 【论文笔记】(JSMA)The Limitations of Deep Learning in Adversarial Settings
引流:https://www.cnblogs.com/setdong/p/16414390.html 本文是早期的对抗文章,发表于 EuroS&P 2016会议,最主要的工作是:提出了一个生成 ...
- 【FLACC】A Greedy Agglomerative Framework for Clustered Federated Learning
A Greedy Agglomerative Framework for Clustered Federated Learning一种用于聚类联邦学习的贪婪聚合框架 Abstract 1.INTROD ...
- 【Paper Reading】BatchCrypt: Efficient Homomorphic Encryption for Cross-Silo Federated Learning
BatchCrypt: Efficient Homomorphic Encryption for Cross-Silo Federated Learning 原文来源:[ATC 2020] Batch ...
- No Fear of Heterogeneity: Classifier Calibration for Federated Learning with Non-IID Data
在开始之前讲一下论文的大致思想:论文作者发现在联邦学习中,分类器的差数差异巨大,在聚合参数之后,分类器效果不好,因此想要对分类器进行修正.使用客户端所有的特征提取器的feature和标签来修正是一种不 ...
- Advances and Open Problems in Federated Learning——4.Preserving the Privacy of User Data翻译
4.Preserving the Privacy of User Data 机器学习的工作流程需要许多不同功能的共同参与.比如说,用户可能会在与他的其他设备交互的过程中产生训练数据,一个机器学习训 ...
- AI之FL:联邦学习(Federated Learning)的简介、入门、应用之详细攻略
AI之FL:联邦学习(Federated Learning)的简介.入门.应用之详细攻略 导读 2019 年2 月,微众银行 AI 团队自主研发的全球首个工业级联邦学习框架 FATE(Fe ...
- PDGAN: A Novel Poisoning Defense Method in Federated Learning Using Generative Adversarial Network笔记
前言 论文 "PDGAN: A Novel Poisoning Defense Method in Federated Learning Using Generative Adversari ...
- 【译】Federated Learning: Bringing Machine Learning to the edge with Kotlin and Android
采用机器学习模式需要数据. 我们越多越好. 但是,数据并不便宜,更重要的是,数据可能包含敏感的个人信息. 以新法律形式作为GDPR以及提高用户和公民对其数据价值的认识的最新隐私发展正在产生对实施更多隐 ...
- 初识联邦学习(Federated learning)
联邦学习(Federated learning)最早在2016由谷歌提出,并在之后受到大量的关注.本文旨在简要介绍联邦学习,了解联邦学习的背景,而不关注联邦学习具体的实现方案.希望能解释通如下几个 ...
最新文章
- 苹果M1 Max芯片发布:570亿晶体管,图形性能堪比RTX 3080
- 七牛上传文件小工具v0.1
- python csv文件创建时间_记录 python 根据csv文件自动创建表插入数据
- DNS服务器不能响应的四大解决办法
- linux服务器探针软件,服务器安装ServerStatus监控探针教程
- TFS下的源代码控制
- 聚焦 | 数据湖分析如何面向对象存储OSS进行优化?
- Qt6程序打包(如何解决Qt程序在其他电脑上无法运行的问题)
- 程序员开发软件的意义到底在哪?
- XP的常见蓝屏代码和解决方案
- String、StringBuffer、StringBuilder三者的区别
- 【TWVRP】基于matalb粒子群算法求解带时间窗的多客户单仓库车辆路径规划问题【含Matlab源码 1407期】
- C语言实现舒尔特表格生成器
- JavaWeb开发——JSP技术
- 微信公众号生成个性化推广二维码
- 网站改造为百度智能小程序教程,适合所有网站封装
- 在滴滴,我是如何指数级提升开发技术的?---转自星光社的戴铭
- Unity优化☀️光照烘焙
- Python发送验证码短信
- stm32用python编程_使用 Python 来开发 STM32F411 !