FATE 2.0全面升级,推动隐衷算计联邦学习规模化应用
作为全球领先的联邦学习工业级开源框架,FATE开源平台正式发布FATE 2.0版本,实现联邦异构系统互联互通,持续巩固隐衷算计平台互联互通能力,进一步推动联邦学习与隐衷算计规模化应用。
FATE 2.0以全面互通为设计理念,采用开源方式对应用层、调理、通信、异构算计(算法)四个层面进行改造,实现了系统与系统、系统与算法、算法与算法之间异构互通的能力。
FATE 2.0的设计兼容了北京金融科技产业联盟的《金融业隐衷算计互联互通API技术文档》[3]等业内规范,在发布前,FATE 2.0已经和多个异构隐衷算计平台完成了互联互通验证。近期北京金融科技产业联盟发布文档时提到,“课题组联合FATE开源社区、头部科技公司完成了五方跨平台、跨算法的互通联调,验证了接口文档在反对多方异构平台互联互通的可行性与安全性”。
访问以下网址获取FATE 2.0版本:
https://github.com/FederatedAI/FATE/releases/tag/v2.0.0
FATE 2.0亮点概述应用层互联互通: 建立标准可扩张的联邦DSL,反对应用层互联互通,统一DSL适配多种异构隐衷算计平台任务描述
调理层互联互通:从多层面解耦系统模块来建立开放标准化的互联互通调理平台,反对多种异构隐衷算计平台间任务调理
传输层跨站点互联互通:建立开放跨站点互联互通通信组件,反对多种传输模式以及多种通信和谈, 可适配多种异构隐衷算计平台间数据传输,巩固传输效率和系统稳定性
联邦异构算计互联互通: 建立分布式和明密文Tensor/DataFrame, 解耦HE、MPC等安全和谈和联邦算法和谈,助力联邦异构算计引擎互联互通
核心算法转嫁和扩张,算法开发体验和机能显著巩固:采用分布式,明密文Tensor/Dataframe编程模式,实现核心算法转嫁和扩张;核心算法机能提升:PSI隐衷保护求交算法机能提升1.8+倍,纵向联邦SSHE-LR算法机能提升4.3+倍,纵向联邦神经网络算法机能提升143倍等
FATE 2.0互联互通整体架构示意图
FATE 2.0功能一览
FATE-Client 2.0: 建立可扩张的联邦DSL,反对应用层的互联互通
1. 引入新的可扩张和标准化的联邦DSL IR,即联邦建模流程DSL标准化中间层表示
2. 反对将python客户端联邦建模流程代码编译成DSL IR
3. DSL IR和谈扩张巩固: 反对多方不对称调理
4. 反对FATE的标准化联邦DSL IR与其他和谈转化,如北京金融科技产业联盟互联互通BFIA和谈的互相转化
5. 完成Flow Cli和Flow SDK功能转嫁
FATE-Flow 2.0: 建立开放标准化的互联互通调理平台
1.适配可扩张和标准化的FATE 2.0 联邦DSL IR
2. 建立互联调理层框架,通过适配器方式反对其他和谈,如《隐衷算计互联互通API技术文档》所涉及的控制层接口。
3. 优化流程调理,调理逻辑解耦且可定制化,并增加了优先级调理
4. 优化算法组件调理,反对容器级算法加载,提升对跨平台异构场景的反对
5. 优化多版本算法组件注册,反对对组件运行模式的注册
6. 联邦DSL IR扩张巩固:反对多方不对称调理
7. 优化客户端身份验证逻辑,反对多个客户端的权限管理
8. 优化RESTful接口,使入参字段和类型、返回字段和状态代码更加清晰
9.增加了OFX(Open Flow Exchange)模块:封装调理客户端,允许跨平台调理
10.反对新的通信引擎OSX,同时与FATE Flow 1.x中的所有引擎保持兼容
11. 系统层和算法层解耦,系统配置从FATE存储库移到Flow存储库
12. 在PyPI中发布FATE Flow包,并新增了用于服务管理的服务级别的CLI
13. 完成1.x主要功能转嫁
OSX(Open Site Exchange) 1.0: 建立开放跨站点互联互通通信组件
参考北京金融科技产业联盟发布的《金融业隐衷算计互联互通API技术文档》实现互联互通传输接口,传输接口兼容FATE 1.X版本和FATE 2.X版本反对grpc同步传输和流式传输,反对TLS安全传输和谈,兼容FATE 1.X rollsite组件反对Http 1.X和谈传输,反对TLS安全传输和谈反对消息队列模式传输,用于替代FATE1.X中的rabbitmq 以及pulsar组件反对eggroll 、spark算计引擎反对作为Exchange组件组网,反对FATE 1.X 、FATE 2.X 接入相比rollsite组件完善了传输中异常处理逻辑,提供更精确日记输出用于快速定位异常路由配置与原rollsite基本一致,降低了移植难度反对http接口修改路由表,并提供简单权限校验完善了网络连接管理逻辑,降低连接泄露风险,提升传输效率对集群内外部访问请求使用不同端口处理,方便对不同的端口采用不同的安全策略
FATE-Arch 2.0: 建立统一标准化的API,助力联邦异构算计引擎互联互通
Context: 引入“Context”来管理对开发者友好的API,例如“分布式算计”、“联邦学习”、“加密算法”、“张量运算”、“度量指标”和“输入输出管理”Tensor: 引入Tensor数据结构处理本地及分布式矩阵运算,反对内建的异构加速;PHETensor 抽象层优化,通过标准接口使用多种底层PHE实现,自由切换DataFrame: 引入“DataFrame”二维表格数据结构,用于数据输入输出和基础特点工程。新增数据块管理器反对列多类型管理,反对特点匿名逻辑;新增统计、比较、索引、数据分箱及转化等30+算子接口重构Federation:提供统一的联邦通信接口,包括统一的序列化/反序列化控制和更友好的APIConfig:为 FATE 提供统一的配置设置,包括安全配置、系统配置和算法配置重构“logger”:根据不同使用方式和需求定制日记记录细节Launcher:一个简化的联邦程序执行工具,特别适合单机运行和本地调试和谈层:反对SSHE(混合安全多方算计和同态加密和谈)、ECDH、安全聚合和谈整合Deepspeed:通过Eggroll反对分布式GPU集群的训练调理实验性集成Crypten:反对SMPC,未来将添加更多和谈和功能
FATE-Component 2.0: 建立标准化的算法组件,适配不同调理引擎
引入组件工具箱:将机器学习模块封装为标准可执行程序通过spec和loader提供清晰的API,便于内部扩张和与外部系统集成输入输出:进一步解耦FATE-Flow,提供标准化的黑盒调用流程组件定义:反对基于类型的定义,自动检查组件参数,反对多种数据和模型输入输出类型,以及多重输入
FATE-ML 2.0: 核心算法转嫁和扩张,算法开发体验和机能显著巩固
采用分布式,明密文Tensor/Dataframe编程模式,实现核心算法转嫁和扩张:数据预处理:新增DataFrame Transformer, 完成Reader、PSI、Union和DataSplit转嫁特点工程:完成HeteroFederatedBinning、HeteroFeatureSelection、DataStatistics、Sampling、FeatureScale和Pearson Correlation转嫁联邦训练算法转嫁:包括HeteroSecureBoost、HomoNN、HeteroCoordinatedLogisticRegressio、HeteroCoordinatedLinearRegression、SSHE-LogisticRegression和SSHE-LinearRegression新增联邦训练算法和谈:基于MPC和同态加密混合和谈的SSHE-HeteroNN
,基于FedPASS和谈的FedPASS-HeteroNN
机能显著提升 PSI隐衷保护求交:在一亿id的数据集上测试,且交集结果为1亿,机能为FATE-1.11的1.8+倍纵向联邦分箱算法:在guest 十万行*三十维特点,host 十万行*三百维特点的数据上测试,机能为FATE-1.11 的1.5+倍纵向联邦SSHE-LR算法: 在guest 十万行*三十维特点,host 十万行*三百维特点的数据上测试,机能为FATE-1.11的4.3+倍纵向联邦带协调方的LR算法:在guest 十万行*三十维特点,host 十万行*三百维特点的数据上测试,机能为FATE-1.11的1.2+倍纵向联邦神经网络(基于FedPass和谈):在guest 十万行*三十维特点, host 十万行*三百维特点的数据上测试,与明文机能基本一致,机能为FATE-1.11的143+倍
Eggroll 3.0: 系统机能、可用性和可靠性全面巩固
1. JVM巩固
核心组件重构:cluster-manager 和 node-manager 组件使用Java语言全面重建,确保统一性和提升机能传输组件修改:移除 rollsite 传输组件,用更高效的 osx 组件替代进程管理改进:实现了更高级的进程管理逻辑,显著降低进程泄露风险数据存储逻辑巩固:数据存储机制优化,提高机能和可靠性并发控制改进:升级原有组件中的并发控制逻辑,提升机能可视化组件:新增可视化组件,方便监控算计信息日记完善:日记系统巩固,输出更精确,有助于快速检测异常
2. Python升级
roll_pair和 egg_pair重构:反对由调用方控制的序列化和分区方法,序列化安全由调用方统一管理中间表自动清理:解决了联邦和算计之间中间表自动清理问题,无需调用方额外操作配置控制统一:引入灵活的配置系统,反对直接传递、配置文件和环境变量,以满足多样化需求客户端PyPI安装:Eggroll 3.0.0 反对客户端通过PyPI进行简易安装日记配置优化:调用方可以根据需要自定义日记格式代码结构调整:代码库精简,结构和逻辑更清晰,并移除了大量冗余代码
汇聚开源力量,助力隐衷算计行业发展
跨行业、跨机构的数据融合在金融、电信、医疗、政务、广告营销、智慧城市等诸多场景都有着广泛的需求。隐衷算计已成为打破行业间数据壁垒的利器,互联互通则是充分发挥这把利器作用的磨刀石。FATE 2.0提供了一个开源框架来实现互联互通,解决了业内的一大痛点。大多数隐衷算计平台都可以通过实现开放的互通接口,达到和异构系统交互和集成的目的。
FATE 2.0的推出为实现异构平台之间的互联互通提供了有力反对,持续的迭代展现了技术不断完善的承诺。不仅关乎数据隐衷保护,更涉及到整个行业向前发展。在这一进程中,隐衷算计行业用户和技术合作伙伴有了更多参与的机会。通过社区的共同努力,我们可以更好地应对数据安全和隐衷保护挑战,为建设更加安全可靠的数字社会奠定坚实基础。FATE 2.0的发布是行业合作与共赢的新篇章,期待更多的创新者和实践者加入其中,共同推动隐衷算计技术的蓬勃发展。
[1] 国家数据局:国家数据局等部门关于印发《“数据要素×”三年行动计划(2024—2026年)》的通知
[2] 中国信通院吕艾临等:我国数据要素市场培育进展与趋势
[3] 《金融业隐衷算计互联互通API技术文档》v1.0版本已在FATE社区仓库进行托管:https://github.com/FederatedAI/InterOp