A Smooth Binary Mechanism for Efficient Private Continual Observation
Joel Daniel Andersson, Rasmus Pagh
TL;DR
The authors address private continual counting by introducing the Smooth Binary Mechanism, which builds on the classic binary mechanism to deliver stable, identical-noise prefix sums with improved variance. By selecting leaves with balanced binary indices and slightly increasing the tree height, the mechanism achieves a per-output variance of $\mathrm{Var}[\mathcal{M}(t)] = \frac{1+o(1)}{8\rho} \log^2 T$ while using only $O(\log T)$ space and $O(T)$ time, and ensuring constant average work per output. Although it does not match the lowest possible variance of matrix-based factorization methods, it offers a practical, scalable alternative with uniform error distribution across time steps, making it attractive for large-scale, real-time private counting. The work demonstrates favorable trade-offs between statistical accuracy and computational efficiency and provides detailed analyses and empirical comparisons, highlighting broad applicability to private SGD and other continual-privacy tasks. The framework can extend to $\varepsilon$-DP and multidimensional data, with potential future improvements in variance and scalability.
Abstract
In privacy under continual observation we study how to release differentially private estimates based on a dataset that evolves over time. The problem of releasing private prefix sums of $x_1,x_2,x_3,\dots \in\{0,1\}$ (where the value of each $x_i$ is to be private) is particularly well-studied, and a generalized form is used in state-of-the-art methods for private stochastic gradient descent (SGD). The seminal binary mechanism privately releases the first $t$ prefix sums with noise of variance polylogarithmic in $t$. Recently, Henzinger et al. and Denisov et al. showed that it is possible to improve on the binary mechanism in two ways: The variance of the noise can be reduced by a (large) constant factor, and also made more even across time steps. However, their algorithms for generating the noise distribution are not as efficient as one would like in terms of computation time and (in particular) space. We address the efficiency problem by presenting a simple alternative to the binary mechanism in which 1) generating the noise takes constant average time per value, 2) the variance is reduced by a factor about 4 compared to the binary mechanism, and 3) the noise distribution at each step is identical. Empirically, a simple Python implementation of our approach outperforms the running time of the approach of Henzinger et al., as well as an attempt to improve their algorithm using high-performance algorithms for multiplication with Toeplitz matrices.
