【阅读笔记】联邦学习实战——联邦学习平台介绍
前言
FATE是微众银行开发的联邦学习平台,是全球首个工业级的联邦学习开源框架,在github上拥有近4000stars,可谓是相当有名气的,该平台为联邦学习提供了完整的生态和社区支持,为联邦学习初学者提供了很好的环境,否则利用python从零开发,那将会是一件非常痛苦的事情。本篇博客内容涉及《联邦学习实战》第七章内容,本章主要是介绍当前流行的联邦学习平台,下面就让我们开始吧。
1. FATE
1.1 FATE平台架构概述
FATE是微众银行开发的联邦学习平台,是全球首个工业级的联邦学习开源框架,该平台为联邦学习提供了完整的生态和社区支持,为联邦学习初学者提供了很好的环境。
FATE的官方文档提供了FATE的架构图,可以看到FATE的架构自上而下分为了四层,最上面一层是FATE提供的服务,包括FATE云服务,FATE面板,FATE任务调度管理,生命周期管理等,往下一层是FATE的机器学习核心组件,包括横向联邦学习、纵向联邦学习等,再往下一层是应用在FATE中的安全协议(隐私保护算法),包括同态加密,FedAvg,RSA等,最后一层是底层框架,又可以分为平行的三层,包括计算框架(TensorFlow,Pytorch,Spark),消息队列协议,以及存储框架。
FATE的主要功能如下:
- 提供了一种基于数据隐私保护的分布式安全计算框架;
- 为机器学习、深度学习等常用算法提供高性能的安全计算支持;
- 支持同态加密、秘密共享等多种多方安全计算协议,确保数据和模型的安全;
- 提供友好的跨域交互信息管理方案和开发文档,极大方便开发人员使用。
1.2 FATE版本与文档
当前FATE最新的版本为1.7.2版本,并且有望在今年更新1.8.0以上的版本,还是十分值得期待的,在使用FATE的过程中,我遇到了一系列问题,也因此查找到了许多官方资料和论坛,在这里列出提供给有需要的朋友。
- github地址
- github问答地址
- 2021年经典问答库
- Groups.io
- 微信公众号:FATE开源社区
2. TensorFlow-federated
TFF是由Google开源的,基于TensorFlow实现的一款联邦学习平台架构,主要针对Android移动端的横向联邦学习场景。TFF构建在TensorFlow的基础上,不是独立的联邦学习生态体系。
用户可以使用TFF的接口完成以下工作。
- 通过Federated Learning API与TensorFlow/Keras交互,完成分类、回归等任务。
- 通过TFF提供的Federated Core API,在强类型函数编程环境中将TensorFlow与分布式通信运算符相结合,表达新的联邦算法。
- TFF使用的数据隐私保护主要是差分隐私,安全机制在TensorFlow/Privacy中实现,开发者可以自行调用安全算法。
想要进一步学习,可以参考TFF的github官方文档。
3. OpenMined PySyft
PySyft是一个基于安全和隐私保护的深度学习库,由OpenMined社区开发。PySyft结合了多种隐私计算策略:FL,安全多方计算(MPC)和差分隐私,并应用到PyTorch,Keras,TensorFlow等开发模型上进行模型隐私训练。
此外,由于PySyft基于PyTorch开发,设计上采用了很多PyTorch的思想,最显著体现在引入Syft的抽象张量Syft Tensor,是PySyft进行隐私计算的基本单元。
想要进一步学习,可以参考PySyft的github官方文档。
4. NVIDIA Clara联邦学习平台
Clara平台是由NVIDIA公司推出的针对医疗场景的联邦学习平台。该平台是横向联邦学习的实现,在NVIDIA自身的EGX边缘运算平台上运行。每家医院作为客户端,EGX服务器会基于本地数据来训练局部模型,然后将局部模型的参数返回联邦学习服务器。
在训练过程中,每家医院的数据都不会离开本地,保障了数据的安全,同时,这一过程会反复进行,每一家医院的数据都会不断标注更新,不断提升全局模型的精度。下面是CLara的实现流程图和架构图。
想要进一步学习,可以参考NVIDIA Clara的官方文档。
5. 百度PaddleFL
PaddleFL是一个基于百度飞桨的开源联邦学习框架,目前该框架实现了横向和纵向联邦学习算法,定义了多任务学习、迁移学习和主动学习在内的训练策略。同时,PaddleFL提供在NLP和CV、推荐算法等领域的应用示例,此外,Paddle还封装了一些公开的联邦学习数据集。
PaddleFL架构设计如下所示:
编译态的工作完成后,通过FL job Generator生成的FL-Job进入运行态,开始联邦学习模型训练。
有关PaddleFL的详细使用教程,参考官方文档。
6. 腾讯AngelFL
AngelFL是腾讯基于Angel实现的联邦学习库,Angel是腾讯的一个全栈机器学习开源平台,功能特性涵盖了机器学习的各个阶段。系统架构如下图所示。
可以看到,AngelFL整个系统是一个去中心化联邦学习框架,无需信赖可信第三方,以Angel高维稀疏训练平台作为底层,抽象出算法协议层,供实现各种常见机器学习算法。AngelFL主要应用场景是纵向联邦的场景。
7. 同盾知识联邦平台
同盾科技推出的智邦iBond平台,融合了分布式机器学习、安全加密、元学习等技术,创建了知识联邦的概念。它使多方在完全满足用户隐私、数据安全和法律法规的要求下,进行数据分析建模,协同创造和共享知识。该平台支持原始数据的密文空间上联邦,模型训练中联邦,特征学习结果上联邦,还支持多任务、多方异构知识联邦。
知识联邦体系划分为四个层次,分别是信息层、模型层、认知层和知识层。
- 信息层:将每个参与方数据进行加密或者通过某种形式转为有价值信息。
- 模型层:常规的FL训练。
- 认知层:收集每个参与方学习到的信息,在服务端用另一个模型将这些特征作为输入,训练全局任务。全局模型训练后,会将更新的嵌入信息返回每个客户端进行更新,并重新迭代。
- 知识层:在认知层收集到的不同特征信息,存成知识库,形成知识网络。在知识网络上不断推理演绎,可以挖掘更有价值的只是,就能够预判信息的发生,最终形成合理的决策。
有关iBond平台的使用,可以访问其官方网站。
阅读总结
本章内容就是对当前领域比较火热的FL平台的一些介绍,真要深入学习还得去各个平台的官方文档中求解,下一部分就是对FL案例实战详解,其中将会涉及到许多在实际场景下,FL如何在保证用户隐私的情况下应用,让我们拭目以待吧。
参考链接
https://zhuanlan.zhihu.com/p/114774133
https://docs.nvidia.com/clara/index.html
https://github.com/PaddlePaddle/PaddleFL
https://blog.csdn.net/Tencent_TEG/article/details/104852978/
https://zhuanlan.zhihu.com/p/383617540
【阅读笔记】联邦学习实战——联邦学习平台介绍相关推荐
- 【阅读笔记】联邦学习实战——联邦个性化推荐案例
联邦学习实战--联邦个性化推荐案例 前言 1. 引言 2. 传统的集中式个性化推荐 2.1 矩阵分解 2.2 因子分解机 3. 联邦矩阵分解 3.1 算法详解 3.2 详细实现 4 联邦因子分解机 4 ...
- 【阅读笔记】联邦学习实战——联邦学习智能用工案例
联邦学习实战--联邦学习智能用工案例 前言 1. 智能用工简介 2. 智能用工平台 2.1 智能用工的架构设计 2.2 智能用工的算法设计 3. 利用横向联邦提升智能用工模型 4. 设计联邦激励机制 ...
- 【阅读笔记】联邦学习实战——联邦学习攻防实战
联邦学习实战--联邦学习攻防实战 前言 1. 后门攻击 1.1 问题定义 1.2 后门攻击策略 1.3 详细实现 2. 差分隐私 2.1 集中式差分隐私 2.2 联邦差分隐私 2.3 详细实现 3. ...
- 【阅读笔记】联邦学习实战——联邦学习在智能物联网中的应用案例
联邦学习实战--联邦学习在智能物联网中的应用案例 前言 1. 案例背景与动机 2. 历史数据分析 3. 出行时间预测模型 3.1 问题定义 3.2 构造训练数据集 3.3 模型结构 4 联邦学习实现 ...
- 【阅读笔记】联邦学习实战——联邦学习医疗健康应用案例
联邦学习实战--联邦学习医疗健康应用案例 前言 1. 医疗健康数据概述 2. 联邦医疗大数据与脑卒中预测 2.1 联邦数据预处理 2.2 联邦学习脑卒中预测系统 3. 联邦学习在医疗影像中的应用 3. ...
- Live555源码阅读笔记(一):源码介绍文档 及 源码目录结构
目录 一.Live555介绍 1.Live555项目介绍 2.官网及帮助文档介绍 二.源码目录结构 1.UsageEnvironment 2.BasicUsageEnvironment 3.group ...
- [强化学习导论阅读笔记-1]什么是强化学习
平时学算法都是碎片化的学习,基本上都是看看博客,知乎和论文(博客和知乎看的最多),提升是有的,但是总觉得缺点什么,可能是缺少完整的知识体系.毕业本来想搞嵌入式的,因为会点AI小知识,分到了AI实验室. ...
- 阅读笔记3:基于深度学习的运动想象脑电信号分类算法研究
1.论文信息 题目:基于深度学习的运动想象脑电信号分类算法研究 作者佟歌 单位:哈尔滨工程大学控制科学与工程 发表时间:201803 2.笔记 2.1 脑电信号采集及预处理 2.1.1脑电信号分析方法 ...
- 强化学习论文阅读笔记(一)——强化学习研究综述_高阳
强化学习研究综述_高阳 目录 强化学习研究综述_高阳 一.与其他机器学习对比 二.分类 三.最优搜索型强化学习算法 四.经验强化型强化学习算法 五.部分感知 六.函数估计 七.多Agent强化学习 八 ...
最新文章
- C程序演示产生僵死进程的过程
- iOS快速集成检查更新
- ubuntu java classpath_java – 如何为Ubuntu中的文件夹设置CLASSPATH变量
- double free or corruption的原因
- Node 中的path模块
- 怎么修改ppt的虚线间隔_还有一小时下班,领导交给我一份ppt,做不完不许走!...
- php thinkphp修改,thinkphp5.0 | 输入变量更改变量
- react-native踩坑的开始!
- MySQL int类型的显示
- 【Sprint3冲刺之前】TD学生助手——alpha版发布
- python 拼音输入法_用Python从0开始实现一个中文拼音输入法
- 拖机教程之ASTER v7超越BETWIN WIN7 VISTA教程(含ASTER v7和注册机下载)
- macOS 安卓模拟器 Genymotion 安装
- 小米手机定价与《怪诞行为学》
- 排序算法——冒泡排序(Bubble Sort)
- IEDA免费在线激活永久使用
- Win7系统下安装微磁学软件OOMMF方法
- VMware ESXi 6.7 U3 Unlocker OEM BIOS 集成 REALTEK 网卡驱动和 NVMe 驱动 (集成驱动版)
- 【python】如何使用pip安装、卸载包
- Wargames学习笔记--Bandit