6 Star 39 Fork 10

PaddlePaddle / PaddleFL

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
mpc_train_cn.md 1.21 KB
一键复制 编辑 原始数据 按行查看 历史
gaina96 提交于 2021-07-19 06:30 . related files update

MPC 训练及推理

像PaddlePaddle一样,训练和推理任务可以分为编译阶段和运行阶段。

1. 编译时
  • 确定MPC环境:用户需要指定用到的MPC协议,并配置网络环境。现有版本支持基于PrivC的两方联邦学习以及基于ABY3的三方联邦学习。
  • 用户定义训练任务:用户可以根据PFM提供的安全接口,定义联邦学习网络模型以及训练策略。
2. 运行时

一个Paddle Encrypted程序实际上就是一个PaddlePaddle程序。在运行时,PFM的程序将会转变为PaddlePaddle中的ProgramDesc,并交给Executor运行。以下是运行阶段的主要概念:

  • 运算节点:计算节点是与计算方相对应的实体。在实际部署中,它可以是裸机、云虚拟机、docker甚至进程。Paddle Encrypted程序将在所有计算节点上并行部署和运行。
  • 基于MPC的算子:PFM 为操作加密数据提供了特殊的算子,这些算子在PaddlePaddle框架中基于像ABY3和PrivC一样的MPC协议进行实现。像PaddlePaddle中一样,在运行时PFM的算子将被创建并按照顺序执行。
Python
1
https://gitee.com/paddlepaddle/PaddleFL.git
git@gitee.com:paddlepaddle/PaddleFL.git
paddlepaddle
PaddleFL
PaddleFL
master

搜索帮助