一种有效的隐私保护联邦学习方法-文章翻译

一种有效的隐私保护联邦学习方法

摘要

联邦学习已成为协作学习和隐私保护学习的一种很有前途的方法。联合学习过程中的参和者通过交换模型参数而不是实际的训练数据(他们可能希望保持私有)来合作训练模型。然而,参数交互和生成的模型仍然可能会披露有关所用训练数据的信息。为了解决这些隐私问题,已经提出了几种基于差异隐私和安全多方计算(SMC)等的方法。它们通常会导致较大的通信开销和较慢的训练时间。在本文中,我们提出了一种基于函数加密的SMC协议的隐私保护联邦学习方法HbridAlpha。该协议简单、高效,对退出的参与者具有弹性。我们使用联邦学习过程在MNIST数据集上训练CNN,评估我们关于训练时间和交换数据量的方法。对现有基于加密的SMC解决方案的评估表明,Hybridalpha可以平均减少68%的训练时间和92%的数据传输量,同时提供与现有解决方案相同的模型性能和隐私保证。

1 引入

机器学习(ML)已在工业界和学术界广泛应用于各种领域[23,26]。虽然传统的ML方法依赖于集中管理的训练数据集,但隐私考虑促使人们对分散学习框架感兴趣,在这种框架中,多个参与者协作训练ML模型,而不共享各自的训练数据集。联邦学习(FL)[25,28]被认为是一个分散的过程,可以扩展到数千名参与者。由于培训数据不会离开每个参与者的领域,FL适合于对数据共享敏感的用例。这包括医疗保健、金融服务和其他对隐私特别敏感或受监管要求约束的场景。在FL中,每个参与者在本地训练一个模型,并且只与其他人交换模型参数,而不是主动的敏感训练数据。一个实体调用不同参与者的模型参数。通常,聚合器是一个中心实体,它还将合并的模型参数重新分配给所有参与者,但也使用了其他拓扑,例如,将聚合器与每个参与者共同定位。然而,这种方法仍然存在隐私风险:学习阶段的推理攻击已经被[30]提出;从经过培训的模型中获取私人信息已在[37]中得到证明;[19]中提出了一种模型反转攻击。为了解决这种隐私泄露问题,针对学习框架[1,31]提出了差异隐私[15,17],其中可信聚合器控制隐私暴露,以保护模型输出的隐私。类似地,[32]建议将差异隐私技术和安全多方计算(SMC)相结合,以支持对来自不同数据提供商的私有数据进行隐私保护分析,而[6]在故障鲁棒协议中结合了秘密共享和认证加密,以安全聚合高维数据。受混合方法[32]的启发,最近的一篇论文[38]也提出了一种混合解决方案,该解决方案提供了强大的隐私保障,同时仍然支持良好的模型性能。这种混合方法结合了降噪差分隐私方法和SMC协议保护,其中底层的安全基础是加性同态加密,即阈值Paillier系统[11]。该混合方法虽然具有良好的模型性能和隐私保障,但训练时间长,数据传输成本高,且不能处理FL过程中参与者退出的问题。在表1中,我们从威胁模型、隐私保障和所提供的特性等方面总结了现有的隐私保护方法。
在这里插入图片描述

我们认为,一个保护隐私的FL框架应该努力实现强大的隐私保障、高通信效率和对变化的弹性。如表1所示,提供隐私保障的方法会导致大量的通信回合,从而大大增加FL系统的培训时间。为了应对上述挑战,我们提出了一种有效的隐私保护方法Hybridalpha。Hybridalpha使用功能加密来执行SMC。使用功能加密,我们定义了一种简单有效的隐私保护FL方法,该方法还支持在学习过程中不断变化的参与者群体。我们将主要贡献总结如下:

  • 我们提出了一种有效的隐私保护FL方法HbridAlpha,它采用了一种差分隐私机制,并从多输入函数加密方案中定义了SMC协议。我们对该方案进行了调整,并加入了其他条款,以降低好奇的聚合者和串通参与者推断私人信息的风险。
  • 我们在理论上和实验上实现并比较了函数加密方案与常见的传统加密方案,如加法同态加密及其变体,后者通常用于SMC。我们的基准测试结果将指导未来在为FL选择适当的SMC时采用这些密码系统。
  • 我们描述了一种混合方法的实现,并将其应用于卷积神经网络。在MNIST数据集上的实验结果表明,我们的Hybridalpha框架在训练时间和通信成本方面都有效率的提高,同时提供了与其他方法相同的模型性能和隐私保证。
  • 同时,我们展示了一个动态参与者群体问题的解决方案,这表明我们提出的框架对参与者的退出或加入具有鲁棒性。我们还分析了HybridAlpha框架在可信TPA、诚实但好奇的聚合器和部分不诚实的参与者中定义的威胁模型下的安全和隐私保障。

据我们所知,这是第一种保护隐私的联邦学习方法,它演示了如何利用函数加密来防止某些推理攻击,而这些攻击可能是通过天真地应用这种密码系统而可能发生的。我们证明,与现有解决方案相比,我们的方法具有更好的模型性能、更强的隐私保证、更低的训练时间和更高效的通信。

3 具体架构

在本节中,我们将介绍用于隐私保护的联邦学习的混合框架的具体构造。我们的框架可防止来自好奇聚合器的推理攻击,并限制共谋参与者的推理能力,详见下文的威胁模型。
图1展示了HybridAlpha的概述。参与者需要协作学习机器学习模型,而无需与系统中的任何其他实体共享其本地数据。他们同意只与聚合器共享模型更新。该实体负责接收来自多个参与者的模型更新,以构建通用的机器学习模型。
在这里插入图片描述
参与者希望在FL过程中保护他们的数据不受任何推理攻击和最终模型的影响。为此,他们加入了HybridAlpha,它有一个第三方授权机构(TPA)。该实体提供密钥管理服务,该服务启动密码系统并向各方提供功能加密密钥。为了防止潜在的信息泄漏,HybridAlpha还包括一个推理预防模块,该模块限制了提供的功能加密密钥的类型。此模块旨在确保好奇的聚合器无法获得解密密钥,并限制潜在的共谋攻击。我们在§3.2.2中详细介绍了这个模块。

3.1 威胁模型

我们考虑以下威胁模型:
诚实但好奇的聚合器:我们假设聚合器正确地遵循算法和协议,但可以尝试通过检查过程中参与者发送的模型更新来学习私有信息。这是一个常见的假设[6,38]。
好奇和共谋的参与者:我们假设参与者可能通过检查与聚合器或最终模型交换的消息来共谋,试图从其他参与者那里获取私人信息。
受信任的TPA:该实体是一个独立机构,受参与者和集合体的广泛信任。在实际情况中,不同的经济部门已经有了可以扮演这一角色的实体。例如,在银行业,中央银行通常扮演完全受信任的角色,而在其他部门,第三方公司(如服务或咨询公司)可以体现TPA。我们还注意到,假设这种受信任和独立的机构是现有密码系统中的常见假设,这些密码系统将TPA用作基础设施[7,8,21]。TPA负责持有主私钥和公钥。TPA还可以执行公钥分发和函数派生密钥生成。同样,推理预防模块也是完全可信的。

我们假设在所有通信中都使用了安全通道,从而防止了中间人和琐碎的窥探攻击。我们还假设有一个安全的密钥提供过程(如DiffieHellman)来保护密钥机密性。最后,旨在创建拒绝服务攻击或注入恶意模型更新的攻击超出了本文的范围。
基于上述威胁模型,我们提出的隐私保护框架可以确保(i)半诚实聚合器无法学习除差异隐私机制预期输出之外的其他信息,以及(ii)恶意串通参与者无法学习其他诚实参与者的参数。具体的安全和隐私分析见§5。

3.2 详细操作

我们现在详细描述HybridAlpha的操作,并从介绍所使用的符号开始。设A是聚合器,SP是n个参与者的集合,每个参与者Pi持有自己的数据集Di。我们将待训练的学习算法表示为LFL。在本节中,我们首先介绍该框架在非对抗性设置下的操作,然后解释如何使用其他功能来防范威胁模型部分中定义的推理攻击。
3.2.1 Non-adversarial设置。HybridAlpha在非对抗设置下的操作如算法1所示。HybridAlpha以一组参与者、用于训练的算法和微分隐私参数御夫作为输入。
HybridAlpha通过系统中的TPA设置键启动。特别地,TPA运行§2.3中介绍的Setup和PKDistribute算法,因此每个参与者Pi有自己的公钥pki(行1-5)。我们注意到HybridAlpha允许新参与者加入培训过程,即使它已经开始。为此,TPA规定了比初始参与者集合更多的密钥(第2行)。这样,当新的参与者加入培训过程时,他们需要从TPA获得个人公钥,然后参与学习协议;所有这些都不需要其他参与者做出任何改变。
在这里插入图片描述

当接收到所有响应时,假设存在法定人数, A需要从TPA请求一个密钥,该密钥对应于加权向量 w p w_p wp,用于计算内积。也就是说,聚合器从基于 w p w_p w

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

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

相关文章

2024HW-->Wireshark攻击流量分析

在HW中,最离不开的,肯定是看监控了,那么就要去了解一些wireshark的基础用法以及攻击的流量!!!! 1.Wireshark的基本用法 比如人家面试官给你一段流量包,你要会用 1.分组详情 对于我…

Mac 配置 Aria2

文章目录 1. Aria2 安装1.1 安装 brew1.2 安装 Aria2 2. 配置 Aria22.1 创建配置文件 aria2.conf 和空对话文件 aria2.session2.2 编辑配置文件 aria2.conf 3. 开机启动设置3.1 创建用户启动文件3.2 管理自启动项 4. 配置 BT tracker 自动更新4.1 XIU2/TrackersListCollection …

总结:微信小程序中跨组件的通信、状态管理的方案

在微信小程序中实现跨组件通信和状态管理,有以下几种主要方案: 事件机制 通过事件机制可以实现父子组件、兄弟组件的通信。 示例: 父组件向子组件传递数据: 父组件: <child binddata"handleChildData" /> 子组件: Component({..., methods: { handleChildData(…

[leetcode] 25. K 个一组翻转链表

给你链表的头节点 head &#xff0c;每 k 个节点一组进行翻转&#xff0c;请你返回修改后的链表。 k 是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍&#xff0c;那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节点内部的值…

【智能排班系统】雪花算法生成分布式ID

文章目录 雪花算法介绍起源与命名基本原理与结构优势与特点应用场景 代码实现代码结构自定义机器标识RandomWorkIdChooseLocalRedisWorkIdChooselua脚本 实体类SnowflakeIdInfoWorkCenterInfo 雪花算法类配置类雪花算法工具类 说明 雪花算法介绍 在复杂而庞大的分布式系统中&a…

【Frida】【Android】 工具篇:ProxyPin抓包详解

&#x1f6eb; 系列文章导航 【Frida】【Android】01_手把手教你环境搭建 https://blog.csdn.net/kinghzking/article/details/136986950【Frida】【Android】02_JAVA层HOOK https://blog.csdn.net/kinghzking/article/details/137008446【Frida】【Android】03_RPC https://bl…

【漏洞复现】某科技X2Modbus网关多个漏洞

漏洞描述 最近某科技X2Modbus网关出了一个GetUser的信息泄露的漏洞,但是经过审计发现该系统80%以上的接口均是未授权的,没有添加相应的鉴权机制,以下列举多个未授权接口以及获取相关敏感信息的接口。 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律…

解决element-plus table组件 fixed=“right“(left)浮动后横向滚动文字穿透的问题

BUG 版本&#xff1a;element-plus 2.6.1 浏览器&#xff1a;360极速浏览器22.1 (Chromium内核) 组件&#xff1a;el-table组件 问题&#xff1a;在头部/尾部浮动加上斑马条纹后&#xff0c;横向滚动存在文字穿透的问题。具体如图&#xff1a; 白色背景行的文字&#xff0c…

《Ubuntu20.04环境下的ROS进阶学习6》

一、手持激光雷达建图 在上次的学习中我们已经使用hector_Mapping在仿真环境下建图了&#xff0c;那么本节我们将拿出真实雷达做一次室内的建图。我们使用的是思岚的S2L激光雷达。 二、下载思岚的应用手册 首先我们根据自己的激光雷达类型去到思岚官网下载相应的ROS包&#xff…

成都源聚达:抖音小店押金收费标准

在数字浪潮中&#xff0c;抖音小店如星辰般熠熠生辉&#xff0c;吸引了无数商家和创业者。然而&#xff0c;想要在这片星海中畅游&#xff0c;首先得了解其押金的收费标准。正如古人言&#xff1a;“无规矩不成方圆”&#xff0c;明确规则是成功的关键一步。 抖音小店的押金制度…

CSS-属性

&#x1f4da;详见 W3scholl&#xff0c;本篇只做快速思维索引。 CSS 背景 用于定义元素的背景效果。 background-colorbackground-imagebackground-positionbackground-repeatbackground-attachment background-color background-color 属性指定元素的背景色。 h1 {back…

mysql的安装和部署

##官网下载mysql 我下载的是一个mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz 可以通过xshell 或者xftp传送 xshell则是先下载一个lrzsz 执行以下的命令 yum install lrzsz -y #安装好我下面有个一键安装的脚本 #!/bin/bash#解决软件的依赖关系 yum install cmake ncurses…

Redis 客户端

Redis 客户端 客户端-服务器结构 Redis 同 Mysql 一样&#xff0c;也是一个客户端-服务器结构的程序&#xff0c;结构如下图&#xff1a; 注&#xff1a;Redis 客户端和服务器可以在同一个主机上&#xff0c;也可以在不同主机上 Redis 客户端的多种形态 自带的命令行客户端&…

通过 Cookie、Redis共享Session 和 Spring 拦截器技术,实现对用户登录状态的持有和清理(三)

本篇内容对应 “2.4 生成验证码” 小节 和 “4.7 优化登陆模块”小节 视频链接 1 Kaptcha介绍 Kaotcga是一个生成验证码的工具。 你的网站验证码是什么&#xff1f; 在我们这个牛客论坛项目&#xff0c;验证码分为两部分 给用户看的是图片&#xff0c;用户根据图片上显示的…

RTX RTOS 操作实例分析之---线程(thread)

0 Preface/Foreword 1 线程&#xff08;thread&#xff09; 1.1 线程定义 1.1.1 USE_BASIC_THREADS&#xff08;宏定义&#xff09; 经过以上步骤&#xff08;makefile包含&#xff09;&#xff0c;USE_BASIC_THREADS在编译阶段被定义到相应的模块中。 1.1.2 定义线程ID变量…

Mysql中的 IFNULL 函数的详解

Mysql中的 IFNULL 函数的详解 概念 在mysql中IFNULL() 函数用于判断第一个表达式是否为 NULL&#xff0c;如果第一个值不为NULL就执行第一个值。第一个值为 NULL 则返回第二个参数的值。 语法 IFNULL(a, b)Demo 举例说明 创建表 create table student_one( sno varchar(20)…

Three.js阴影贴图

生成阴影贴图的步骤如下&#xff1a; 从光位置视点&#xff08;阴影相机&#xff09;创建深度图。从相机的角度进行屏幕渲染在每个像素点&#xff0c;将阴影相机的MVP矩阵计算出的深度值与深度图值进行比较如果深度图值较低&#xff0c;则说明该像素点存在阴影 &#xff0c;因…

【前端Vue】社交信息头条项目完整笔记第3篇:三、个人中心,TabBar 处理【附代码文档】

社交媒体-信息头条项目完整开发笔记完整教程&#xff08;附代码资料&#xff09;主要内容讲述&#xff1a;一、项目初始化使用 Vue CLI 创建项目,加入 Git 版本管理,调整初始目录结构,导入图标素材,引入 Vant 组件库,移动端 REM 适配。二、登录注册准备,实现基本登录功能,登录状…

cesium entity默认的点击事件

一、单击事件 点击entity&#xff0c;屏幕出现一个绿色的框&#xff0c;不想显示这个绿色框有两个办法 1、在创建viewer的时候&#xff0c;设置selectionIndicator为false // 初始化地图容器viewer new Cesium.Viewer(cesiumContainer, {contextOptions: {webgl: {alpha: tru…

Linux 常用指令及其理论知识

个人主页&#xff1a;仍有未知等待探索-CSDN博客 专题分栏&#xff1a;http://t.csdnimg.cn/Tvyou 欢迎各位指教&#xff01;&#xff01;&#xff01; 目录 一、理论知识 二、基础指令 1、ls指令&#xff08;列出该目录下的所有子目录和文件&#xff09; 语法&#xff1a; …