Function opendp::measurements::then_alp_queryable
source · pub fn then_alp_queryable<K, CI, CO>(
scale: CO,
total_limit: CI,
value_limit: Option<CI>,
size_factor: Option<u32>,
alpha: Option<u32>
) -> PartialMeasurement<MapDomain<AtomDomain<K>, AtomDomain<CI>>, Queryable<K, CO>, L1Distance<CI>, MaxDivergence<CO>>where
K: 'static + Hashable,
CI: 'static + Integer + InfCast<CO> + ToPrimitive,
CO: 'static + Float + InfCast<Float> + InfCast<CI>,
Float: InfCast<CO>,
(MapDomain<AtomDomain<K>, AtomDomain<CI>>, L1Distance<CI>): MetricSpace,
Expand description
Measurement to release a queryable containing a DP projection of bounded sparse data.
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.
Citations
- ALP21 Differentially Private Sparse Vectors with Low Error, Optimal Space, and Fast Access Algorithm 4
Arguments
scale
- Privacy loss parameter. This is equal to epsilon/sensitivity.value_limit
- Upper bound on individual values (referred to as β). Entries above β are clamped.total_limit
- Either the true value or an upper bound estimate of the sum of all values in the input.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.