飞桨联邦学习框架PaddleFL新升级,实现纯两方安全计算协议

09/30 03:59
阅读数 630

伴随着智能化时代的迈进,AI无处不在,万事皆可智能化,很多企业走到了时代的风口,也不断有着更多的企业想跻身队伍,跨上AI大时代的战车。大家都深知人工智能的三大基石是:算法、算力与数据。传统企业有着丰富的数据基础,却缺乏技术能力;新型企业的技术能力紧跟时代步伐却苦于数据贫瘠。算力可以花钱买到,算法可以通过培养招聘技术人才来补齐,但是数据匮乏却使人在人工智能赛道上举步维艰。

在国内外监管环境日渐完善的今天,大家都在加强数据保护意识,很多有巨大价值的数据即使在公司内部都无法流通,从而形成数据孤岛。随着《数据安全法》和《个人信息保护法》的相继施行,数据在安全合规的前提下自由流动,成了大势所趋,这也让联邦学习再次掀起一波浪潮。

百度飞桨开发了基于飞桨核心框架的开源联邦学习框架PaddleFL,让企业之间的合作能够在数据层面安全开展。开发人员很容易在大规模分布式集群中部署PaddleFL联邦学习系统。PaddleFL提供多种联邦学习策略(横向联邦学习、纵向联邦学习)及其在计算机视觉、自然语言处理、推荐算法等领域的应用。

最近,PaddleFL新版本PaddleFL v1.1.2版本正式发布,在前期三方安全计算协议之上,新增了面向两方场景的安全计算协议以及安全联邦学习实现。新增特性描述如下:

两方安全

计算协议PrivC实现

PrivC协议实现总体参考了ABY协议,支持两方peer-to-peer计算模型以及外包计算模型,提供了半诚实模型下的计算安全性。在ABY协议混合电路计算的思想上,PrivC进行了一系列实现优化,如以tensor为单位聚合通信提升吞吐量,使用FreeXOR、HalfGate等方法降低加密电路运算开销,使用全同态加密计算乘法三元组等,并对非线性机器学习算子进行了近似实现,有效地提升了两方安全学习的性能。

基于PrivC

 的两方安全联邦学习

PaddleFL在PrivC协议的基础上,为只有两个参与方情况下的联邦学习场景提供了针对性的解决方案。PaddleFL目前提供了纯两方的矩阵乘法、fc、relu、sigmoid、softmax等机器学习常用算子及其梯度计算实现,支持两方场景下的线性回归、对率回归、多层感知机等模型的训练与预测,具有优良的性能。

4de41c96212d6b6374daa11d39685a65.png

图 1 PaddleFL with PrivC运行示意图

PaddleFL在两方条件下的训练性能如下:

场景一 线性回归:

数据集与训练参数:

UCI波士顿房价,epoch = 20,batch_size = 10,lr = 0.1;

数据量:

506行,80%用于训练,20%用于测试

epoch=20, lr=0.1, batchsize=10

机器信息:38核 Intel(R) Xeon(R) Gold 6148 CPU @2.40GHz,LAN


PaddleFL with PrivC

通信协议

总训练耗时(sec)

总预测耗时(sec)

gloo

8.16785

0.0701

grpc

10.0905

0.0776

场景二 逻辑回归:

数据集与训练参数:

MNIST数据集(label修改为二分类,“1”为1,其余为0),epoch = 1,batch_size = 128,lr = 0.01;

数据量:

50 000条训练样本,10 000条测试样本

epoch = 1, batch_size = 128,lr = 0.01

机器信息:38核 Intel(R) Xeon(R) Gold 6148 CPU @2.40GHz


PaddleFL with PrivC

通信协议

训练耗时(sec/epoch)

预测耗时(sec/epoch)

gloo

1363.0835

125.1553

grpc

1515.89075

139.7041

在线数据切片与分发

在1.1.2版本中,新增了对数据在线切片(secret-share)与分发的支持。在以前版本中,各实体间只能通过离线方式对数据进行切片,然后单独传输到计算方上。而在PaddleFLv1.1.2中,各实体间可以通过在线方式对明文数据进行切片与分发,免去了中间数据存储的步骤。

增加对gRPC

 通信模式的支持

在1.1.2版本中,新增了对gRPC协议的支持,用户可以根据需要指定采用Gloo通信模式或是gRPC通信模式。利用gRPC通信协议,可以有效应对网络不稳定造成的闪断等情况,并对未来实现网络隔离条件下的端口收敛与单向通信提供了条件。

为了能提供给大家更好的应用体验,也希望在产业实践中更好的满足大家的需求,PaddleFL研发团队在此征集各位伙伴们的需求,以便打磨我们的产品和技术,还请您拨冗反馈。

需求问卷链接(点击“阅读原文”即可跳转):

https://paddleqiyeban.wjx.cn/vj/wsKYFH1.aspx

如您想与PaddleFL研发团队进一步交流,可以扫描下方二维码,添加运营小姐姐,互为好友后回复【FL】加入技术交流群,我们期待与您的沟通!

e6fb2b562bb614e39c696a5e54c1023b.png

长按下方二维码立即

Star

47134e2bc0c77d0ceff080389f8497f1.png

更多信息:

  1. 飞桨官方QQ群:793866180

  2. 飞桨官网网址:

    www.paddlepaddle.org.cn/

  3. 飞桨开源框架项目地址:

    GitHub:

    github.com/PaddlePaddle/Paddle 
    Gitee:

    gitee.com/paddlepaddle/Paddle

  4. 欢迎在飞桨论坛讨论交流~~

    http://discuss.paddlepaddle.org.cn

本文同步分享在 博客“飞桨PaddlePaddle”(CSDN)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部