jax_privacy.experimental.monte_carlo.sample_generation

Methods for sampling from various PLDs arising from DP-BandMF.

For convenience, all methods assume C in DP-MF is a banded Toeplitz matrix, which can be specified by the non-zero entries of its first column. The main benefit of this assumption is that we can compute Cx efficiently via convolution. The analysis behind the methods here can be extended to other families of C, but that is beyond the current scope of this library.

Docstrings will refer to an example being included or excluded from the dataset. The intended adjacency to use this library with is the zero-out adjacency, so excluded really means the sensitive example is zeroed out. When truncation is not used, zero-out is equivalent to add-remove. Otherwise add-remove is generally not compatible with truncation due to the need for the dataset size to be public.

Functions

compute_privacy_loss(strategy, sample, ...)

Computes the privacy loss on a sample from the dominating pair.

generate_sample(strategy, noise_multiplier, ...)

Generates a sample from the dominating pair for amplified DP-BandMF.

get_privacy_loss_sample(strategy, ...[, ...])

Returns sample(s) from DP-BandMF's dominating privacy loss distribution.