收录于合集
#隐语解读20个
#版本更新7个
据此前隐语开源社区开展的「使用体验&功能需求」调研:在技术路线上,广大开发者最常用的技术集中在隐私求交、多方安全计算、联邦学习;在功能需求上,则对于数据分析算子丰富、机器学习算子丰富、文档优化(如结构调整、代码示例的增加)的需求更为迫切。此次隐语v0.7版本更新对这些反馈建议均有覆盖:
版本更新要点🌟
1、多方安全计算能力
- 支持多种3PC的机器学习算法,包括LR,XGB,NN,及VIF,Binning,PearsonR等特征工程算法,支持2PC LR算法。
- 隐私集合求交新增实现PCG-PSI,“隐语”是首个实现[BC22]方案的隐私计算框架。
[BC22]:https://eprint.iacr.org/2022/334 - 自研DP-PSI提供差分隐私保护的安全求交集,交集可“用”不可“见” (当前提供C++源代码内核)。
[DP-PSI]:https://arxiv.org/pdf/2208.13249
2、联邦学习能力
- 数据混合切分场景新增逻辑回归算法。
- 水平联邦新增策略抽象,内置多种non-iid优化、通信优化等SOTA策略。
- 水平和垂直联邦DNN差分隐私保护增强。
3、基础设施及性能优化
- 新增 HEU.numpy模块,相比基于原生 numpy 的明密文矩阵运算性能更高。
- SPU ABY3性能和内存优化,Cheetah 矩阵乘法优化(零密文旋转,性能提高5x)
4、文档优化
- 提供中文化文档。
- 优化文档结构,给到用户更顺畅的体验。
- 丰富了算法和架构设计说明
版本更新详情
多方安全计算能力🔍
1. SPU密文计算设备
- [编译器] Tensorflow 前端实验性支持
- [编译器] 定点数乘整数优化(减少Truncation)
- [编译器] 增加JIT编译缓存
- [运行时] 优化算子(零拷贝Pad/Broadcast/TreeReduce/Reshape)
- [运行时] 增加rsqrt拟合,优化除法拟合算法
- [MPC] ABY3支持变长BShare类型,内存优化,Loop优化
- [MPC] ABY3优化MSB协议(带宽优化),增加carryout电路,增加slansky加法器
- [MPC] Cheetah 矩阵乘法优化(零密文旋转),128bit支持
- [Infra] 苹果M1芯片支持
2.隐私求交新增实现的PCG-PSI
此次隐语基于[BC22]的PSI最新研究成果,在隐私求交中新增实现的PCG-PSI,是首个实现此方案的隐私计算框架。新方案相比此前计算最优的[KKRT16]方案在计算和通信方面都有很大改进,从成本(monetary cost)角度更能满足大数据量的实际业务要求。[KKRT16]:https://eprint.iacr.org/2016/799
3.自研DP-PSI算法
隐语自研了DP-PSI,可以得到差分隐私保护的交集信息,更好的满足GDPR关于隐私信息发布的相关要求。目前DP-PSI已在隐语SPU中实现。
代码可参见:
https://github.com/secretflow/spu/tree/beta/spu/psi/core/dp_psi
详细资料和代码示例参见:
https://spu.readthedocs.io/en/beta/development/psi.html#run-dp-psi-c-example
联邦学习能力1.数据混合切分场景下的逻辑回归算法
一种典型的数据混合切分场景举例,比如A拥有全量的样本以及部分特征,B/C/D等其他参与方拥有相同特征(与A的特征不同)但是分别持有部分样本。当您遇到混合切分场景时,隐语提供了逻辑回归算法作为建模选项。
2.水平联邦新增策略抽象
隐语新增了水平联邦策略抽象,只需在配置联邦模型时添加一个参数即可使用。隐语内置了多种压缩算法,可以将稀疏化和non-iid动态组合,同时提供了tensorflow以及pytorch两种后端的多种sota策略实现,包含non-iid优化、通信优化等。同时,用户也可以很方便的进行二次开发以尝试新的联邦策略,策略开发完成后只需要一行代码即可在隐语中注册成新的策略。
3.DNN差分隐私保护增强
隐语对水平联邦和拆分学习均增强了差分隐私(Differential Privacy,后面简称DP)保护。对于水平联邦DNN算法,隐语提供了基于RDP(Rényi Differential Privacy )的Global DP能力。对于垂直联邦(拆分学习)DNN算法,新增了Gaussian DP能力,目前支持RDP和Gaussian DP两种差分隐私策略。
文档优化⭐️
在隐语框架正式发布后,隐语开源社区曾针对V0.6版本内容进行功能需求及体验反馈调研。在所有参与调研的有效反馈中,超过6成的开发者曾运行隐语文档提供的实例,开源社区也收到了众多开发者对于隐语文档的功能需求及优化建议,如:“提供中文文档”、“给出更多的样例作参考”、“对现有功能做概念文档补充”等等涉及呈现方式、结构、内容多方面。
感谢所有开发者的耐心细致反馈,此次0.7版本已对部分文档更新需求进行了针对性建设,并将持续完善,帮助广大开发者进一步降低学习成本、提升更加清晰便捷的上手指引,也期待更多开发者在后续的调研中提出更多建议。ps:使用过程中遇到任何问题,都可以在github上提问咨询
👉https://github.com/secretflow/secretflow/issues
除了开源框架更新,隐语开放平台也已发布,提供数据接入、统计分析、模型训练等功能,支持低代码可视化开发模式和开发者编码模式,点击查看详情,申请隐语开放平台体验试用。