Sefika's picture
train
dda3d40
raw
history blame
833 Bytes
import numpy as np
def noise(x, eps=0.3, order=np.inf, clip_min=None, clip_max=None):
"""
A weak attack that just picks a random point in the attacker's action
space. When combined with an attack bundling function, this can be used to
implement random search.
References:
https://arxiv.org/abs/1802.00420 recommends random search to help identify
gradient masking
https://openreview.net/forum?id=H1g0piA9tQ recommends using noise as part
of an attack building recipe combining many different optimizers to
yield a strong optimizer.
Arguments
---------
x : torch.Tensor
The input image.
"""
if order != np.inf:
raise NotImplementedError(ord)
eta = np.random.uniform(low=-eps, high=eps, size=x.shape)
adv_x = x + eta
return adv_x