联邦学习+梯度+梯度剪枝

联邦学习需要参与者在每一次的本地训练后,上传所更新的模型参数并与其他参与者共享,而参数更新中仍有可能包含所有者的敏感信息

解决方案:

加密方法(安全多方计算、同态加密)通过将明文编码为密文的方式,只允许特定人员解码,为数据隐私保护提供了有效手段,但这往往需要极大的计算开销,较难应用于实际的联邦学习场景中

数据扰动(差分隐私)通过将明文编码为密文的方式,只允许特定人员解码,为数据隐私保护提供了有效手段,但这往往需要极大的计算开销,较难应用于实际的联邦学习场景中

如果选择梯度剪枝的话是需要考虑选择哪一部分剪枝的梯度参与训练

(将梯度剪枝与加密的防御体系结合)

差分隐私与联邦学习 梯度剪枝

一般与轻量级进行结合吗?

基于梯度选择的轻量化差分隐私保护联邦学习

基于 Fisher 信息矩阵的 Dropout 机制,FisherDropout(差分隐私在什么地方使用呢?)

用差分隐私去解决——>轻量化、易部署

梯度剪枝方法:Federated DropoutFedDropout

采用完全客观的准确度与损失函数值作为评估标准(这个评估标准是怎么制定的呢?是否有理论依据?)
基于 Fisher 信息排序的 dropout 算法,通过优化选择梯度的一部分上传;由于 dropout 机制有利于减少梯度维度,应用于差分隐私保护方法中可以大大节约隐私预算
在差分隐私中,隐私预算\varepsilon是平衡安全性与可用性的关键参数 。决 定了差分隐私方法所添加噪声方差的大小。较小的值会使安全性变高,但也会令数据的可用性变得更差。
(差分隐私中主要的问题还是怎么处理隐私预算的值)
而在联邦学习中,用户通常需要在本地完成迭代以及噪声添加工作,这可能导致数据安全性与可用性的平衡更加困难。
当取值为 8 时,基于差分隐私保护的联邦学习在训练中可能需要额外使用 100 倍左右的数据量,才可达到与不含差分隐私的联邦学习一致的模型准确率。而在集中式学习中,这往往只需要付出大约 10 倍的训练量。

轻量化联邦学习的方式:剪枝、量化、蒸馏

满足差分隐私的联邦学习:与经典的联邦学习不同的地方为增加了客户端随机扰动参数

梯度剪枝:
客户端首先采用FisherDropout 算法,以神经元为单位对全局模型进行裁剪保留其中的一部分作为子模型。该裁剪过程一般被称为“dropout”。值得注意的是,每个客户端都需要根据自己的数据分布、通信状况与计算能力来独立地确定各自的裁剪方式与dropout 率,这将导致每个客户端最终所生成的子模型可能是异构的。

使用差分隐私进行数据扰动:

采用了差分隐私保护方法对待上传的数据进行扰动。被扰动后的数据将带有随机性,使得服务器很难根据这些参数反推客户端的原始数据。

由于每个客户端所上传的子模型是异构的,这也要求客户端在上传模型时还需要额外发送每个参数的位置信息。
服务器可以根据每位用户上一轮的位置信息发送新的子模型参数,而不用发送全局模型;或者考虑到收敛速度,可以每隔固定的迭代轮次便发送一次全局模型,以便让每个客户端确定新的子模型的位置。
一般是讲述梯度剪枝的原理与进行隐私性证明

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

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

相关文章

Numpy(三)Numpy的函数与排序

Numpy(三)Numpy的函数与排序 一、通用函数 *通用函数使得Numpy数组操作用于数组中的每一个函数。它通常用C语言实现,可以提升执行效率。 1.1数学运算函数 1.1.1算数运算函数:通常使用的加、减、乘、除、乘方等数学运算符号 ①…

【广州华锐互动】VR高层火灾应急疏散演练提供一种无风险的逃生体验

在科技进步的今天,我们已经能够利用虚拟现实(VR)技术来模拟各种紧急情况,其中就包括高楼火灾逃生。VR高层火灾应急疏散演练系统是一种新兴的技术,它使用虚拟现实环境来模拟高楼火灾的实际情况,为人们提供一…

离线 notepad++ 添加到右键菜单

复制下面代码,修改文件后缀名为:reg Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\NotePad] "Notepad" "Icon""D:\\Notepad\\notepad.exe,0"[HKEY_CLASSES_ROOT\*\shell\NotePad\Command] "D:\…

基于水基湍流优化的BP神经网络(分类应用) - 附代码

基于水基湍流优化的BP神经网络(分类应用) - 附代码 文章目录 基于水基湍流优化的BP神经网络(分类应用) - 附代码1.鸢尾花iris数据介绍2.数据集整理3.水基湍流优化BP神经网络3.1 BP神经网络参数设置3.2 水基湍流算法应用 4.测试结果…

Discuz户外旅游|旅行游记模板/Discuz!旅行社、旅游行业门户网站模板

价值328的discuz户外旅游|旅行游记模板,本模板需要配套【仁天际-PC模板管理】插件使用。 模板说明 1、模板页面宽度1200px,简洁大气,较适合户外旅行、骑行、游记、摩旅、旅游、活动等类型的论坛、频道网站; 2、所优化的页面有&…

PixMIM论文笔记

论文名称:PixMIM: Rethinking Pixel Reconstruction in Masked Image Modeling 发表时间:2023 年 3 月 4 日 作者及组织:上海人工智能实验室、西蒙菲莎大学、香港中文大学 GitHub:https://github.com/open-mmlab/mmselfsup/tree/d…

数据结构上机实验——栈和队列的实现、栈和队列的应用、进制转换、约瑟夫环问题

文章目录 栈和队列上机实验1.要求2.栈的实现(以顺序栈为例)3.队列的实现(以顺序队列为例)4.利用栈实现进制转换5.利用队列解决约瑟夫环问题6.全部源码Stack.hQueue.htest.cpp 栈和队列上机实验 1.要求 1.利用栈的基本操作实现将任…

uniapp-vue3-微信小程序-标签选择器wo-tag

采用uniapp-vue3实现, 是一款支持高度自定义的标签选择器组件&#xff0c;支持H5、微信小程序&#xff08;其他小程序未测试过&#xff0c;可自行尝试&#xff09; 可到插件市场下载尝试&#xff1a; https://ext.dcloud.net.cn/plugin?id14960 使用示例 <template>&…

WPS、Excel表格增加一列,序列1到任意大小 / 填充某个范围的数字到列

Excel添加一列递增的数字方法有如下&#xff1a; 一、最常用的&#xff0c;使用鼠标放到右下角下拉增加 1、选中起始框的右下角&#xff0c;直到显示黑色实心十字 2、一直向下拖动 3、成功 这种填充方式是最常用的&#xff0c;100以内都可以轻松瞬间完成 1~100填充 但是如果…

Jmeter执行接口自动化测试-如何初始化清空旧数据

需求分析&#xff1a; 每次执行完自动化测试&#xff0c;我们不会执行删除接口把数据删除&#xff0c;而需要留着手工测试&#xff0c;此时会导致下次执行测试有旧数据我们手工可能也会新增数据&#xff0c;导致下次执行自动化测试有旧数据 下面介绍两种清空数据的方法 一、通过…

Spring framework Day19:Spring AOP xml配置示例二

一、开始学习 1、新建项目&#xff0c;结构如下 2、添加 spring 依赖 <!-- spring 的核心依赖 --><dependencies><!-- https://mvnrepository.com/artifact/org.springframework/spring-context --><dependency><groupId>org.springframework&l…

将 vue2+ElementU 项目打包成安卓app

目标&#xff1a;将vue项目打包成安卓app 工具&#xff1a;HbuilderX 1.在HbuilderX中创建一个 5App 项目 创建好的app项目目录 2.将vue项目打包 2.1 在 vue.config.js 中添加公共路径&#xff08;解决打包后的app图片不显示问题&#xff09; module.exports defineConfig(…

软件测试(一)概念

软件测试 软件测试的生命周期&#xff1a; 需求分析→测试计划→ 测试设计、测试开发→ 测试执行→ 测试评估 需求分析&#xff1a;需求是非完整&#xff0c;需求是否正确测试计划&#xff1a;确定软件由谁测试&#xff0c;什么时候开始&#xff0c;什么时候结束&#xff0c;…

Java Kids-百倍提速【Mac IOS】

引言&#xff1a;当今社会&#xff0c;创新和提升效率已经成为了大家普遍的追求。无论是个人生活还是企业经营&#xff0c;我们都希望能够以更高的效率完成任务&#xff0c;节省时间和资源。因此&#xff0c;提速成为了一种时代的要求&#xff0c;而"Java Kids 百倍提速&q…

博客项目(前后端分离)(servlet实战演练)

作者简介&#xff1a;大家好&#xff0c;我是未央&#xff1b; 博客首页&#xff1a;未央.303 系列专栏&#xff1a;实战项目 每日一句&#xff1a;人的一生&#xff0c;可以有所作为的时机只有一次&#xff0c;那就是现在&#xff01;&#xff01;&#xff01;! 文章目录 前言…

Vue 网络处理 - axios 异步请求的使用,请求响应拦截器

目录 一、axiox 1.1、axios 简介 1.2、axios 基本使用 1.2.1、下载核心 js 文件. 1.2.2、发送 GET 异步请求 1.2.3、发送 POST 异步请求 1.2.4、发送 GET、POST 请求最佳实践 1.3、请求响应拦截器 1.3.1、拦截器解释 1.3.2、请求拦截器的使用 1.3.3、响应拦截器的使用…

Umi3实战教程

一、框架介绍 umi是蚂蚁金服的前端开发框架&#xff0c;它内置了路由、web/移动端UI库、数据流、权限控制、常用hooks库、构建、部署、测试、等等一些工具&#xff0c;几乎涵盖了正常前端开发要用到的所有工具。 二、环境准备 pnpm 相比npm、yarn&#xff0c;pnpm更小更快扁平…

虚幻引擎:如何实现骨骼重定向

前言&#xff1a; 为什么需要做骨骼重定向&#xff0c;因为当前角色素材没有对应的动画&#xff0c;这时候我们可以找个身高体型差不多的带有动画素材的另一个角色来做重定向&#xff0c;这样我们就可以得到我们需要的动画素材了。 1.首先创建两个骨骼的IK绑定 2.然后给两个骨骼…

【算法|前缀和系列No.2】牛客网 DP35 【模板】二维前缀和

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【牛客网刷题】 &#x1f354;本专栏旨在提高自己算法能力的同时&#xff0c;记录一下自己的学习过程&#xff0c;希…

发面试题:(四)synchronized和lock区别

synchronized 关键字 synchronized关键字解决的是多个线程之间访问资源的同步性&#xff0c;synchronized关键字可以保证被它 修饰的方法或者代码块在任意时刻只能有一个线程执行。 另外&#xff0c;在 Java 早期版本中&#xff0c; synchronized属于重量级锁&#xff0c;效率…