跳转到主要内容

使用差分隐私训练PyTorch模型

项目描述

pytorch-dp:使用差分隐私训练PyTorch模型

CircleCI

pytorch-dp是一个库,它允许使用差分隐私训练PyTorch模型。它支持在客户端进行最小代码更改的情况下进行训练,对训练性能影响很小,并允许客户端实时跟踪在任何给定时刻消耗的隐私预算。

PyTorch Privacy目前是一个预览测试版,正在积极开发中!

目标受众

此代码发布针对两个目标受众

  1. 机器学习从业者将发现此代码是训练具有差分隐私的模型的温和入门,因为它需要最小代码更改。
  2. 差分隐私科学家会发现此代码易于实验和调整,使他们能够专注于重要的事情。

安装

pip

pip install pytorch-dp

从源代码

git clone https://github.com/facebookresearch/pytorch-dp.git
cd pytorch-dp
pip install -e .

入门

要使用差分隐私训练您的模型,您只需在运行之前声明一个PrivacyEngine并将其附加到优化器即可,例如

model = Net()
optimizer = SGD(model.parameters(), lr=0.05)
privacy_engine = PrivacyEngine(
    model,
    batch_size,
    sample_size,
    alphas=[1, 10, 100],
    noise_multiplier=1.3,
    max_grad_norm=1.0,
)
privacy_engine.attach(optimizer)
# Now it's business as usual

MNIST示例 包含一个完整的运行过程。

贡献

有关如何帮助的详细信息,请参阅 CONTRIBUTING 文件。

参考文献

许可证

本代码根据Apache 2.0许可证发布,如LICENSE文件所示。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

pytorch-dp-0.1b1.tar.gz (37.0 kB 查看哈希值)

上传时间

构建分布

pytorch_dp-0.1b1-py3-none-any.whl (50.5 kB 查看哈希值)

上传时间 Python 3

支持者