Class NoisyHistogram
java.lang.Object
dk.alexandra.fresco.stat.anonymisation.NoisyHistogram
- All Implemented Interfaces:
dk.alexandra.fresco.framework.builder.Computation<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>,dk.alexandra.fresco.framework.builder.numeric.ProtocolBuilderNumeric>
public class NoisyHistogram extends Object implements dk.alexandra.fresco.framework.builder.Computation<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>,dk.alexandra.fresco.framework.builder.numeric.ProtocolBuilderNumeric>
Compute a differentially private
histogram for a dataset.
-
Constructor Summary
Constructors Constructor Description NoisyHistogram(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> buckets, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> data, double epsilon)Given a list of upper bounds for buckets and a list of samples, this computation computes a differentially private histogram for the given buckets. -
Method Summary
Modifier and Type Method Description dk.alexandra.fresco.framework.DRes<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>>buildComputation(dk.alexandra.fresco.framework.builder.numeric.ProtocolBuilderNumeric builder)
-
Constructor Details
-
NoisyHistogram
public NoisyHistogram(List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> buckets, List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>> data, double epsilon)Given a list of upper bounds for buckets and a list of samples, this computation computes a differentially private histogram for the given buckets. The last bucket contains all samples larger than the last upper bound.- Parameters:
buckets- Soft upper bounds for bucketsdata- List of samplesepsilon- The privacy parameter
-
-
Method Details
-
buildComputation
public dk.alexandra.fresco.framework.DRes<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>> buildComputation(dk.alexandra.fresco.framework.builder.numeric.ProtocolBuilderNumeric builder)- Specified by:
buildComputationin interfacedk.alexandra.fresco.framework.builder.Computation<List<dk.alexandra.fresco.framework.DRes<dk.alexandra.fresco.framework.value.SInt>>,dk.alexandra.fresco.framework.builder.numeric.ProtocolBuilderNumeric>
-