DP-SPRT: Differentially Private Sequential Probability Ratio Tests

Thomas Michel, Debabrota Basu, Emilie Kaufmann
8/8/2025
stat.MLcs.CRcs.LG

No confident code implementation found for this paper.

Abstract

We revisit Wald's celebrated Sequential Probability Ratio Test for sequential tests of two simple hypotheses, under privacy constraints. We propose DP-SPRT, a wrapper that can be calibrated to achieve desired error probabilities and privacy constraints, addressing a significant gap in previous work. DP-SPRT relies on a private mechanism that processes a sequence of queries and stops after privately determining when the query results fall outside a predefined interval. This OutsideInterval mechanism improves upon naive composition of existing techniques like AboveThreshold, potentially benefiting other sequential algorithms. We prove generic upper bounds on the error and sample complexity of DP-SPRT that can accommodate various noise distributions based on the practitioner's privacy needs. We exemplify them in two settings: Laplace noise (pure Differential Privacy) and Gaussian noise (Rényi differential privacy). In the former setting, by providing a lower bound on the sample complexity of any $ε$-DP test with prescribed type I and type II errors, we show that DP-SPRT is near optimal when both errors are small and the two hypotheses are close. Moreover, we conduct an experimental study revealing its good practical performance.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{michel2025dpsprt,
  title  = {DP-SPRT: Differentially Private Sequential Probability Ratio Tests},
  author = {Thomas Michel and Debabrota Basu and Emilie Kaufmann},
  year   = {2025},
  eprint = {2508.06377},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2508.06377v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2508.06377.svg)](https://codeofpaper.com/paper/2508.06377)

Discussion