OpenMined / PipelineDP

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.
https://pipelinedp.io/
Apache License 2.0
270 stars 75 forks source link

Fix computing weighted average for UtilityReports #466

Closed dvadym closed 1 year ago

dvadym commented 1 year ago

UtilityReport (which are cross-partition Utility Analysis metrics) are computed as weighted average of per-partition utility analysis metrics, with weights equal to probability that the partition kept. There is a bug that per-partition utility metrics are not multipled on the prob_keep. This PR fixes that.