measures#
Module containing supported variants for differential privacy.
Classes#
Base class for output measures. |
|
Pure DP measure. |
|
Approximate DP measure. |
|
ρ-zCDP measure. |
- class Measure#
Bases:
abc.ABC
Base class for output measures.
- __eq__(self, other)#
Return True if both measures are equal.
- Parameters
other (Any) –
- Return type
- abstract validate(self, value)#
Raises an error if value not a valid distance.
- Parameters
value (Any) – A distance between two probability distributions under this measure.
- class PureDP#
Bases:
Measure
Pure DP measure.
- validate(self, value)#
Raises an error if value not a valid distance.
value must be a nonnegative real or infinity
- Parameters
value (tmlt.core.utils.exact_number.ExactNumberInput) – A distance between two probability distributions under this measure.
- compare(self, value1, value2)#
Returns True if value1 is less than or equal to value2.
- Parameters
value1 (tmlt.core.utils.exact_number.ExactNumberInput) –
value2 (tmlt.core.utils.exact_number.ExactNumberInput) –
- Return type
- class ApproxDP#
Bases:
Measure
Approximate DP measure.
- validate(self, value)#
Raises an error if value not a valid distance.
value must be a tuple with two values: (epsilon, delta)
epsilon must be a nonnegative real or infinity
delta must be a real between 0 and 1 (inclusive)
- Parameters
value (Tuple[tmlt.core.utils.exact_number.ExactNumberInput, tmlt.core.utils.exact_number.ExactNumberInput]) – A distance between two probability distributions under this measure.
- compare(self, value1, value2)#
Returns True if value1 is less than or equal to value2.
- Parameters
value1 (Tuple[tmlt.core.utils.exact_number.ExactNumberInput, tmlt.core.utils.exact_number.ExactNumberInput]) –
value2 (Tuple[tmlt.core.utils.exact_number.ExactNumberInput, tmlt.core.utils.exact_number.ExactNumberInput]) –
- Return type
- class RhoZCDP#
Bases:
Measure
ρ-zCDP measure.
See the definition of ρ-zCDP in this paper under Definition 1.1.
- validate(self, value)#
Raises an error if value not a valid distance.
value must be a nonnegative real or infinity
- Parameters
value (tmlt.core.utils.exact_number.ExactNumberInput) – A distance between two probability distributions under this measure.
- compare(self, value1, value2)#
Returns True if value1 is less than or equal to value2.
- Parameters
value1 (tmlt.core.utils.exact_number.ExactNumberInput) –
value2 (tmlt.core.utils.exact_number.ExactNumberInput) –
- Return type