holisticai.robustness.metrics.empirical_robustness#
- holisticai.robustness.metrics.empirical_robustness(x, adv_x, y_pred, y_adv_pred, norm=2) float[source]#
Calculate the empirical robustness of an adversarial example.
Parameters
- xarray-like
The original input.
- adv_xarray-like
The adversarial input.
- y_predarray-like
The predicted labels for the original input.
- y_adv_predarray-like
The predicted labels for the adversarial input.
- normint (optional)
The norm to be used for calculating the perturbation. Defaults to 2.
Returns
- float
The empirical robustness value.
Examples
>>> import numpy as np >>> from holisticai.robustness.metrics import empirical_robustness >>> x = np.array([[1, 2, 3], [4, 5, 6]]) >>> adv_x = np.array([[1.1, 2.2, 3.3], [4.4, 5.5, 6.6]]) >>> y_pred = np.array([0, 1]) >>> y_adv_pred = np.array([1, 1]) >>> empirical_robustness(x, adv_x, y_pred, y_adv_pred) 0.09999999999999999