在加拿大蒙特利尔召开的NeurIPS 2018会议上,英特尔宣布推出开源HE-Transformer,这是一种允许AI系统对敏感数据进行操作的工具。它是nGraph,英特尔神经网络编译器的后端,基于简单加密算法库(SEAL),这是一个加密库,微软研究院开源软件。
HE允许对加密数据进行计算,允许用户获得有价值的见解,而不会有暴露底层数据的风险。使用HE,数据由用户控制,并且永远不需要信任第三方。HE变换器使用户能够在受过流行的开源框架(如Tensorflow)训练的神经网络上对加密输入进行推断。
HE-Transformer来由
对隐私的日益关注使得HE成为解决看似不一致的需求的有吸引力的解决方案:机器学习需要数据; 隐私排除了它的使用。该领域的最新进展首次使HE成为深度学习的可行者。然而,目前,设计深度学习HE模型需要同时具备深度学习,加密和软件工程方面的专业知识。HE变换器提供抽象层,允许用户从每个领域的独立进步中受益。利用HE变换器,数据科学家可以直接部署TensorFlow,MXNet和PyTorch等流行框架的训练模型,而无需担心HE方面。研究人员可以利用Tensorflow快速开发新的HE友好深度学习拓扑。同时,nGraph编译器的进步自动集成,
HE-Transformer目前功能
- 目前直接与英特尔®nGraph™编译器和TensorFlow运行时集成,允许用户在Tensorflow中训练神经网络,并对加密数据进行推断。我们还计划与PyTorch集成。对于其他流行的深度学习框架,如MXNet,用户必须简单地以nGraph序列化格式导出训练好的MXNet模型,HE变压器可以从中加载和性能推断。
- HE变压器提供了许多HE友好的优化,因此用户可以在可能的情况下自动获益。这些优化包括明文值旁路,SIMD打包,OpenMP并行化和明文操作。
- HE变压器兼容nGraph深度学习模型,并支持多种操作,包括add, broadcast, constant, convolution, dot, multiply, negate, pad, reshape, result, slice, subtract。由于HE的限制,支持的操作目前仅限于仅需要加法和乘法的操作。
HE-Transformer目前表现效果
HE变压器融合了HE,CKKS加密方案的最新突破。这可以在Cryptonets神经网络上实现最先进的性能。到目前为止,在CPU上的32位精度浮点模型中,我们在MNIST手写数字数据集上达到了99%的准确率。
用户现在可以在24秒内对4096 MNIST数据点进行推断,每个图像的传输速率为6ms。
开源项目
https://github.com/NervanaSystems/he-transformer
参考
https://github.com/NervanaSystems/he-transformer/wiki/Blog-Post
https://venturebeat.com/2018/12/03/intel-open-sources-he-transformer-a-tool-that-allows-ai-models-to-operate-on-encrypted-data/