摘要

联合学习(FL)是一个新兴的分布式机器学习框架,用于与客户网络(边缘设备)进行协作式模型训练。联合学习允许客户将其敏感数据保存在本地设备上,并且只与联合服务器共享本地训练参数更新,从而默认客户隐私。然而,最近的研究表明,即使是将本地参数更新从客户端分享到联合服务器,也可能会受到梯度泄漏攻击,并侵犯客户端关于其训练数据的隐私。在本文中,我们提出了一个原则性的框架来评估和比较不同形式的客户端隐私泄露攻击。我们首先提供了形式上的和实验上的分析,表明对手如何通过简单地分析本地训练的共享参数更新(如本地梯度或权重更新向量)来重建私有的本地训练数据。然后,我们分析了联合学习中不同的超参数配置和不同的攻击算法设置如何影响攻击的有效性和攻击成本。我们的框架还测量、评估和分析了在使用通信高效 FL协议时,不同梯度压缩率下的客户端隐私泄漏攻击的有效性。我们的实验还包括一些初步的缓解策略,以强调提供一个系统的攻击评估框架的重要性,以深入了解联合学习中各种形式的客户端隐私泄漏威胁,并为攻击缓解奠定理论基础。

主要内容

这篇文章主要阐述了一个CPL(client privacy leakage)的隐私泄漏的攻击方法,并且由于敌手座位一个FL的参与者,知道模型的参数,故进行白盒攻击

伪代码

第4-6行将权重更新转换为梯度值

第9行是为了从实际的梯度共享中获得标签从本地训练中获取标签。

第10-14行介绍了迭代重建过程,该过程产生了基于客户端梯度更新的重建私有训练数据。

由于对训练输入数据的真实标签的局部训练更新与其他标签相比应该是最积极的(最积极的 也可以说是最正面的),所以私有数据集中数据的真实标签的梯度符号将与其他类不同,其绝对值通常是最大的。(PS:在机器学习的过程中,正确的和错误的内容产生的梯度通常是差别很大的)

其实这个攻击就是先搞一个分辨率和别的训练集的图片一样的图片,然后用模型训练这个图片,将得到的梯度和别人用正确图片训练出来的梯度进行比较,然后得到一个距离的差值,然后不断地添加扰动,来改进这个差值,最后当差值收敛的时候,证明咱的图片也训练好了,因为咱的图片和别人的图片在这个模型中的梯度是几乎一致的了。

本文的框架将研究FL超参数的不同配置对隐私泄露攻击的成功率和成本的影响。

值得注意的是,即使客户端和服务器之间的网络连接是安全的,在本地参数更新准备上传到服务器之前,客户端隐私泄露攻击也可能发生在被攻击的客户端上。(原文提到的,具体我也没搞明白他是怎么在上传之前泄漏的,可能是在上传之前也能接触到其他人的梯度,我觉得可能是因为FL是一个多客户端一起训练的内容,故不一定需要使用某个人的梯度,可以直接使用之前已经产生的模型来推测你的私有数据集)

不同设定对于CPL攻击的影响

不同的初始化

不同的随机种子

不同的攻击终止条件

        

在任何情况下,迭代次数的增加都会增加攻击的成功率,因此在所有情况下,我们只要寻找一个迭代次数使成功率上升至我们能接受的情况下,而初始化的设定就会关系到迭代的次数,所以本质上还是选择初始化方法然后根据不同的初始化方法选择适当的迭代次数就可以了

不同的损失函数

部分损失函数会使训练变的慢

不同的攻击优化

虽然一阶优化技术易于计算且耗时较少,但二阶技术在摆脱鞍点周围的缓慢收敛路径方面效果更好

不同的 batch size

batchsize = 1时效果最好,且当数据集的类间差距较小时,效果较好

不同的图片分辨率

明显的,分辨率越小迭代的次数越少,训练的速度越快

不同的激活函数

这里很清楚的表明了激活函数会影响CPL攻击的成功率,并且通过对激活函数的比较和理论知识,得出,当我们影响了梯度的完整性和唯一性的时候,都能影响CPL攻击的成功率

我们观察到,ReLU自然会阻止使用梯度对训练数据进行全面重建,因为ReLU的负部分的梯度将为0,即那部分可训练的参数将停止对误差的变化做出反应,在优化过程中不会得到调整。这个垂死的ReLU问题剔除了CPL攻击所需的梯度信息。相比之下,Sigmoid和Tanh都是diff定的双射,可以以几乎无损的方式将梯度从一层传到另一层。LeakyReLU为ReLU的负数部分设置了一条略微倾斜的线,以减轻垂死的ReLU的问题,因此容易受到CPL攻击。

不同的压缩率

攻击评价度量(4种)

  • Attack success rate (ASR)

  • MSE

使用均方根偏差来衡量重建的输入x rec和真实输入x之间的相似度

  • SSIM

衡量两个图像之间的结构相似性是基于感知的模型[Wang, Z., Bovik, A.C., Sheikh, H.R., Simoncelli, E.P.: Image quality assessment: from error visibility to structural similarity. IEEE transactions on image processing 13(4), 600–612 (2004)],该模型认为图像退化是感知的变化

其中μ x和μ x0是x和x 0的平均值,σ 2 x和σ 2 x0是x和x 0的方差,σ xy是x和x 0的协方差

SSIM越接近1,图像重建方面的攻击质量就越好。SSIM的设计是为了改进传统的方法,如图像相似性的MSE。

  • Attack iteration

总体表现出本文的CPL攻击模式优于深度梯度攻击以及梯度倒置攻击,并且表现出CPL更快、更有效、成功率更高、迭代次数更少,与此同时SSIM很高(为1最好)、MSE很低,表明重建数据的质量与私有训练数据几乎相同

一部分情况下(如下图),压缩率增大时,迭代次数反而在下降,这说明在梯度中有很多是非必要(不重要)的内容CPL方法在类很多的时候效果可能会更好,一种可能的原因是:因为当有很多类时,信息的梯度会更集中

文中给出的防御方法

1.加噪声(高斯噪声 / 拉普拉斯噪声)

2.本地多迭代几次,并将最后一次迭代的梯度进行上传,也就是说不是每次迭代的梯度数据都上传

论文 ❀《评价联邦学习中梯度泄漏攻击的框架》- A Framework for Evaluating Gradient Leakage Attacks in Federated Learning相关推荐

  1. 联邦学习安全之后门攻击

    本博客地址:https://security.blog.csdn.net/article/details/124067669 一.后门攻击定义 在联邦学习中,后门攻击是意图让模型对具有某种特定特征的数 ...

  2. 数据分析综述:联邦学习中的数据安全和隐私保护问题

    ©作者 | Doreen 01 联邦学习的背景知识 近年来,随着大量数据.更强的算力以及深度学习模型的出现,机器学习在各领域的应用中取得了较大的成功. 然而在实际操作中,为了使机器学习有更好的效果,人 ...

  3. 创新工场南京人工智能研究院执行院长冯霁:联邦学习中的安全问题

    近期,创新工场南京人工智能研究院执行院长冯霁做客雷锋网AI金融评论公开课,以"浅析联邦学习中的安全性问题"为题,详尽地讲解了联邦学习的特点.联邦学习的应用和安全防御对策等内容. 以 ...

  4. 平安科技王健宗:所有AI前沿技术,都能在联邦学习中大展身手

    「AI 技术生态论」 人物访谈栏目是 CSDN 发起的百万人学 AI 倡议下的重要组成部分.通过对 AI 生态顶级大咖.创业者.行业 KOL 的访谈,反映其对于行业的思考.未来趋势判断.技术实践,以及 ...

  5. 联邦学习中的non-iid总结

    最近研究联邦学习(federated learning,FL)中的non-iid的解决办法时遇到瓶颈,写成博客将最近的工作总结一下,希望有大佬看到这篇博客不吝赐教. 什么是non-iid 先从维基百科 ...

  6. 联邦学习中的数据异构性问题综述

    摘要 联邦学习中的数据异构性问题主要是由参与训练的各客户端的数据虽独立分布但不服从同一采样方法(Non-IID)所导致的,这一问题也导致模型精度的严重下降.如何缓解Non-IID带来的不利影响目前仍是 ...

  7. 联邦学习中的安全聚合SMPC

    目录 一.背景 1.1 联邦聚合与FedAVG 1.2 FATE 1.3 密钥协商(Key Agreement) 1.4 秘密共享(Secret Sharing) 二.安全聚合SMPC 2.1 原理 ...

  8. 【论文】联邦学习区块链 论文集(三)

    21.\color{#FF0000} 21.21. Privacy-Preserving Blockchain Based Federated Learning with Differential D ...

  9. 联邦学习中常见的Clients数据Non-IID非独立同分布总结

    联邦学习 写在前面 联合概率分布 联邦学习中客户端数据Non-IID分布的五种类型: 类型1:Feature distribution skew (convariate shift) 类型2:Labe ...

最新文章

  1. Ubuntu 14.04上使用CMake编译MXNet源码操作步骤(Python)
  2. Intel Realsense D435报错 RuntimeError: MFCreateDeviceSource(_device_attrs, _source) returned: HResult
  3. Springboot @Value获取配置文件中的值失效
  4. 京东笔试4.2-19:00随笔
  5. Linux学习总结(54)——Red Hat Enterprise Linux与CentOS的区别
  6. 聊聊这两天刷屏的OpenAI新作,你注意到CLIP了吗
  7. BT5的 U盘启动 制作
  8. 白化滤波器 matlab,白化滤波器-matlab-程序.doc
  9. 手机无法获取电脑热点ip地址
  10. 学习《软件工程》心得
  11. Android~ java.net.BindException: bind failed: EADDRINUSE (Address already in use)
  12. ElasticSearch---------------------step3,安装Kibana
  13. 马士兵mca课程java学习笔记
  14. 【python】pyi文件
  15. 2022年必读的10本经管好书
  16. APP被网信办点名下架还能重新上架吗?恢复上架流程请收好
  17. python中.mul()和.mul_(),.exp()和.exp_()区别
  18. 贵州学业水平测试信息技术软件,贵州2020年普通高中信息技术学业水平考试报名工作的通知...
  19. 质量体系-读大佬文章有感
  20. 什么是长尾关键词151

热门文章

  1. Office2003与Office2010共存
  2. 拒绝碰运气,导师人品这样了解!
  3. 《Linux运维实战:Centos7.6基于ansible一键离线部署mongodb4.2.23容器版副本集群》
  4. Android版本占有率
  5. 迁移pg之后org.postgresql.util.PSQLException: ERROR: could not find left sibling of block 4594 in index..
  6. 在充满不确定性的职场中,她只做了这一件事
  7. 青海推动牦牛青稞在内特色产业转型升级
  8. 公司要破产我该不该辞职?网友:破产了我还在那个公司干嘛
  9. 实现MVP的基本思路
  10. 云原生数据库:数据库的风口,你也可以起飞