使机器学习模型具有差分隐私性:最佳实践和开放挑战
由Natalia Ponomareva和Alex Kurakin担任,Google Research的员工软件工程师发布
大型机器学习(ML)模型在现代应用中无处不在:从垃圾邮件过滤器到推荐系统和虚拟助手。这些模型部分由于可用的训练数据的丰富性而实现了卓越的性能。然而,这些数据有时可能包含私人信息,包括个人可识别信息、版权材料等。因此,保护训练数据的隐私对于实际应用的ML至关重要。
差分隐私(DP)是允许以正式的方式对数据匿名化进行推理的最广泛接受的技术之一。在ML模型的上下文中,DP可以保证每个单独用户的贡献不会导致显着不同的模型。模型的隐私保证由一个元组(ε,δ)表示,其中两者的较小值代表更强的DP保证和更好的隐私。
虽然有成功的例子,可以使用DP保护训练数据,但使用差分隐私ML(DP-ML)技术获得良好的效用可能具有挑战性。首先,有固有的隐私/计算权衡可能会限制模型的效用。此外,DP-ML模型通常需要架构和超参数调整,而有效执行此操作的准则有限或难以找到。最后,非严格的隐私报告使比较和选择最佳DP方法具有挑战性。
在即将发表的“ 如何将ML转换为DP:使用差分隐私的机器学习的实用指南”中,我们在人工智能研究杂志上讨论了DP-ML研究的当前状态。我们提供了获取DP-ML模型的常见技术概述,并讨论了研究、工程挑战、缓解技术和当前的开放问题。我们将基于这项工作在ICML 2023和KDD 2023上提供教程。
DP-ML方法
DP可以在ML模型开发过程中的三个地方引入:(1)输入数据级别,(2)训练期间或(3)推理期间。每个选项在ML开发过程的不同阶段提供隐私保护,其中引入DP的预测级别最弱,引入DP的输入级别最强。使输入数据具有差分隐私意味着对该数据进行训练的任何模型也将具有DP保证。当在培训期间引入DP时,只有特定的模型具有DP保证。在预测级别引入DP意味着只有模型的预测受到保护,但模型本身不具有差分隐私。
引入差分隐私的任务从左到右逐渐变得更容易。 |
通常在训练期间引入DP(DP训练)。梯度噪声注入方法,如DP-SGD或DP-FTRL及其扩展,目前是实现大型深度神经网络等复杂模型的DP保证的最实用方法。
DP-SGD基于随机梯度下降(SGD)优化器,具有两个修改:(1)每个示例的梯度被剪辑为某个范数以限制灵敏度(一个单个示例对整个模型的影响),这是一个缓慢且计算密集的过程,和(2)通过聚合梯度并添加噪声来形成噪声梯度更新,该噪声与灵敏度和隐私保证的强度成比例。
DP-SGD是SGD的修改,包括a)将每个示例的梯度剪辑到限制灵敏度,并且b)在梯度更新步骤之前,将噪声,校准到灵敏度和隐私保证的强度,添加到聚合梯度中。 |
现有的差分隐私训练挑战
梯度噪声注入方法通常表现为:(1)损失效用,(2)训练速度变慢,(3)增加了内存占用。
损失效用:
减少效用下降的最佳方法是使用更多的计算。使用更大的批次大小和/或更多的迭代是提高模型性能最突出和实用的方法之一。超参数调整也非常重要但经常被忽视。DP训练模型的效用对添加的总噪声量非常敏感,这取决于超参数,如剪切规范和批次大小。此外,其他超参数如学习率也应该重新调整以考虑到噪声梯度更新。
另一种选择是获取更多的数据或使用相似分布的公共数据。这可以通过利用公开可用的检查点(如ResNet或T5)并使用私有数据进行微调来实现。
训练速度变慢:
大多数梯度噪声注入方法通过限制每个示例梯度的剪辑来限制灵敏度,从而显着减慢反向传播。这可以通过选择一个有效的DP框架来解决,该框架可以有效地实现每个示例剪辑。
增加了内存占用:
DP训练需要大量的内存来计算和存储每个示例的梯度。此外,它需要更大的批次以获得更好的效用。增加计算资源(例如加速器的数量和大小)是额外内存需求的最简单解决方案。或者,一些算法(例如ghost剪辑,它基于这篇论文)完全避免每个示例的梯度剪辑。
最佳实践
以下最佳实践可以获得最佳模型效用的严格DP保证。
选择正确的隐私单元:
首先,我们应该清楚模型的隐私保证。这是通过选择“隐私单元”来编码的,该单元表示相邻数据集概念(即,仅一行不同的数据集)。在研究文献中,示例级别的保护是一个常见选择,但如果单个用户为训练数据集贡献了多个记录,则可能不是理想的选择。对于这种情况,用户级别的保护可能更合适。对于文本和序列数据,由于大多数应用中单个训练示例没有与嵌入在文本中的语义含义对齐,因此选择单元比较困难。
选择隐私保证:
我们概述了三个广泛的隐私保证层次,并鼓励从业者选择以下最低层次:
- 层次1-强隐私保证:选择ε≤1可提供强隐私保证,但对于大型模型可能会导致显着的效用下降,因此可能只适用于较小的模型。
- 层次2-合理的隐私保证:我们主张DP-ML模型目前未记录,但仍被广泛使用的目标是实现ε≤10。
- 层次3-弱隐私保证:任何有限的ε都比没有正式隐私保证的模型更好。但是,对于ε> 10,仅通过DP保证可能不足以证明数据匿名化,可能需要采取其他措施(例如实证隐私审计)来确保模型保护用户数据。
超参数调整:
选择超参数需要优化三个相互依赖的目标:1)模型效用,2)隐私成本ε和3)计算成本。常见策略将其中两个作为约束,并专注于优化第三个。我们提供了一些方法,可以在有限的试验次数内最大化效用,例如在隐私和计算约束下进行调整。
报告隐私保证:
关于ML的DP的许多工作仅报告其训练过程的ε和可能的δ值。然而,我们认为从业人员应该提供包括以下内容的全面模型保证概述:
- DP设置:结果是基于具有可信服务提供商的中心DP,本地DP还是其他设置?
- 实例化DP定义:
- 数据访问范围:DP保证是否仅适用于单个训练运行,还是还包括超参数调整等。
- 最终机制的输出:隐私保证覆盖了哪些内容,可以公开发布(例如,模型检查点,私有化梯度的完整序列等)
- 隐私单元:选择的“隐私单元”(例如,示例级别,用户级别等)
- DP“相邻”数据集的邻接定义:描述相邻数据集的区别的方法(例如,添加或删除,替换,零出一个)。
- 隐私会计细节:提供会计细节,例如组合和放大,对于正确比较不同方法是很重要的,并且应包括:
- 使用的会计类型,例如Rényi DP基于会计,PLD会计等。
- 会计假设及其是否成立(例如,对于隐私放大假定使用泊松抽样,但在培训中使用数据洗牌)。
- 模型和调整过程的正式DP声明(例如,具体的ε,δ-DP或ρ-zCDP值)。
- 透明度和可验证性:尽可能使用标准DP库为关键机制实现和会计组件提供完整的开源代码。
注意使用的所有组件:
通常,DP-训练是DP-SGD或其他算法的直接应用。然而,一些经常用于ML模型中的组件或损失(例如,对比损失,图形神经网络层)应该进行检查,以确保不违反隐私保证。
待解决的问题
虽然DP-ML是一个活跃的研究领域,但我们强调存在改进空间的广泛领域。
开发更好的会计方法:
我们对DP-训练ε,δ保证的当前理解依赖于许多技术,如Rényi DP组合和隐私放大。我们相信,对现有算法进行更好的会计方法将证明ML模型的DP保证实际上比预期更好。
开发更好的算法:
使用梯度噪声注入进行DP训练的计算负担来自于需要使用更大的批次并限制每个示例的灵敏度。开发可以使用更小的批次或识别其他方式(除了每个示例裁剪)来限制灵敏度的方法将是DP-ML的突破。
更好的优化技术:
直接应用相同的DP-SGD配方被认为对于自适应优化器是次优的,因为添加到私有化梯度的噪声可能在学习率计算中累积。设计理论基础的DP自适应优化器仍然是一个活跃的研究课题。另一个潜在的方向是更好地理解DP损失的表面,因为对于标准(非DP)ML模型,已经表明较平坦的区域具有更好的泛化能力。
识别更耐噪声的架构:
有机会更好地了解在引入DP时是否需要调整现有模型的架构。
结论
我们的调查论文总结了与使ML模型DP相关的当前研究,并提供了如何实现最佳隐私效用权衡的实用技巧。我们希望这项工作将成为希望有效应用DP到复杂ML模型的从业者的参考点。
致谢
我们感谢Hussein Hazimeh,Zheng Xu,Carson Denison,H.Brendan McMahan,Sergei Vassilvitskii,Steve Chien和Abhradeep Thakurta,Badih Ghazi,Chiyuan Zhang为协助准备此博客文章,论文和教程内容。感谢John Guilyard在本文中创建图形,以及Ravi Kumar的评论。