Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

FATE 2.0版本重磅发布:实现异构联邦学习系统互联互通

打破“计算孤岛”、联通“技术孤岛”,推动异构平台之间的互联互通,是隐私计算技术下一阶段的重要发展方向。国家数据局印发的《“数据要素×”三年行动计划(2024—2026年)》提出:“打造安全可信流通环境,深化隐私计算、联邦学习等技术应用,增强数据利用可信、可控、可计量能力,促进数据合规高效流通使用。”[1]中国信通院评论文章曾指出:“隐私计算有望成为支撑数据流通产业的基础设施,解决不同产品之间的技术壁垒,实现隐私计算跨平台间的互联互通已成为产业内的迫切需求。” [2]


  • 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, 解耦HEMPC等安全协议和联邦算法协议,助力联邦异构计算引擎互联互通


  • 核心算法迁移和扩展,算法开发体验和性能显著增强:采用分布式,明密文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: 构建开放跨站点互联互通通信组件

  1. 参考北京金融科技产业联盟发布的《金融业隐私计算互联互通API技术文档》实现互联互通传输接口,传输接口兼容FATE 1.X版本和FATE 2.X版本
  2. 支持grpc同步传输和流式传输,支持TLS安全传输协议,兼容FATE 1.X  rollsite组件
  3. 支持Http 1.X协议传输,支持TLS安全传输协议
  4. 支持消息队列模式传输,用于替代FATE1.X中的rabbitmq 以及pulsar组件
  5. 支持eggroll 、spark计算引擎
  6. 支持作为Exchange组件组网,支持FATE 1.X 、FATE 2.X 接入
  7. 相比rollsite组件完善了传输中异常处理逻辑,提供更精确日志输出用于快速定位异常
  8. 路由配置与原rollsite基本一致,降低了移植难度
  9. 支持http接口修改路由表,并提供简单权限校验
  10. 完善了网络连接管理逻辑,降低连接泄露风险,提升传输效率
  11. 对集群内外部访问请求使用不同端口处理,方便对不同的端口采用不同的安全策略


FATE-Arch 2.0: 构建统一标准化的API,助力联邦异构计算引擎互联互通

  1. Context: 引入“Context”来管理对开发者友好的API,例如“分布式计算”、“联邦学习”、“加密算法”、“张量运算”、“度量指标”和“输入输出管理”
  2. Tensor: 引入Tensor数据结构处理本地及分布式矩阵运算,支持内建的异构加速;PHETensor 抽象层优化,通过标准接口使用多种底层PHE实现,自由切换
  3. DataFrame: 引入“DataFrame”二维表格数据结构,用于数据输入输出和基础特征工程新增数据块管理器支持列多类型管理,支持特征匿名逻辑;新增统计、比较、索引、数据分箱及转化等30+算子接口
  4. 重构Federation:提供统一的联邦通信接口,包括统一的序列化/反序列化控制和更友好的API
  5. Config:为 FATE 提供统一的配置设置,包括安全配置、系统配置和算法配置
  6. 重构“logger”根据不同使用方式和需求定制日志记录细节
  7. Launcher:一个简化的联邦程序执行工具,特别适合单机运行和本地调试
  8. 协议层:支持SSHE(混合安全多方计算和同态加密协议)、ECDH、安全聚合协议
  9. 整合Deepspeed:通过Eggroll支持分布式GPU集群的训练调度
  10. 实验性集成Crypten:支持SMPC,未来将添加更多协议和功能


FATE-Component 2.0: 构建标准化的算法组件,适配不同调度引擎

  1. 引入组件工具箱:将机器学习模块封装为标准可执行程序
  2. 通过spec和loader提供清晰的API,便于内部扩展和与外部系统集成
  3. 输入输出:进一步解耦FATE-Flow,提供标准化的黑盒调用流程
  4. 组件定义:支持基于类型的定义,自动检查组件参数,支持多种数据和模型输入输出类型,以及多重输入


FATE-ML 2.0: 核心算法迁移和扩展算法开发体验和性能显著增强

  1. 采用分布式,明密文Tensor/Dataframe编程模式,实现核心算法迁移和扩展:
  2. 数据预处理:新增DataFrame Transformer, 完成Reader、PSI、Union和DataSplit迁移
  3. 特征工程:完成HeteroFederatedBinning、HeteroFeatureSelection、DataStatistics、Sampling、FeatureScale和Pearson Correlation迁移
  4. 联邦训练算法迁移:包括HeteroSecureBoost、HomoNN、HeteroCoordinatedLogisticRegressio、HeteroCoordinatedLinearRegression、SSHE-LogisticRegression和SSHE-LinearRegression
  5. 新增联邦训练算法协议:基于MPC和同态加密混合协议的SSHE-HeteroNN

基于FedPASS协议的FedPASS-HeteroNN

  1. 性能显著提升
  2.  PSI隐私保护求交:在一亿id的数据集上测试,且交集结果为1亿,性能为FATE-1.11的1.8+倍
  3. 纵向联邦分箱算法:在guest 十万行*三十维特征,host 十万行*三百维特征的数据上测试,性能为FATE-1.11 的1.5+倍
  4. 纵向联邦SSHE-LR算法: 在guest 十万行*三十维特征,host 十万行*三百维特征的数据上测试,性能为FATE-1.11的4.3+倍
  5. 纵向联邦带协调方的LR算法:在guest 十万行*三十维特征,host 十万行*三百维特征的数据上测试,性能为FATE-1.11的1.2+倍
  6. 纵向联邦神经网络(基于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

FedAI联邦学习
FedAI联邦学习

安全互联打破数据孤岛,合作联盟建立数据生态。

工程开源隐私计算联邦学习
暂无评论
暂无评论~