def __is_adversarial(self, image, predictions):
"""Interface to criterion.is_adverarial that calls
__new_adversarial if necessary.
Parameters
----------
predictions : :class:`numpy.ndarray`
A vector with the pre-softmax predictions for some image.
label : int
The label of the unperturbed reference image.
"""
is_adversarial = self.__criterion.is_adversarial(
predictions, self.__original_class)
if is_adversarial:
is_best, distance = self.__new_adversarial(image)
else:
is_best = False
distance = None
assert isinstance(is_adversarial, bool) or \
isinstance(is_adversarial, np.bool_)
return is_adversarial, is_best, distance
评论列表
文章目录