Skip to contents

Measurement to release a queryable containing a DP projection of bounded sparse data.

Usage

make_alp_queryable(
  input_domain,
  input_metric,
  scale,
  total_limit,
  value_limit = NULL,
  size_factor = 50L,
  alpha = 4L
)

Arguments

input_domain

undocumented

input_metric

undocumented

scale

Privacy loss parameter. This is equal to epsilon/sensitivity.

total_limit

Either the true value or an upper bound estimate of the sum of all values in the input.

value_limit

Upper bound on individual values (referred to as β). Entries above β are clamped.

size_factor

Optional multiplier (default of 50) for setting the size of the projection.

alpha

Optional parameter (default of 4) for scaling and determining p in randomized response step.

Value

Measurement

Details

The size of the projection is O(total * size_factor * scale / alpha). The evaluation time of post-processing is O(beta * scale / alpha).

size_factor is an optional multiplier (defaults to 50) for setting the size of the projection. There is a memory/utility trade-off. The value should be sufficiently large to limit hash collisions.

Required features: contrib

make_alp_queryable in Rust documentation.

Citations:

Supporting Elements:

  • Input Domain: MapDomain<AtomDomain<K>, AtomDomain<CI>>

  • Output Type: Queryable<K, f64>

  • Input Metric: L1Distance<CI>

  • Output Measure: MaxDivergence