论文学习心得 DELPHI: A Cryptographic Inference Service for Neural Networks
2020-07-29 16:44
1836 查看
论文学习笔记 DELPHI: A Cryptographic Inference Service for Neural Networks
背景
许多公司为用户提供神经网络预测服务,比如说,家庭监控系统,使用专有的神经网络对客户家中的监控视频中的对象进行分类,例如停在用户家附近的汽车,或访客的人脸。但是,当前的预测系统损害了用户和公司中其中一方的隐私:要么用户必须将敏感输入发送给服务提供商进行分类,损害了用户的个人隐私。要么服务提供商必须将其专有的神经网络存储在用户的设备上,这会泄露服务提供商的商业机密,或者说是隐私。作者提出的这个DELPHI,一个是在这个神经网络推理过程中可以保证两方的隐私,另一个是在性能方面比当前的工作有了很大的提高。
卷积神经网络介绍:https://www.jianshu.com/p/1ea2949c0056
介绍
- DELPHI,一个安全的预测系统,它允许双方在不暴露任何一方数据的情况下执行神经网络推理。
- DELPHI通过同时设计密码协议和一个planner规划器来解决这个问题。
- DELPHI的目标是让客户只学习两条信息:神经网络的结构和推理的结果;关于客户的私有输入和服务器神经网络模型参数的所有其他信息都应该隐藏起来。
出发点
- 它主要是在gazelle上进行改进的【Juvekar C , Vaikuntanathan V , Chandrakasan A .
Gazelle: A Low Latency Framework for Secure Neural Network
Inference[J]. 2018.】 - Gazelle处理线性层使用的是线性同态加密方案,处理非线性层使用的是混淆电路,这些工具需要用户和服务提供商之间进行大量通信,所以性能较差和开销较大。
- 为了降低计算线性操作的在线成本,将开销较大的密码操作转移到预处理阶段。在预处理期间使用线性同态加密LHE创建线性层模型权重M的秘密共享。
- 为了最小化ReLU激活函数评估混淆电路的成本,使用了一种更适合于有限域单元计算设置的替代方法:多项式近似。用多项式近似(特别是二次逼近)替换激活函数ReLU。
- 对于这样一个混合的密码协议,需要在性能和准确度之间进行平衡。所以设计了一个规划器,自动发现用二次近似代替哪些层的激活函数,以使所用的多项式近似数最大化,同时仍然确保精度保持在规定的阈值以上。
系统概括
- 系统设置中有两方:客户端和服务提供商。
- 威胁模型是两方半诚实的
- 服务提供商的输入是神经网络,而客户的输入是用于预测的私有输入。
预处理阶段
在线阶段
DELPHI 规划器
使用基于群体的训练算法PBT
- 在每个时间步的末尾,它通过用户指定的评分功能测量每个候选网络的性能,并用性能最佳的候选版本替换性能最差的候选对象(变异函数由用户指定)。
- 在优化过程结束时,PBT将输出发现的性能最佳的候选网络架构(以及用于训练它们的超参数)
- 基于群体的训练算法PBT
相关文章推荐
- 【飞桨】【PaddlePaddle】First Order Motion Model for Image Animation论文学习心得
- 深度学习论文笔记:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
- Java for Web学习笔记(七十):Service和Repository(5)回调处理Consumer
- 论文阅读——译文:Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications
- 2018-11-16学习笔记 读论文Advantages of high quality SWIR bands for ocean colour processing: Examples from
- iOS KVC valueForKeyPath学习心得
- [深度学习论文笔记][arxiv 1711] Non-local Neural Networks
- 学习Delphi面向对象编程的一点心得
- Tao Yu的论文之三 "Service Selection Algorithms for Composing Complex Services with Multiple QoS Constraints(ICSOC2005)"
- HCP: A Flexible CNN Framework for Multi-label Image Classification论文学习
- [深度学习论文笔记][Video Classification] Beyond Short Snippets: Deep Networks for Video Classification
- 【论文学习】Two-Stream Convolutional Networks for Action Recognition in Videos
- Android Service学习心得总结
- 深度学习论文笔记 [图像处理] Deep Residual Learning for Image Recognition
- 论文 Copy-and-Paste Networks for Deep Video Inpainting 学习笔记
- Mono For Android 服务service的学习(1)--本地服务
- 《Frustum PointNets for 3D Object Detection from RGB-D Data》论文及代码学习(一)——论文部分
- Network Programming for Microsoft Windows 2nd(Windows 网络编程第二版) 学习心得
- 【论文学习】MobileNets:Efficient Convolutional Neural Networks for Mobile Vision Applications