Validation functions¶
Validation functions for the differential privacy library
General functions¶
- diffprivlib.validation.check_epsilon_delta(epsilon, delta, allow_zero=False)[source]¶
Checks that epsilon and delta are valid values for differential privacy. Throws an error if checks fail, otherwise returns nothing.
As well as the requirements of epsilon and delta separately, both cannot be simultaneously zero, unless
allow_zero
is set toTrue
.
- diffprivlib.validation.check_bounds(bounds, shape=0, min_separation=0.0, dtype=<class 'float'>)[source]¶
Input validation for the
bounds
parameter.Checks that
bounds
is composed of a list of tuples of the form (lower, upper), where lower <= upper and both are numeric. Also checks thatbounds
contains the appropriate number of dimensions, and that there is amin_separation
between the bounds.- Parameters
bounds (tuple) – Tuple of bounds of the form (min, max). min and max can either be scalars or 1-dimensional arrays.
shape (int, default: 0) – Number of dimensions to be expected in
bounds
.min_separation (float, default: 0.0) – The minimum separation between lower and upper of each dimension. This separation is enforced if not already satisfied.
dtype (data-type, default: float) – Data type of the returned bounds.
- Returns
bounds
- Return type
- diffprivlib.validation.clip_to_norm(array, clip)[source]¶
Clips the examples of a 2-dimensional array to a given maximum norm.
- Parameters
array (np.ndarray) – Array to be clipped. After clipping, all examples have a 2-norm of at most clip.
clip (float) – Norm at which to clip each example
- Returns
array – The clipped array.
- Return type
np.ndarray
- diffprivlib.validation.clip_to_bounds(array, bounds)[source]¶
Clips the examples of a 2-dimensional array to given bounds.
- Parameters
array (np.ndarray) – Array to be clipped. After clipping, all examples have a 2-norm of at most clip.
bounds (tuple) – Tuple of bounds of the form (min, max) which the array is to be clipped to. min and max must be scalar, unless array is 2-dimensional.
- Returns
array – The clipped array.
- Return type
np.ndarray