联邦学习的梯度重构

news2024/12/28 3:55:48

梯度泄露的攻击方法:深度泄露梯度(DLG)——>在高度压缩的场景下是失效的

原因:梯度压缩(可减小通信开销)——>存在信息损失<——从而DLG方法效果有限

但是这本身存在的信息损失怎么解决呢?会对所要达成的目标有影响吗?

揭示在梯度压缩防御设置下攻击者可获取多少隐私数据

度量的标准是什么呢?

在高度压缩的场景下梯度泄露攻击的方法:

  • 基于属性推断的梯度泄露攻击:攻击者从共享梯度推断出原始私有训练数据的具体属性,以此作为先验信息补偿进行梯度泄露攻击

基于属性推断的梯度泄露攻击是一种针对深度学习模型的攻击方式。在这种攻击中,攻击者利用模型在训练过程中泄漏的梯度信息,推断出训练数据中包含的具体属性这些属性可以包括性别、年龄、种族等等,攻击者利用这些属性作为先验信息,进一步进行攻击,例如针对特定群体的歧视性攻击。
梯度泄露是指在训练深度学习模型时,模型参数的更新算法会使用到训练数据的梯度信息。这些梯度信息包含了训练数据中的敏感信息,如果这些信息被攻击者获取,就可以用来推断出训练数据的具体属性。基于属性推断的梯度泄露攻击就是利用这种泄露的梯度信息,对训练数据进行推断,从而获取其中的具体属性。
这种攻击方式对深度学习模型的安全性造成了严重威胁。为了防止这种攻击,研究人员提出了一些防御方法,例如对抗训练、梯度掩盖等。这些方法可以增加模型的鲁棒性,防止攻击者利用梯度信息进行属性推断攻击

攻击者首先准备一个辅助数据集,该数据集中包含数据- 属性对;然后,攻击者将这些数据输入联邦学习的全局模型中 (这个全局模型是如何获得呢) ,从而获得梯度- 属性对;最后,攻击者使用这些梯度 - 属性对来训练一个判别网络。在攻击阶段,攻击者只需要将捕获的梯度输入到已训练好的判别网络中,即可推断私有训练数据属性。
  • 基于特征推断的梯度泄露攻击:在基于属性推断的梯度泄露攻击失效的情况下,攻击者从共享梯度推断出原始训练数据的低维向量表征,以此作为先验信息补偿进行梯度泄露攻击

这种攻击方法将梯度信息视为一种泄露的信号,通过分析这个信号,攻击者可以获取到训练数据中的有用信息。
在这种攻击中,攻击者利用梯度信息推断出原始训练数据在某个低维空间中的表征。这个低维空间可能是一个由模型学到的特征空间,或者是一个由攻击者预先设定的空间。攻击者利用推断出的低维向量表征作为先验信息,进一步进行攻击。
基于特征推断的梯度泄露攻击相对于基于属性推断的梯度泄露攻击更加复杂,因为它需要攻击者对模型的内部结构有一定的了解。

  • 基于特征生成的梯度泄露攻击:在此方法中,攻击者进一步改进了基于特征推断的梯度泄露攻击,从共享梯度中推断出原始数据的特征后,利用该特征生成一张初始化图像,以此作为先验信息补偿进行梯度泄露攻击

基于特征推断的梯度泄露攻击和基于特征生成的梯度泄露攻击都是针对深度学习模型的攻击方式。这两种攻击方式的主要目标是推断出原始训练数据的特征,并利用这些特征进行攻击。不同之处在于,基于特征生成的梯度泄露攻击在推断出原始数据的特征后,进一步生成了一个初始化图像,作为先验信息进行梯度泄露攻击。
在这两种攻击方法中,攻击者首先需要从共享的梯度信息中推断出原始数据的特征。这些特征可以被看作是原始数据在某个特征空间中的表示。然后,攻击者利用这些推断出的特征生成一张初始化图像。这个初始化图像可以作为先验信息,帮助攻击者更好地进行梯度泄露攻击。
基于特征生成的梯度泄露攻击的优点在于,它不仅可以推断出原始数据的特征,还可以生成一个初始化图像。这个初始化图像可以作为攻击者的参考,使得攻击者更容易地进行梯度泄露攻击。

  • 基于梯度生成的梯度泄露攻击:为了解决前三种攻击方式重构效率较低且不适用于批量数据重构的问题,该方法中的攻击者直接利用生成网络从共享梯度中生成一张图像,以此直接 作为私有数据重构结果。(我咋理解这个方法就是类似于DLG方法呀

基于梯度生成的梯度泄露攻击是针对深度学习模型的一种攻击方式。与基于特征推断的梯度泄露攻击和基于特征生成的梯度泄露攻击不同,基于梯度生成的梯度泄露攻击直接从共享的梯度信息中生成一张图像,作为私有数据重构的结果
这种攻击方法的优点在于,它可以直接从共享梯度中生成一张图像,而不需要进行特征推断或生成初始化图像。这意味着攻击者可以更有效地利用梯度信息进行数据重构。此外,这种攻击方法还可以应用于批量数据重构,而不仅仅是对单个数据点进行重构。
然而,需要注意的是,基于梯度生成的梯度泄露攻击仍然依赖于梯度信息,因此,它也可能会受到梯度泄露防御方法的抵抗。为了防止这种攻击,研究人员需要开发新的防御方法,以提高模型的安全性和鲁棒性

视觉效果客观数值指标进行验证

联邦学习中的梯度出现挑战:

  1. 暴露原始训练数据的某些属性
  2. 利用生成对抗网络生成与私有训练图像类似的图片
尽管许多研究已经证实从梯度中重构原始数据的可能性 ,这些研究通常基于一个前提假设, 即用户上传的梯度是全梯度。
联邦学习系统更倾向于使用梯度压缩方法 ,以降低通信带宽,即上传高度压缩的梯度。这将使得基于全梯度的数据重构攻击算法可能失效。
在高压缩的情况下攻击方是如何从梯度中复原数据?
生成对抗网络(模型反演攻击,MIA):没有利用共享的梯度信息,而是只用了最后训练好的全局模型参数信息,因此这种类型的攻击 只有当每个类下的所有数据分布基本一致时才有效, 每一类下的图像分布差异很大的时候则会导致重构的图像缺乏细节或与原始数据的感知相似性极低
DLG 基于这样一个假设,如果两个数据产生的梯度越相似,则这两个数据本身也是越相似的
iDLG:共享梯度中会泄露原始数据的标签;标签被提取出后,攻击的过程就不需要再更新标签了,只需要不断优化初始的虚假图像,从而减小了搜索空间,加速了收敛过程。但他们的做法缺陷在于只能推断当批大小 (Batch Size) 为 1 时的真实标签,而当批大小大 1 时则无法推断了。
梯度的批量标签泄漏 (LLG) 方法:从共享梯度中获得用户批量训练数据标签的攻击。LLG利用梯度的方向和大小来确定一个标签的存在或不存在,并且可以很好地扩展到任意批大小和多个类的主任务中,LLG 可以在当批大小为 128 时,标签推断的准确率达到 90% 以上。
IG :  DLG 中优化目标中的距离表示从欧式距离变成了余弦相似性,并且对虚假数据进行了正则惩罚。此外,IG 的目标函数中对不同层的梯度设置了不同的权重优化器也从 DLG 中的 LBFGS 改为了 Adam 优化器。他们通过实验证实了这样的设置可以产生比 DLG 更好的重构结果并且支持批量数据重构。
虚假数据的定义标准是什么?
STG:进一步对损失函数(优化目标)进行了改进在目标函数中加入了更多的正则项(包括了对网络批归一化层的规范化),同时并行开启多个独立的优化过程,最终把不同优化过程得到的结果进行配准得到最终的重构图像。实验结果表明他们的方法可以在更大批大小下恢复出高分辨率的图像,但大部分恢复的图像与原始图像依然存在细节上的差异,甚至出现位置错位的问题,其真实的恢复率只有 28%
在辅助数据集中预先训练一个生成器作为先验,然后不断优化生成器的输入,使得其产生的图像所对应的梯度与真实的梯度不断接近,该方法不但引入了先验,且大大降低了搜索空间,从而提高了优化效率和重构质量
先随机初始化一张噪点图像,然后再不断对其进行优化
上传更新后的模型参数本身仍会存在泄露:两个新的框架 (DLM 和 DLM+) 证明了在联邦学习场景下,传输模型权重也同样可能泄露参与方的私有训练数据
基于解析的梯度泄露攻击:不基于优化的方案来从梯度中窃取原始的私有训练数据;相比于基于优化的攻击最大的区别在于它是有闭式解的,因此,攻击推理速度上也是要快于基于优化的方法
基于优化的攻击方法通常需要通过不断的迭代和调整来寻找最佳解决方案,而基于闭式解的攻击则直接提供一个明确的解决方案。
闭式解是指一个问题的解决方案可以通过一组明确的数学表达式或算法来表示。这意味着,一旦我们有了问题的具体条件,就可以直接计算出解决方案,而不需要进行进一步的优化或调整。
闭式解是指一个问题的解决方案可以通过一组明确的数学表达式或算法来表示。这意味着,一旦我们有了问题的具体条件,就可以直接计算出解决方案,而不需要进行进一步的优化或调整。
提出了通过仿射函数的输入可以直接从其权值和偏差的梯度中来计算获得
局限性:在于它只能在批大小为 1 的场景下对数据进行重构,而对于批大小大于 1 的场景,则仅能
重构出一张非自然图像,该图像中的每个像素为批数据中所对应像素点的平均值, 因此这导致该方法在大多现实联邦学习场景(即,训练过程的批大小大于 1)中是无法使用的。
该方法的另外一个前提是输入必须一开始经过一个全连接层, 因此如果要恢复图像数据是基本上不可行的
高度压缩梯度的联邦学习场景下的敌手优化目标:
旨在适应梯度被高度压缩的攻击场景,并使压缩后的虚假梯度与捕获的梯度之间的距离最小化。
基于属性推断的梯度泄露攻击方法 ,该方法通过预先从梯度中推断出原始数据的属性来弥补梯度压缩所带来的信息损失。敌手首先从压缩的梯度中推断出原始图像的属性,然后在辅助数据集中搜索一条与推断属性最接近的图像,并以此作为初始化的虚假数据。随后,通过不断优化该虚假图像来逼近原始的真实图像。
基于属性推断的梯度泄露攻击方法增加了先验,更好地弥补了梯度压缩导致的信息损失。

基于特征的梯度泄露攻击方法:基于特征推断的攻击方法,它可以从梯度中推断出原始数据的特征,并自动提取辅助数据集中的抽象特征,避免了对手动标注的二元属性值的需求。

第二种方法是基于特征生成的攻击方法,它可以利用从梯度中预先推断出的特征来生成图像,并扩大了虚假图像的空间,使得初始化虚假图像更有希望接近原始的真实图像,进而提高图像的重构效果。

基于梯度生成的梯度泄露攻击方法:该方法不需要通过特征推断来生成虚假图像,而是使用基于解析的方法从全连层的梯度中推断出原始的特征图,再将其输入一个预先训练好的生成网络,直接产生原始的图像数据。
DLG在原始论文中提出了一种较好的防御方式,即使用 topK 算法对梯度进行压缩,且当压缩率低于 70%(全文中所提到的梯度压缩率均定义为保留的梯度数与原始总梯度数的比例)时,DLG 基本上将完全失效。
  1. 参数服务器由于仅有模型聚合和分发的功能,它无法知道模型每个神经元所对应的真实标签是什么。
  2. 敌手不可能事先拥有与私有训练数据分布一致的辅助数据。
设计了一种从压缩的梯度中推断原始数据属性的方法。在该方法中, 敌手需要准备大量包含原始数据本身及其属性值的辅助数据集,并在该数据集上训练多个属性推断模型 ,其中每个推断模型均为二分类模型 (这样的假设也是不合理的呀)
属性相似性度量指标,该指标结合了属性推断模型的输出分类置信值与模型本身的曲线下面积 (Area Under The Curve, AUC),从而给两个属性向量进行打分。分数越高表示两个属性向量越
接近。在攻击阶段,敌手先通过梯度推断出原始数据的 N 个属性得分,然后再利用属性相似性度量指标对推断的属性向量与辅助数据集中的人为标注的属性向量进行两两比较,并选取出得分最高的标注属性向量所对应的图像作为虚假初始化图像
参数服务器需要了解以下信息:首先,它需要知道要训练的全局模型的神经网络结构以及每次迭代模型训练后对应的参数,即可以获取当前的联邦学习模型以及各个参与方的共享梯度。
合理的优化目标应该是敌手通过不断优化一张虚假图像,使其产生的虚假梯度经过与参与方一致的压缩算法后得到的梯度与捕获梯度(压缩的真实梯度 g c t)的相似度。当此相似度很高时,即可认为此时的虚假数据为最终重构的结果。
梯度压缩本身是一个不可微的操作,以 topK 这种较为流行的压缩算法为例,它直接将低于某阈值的值置为 0 ,而为了优化虚假图像使其产生的压缩梯度与捕获梯度越来越相似,优化目标必须是二阶可微的,而直接置 0 的运算是一个不可微的过程。
梯度压缩是一种用于减少神经网络训练中梯度消失或梯度爆炸问题的技术。然而,梯度压缩本身是一个不可微的操作,因为它不满足链式法则。

在梯度压缩中, 通常会使用一种阈值来决定哪些梯度值需要被压缩。topK 是一种流行的压缩算法,它会将低于某个阈值的梯度值置为 0。这种操作是不可微的,因为它直接将梯度值设置为 0,而不是通过一个可微的函数来压缩梯度。

如果优化目标是使压缩后的梯度与原始梯度尽可能相似,那么这个优化目标必须是二阶可微的。这是因为梯度消失或梯度爆炸问题通常与一阶导数有关,而二阶导数可以提供更丰富的信息来优化梯度。然而,直接将梯度值置为 0 的操作不满足二阶可微性,因此可能会导致优化困难。

因此,如果要使用梯度压缩来解决梯度消失或梯度爆炸问题,那么需要选择一种可微的压缩算法,或者使用其他技术来增加梯度的信息量。

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

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

相关文章

前端刷题 | 网站

W3Cschoolhttps://www.w3cschool.cn/exam 计算机方面的知识涵盖较全 牛客网 应届生招聘题库&#xff0c;校招实习笔试面试真题 力扣 前端方面的题目较为基础&#xff0c;基本不考复杂算法题 稀土掘金https://juejin.cn/search?query%E5%89%8D%E7%AB%AF%E9%9D%A2%E8%AF%95&a…

基因表达分析聚类分析

基因表达分析聚类&分析 1. Introduction to gene expression analysis Technology: microarrays vs. RNAseq. Resulting data matricesSupervised (Clustering) vs. unsupervised (classification) learning 微阵列技术&#xff1a; 制备DNA探针阵列并进行互补性杂交。 …

(2)Nmap

笔记目录 渗透测试工具(1)wireshark 渗透测试工具(2)Nmap渗透测试工具(3)Burpsuite 1.工具简介 (1)定义 ①功能 网络扫描和嗅探工具包&#xff0c;三个主要基本功能&#xff1a; 探测一组主机是否在线 扫描主机端口、嗅探所提供的网络服务 推断出主机所用的操作系统 ②namp …

配置Linux

首先安装VMware&#xff1a; 安装说明&#xff1a;&#xff08;含许可证的key&#xff09; https://mp.weixin.qq.com/s/XE-BmeKHlhfiRA1bkNHTtg 给大家提供了VMware Workstation Pro16&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1q8VE3TkPzDnM3u9bkTdA_g 提取码&…

【【萌新的FPGA学习之快速回顾 水 水 】】

萌新的FPGA学习之快速回顾 水 水 上一条FPGA的更新在9 25 并且2个礼拜没写 verilog 了 正好 刷新一下记忆 FPGA CPU DSP 的对比 在数字电路发展多年以来&#xff0c;出现了 CPU、DSP 和 FPGA 三种经典器件&#xff0c;每个都是具有划时代意义的器件。CPU、DSP 和 FPGA 都有各…

[SQL开发笔记]在windows系统安装Postgres

一、软件简介 PostgreSQL是一种自由软件的对象-关系型数据库管理系统&#xff08;ORDBMS&#xff09;&#xff0c;它以加州大学计算机系开发的POSTGRES&#xff0c;4.2版本为基础。PostgreSQL支持大部分的SQL标准并且提供了很多其他现代特性&#xff0c;如复杂查询、外键、触发…

5G来临,迎客莱带你探索运营商大数据的应用

随着5G时代的来临&#xff0c;不仅在算力的基础上得到了加强和保障&#xff0c;同时也丰富了计算的方式和模式&#xff0c;如边缘计算、霾计算等。计算方式和模式的改变&#xff0c;对于运营商来说&#xff0c;意味着更丰富的数据维度&#xff0c;更鲜活的数据和更强大的数据处…

1021 个位数统计

#include<bits/stdc.h> using namespace std; map<int,int>mp; int main(){string str;cin>>str;for(auto t:str){int kt-0;mp[k];}for(auto t:mp){cout<<t.first<<":"<<t.second<<endl;} }

find_element_by_id()方法的使用上。这个方法已经被弃用,建议使用find_element()方法替代。

from selenium import webdriver path chromedriver.exe browser webdriver.Chrome(path) url https://www.baidu.com browser.get(url) button browser.find_element_by_id(su) print(button) 修改后代码 from selenium import webdriver path chromedriver.exe browse…

国密https访问

前言 现在的SSL的加密算法实际上主要是国际算法&#xff0c;包括JDK&#xff0c;Go等语言也仅支持国际算法加密&#xff08;毕竟是国外开源项目&#xff09;&#xff0c;hash。随着国密算法的普及&#xff0c;比如openssl就支持国密了&#xff0c;还要新版本的Linux内核也开始…

识别准确率竟如此高,实时语音识别服务

前言 本文将介绍一个准确率非常高的语音识别框架&#xff0c;那就是FunASR&#xff0c;这个框架的模型训练数据超过几万个小时&#xff0c;经过测试&#xff0c;准确率非常高。本文将介绍如何启动WebSocket服务和Android调用这个服务来实时识别&#xff0c;一边说话一边出结果…

2.卷积神经网络(CNN)

一句话引入&#xff1a; 如果我们要做图像识别&#xff0c;用的是一个200x200的图片&#xff0c;那么BP神经网络的输入层就需要40000个神经元&#xff0c;因为是全连接&#xff0c;所以整个BP神经网络的参数量就是160亿个&#xff0c;显然不能这样来训练网络&#xff0c;所以我…

【RNA structures】RNA转录的重构和前沿测序技术

文章目录 RNA转录重建1 先简单介绍一下测序相关技术2 Map to Genome Methods2.1 Step1 Mapping reads to the genome2.2 Step2 Deal with spliced reads2.3 Step 3 Resolve individual transcripts and their expression levels 3 Align-de-novo approaches3.1 Step 1: Generat…

MySQL——八、MySQL索引视图

MySQL 一、视图1、什么是视图2、为什么需要视图3、视图的作用和优点4、创建视图5、视图使用规则6、修改视图7、删除视图 二、索引1、什么是索引2、索引优缺点3、索引分类4、索引的设计原则5、创建索引5.1 创建表是创建索引5.2 create index5.3 ALTER TABLE 6、删除索引7、MySQL…

英语——歌诀篇——歌诀记忆法

介词用法速记歌 年月季前要用in&#xff0c; 日子前面却不行。 遇到几号要用on&#xff0c; 上午下午又用in。 要说某时上下午&#xff0c; 用on换in才可行。 午夜黄昏和黎明&#xff0c; 要用at不用in。 差儿分到几点&#xff0c; 写个“to”在中间。 若是几点过几分&#xf…

操作系统【OS】进程的通信

共享存储 各个进程对共享空间的访问应该是互斥的&#xff08;可以使用P、V操作&#xff09;低级通信 基于数据结构的共享速度慢、限制多高级通信 基于存储区的共享数据的形式、存放的位置由通信进程控制速度快 消息传递 进程间的数据交换以格式化的消息为单位 消息头&#…

《windows核心编程》第2章 UNICODE字符

一、基础内容 1.1 UNICODE和UTF-8 下面是我个人的理解 UNICODE用2个字节来代表一个字符 UTF-8用1-4个字节来表示一个字符。可变长度的实现原理是ASCII字符只有7位&#xff0c;首位如果是1表示不是ASCII&#xff0c;说明这个字符和后面的字符联合起来形成新字符。 1.2 字符的…

【经历】跨境电商公司目前已在职近2年->丰富且珍贵

我入职了跨境电商公司 *背景 上篇说我在2021-11月离职了&#xff0c;交接期间已经拿到了新公司的offer&#xff0c;然后因上家公司项目交接时间比较长(原因在上篇)&#xff0c;导致新公司这边延迟了两次入职的时间&#xff0c;最后结果是直接无缝衔接了新公司&#xff08;周五…

#电子电器架构 —— 车载网关初入门

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 PS:小细节,本文字数7000+,详细描述了网关在车载框架中的具体性能设置。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 没有人关注你。也无需有人关注你。你必须承认自己的价值,你不能站在他…

IOS(刘海/留海/流海)屏幕判断

IPhone 8 没刘海屏幕 示例代码: // // ViewController.m // IOS_SAFEAREA_TEST // // Created by Hacker X on 2023/10/14. //#import "ViewController.h"interface ViewController ()endimplementation ViewController- (void)viewDidLoad {[super viewDidLoad]…