PipelineDP is a Python framework for applying differentially private aggregations to large datasets using batch processing systems such as Apache Spark, Apache Beam, and more.
Propagates noise_standard_deviation (in the case of NaiveAccountant, it is None throughout)
When it reaches apply_laplace_mechanism/apply_gaussian_mechanism, if noise_standard_deviation is NOT None, we use it for noise (ignoring eps/delta)
Otherwise (if noise_standard_deviation is None), eps/delta are used to add noise.
Tasks:
[x] Add noise_standard_deviation to scalar computations and parameters
[x] Ajust tests to pass after changes
[ ] Create tests for scalar computations with noise_standard_deviation
[ ] Same as above, just to vector sum computation
Additionally:
I've also did some minor changes, like two TODOs in the dp_computations.py and formatting.
I see that request_budget receives noise_standard_deviation, do you know why? not sure if it is needed, as noise_standard_deviation is only calculated in compute_budgets.
Description
Solving "Advance composition in PipelineDP" #259
The approach I'm using is:
Tasks:
Additionally:
dp_computations.py
and formatting.request_budget
receivesnoise_standard_deviation
, do you know why? not sure if it is needed, asnoise_standard_deviation
is only calculated in compute_budgets.