English

Opacus: User-Friendly Differential Privacy Library in PyTorch

Machine Learning 2022-08-24 v4 Cryptography and Security

Abstract

We introduce Opacus, a free, open-source PyTorch library for training deep learning models with differential privacy (hosted at opacus.ai). Opacus is designed for simplicity, flexibility, and speed. It provides a simple and user-friendly API, and enables machine learning practitioners to make a training pipeline private by adding as little as two lines to their code. It supports a wide variety of layers, including multi-head attention, convolution, LSTM, GRU (and generic RNN), and embedding, right out of the box and provides the means for supporting other user-defined layers. Opacus computes batched per-sample gradients, providing higher efficiency compared to the traditional "micro batch" approach. In this paper we present Opacus, detail the principles that drove its implementation and unique features, and benchmark it against other frameworks for training models with differential privacy as well as standard PyTorch.

Keywords

Cite

@article{arxiv.2109.12298,
  title  = {Opacus: User-Friendly Differential Privacy Library in PyTorch},
  author = {Ashkan Yousefpour and Igor Shilov and Alexandre Sablayrolles and Davide Testuggine and Karthik Prasad and Mani Malek and John Nguyen and Sayan Ghosh and Akash Bharadwaj and Jessica Zhao and Graham Cormode and Ilya Mironov},
  journal= {arXiv preprint arXiv:2109.12298},
  year   = {2022}
}

Comments

Privacy in Machine Learning (PriML) workshop, NeurIPS 2021

R2 v1 2026-06-24T06:19:02.922Z