Federated Learning003
联邦学习笔记——003
2022.11.28周一
今天主要学习了几篇优秀的博客,补充了一些知识。
(一)联邦学习面临的挑战
非独立同分布的数据
有限通信带宽
不可靠和有限的设备
什么是Non-IID(非独立同分布)数据?
下面列举了数据偏离同分布的一些常见方式,即对于不用的客户端 \(i\) 和客户端 \(j\) 的分布不同,即 \(\mathcal{P}_i \neq \mathcal{P}_j\)。我们将 \(\mathcal{P}_i(x,y)\)重写为 \(\mathcal{P}_i(y|x)\mathcal{P}_i(x)\) 和 \(\mathcal{P}_i(x|y)\mathcal{P}_i(y)\)。
特征分布倾斜(协变量飘移):即使共享 \(\mathcal{P}(y|x)\),不同客户端上的边缘分布 \(\mathcal{P}_i(x)\)也可能不同。比如,在手写识别领域,用户在书写同一个单词时也可能有着不同的笔画宽度、斜度等。
标签分布倾斜(先验概率飘移):即使 \(\mathcal{P}(x|y)\)是相同的,对于不同客户端上的边缘分布 \(\mathcal{P}_i(y)\)也可能不同。比如,当客户端与特定的地理区域绑定时,标签的分布在不同的客户端上是不同的。比如:袋鼠只在澳大利亚或动物园里;一个人的脸只在出现在全球的几个地方;对于手机设备的键盘,某些特定人群使用某些表情,而其他人不使用。
标签相同,特征不同(概念飘移):即使共享 \(\mathcal{P}(y)\),不同客户端上的条件分布 \(\mathcal{P}_i(x|y)\)也可能是不同。由于文化差异,天气影响,生活水平等因素,对于相同的标签 \(y\),对于不同的客户端可能对应着差异非常大的特征 \(x\)。比如:世界各地的家庭图片千差万别,衣着也千差万别。即使在美国,冬季停放的被大雪覆盖汽车的图像只会出现在某些地区。同样的品牌在不同的时间和不同的时间尺度上看起来也会有很大的不同:白天和晚上、季节效应、自然灾害、时尚设计潮流等等。
特征相同,标签不同(概念飘移):即使 \(\mathcal{P}(X)\)是相同的,对于不同客户端上的条件分布 \(\mathcal{P}_i(y|x)\)也可能不同。由于个人偏好,训练数据项中的相同特征向量可能具有不同的标签。例如,反映情绪或单词联想的标签有着个人和地区差异。
数量倾斜或者不平衡:不同的客户可以拥有着样本数量差异很大的数据。
参考:
(二)研究方向
隐私保护
首先,明确一个问题,我们需要抵御什么样的威胁?
在联邦学习中,对隐私风险的规范处理需要一种整体的、跨学科的方法。对于一些风险类型,可以通过将现有技术扩展到指定场景中从而保护隐私和减轻风险,而其他更复杂的风险类型则需要跨学科的协同努力。
下表是联邦学习需要抵御的威胁

其次,这方面的研究涉及到的工具与技术主要有三个方向:
安全计算
- 可信执行环境
- 安全多方计算
- 其他技术,例如安全聚合,安全shuffle
隐私保护
- 本地差分隐私
- 分布式差分隐私
- 通过安全聚合实现分布式差分隐私
例如,每台设备可以在安全聚合之前干扰自己的模型参数,以实现本地差分隐私。通过正确设计噪声,我们可以确保聚合结果中的噪声与通过可信服务器集中添加的噪声(例如,具有低ε/高隐私级别)相匹配 - 通过安全shuffling实现分布式差分隐私
本地数据使用本地差分隐私进行加密,然后所有人传到一个安全shuffler,shuffler打乱次序,再发给服务器(不包含任何标识信息)。shuffler可以作为一个可信第三方,独立于服务器并专门用于shuffle。
- 通过安全聚合实现分布式差分隐私
- 混合差分隐私
通过允许多种模型共存,与纯本地DP或纯中央DP机制相比,混合模型机制可以在给定用户群中实现更高的实用性,例如根据场景不同,一部分人用本地差分隐私协议加密,一部分人直接贡献其信息。
可验证性
零知识证明(ZKPs)
可信执行环境中的远程证明
主要作用:
- 证明服务器已经进行了聚合,shuffle,或者添加差分隐私的操作。
- 证明client输入的数据符合某项规范
Federated Learning003的更多相关文章
- Federated Identity Pattern 联合身份模式
Delegate authentication to an external identity provider. This pattern can simplify development, min ...
- MySQL 远程连接(federated存储引擎)
标签:federated存储引擎 概述 本文主要介绍通过federated存储引擎建立远程连接表 测试环境:mysql 5.6.21 步骤 开启federated存储引擎 先查看federated存储 ...
- 通过FEDERATED存储引擎跨实例访问数据
通过FEDERATED存储引擎同步两实例间的表数据需求情景:实例1中A库中的三个视图是实例2中的B库所依赖的,B需要A库中三个视图的实时数据.方案:通过FEDERATED来完成跨势力的查询FEDERA ...
- MySql启动,提示:Plugin 'FEDERATED' is disabled....Cannot allocate memory for the buffer pool
2016-05-27 09:25:01 31332 [Note] Plugin 'FEDERATED' is disabled. 2016-05-27 09:25:01 31332 [Note] In ...
- MySQL中的FEDERATED引擎
首先说明> FEDERATED存储引擎访问在远程数据库的表中的数据,而不是本地的表.这个特性给某些开发应用带来了便利,你可以直接在本地构建一个federated表来连接远程数据表,配置好 ...
- MYSQL启动报1067错误,系统日志中是“服务 mysql 意外停止” Mysql日志中则是:“Plugin \'FEDERATED\' is disabled”
MYSQL启动报1067错误,系统日志中是"服务 mysql 意外停止" Mysql日志中则是:"Plugin \'FEDERATED\' is disabled&quo ...
- mysql federated engine
mysql)) -> engine=federated -> connection='mysql://root@localhost:3306/t1/t';
- 主流存储引擎详解:Innodb,Tokudb、Memory、MYISAM、Federated
主流存储引擎: Innodb:推荐使用,主力引擎,使用99%以上的场景 Tokudb:高速写入使用,日用量大量写入eg:500G可压缩为50G.适用于访问日志的写入,相对MYISAM有事务性,相对于I ...
- Plugin 'FEDERATED' is disabled 或 1067错误 启动错误与“服务 mysql 意外停止”解决方法
MYSQL启动报1067错误,系统日志中是“服务 mysql 意外停止” Mysql日志中则是:“Plugin 'FEDERATED' is disabled” 网我在网上找到解决方案:1.在MY.I ...
- MySQL FEDERATED引擎使用示例, 类似Oracle DBLINK
原文地址:http://it.dataguru.cn/article-3352-1.html 摘要: 本地MySQL数据库要访问远程MySQL数据库的表中的数据, 必须通过FEDERATED存储引擎来 ...
随机推荐
- php7的一些新特性
php7的一些特性 打破一切 PHP7要打破一切. PHP开发人员应该接受打破版本之间向下兼容的定律.只要不允许大量的向后兼容,PHP7将是一个高度尊重的语言. 1.创建一个具体的核心语言 删除所有库 ...
- Spring的Factories机制介绍
Java 的 SPI 机制 Java SpringBoot 加载 yml 配置文件中字典项 Spring的Factories就是Spring版本的Java Spi. Spring Factories的 ...
- django使用多个数据库实现
一.说明: 在开发 Django 项目的时候,很多时候都是使用一个数据库,即 settings 中只有 default 数据库,但是有一些项目确实也需要使用多个数据库,这样的项目,在数据库配置和使用的 ...
- 基于django+ansible+webssh运维自动化管理系统
基于django+ansible+webssh运维自动化管理系统 前言 最初开发这个基于Django ansible运维自动化管理系统的想法其实从大学时候就已经有了,但是苦于技术原因和没有线上环境 ...
- 一天吃透SpringBoot面试八股文
Springboot的优点 内置servlet容器,不需要在服务器部署 tomcat.只需要将项目打成 jar 包,使用 java -jar xxx.jar一键式启动项目 SpringBoot提供了s ...
- Navicat Premium 16 安装教程
使用数据库时经常会使用到Navicat,码一个教程 转载自https://www.bilibili.com/read/cv21586676?spm_id_from=444.41.list.card_a ...
- 通过Serverless私有化部署ChatGPT Web
作为开发人员,想要自己部署一个渠道访问或是想随时访问但是奈何魔法有限,又或是海外服务器太贵,不想耗费这个钱,本文借助 Serverless 来搭建一下私有 ChatGPT 服务,Serverless ...
- vue小坑之Vetur报错:相对路径报错
话不多说先上图 俗话说:面向百度编程,这话是没错滴,找不到相同问题的博客至少你还可以找谷歌翻译 以上图片问题就是:你导入的组件的相对路径不对.(有可能是你手动敲进去的,然后vetur这边检测不到) 解 ...
- GRPC与 ProtoBuf 的理解与总结
转载请注明出处: 1.GRPC 官网:https://www.grpc.io/ gRPC 官方文档中文版:http://doc.oschina.net/grpc RPC 框架的目标就是让远程服务调用更 ...
- Java的CAS操作
介绍 CAS 技术是为了解决问题而生的,通过 CAS 我们可以以无锁的方式,保证对共享数据进行 "读取 - 修改 - 写回" 操作序列的正确性. CAS 是乐观锁设计思想的实现.C ...