其他
隐私保护机器学习中,应用MPC进行实验碰到的常见问题与解答
知乎原文链接:https://www.zhihu.com/question/559735424
emp-toolkit
SecureNN
miniONN
问题二:如何模拟局域网和广域网的场景?
答:最合理方法当然是局域网实验在局域网内找若干台不同设备跑代码,广域网在租用云服务器。但是,大多数情况下没有这样的资金条件。如果局域网的设备数量足够,可以通过linux下的TC命令来控制网卡带宽和延迟,来模拟广域网的环境。如果只有一台机器(设备足够好)的话,也可以在localhost下控制网卡带宽和延迟。需要注意的是,在局域网内不同设备还要注意交换机的情况,有的实验室交换机太差可能会无法模拟常见的局域网指标。
问题三:实验过程中的通信指标如何获取?答:这个应该是可以通过测量Socket通信缓冲区的大小来获取的,在SecureNN等开源库中都有类似的代码。另外,也可以通过linux的一些工具来查看固定端口的流量进出情况。我常用的是iptraf-neg。具体教程可以查看如下链接:http://iptraf.seul.org/2.6/manual.html
问题四:国内外有哪些支持MPC和隐私保护机器学习的开源框架?
答:目前MPC与PPML相关的开源框架还是很多的:1)针对MPC的例如MP-SPDZ、ABY、ABY3、emp-toolkit、EzPC等,都广泛使用;2)针对PPML的例如SecureNN,FALCON,MINIONN。这些框架都是基于C/C++实现的,阅读起来有一定难度;3)也有一些框架是基于Python的,例如TF-Encrypted、Crypten和Pysyft,分别在Tensorflow和Pytorch的基础上实现了MPC的协议,很好的支持张量运算和ML算子,入门也相对简单一点,其中TF-Encrypted近期一直是阿里在维护;4)国内的开源框架也有一些,除了提到的SecretFlow,还有Primihub、Rosetta、SecMML等。更多的关于开源框架和论文的资料可以参考我们维护的Github list。
链接:https://github.com/Ye-D/PPML-Resource
往期推荐
机器学习隐私保护相关文献整理
Piranha:用于安全计算的GPU平台阿里、浙大顶会论文:联邦环境下,基于元学习的图谱知识外推本地差分隐私 VS 全局差分隐私