Title: PERTURBATIONS ARE NOT ENOUGH: GENERATING ADVERSARIAL EXAMPLES WITH SPATIAL DISTOR-TIONS

Abstract: Deep neural network image classifiers are reported to be susceptible to adversarial evasion attacks, which use carefully crafted images created to mislead a classifier. Recently, various kinds of adversarial attack methods have been proposed, most of which focus on adding small perturbations to input images. Despite the success of existing approaches, the way to generate realistic adversarial images with small perturbations remains a challenging problem. In this paper, we aim to address this problem by proposing a novel adversarial method, which generates adversarial examples by imposing not only perturbations but also spatial distortions on input images, including scaling, rotation, shear, and translation. As humans are less susceptible to small spatial distortions, the proposed approach can produce visually more realistic attacks with smaller perturbations, able to deceive classifiers without affecting human predictions. We learn our method by amortized techniques with neural networks and generate adversarial examples efficiently by a forward pass of the networks. Extensive experiments on attacking different types of nonrobustified classifiers and robust classifiers with defence show that our method has state-of-the-art performance in comparison with advanced attack parallels.

1. INTRODUCTION:

Recently, Deep Neural Networks (DNNs) have enjoyed great success in many areas such as computer vision and natural language processing. Nevertheless, DNNs are demonstrated to be vulnerable to adversarial attacks (Goodfellow et al., 2014b; Nguyen et al., 2015; Kurakin et al., 2016) , which are data samples carefully crafted to be misclassified by DNN classifiers. For example, in image classification, an adversarial example may imperceptibly look like a legitimate data sample in a ground-truth class but misleads a DNN classifier to predict it into a maliciously-chosen target class or any class different from the ground truth. The former and latter are referred to as targeted attack and untargeted attack, respectively. In addition, adversarial attacks can be categorised into poisoning attacks (attacks during the training phase of classifiers) vs evasion attacks (attacks during the testing/inference phase) and whitebox attacks vs blackbox attacks. For whitebox attacks, the attacker has full access to the model architecture and parameters of a classifier, while those kinds of information are invisible to blackbox attackers. In this paper, we are particularly interested in untargeted, evasion, and whitebox attacks. However, many of the attacks discussed in this paper (including the proposed ones) can be easily adapted into targeted or blackbox settings. Shown in Goodfellow et al. (2014b) , image classifiers based on DNNs (e.g., Convolutional Neural Networks (CNNs) (LeCun et al., 1998) ) are susceptible to small but carefully-chosen perturbations. Therefore, significant research efforts have been devoted into perturbation-based adversarial attacks, such as those in Goodfellow et al. (2014b) ; Moosavi-Dezfooli et al. (2016) ; Carlini & Wagner (2017) ; Xiao et al. (2018a) . Usually, a classifier is more easily fooled with larger perturbations, but this may result in adversarial examples that are less similar to original/real images. In practice, it is equally important that adversarial examples should mislead the classifier as well as "look like" real images. Therefore, the general task for perturbation-based methods can be formulated as misleading a classifier with a minimum amount of perturbation.

It is reported that the intermediate feature maps (convolutional layer activations) in a CNN are not actually invariant to spatial transformations of the input data, due to its limited, pre-defined pooling mechanism for dealing with spatial variations (Jaderberg et al., 2015; Cohen & Welling, 2015; Lenc & Vedaldi, 2015) . Therefore, one can imagine generating adversarial examples by incorporating spatial distortions to original images. For example, Figure 1a shows that a CNN classifier successfully classifies the digits of MNIST (LeCun & Cortes, 1998) . However, it is misled by the adversarial examples with properly-chosen spatial distortions. In contrast, humans are usually less influenced by such distortions. Motivated by this demonstration, by combining spatial distortions with perturbations, we may be able to generate more realistic adversarial examples with smaller perturbations, which can challenge classifiers without affecting human predictions.

To further demonstrate this idea, given some samples of original MNIST images shown in Figure 1b , we apply a widely-used perturbation-based attack, Projected Gradient Descent (PGD) (Madry et al., 2018) , with the maximum perturbations of = 0.3 (the standard setting of the attack), to attack the previously-mentioned classifier, the corresponding adversarial examples of which are shown in Figure 1c . It can be observed that those adversarial examples, though they fool the classifier, can be detected by humans, meaning that one can easily distinguish real and adversarial examples. On the other hand, shown in Figure 1d , the approach introduced in this paper, combines spatial distortions and perturbations to achieve similar attack performance as PGD, but with much smaller perturbation ( = 0.1). Our adversarial examples are clearly less distinguishable from real images by humans. Motivated by the above idea, in this paper, we propose a new kind of adversarial attack on DNNbased image classifiers, which generalises the conventional perturbation-based attacks with additional spatial distortions. We name our framework SdpAdv (Spatial distortion + perturbation Adversary). Specifically, to attack a pretrained classifier, our approach leverages a trainable joint process of two major steps, where it first generates a spatially distorted intermediate image by performing affine-transformations on a real image and then generates the final adversarial image by adding perturbations to the intermediate image.

The proposed SdpAdv has the following appealing properties:

• With the help of spatial distortions, our method is able to achieve state-of-the-art adversarial attack performance with much less perturbations than existing approaches purely based on perturbations, which generates less distinguishable adversarial examples. • With a differentiable framework, the learning of SdpAdv can be done efficiently in an amortized way, where two neural networks are learned to generate the specific parameters of the spatial distortions and perturbations for an input image. After SdpAdv is trained, it only takes one-step forward propagation in the two neural networks to generate adversarial examples, which enjoys better efficiency in the testing phase. • As most of existing robust classifier with defences, like those in Samangouei et al. (2018) ; Matyasko & Chau (2018) , are designed to defend against perturbation-based attacks, they can be less effective to our attacks based on spatial distortions (Xiao et al., 2018b ). • Unlike many other whitebox attack methods, which usually require full access to the model structures and parameters of the classifier, SdpAdv only needs to be trained with access to the predicted probabilities of the classifier and directly generates adversarial examples from input images in the testing phase. That is to say, SdpAdv fits the settings of the semi-whitebox attack (Xiao et al., 2018a) , which can be more applicable in practice.

To demonstrate the superiority of our proposed method, we conduct extensive comparisons with state-of-the-art adversarial attacks. The experimental results show that SdpAdv is able to achieve better attack performance against both unprotected and robust classifiers. More interestingly, using less perturbation, our adversarial examples are much less distinguishable from real images.

2. BACKGROUND AND RELATED WORK:

We now introduce the background and related work on adversarial attacks. Suppose that an image x in the ground-truth label y is the input of a neural network classifier f . The predicted label of f given x is denoted as f (x). We assume f (x) = y for a well-trained classifier and will use them interchangeably hereafter. The general goal of adversarial attacks is to generate an adversarial example x A , which should "look like" x but change the prediction of f , i.e., f (x) = f (x A ). Conversely, the goal of a defender is to train a robust classifier to defend against adversarial attacks.

2.1. PERTURBATION-BASED ADVERSARIAL ATTACKS:

As the name implies, perturbation-based attacks generate x A by adding small perturbations η to x: x A = x + η. In general, η can be constructed by either: η := arg max η : η ≤ f (x A , y) or η := arg min η :f (x) =f (x A ) η , where f (•) denotes the cross-entropy loss of f and • can be the L ∞ in accordance with Madry et al. (2018) ; Athalye et al. (2018) or other norms. As finding the closed-form solution for the above problem can be hard, Fast Gradient Sign Method (FGSM) (Goodfellow et al., 2014b ) is a one-step attack that applies a first-order approximation: η = • sign(∇ x f (x, y)). Several extensions and variants to FGSM have been proposed, such as Randomized FGSM (Tramèr et al., 2018) , Basic Iterative Method (BIM) (Kurakin et al., 2016) , and Projected Gradient Descent (PGD) (Madry et al., 2018) . In addition to FGSM, there are numerous perturbation-based attacks that use different approximations to the above problem. For example, DeepFool (Moosavi-Dezfooli et al., 2016) generates adversarial perturbations by taking a step in the direction of the closest decision boundary in an iterative manner and CW (Carlini & Wagner, 2017) is an attack based on the optimisation of a modified loss function with implicit box-constraints.

Despite their success, the optimisation process of the above methods may have to be done for every test image, which could be inefficient in practice. To alleviate this problem, several attack methods have been proposed to directly generate perturbations by feeding real images into a generator: η = g(x), which is usually implemented by neural networks. For example, Adversarial Transformation Networks (ATNs) (Baluja & Fischer, 2018) trains g by minimising the combination of the re-ranking loss and an L 2 norm loss, so as to constrain x A to be close to x in terms of L 2 . Instead of using an L 2 norm, the AdvGAN (Xiao et al., 2018a) attack adopts a Generative Adversarial Network (GAN) (Goodfellow et al., 2014a) framework with a discriminator to encourage the perceptual quality of the generated attacks. Moreover, the Rob-GAN (Liu & Hsieh, 2019) attack also uses a GAN framework, where the discriminator is trained to distinguish between the attacks generated by PGD and those by the generator.

2.2. NON-PERTURBATION-BASED ADVERSARIAL ATTACKS:

Here we consider non-perturbation-based methods as attacks that do not purely rely on manipulating the pixel values of original images. Compared with perturbation-based attacks, to our knowledge, research on non-perturbation-based methods is relatively rare. Recently, by adding perturbations to the latent space learned by Auxiliary Classifier GAN (AC-GAN) (Odena et al., 2017) , the attack in Song et al. (2018) generates adversarial examples for a specific label from scratch without taking a real image as input. Alternatively, there are attacks that apply spatial transformations to original images. Spatial Transformation Method (STM)1 used in the CleverHans library (Papernot et al., 2018) constructs adversarial candidates by rotation and translation then selects the one that chal-lenges the classifier most. As the selection process is non-differentiable, STM relies on the SPSA adversary (Uesato et al., 2018) , which is a gradient-free optimization method. Given a real image, stAdv (Xiao et al., 2018b) is differentiable method that finds a flow field, each cell of which captures the transformation direction of one pixel of an input image.

3. METHODS:



3.1. PROBLEM DEFINITION:

Here we first present the problem definition of adversarial attacks, which generalises the one of perturbation-based methods, discussed in Section 2. Suppose that a real image and its ground-truth label is denoted by x ∈ R L and y ∈ {1, • • • , K}, respectively, where L represents the image dimension and K is the number of unique labels. We consider a pretrained classifier f taking x as input and implemented with multilayer neural networks, where the last layer has K output units, denoted by f l (x). The output label of f (x) : R L → {1, • • • , K} is obtained by: f (x) := arg max l softmax(f l (x)). Given image x, we would like to find an adversarial example, x A ∈ O(x), that challenges the classifier f most, i.e., f (x A ) = f (x), where O(x) denotes the set of candidate adversarial images. Given the notation, the most challenging adversarial example x A can be generated by the following optimisation:

EQUATION

In particular, O(x) is usually defined along with the way of generating attacks. For example, for perturbation-based methods, O(x) can be a L 2 -ball (or other norms) centred at x with the radius of :

O(x) = {x , x -x ≤ }.

To make the candidates "perceptually close" to x, is set to a small value. However, this definition clearly does not fit the proposed approach with spatial distortions, as a small spatial distortion usually keeps an image looking similar but can result in a large L 2 difference. Before introducing our definition of O(x), we present the proposed way of generating adversarial examples in SdpAdv. Given an real image x, SdpAdv conducts two major steps: 1) the spatial distortion step, where a spatial transformation t : R L → R L : is applied to generate a distorted image x T := t(x); 2) the perturbation step, where a perturbation η is imposed on x T to generate the final adversarial example: x A := x T + η.

In the spatial distortion step, we consider the affine transformation, which is a widely-used geometric transformation for images. Simply parameterised by a matrix of six real numbers, an affine transformation can be a composition of four linear transformations including scaling, rotation, shear, and translation. Given the position of a pixel on a 2D image, (µ, ν), an affine transformation with a parameter matrix θ transforms the pixel into a new position (µ , ν ) as follows:

EQUATION

where if a = d = 1 and b = e = c = f = 0, we get the parameter matrix for the identity transformation, denoted by θ I . In the case of an image transformation, as the new position (µ , ν ) can be fractional numbers and so not necessarily lie on the integer image grid, we apply bilinear interpolation to the original image before transformation, following (Jaderberg et al., 2015) . With this notation, to generate a distorted image x T from x, we apply an affine transformation t with a parameter matrix θ x specific to x: x T := t θx (x). Recall that x T has to be perceptually close to x, thus we would like to avoid over-transforming x T . Therefore, we enforce θ x to be in the L 2 -ball of θ I : θ x -θ I ≤ γ. After the spatial distortion step, we add the perturbation of η x into x T to generate x A in the perturbation step: x A := x T +η x , where η x ≤ . This step is similar to the conventional perturbation-based methods, except that the perturbations are added into the intermediate image x T instead of the input image x.

Finally, the optimisation problem of SdpAdv can be described as: Given an individual image x, finding the optimal θ x and η x under the constraints of θ x -θ I ≤ γ and η x ≤ , which can also be formulated as: 

EQUATION

3.2. AMORTIZED OPTIMISATION SOLUTION:

In general, directly solving the problem in Eq. ( 3) involves the optimisation for every input image x, as in many existing perturbation-based algorithms such as CW (Carlini & Wagner, 2017) . Such an optimisation process can be challenging and inefficient in practical cases, where real-times attacks may be important. Alternatively, we leverage the amortized optimisation with neural networks to bypass this problem.

First, we introduce two families of neural networks:

H sd := {h sd : θ := h sd (x) ∧ θ -θ I ≤ γ} and H p := {h p : η := h p (x) ∧ η ≤ }.

In particular, the family of H sd consists of neural networks with the same network architecture, each of which, h sd , takes x as input and outputs the affine parameter matrix θ in the L 2 -ball with θ I as the centre. Similarly, h p outputs the perturbation of η . Due to the infinite capacity of neural networks, they can be used to approximate any continuous function up to any level of precision. Therefore, our goal is to find two neural networks h * sd ∈ H sd and h * p ∈ H p , which are used to approximate the optimisation in Eq. ( 3), based on the following theorem:

Theorem 1. If the family H defined above has infinite capacity, the optimization problem in Eq. ( 3) is equivalent to the following:

EQUATION

)

The proof is in the appendix.

3.3. MODEL ARCHITECTURE OF SDPADV:

With Theorem 1, we can amortize the optimisation of SdpAdv by training two neural networks: h sd and h p . Equipped with the two neural networks, we are able to build an end-to-end adversarial generator, g, that takes x as input and outputs x A by imposing spatial distortions and perturbations:

x A := g(x). The architecture of the proposed generator of SdpAdv is shown in Figure 2 . In the spatial distortion step, we adopt the architecture of STN (Jaderberg et al., 2015) . Specifically, following Jaderberg et al. (2015) , we name h sd to the "localisation network", which takes x as input and outputs the optimal parameter matrix of the affine transformation, θ x . After that, θ x is fed into the "grid generator" to create a sampling grid, which is a set of points where x should be sampled to produce x T (Jaderberg et al., 2015) . In the perturbation step, the adversarial generator takes the output of the previous step, x T , and then adds the optimal perturbation, η x to obtain x A . In particular, η x is generated from h p , named the "perturbation network": η x := h p (x T ). Finally, the operations of the adversarial generator can be summarised as:

g(x) := t h sd (x) (x) + h p (t h sd (x) (x)).

(5)

3.4. LEARNING OF SDPADV:

Given the architecture of the adversarial generator, the learning of SdpAdv is equivalent to that of the two neural networks: h sd and h p , by minimising the loss of L adv in Eq. (4). To train the model with stochastic gradient descent (SGD), it is important to show that the model construction is differentiable so that the loss gradients can be backpropagated. It is not hard to see that h p is trainable, which follows a similar construction to residual neural networks (He et al., 2016) . Shown in Jaderberg et al. (2015) , the construction of STN also allows the loss gradients to flow back to the grid generator as well as the localisation network h sd .

In addition to L adv , recall that we need to enforce θ x -θ I ≤ γ and η x ≤ . Therefore, we introduce two regularisation loss functions, respectively, as follows:

EQUATION

EQUATION

where • is the L 2 norm and Eq. ( 7) is the hinge loss used in Xiao et al. (2018a) . In our implementation, after generating θ x and η x , we apply θ x := min(θ I + γ, θ x ) and η x := min( , η x ) to keep x A in the candidate set O(x) defined by our method.

Inspired by the GAN construction in Xiao et al. (2018a) , we also introduce a neural network-based discriminator d to encourage that adversarial images are perceptually close to real images. However, different from Xiao et al. (2018a) , our d distinguishes between x T (positive sample) and x A (negative sample) and does not care about the spatial distortion step. This is because x T is expected to naturally "look similar" to the original image x under small affine transformations. Therefore, it is unnecessary to use the discriminator to check this. Following Goodfellow et al. (2014a) , the GAN loss is as follows:

EQUATION

In conclusion, the learning of the adversarial generator can be done by minimising the following loss function:

EQUATION

where α, β, γ are the weight parameters for the losses. In addition, the discriminator can be trained by maximising the GAN loss, similar to Goodfellow et al. (2014a) ; Xiao et al. (2018a) .

3.5. COMPARISON TO OTHER METHODS:

Among the many related adversarial attack methods discussed in Section 2, we consider Adv-GAN (Xiao et al., 2018a) , STM implemented in CleverHans (Papernot et al., 2018) , and stAdv (Xiao et al., 2018b) as the most related ones. To our knowledge, SdpAdv is the first technique that combines both spatial distortion and perturbation to generate adversarial examples, while others only consider either of the two attacks. Our method can be viewed as a generalisation to AdvGAN. That is to say, if we set γ to 0, then the affine transformations in our method will approach to the identity transformation and our SdpAdv reduces to AdvGAN. Despite the fact that STM and stAdv only consider spatial transformations, the way of conducting spatial transformations in our model is different from theirs. Specifically, STM only allows two kinds of transformations: rotation and translation while affine transformations used in our model are more flexible. More importantly, STM proposes spatially distorted candidates and uses a non-differentiable approach to select adversarial examples from those candidates, while ours is a differentiable method, which is more flexible and easier to train. In stAdv, each pixel in the input image has its specific flow vector to capture the transformation direction of the pixel, making the optimisation of the flow vectors potentially inefficient in practice.

In contrast, ours uses one affine transformation that is specific to one image, for all the pixels of that image. Consequently, we only need to optimise for the six cells in the affine parameter matrix for each image, which can be efficiently done by a forward pass in the localisation network.

4. EXPERIMENTS:

In this section, we conduct experiments to compare the performance of SdpAdv with other state-ofthe-art adversarial attack methods on attacking both non-robustified image classifiers (raw classifiers without defences) and robust classifiers with defences.

4.1. EXPERIMENTAL SETTINGS:

Here we mainly consider the MNIST (LeCun & Cortes, 1998) and Fashion MNIST (Xiao et al., 2017) datasets, each of which consists of 60,000 images of ten classes.

Settings of the classifiers: For non-robustified classifiers, we consider: Model-A, a CNN-based classifier with "X-Conv(64, 8×8, 2)-ReLU-Conv(128, 6×6, 2)-ReLU-Conv(128, 5×5, 1)-ReLU-FC(10)-Softmax" and Model-B, a fully-connected (FC) classifier with "X-FC( 200)-ReLU-FC( 200)-ReLU-FC(10)-Softmax" (Samangouei et al., 2018) , where X denotes input layer of image. The two classifiers were pretrained on the standard training set (50,000 images) of MNIST and Fashion MNIST. Additionally, we consider robust classifiers based on the following three state-of-the-art defences: Defense-GAN (Samangouei et al., 2018) , Adversarial-Critic (Adv-Critic) (Matyasko & Chau, 2018), and Adversarial-Training (Adv-Train) with FGSM ( = 0.3) (Tramèr et al., 2018) . All three robust classifiers share the same model architectures with the non-robustified classifiers but defend adversarial attacks in different ways. We used the original implementations of Defense-GAN2 and Adv-Critic3 , and implemented Adv-Train ourselves on top of CleverHans.

Settings of SdpAdv::

In the experiments, we used the following architectures for the adversarial generator (g) and discriminator (d): the localisation network (h sd ) with "X-FC(20)-FC( 6)"; the perturbation network (h p ) with "X-FC(128)-FC(128)-X"; d with "X-FC(64)-FC(32)-FC(2)-Softmax". It is noteworthy that other architectures for the above neural networks can also be used in SdpAdv.

In the training phase of SdpAdv, we held out 10,000 images in the training set as our validation set and trained our method on the remaining images in the training set with 100 iterations. We reported the attack results with the best model in the validation set. We initialised α to 5.0 and used a decay factor of 0.8 for every ten iterations until it reached to 0.8. β and λ were set to 1.0. We set γ to 0.3 and varied in the range of {0.0, 0.1, 0.2, 0.3}. If = 0.0, it means that perturbation is turned off in SdpAdv and we name this variant of our model to "SdAdv". The learning of the adversarial generator and discriminator was done by Adam (Kingma & Ba, 2014) with the learning rate of 0.0005 and 0.00005, respectively.

Settings of the other attacks: Here we mainly focus on whitebox attacks, where the attackers have full access to the classifiers. However, our SdpAdv only needs the output logits of the classifier in its training phase and does not require any additional information in the testing phase, similar to AdvGAN (Xiao et al., 2018a) . For comparison, we consider the following state-of-the-art perturbation-based attack methods: FGSM (Goodfellow et al., 2014b) , PGD (Madry et al., 2018) , Momentum Iterative Method (Dong et al., 2018) , and AdvGAN (Xiao et al., 2018a) . We used the CleverHans (Papernot et al., 2018) implementations of the first three attacks with the standard settings except varying in the range of {0.1, 0.2, 0.3}. We implemented AdvGAN by turning off the spatial distortion step in our SdpAdv. For non-perturbation-based attacks, we consider STM implemented in CleverHans and stAdv (Xiao et al., 2018b) implemented by Dumont et al. (2018) 4 . All the classifiers and attacks (including the proposed ones) were implemented in TensorFlow5 .

4.2. RESULTS:

For quantitative results, we report the classification accuracies on the test set of the classifiers under the attacks. For attackers, lower accuracy indicates better attack performance. The accuracy results for MNIST and Fashion MNIST are shown in Table 1 and Table 2 , respectively.

We have the following remarks on our results: 1) In general, our proposed SdpAdv performs the best on attacking both non-robustified and robust classifiers in the comparison with other attacks. This is particularly demonstrated in the "Sum" column, which can be viewed as a measure of the overall performance. 2) In comparison with attacks using perturbations, with very small perturbation magnitudes (e.g., = 0.1), other methods struggle to perform, while with the help of spatial distortions, SdpAdv is able to achieve impressive attack results, generating less noisy attacks without sacrificing performance. 3) Among the attacks with spatial distortions, our variant, SdAdv, achieves the best attack results in most cases. 4) We observe that robust classifiers such as Defense-GAN, which are usually designed to defend against perturbations, are much less effective against spatial distortions.

To further study our methods, we compare the test accuracies, L 2 norm, and running time of the compared attacks in Table 3 . It can be found out that our proposed approaches are able to perform attacks as efficient as FGSM, which is a one-step operation, but with much better performance. It is also noteworthy that the adversarial examples generated by our methods can result in large values of L 2 norm but they can look very realistic, shown in Figure 3 and Figure 4 .

5. CONCLUSION:

In this paper, we have introduced a new adversarial attack method, named SdpAdv, named SdpAdv, which generates adversarial examples with both spatial distortions and perturbations. Specifically, given an input image, SdpAdv applies affine transformations to conduct spatial distortions and then adds perturbations to the spatially distorted image to generate the final adversarial example. As a differentiable approach, SdpAdv leverages the amortized optimisation with two neural networks to obtain the optimal parameter of affine transformations and the optimal perturbations, respectively. Extensive experiments of attacking different kinds of non-robustified classifiers and robust classifiers have shown that our method achieves the state-of-the-art performance in the comparison with advanced attack parallels. More importantly, in the use of spatial distortions, our proposed approach can produce more realistic adversarial examples with smaller perturbations, which can challenge classifiers well without affecting human predictions. 2 .

A APPENDIX:

A.1 PROOF OF THEOREM 1

Proof. Give x, suppose u (x) and v(x) are the optimal solution of the affine parameter matrix and perturbation for Eq. (3), respectively. We first prove that [u(x), v(x)] := h * (x) almost everywhere w.r.t the probability measure P d , where h * (x) := h * sd (x), h * p t h * sd (x) (x) . h * (x) consists of the optimal solution of Eq. ( 4). By the definition of u, v, it is obvious that f t h * sd (x) (x) + h * p t h * sd (x) (x) ≤ f (t u(x) (x) + v (x)).

Furthermore, it follows that:

E P d f t h * sd (x) (x) + h * p t h * sd (x) (x) ≤ E P d f (t u(x) (x) + v (x)) .

Since H sd has infinite capacity, there exists h u sd ∈ H sd such that h u sd = u. We further define k(x) = v t -1 h u sd (x) (x) and obtain k t h u sd (x) (x) = v(x). Similarly, with the infinite capacity property of H p , there exists h v p ∈ H p such that h v p = k Referring to the definition of h * , we have: 

E P d f t

:

https://cleverhans.readthedocs.io/en/latest/source/attacks.html

https://github.com/kabkabm/defensegan

https://github.com/aam-at/adversary_critic

https://github.com/rakutentech/stAdv

https://www.tensorflow.org

Figures and Tables:

Figure 1: Image classification demo on MNIST dataset. The CNN classifier trained with the training set of the original images achieves 99.15% test accuracy. (a) Original image samples and corresponding spatially distorted images with the predicted labels. (b) Original image samples. (c) The corresponding adversarial examples of PGD with the maximum perturbations of = 0.3. (d) The corresponding adversarial examples of the attack method proposed in this paper with spatial distortions plus the maximum perturbations of = 0.1. The accuracies under both kinds of attacks are less than 0.05.

Figure 2: The adversarial generator architecture of SdpAdv.

Figure 3: Sample images and their adversarial attacks against Model A in MNIST. The predicted labels of Model A are shown above the images. The test accuracies are copied from Table 1. (a) Original images (b) PGD, =0.3, acc=0.0896 (c) AdvGAN, =0.3, acc=0.056

Classification accuracies on MNIST. The first row shows the accuracies of the classifiers under no attack. The first three attacks (including the proposed SdAdv) are spatial-distortion-based methods. The following four attacks are perturbation-based methods. SdpAdv with > 0.0 is the proposed method with both spatial distortions and perturbations. For the non-robustified classifiers, varies in the range of {0.1, 0.2, 0.3} while for the robust classifiers, is set to 0.3. In the last column of "sum", we show the summation over the accuracies of all the classifiers with = 0.3. Best results from the attacks with perturbations are in boldface.

Table content: <table><tr><td/><td/><td/><td/><td colspan="2">(a) Model A</td></tr><tr><td>Attack</td><td>Classifier</td><td/><td>Non-robustified</td><td/><td colspan="2">Adv-Critic Defense-GAN Adv-Train</td><td>Sum</td></tr><tr><td colspan="2">No attack</td><td/><td>0.9914</td><td/><td>0.9901</td><td>0.9914</td><td>0.9916</td><td>3.9645</td></tr><tr><td/><td>STM</td><td/><td>0.4959</td><td/><td>0.4449</td><td>0.1434</td><td>0.9481</td><td>2.0323</td></tr><tr><td/><td>stAdv</td><td/><td>0.1305</td><td/><td>0.9933</td><td>0.2015</td><td>0.5388</td><td>1.8641</td></tr><tr><td colspan="2">SdAdv (ours)</td><td/><td>0.0517</td><td/><td>0.2365</td><td>0.0476</td><td>0.074</td><td>0.4098</td></tr><tr><td/><td/><td>0.1</td><td>0.2</td><td>0.3</td><td>0.3</td><td>0.3</td><td>0.3</td></tr><tr><td/><td>FGSM</td><td colspan="3">0.7788 0.3457 0.1902</td><td>0.3595</td><td>0.8104</td><td>0.9481</td><td>2.3082</td></tr><tr><td/><td>PGD</td><td colspan="3">0.4239 0.0128 0.0059</td><td>0.0462</td><td>0.8545</td><td>0.0926</td><td>0.9992</td></tr><tr><td/><td>MIM</td><td colspan="3">0.4134 0.0911 0.0868</td><td>0.1140</td><td>0.8032</td><td>0.1584</td><td>1.1624</td></tr><tr><td colspan="2">AdvGAN</td><td colspan="3">0.9915 0.7679 0.1573</td><td>0.6820</td><td>0.3010</td><td>0.9278</td><td>2.0681</td></tr><tr><td colspan="2">SdpAdv (ours)</td><td colspan="3">0.0418 0.0259 0.0204</td><td>0.2536</td><td>0.0266</td><td>0.033</td><td>0.3336</td></tr><tr><td/><td/><td/><td/><td colspan="2">(b) Model B</td></tr><tr><td>Attack</td><td>Classifier</td><td/><td>Non-robustified</td><td/><td colspan="2">Adv-Critic Defense-GAN Adv-Train</td><td>Sum</td></tr><tr><td colspan="2">No attack</td><td/><td>0.9831</td><td/><td>0.9817</td><td>0.9831</td><td>0.9757</td><td>3.9236</td></tr><tr><td/><td>STM</td><td/><td>0.1939</td><td/><td>0.2044</td><td>0.0792</td><td>0.1200</td><td>0.5975</td></tr><tr><td/><td>stAdv</td><td/><td>0.1270</td><td/><td>0.9860</td><td>0.1207</td><td>0.3436</td><td>1.5773</td></tr><tr><td colspan="2">SdAdv (ours)</td><td/><td>0.0502</td><td/><td>0.1363</td><td>0.0666</td><td>0.0744</td><td>0.3275</td></tr><tr><td/><td/><td>0.1</td><td>0.2</td><td>0.3</td><td>0.3</td><td>0.3</td><td>0.3</td></tr><tr><td/><td>FGSM</td><td colspan="3">0.3584 0.0901 0.0457</td><td>0.3147</td><td>0.7710</td><td>0.8753</td><td>2.0067</td></tr><tr><td/><td>PGD</td><td colspan="3">0.1198 0.0205 0.0137</td><td>0.0920</td><td>0.8509</td><td>0.0147</td><td>0.9713</td></tr><tr><td/><td>MIM</td><td colspan="3">0.1146 0.0272 0.0211</td><td>0.1087</td><td>0.7635</td><td>0.0373</td><td>0.9306</td></tr><tr><td colspan="2">AdvGAN</td><td colspan="3">0.6006 0.2432 0.0504</td><td>0.7733</td><td>0.1110</td><td>0.2868</td><td>1.2215</td></tr><tr><td colspan="2">SdpAdv (ours)</td><td colspan="3">0.0281 0.0233 0.0223</td><td>0.0821</td><td>0.0252</td><td>0.0741</td><td>0.2037</td></tr></table>

Classification accuracies on Fashion MNIST.

Table content: <table><tr><td/><td/><td/><td/><td colspan="2">(a) Model A</td></tr><tr><td>Attack</td><td>Classifier</td><td/><td>Non-robustified</td><td/><td colspan="2">Adv-Critic Defense-GAN Adv-Train</td><td>Sum</td></tr><tr><td colspan="2">No attack</td><td/><td>0.9016</td><td/><td>0.9032</td><td>0.9016</td><td>0.9057</td><td>3.6121</td></tr><tr><td/><td>STM</td><td/><td>0.1063</td><td/><td>0.2153</td><td>0.3548</td><td>0.1296</td><td>0.8060</td></tr><tr><td/><td>stAdv</td><td/><td>0.0705</td><td/><td>0.8868</td><td>0.0628</td><td>0.1930</td><td>1.2131</td></tr><tr><td colspan="2">SdAdv (ours)</td><td/><td>0.1762</td><td/><td>0.3286</td><td>0.1372</td><td>0.1502</td><td>0.7922</td></tr><tr><td/><td/><td>0.1</td><td>0.2</td><td>0.3</td><td>0.3</td><td>0.3</td><td>0.3</td></tr><tr><td/><td>FGSM</td><td colspan="3">0.2924 0.2494 0.2435</td><td>0.0888</td><td>0.5661</td><td>0.8838</td><td>1.7822</td></tr><tr><td/><td>PGD</td><td colspan="3">0.1789 0.1270 0.0896</td><td>0.0286</td><td>0.6265</td><td>0.0764</td><td>0.8211</td></tr><tr><td/><td>MIM</td><td colspan="3">0.2375 0.2356 0.2356</td><td>0.0529</td><td>0.5300</td><td>0.1054</td><td>0.9239</td></tr><tr><td colspan="2">AdvGAN</td><td colspan="3">0.4974 0.1239 0.0568</td><td>0.1907</td><td>0.1238</td><td>0.1854</td><td>0.5567</td></tr><tr><td colspan="2">SdpAdv (ours)</td><td colspan="3">0.0330 0.0234 0.0121</td><td>0.1213</td><td>0.0204</td><td>0.0444</td><td>0.1982</td></tr><tr><td/><td/><td/><td/><td colspan="2">(b) Model B</td></tr><tr><td>Attack</td><td>Classifier</td><td/><td>Non-robustified</td><td/><td colspan="2">Adv-Critic Defense-GAN Adv-Train</td><td>Sum</td></tr><tr><td colspan="2">No attack</td><td/><td>0.8910</td><td/><td>0.8842</td><td>0.8910</td><td>0.8869</td><td>3.5531</td></tr><tr><td/><td>STM</td><td/><td>0.1112</td><td/><td>0.1718</td><td>0.2817</td><td>0.0967</td><td>0.6614</td></tr><tr><td/><td>stAdv</td><td/><td>0.2196</td><td/><td>0.8286</td><td>0.1812</td><td>0.4614</td><td>1.6908</td></tr><tr><td colspan="2">SdAdv (ours)</td><td/><td>0.1079</td><td/><td>0.2780</td><td>0.1298</td><td>0.1420</td><td>0.6577</td></tr><tr><td/><td/><td>0.1</td><td>0.2</td><td>0.3</td><td>0.3</td><td>0.3</td><td>0.3</td></tr><tr><td/><td>FGSM</td><td colspan="3">0.2291 0.1674 0.1566</td><td>0.1810</td><td>0.4236</td><td>0.8558</td><td>1.6170</td></tr><tr><td/><td>PGD</td><td colspan="3">0.1157 0.0719 0.0518</td><td>0.0731</td><td>0.5547</td><td>0.0431</td><td>0.7227</td></tr><tr><td/><td>MIM</td><td colspan="3">0.1629 0.1540 0.1529</td><td>0.0813</td><td>0.4236</td><td>0.0515</td><td>0.7093</td></tr><tr><td colspan="2">AdvGAN</td><td colspan="3">0.2969 0.0703 0.0286</td><td>0.2040</td><td>0.0605</td><td>0.1015</td><td>0.3946</td></tr><tr><td colspan="2">SdpAdv (ours)</td><td colspan="3">0.0203 0.0095 0.0075</td><td>0.1028</td><td>0.0152</td><td>0.0392</td><td>0.1647</td></tr></table>

Comparison of test accuracy, L2 norm, and running time Here we report the above metrics for the non-robustified classifier with Model A. The test accuracies are copied from Table1 and Table 2. We sample 100 images from each of the two datasets and calculate E P d [ xA -x ], which is the L2 norm between the input and adversarial images. In addition, we report the running time (seconds) to generate attacks for those 100 sample images. All the attacks ran in the same machine with the same environment. = 0.3 is used for the attacks with perturbations, unless stated otherwise. = 0.3) 0.0204 112.92 0.06 0.0121 44.73 0.06

Table content: <table><tr><td>Dataset</td><td/><td>MNIST</td><td/><td colspan="3">Fashion MNIST</td></tr><tr><td>Metric</td><td>Acc</td><td>L 2</td><td>Time</td><td>Acc</td><td>L 2</td><td>Time</td></tr><tr><td>FGSM</td><td colspan="2">0.1902 33.42</td><td colspan="4">0.05 0.2435 38.11 0.05</td></tr><tr><td>PGD</td><td colspan="2">0.0059 25.98</td><td colspan="4">0.12 0.0896 30.52 0.13</td></tr><tr><td>MIM</td><td colspan="2">0.0868 27.17</td><td colspan="4">0.10 0.2356 31.23 0.11</td></tr><tr><td>AdvGAN</td><td>0.1573</td><td>8.29</td><td colspan="4">0.01 0.0568 10.91 0.02</td></tr><tr><td>STM</td><td colspan="2">0.4959 71.08</td><td colspan="4">0.15 0.1063 57.21 0.15</td></tr><tr><td>stAdv</td><td colspan="6">0.1305 13.35 620.8 0.0705 6.19 609.7</td></tr><tr><td>SdAdv</td><td colspan="6">0.0517 120.66 0.05 0.1762 94.23 0.05</td></tr><tr><td colspan="3">SdpAdv ( = 0.1) 0.0418 111.7</td><td colspan="4">0.06 0.0330 81.70 0.06</td></tr><tr><td>SdpAdv (</td><td/><td/><td/><td/><td/><td/></tr></table>

h * sd (x) (x) + h * p t h * sd (x) (x) ≥ E P d f t h u sp (x) (x) + h v p t h u sp (x) (x) , E P d f t h * sd (x) (x) + h * p t h * sd (x) (x) ≥ E P d f (t u(x) (x) + v (x)) ,

Table content: <table/>

Peer review (iclr2020):
This paper proposes a new adversarial attack method by combining spatial transformations with perturbation-based noises. The proposed method uses two networks to generate the parameters of spatial transformation and the perturbation noise. The whole architecture is trained by a variant of GAN-loss to make the adversarial examples realistic to humans. Experiments on MNIST prove that the proposed attack method can improve the success rate of white-box attacks against several models. Overall, this paper considers an important problem of adversarial robustness of classifiers, and present a new approach to craft adversarial examples. The writing is clear. However, I have some concerns about this paper. 1. This paper seems to integrate multiple ideas studied before into a single attack method. Perturbation-based adversarial examples, spatial transformation-based adversarial examples, generating adversarial examples based on the GAN loss are all studied before. And the proposed method integrates them together to form a new attack. 2. The experiments are only conducted on MNIST and Fashion MNIST. More experiments on CIFAR-10 and ImageNet can further prove the effectiveness of the proposed method. 3. More robust defense models should be incorporated in experiments, at least the PGD-based adversarial training model (Madry et al., 2018).