加密数据上的机器学习模型
一种隐私保护版本的流行XGBoost机器学习算法可以让客户在上传敏感数据到云端时感到更加安全。
技术背景
某中心的SageMaker服务使得构建机器学习模型并在云端部署变得容易。如果网站运行SageMaker模型,访问者可以上传数据并接收通过模型运行这些数据的结果。
所有与SageMaker模型之间的传输都是加密的,但在某些情况下,客户可能对解密敏感数据进行分析持谨慎态度。隐私保护机器学习(PPML)是一类技术,允许机器学习模型直接在加密数据上计算,返回加密结果。只有加密输入数据的人才能解密结果。
技术实现
在NeurIPS隐私保护机器学习研讨会上,展示了一种隐私保护版本的XGBoost机器学习算法,该算法生成称为梯度提升决策树的模型。XGBoost是通过某中心SageMaker提供的最流行的机器学习算法之一。
PPML很少使用,因为它增加了计算开销,通常使得生成的模型速度太慢而不实用。但测试发现,隐私保护版本在大约0.4秒内产生结果(未加密版本为1毫秒),这与当前从智能手机发起的许多基于云端的机器学习任务一致。
XGBoost(极端梯度提升)是一个优化的、分布式的梯度提升机器学习框架,设计为高效且灵活。给定一组训练数据,XGBoost生成一组并行的分类和回归树。每棵树通过在树的每个节点做出分支决策来评估输入查询,直到到达叶节点,此时输出一个数值分数。所有树的结果相加给出总体输出。
加密工具
设计隐私保护XGBoost推理算法使用了多种加密工具:
- 保序加密(OPE):允许数据以加密方式存储,使得密文保留明文的顺序。
- 伪随机函数(PRFs):用于为树节点测试的值生成伪随机"特征名称"。
- 加法同态加密(AHE):允许在密文上评估加法函数。
操作流程
在操作过程中,访问者的计算机用OPE加密明文查询。它将加密查询发送到托管PPML模型的服务器。服务器在加密查询上评估每棵树,并获得一组加密叶值。然后服务器同态地求和所有加密叶值,并将结果返回给访问者的计算机,后者可以解密以获得最终预测。
未来工作
未来工作包括在隐私保护版本中支持更多学习参数,以及使用安全多方计算来为加密回归树中的每个决策节点执行安全比较。
研究领域
- 安全、隐私和滥用预防
- 机器学习
标签
- 密码学
- SageMaker
- NeurIPS
- 同态加密
- 梯度提升决策树