jax_privacy.accounting.amplified_bandmf_event

jax_privacy.accounting.amplified_bandmf_event(noise_multiplier, iterations, *, num_bands, sampling_prob)[source]

Returns the DpEvent for DP-BandMF with the given training parameters.

The examples will be split up into num_bands groups, and then minibatches will be formed by sampling within each group. See this paper for more details:

Parameters:
  • noise_multiplier (float) – The noise multiplier to use, assuming the strategy matrix has maximum L2 column norm of one.

  • iterations (int) – The number of iterations to run the mechanism for.

  • num_bands (int) – The number of bands to use.

  • sampling_prob (float) – The Poisson sampling probability of the mechanism, i.e., the probability an example will be included in each batch. Note that because the examples are partitioned into num_bands groups, the expected batch size is actually dataset_size * sampling_prob / num_bands (i.e., a factor of num_bands smaller than DP-SGD).

Return type:

DpEvent

Returns:

A DpEvent object.