mirror of
https://github.com/google-deepmind/deepmind-research.git
synced 2026-05-31 21:15:21 +08:00
Update to the adversarial robustness repository. Added links to newer models.
PiperOrigin-RevId: 367998941
This commit is contained in:
committed by
Diego de Las Casas
parent
e28edb998e
commit
ce4db84f12
@@ -2,6 +2,9 @@
|
|||||||
|
|
||||||
This repository contains the code needed to evaluate models trained in
|
This repository contains the code needed to evaluate models trained in
|
||||||
[Uncovering the Limits of Adversarial Training against Norm-Bounded Adversarial Examples](https://arxiv.org/abs/2010.03593)
|
[Uncovering the Limits of Adversarial Training against Norm-Bounded Adversarial Examples](https://arxiv.org/abs/2010.03593)
|
||||||
|
(Gowal et al., 2020) and in
|
||||||
|
[Fixing Data Augmentation to Improve Adversarial Robustness](https://arxiv.org/abs/2103.01946)
|
||||||
|
(Rebuffi et al., 2021).
|
||||||
|
|
||||||
|
|
||||||
## Contents
|
## Contents
|
||||||
@@ -18,6 +21,7 @@ Download a model from links listed in the following table.
|
|||||||
Clean and robust accuracies are measured on the full test set.
|
Clean and robust accuracies are measured on the full test set.
|
||||||
The robust accuracy is measured using
|
The robust accuracy is measured using
|
||||||
[AutoAttack](https://github.com/fra31/auto-attack).
|
[AutoAttack](https://github.com/fra31/auto-attack).
|
||||||
|
The following table contains the models from **Gowal et al., 2020**.
|
||||||
|
|
||||||
| dataset | norm | radius | architecture | extra data | clean | robust | link |
|
| dataset | norm | radius | architecture | extra data | clean | robust | link |
|
||||||
|---|:---:|:---:|:---:|:---:|---:|---:|:---:|
|
|---|:---:|:---:|:---:|:---:|---:|---:|:---:|
|
||||||
@@ -31,6 +35,18 @@ The robust accuracy is measured using
|
|||||||
| CIFAR-100 | ℓ<sub>∞</sub> | 8 / 255 | WRN-70-16 | ✗ | 60.86% | 30.03% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn70-16_without.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn70-16_without.pt)
|
| CIFAR-100 | ℓ<sub>∞</sub> | 8 / 255 | WRN-70-16 | ✗ | 60.86% | 30.03% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn70-16_without.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn70-16_without.pt)
|
||||||
| MNIST | ℓ<sub>∞</sub> | 0.3 | WRN-28-10 | ✗ | 99.26% | 96.34% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/mnist_linf_wrn28-10_without.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/mnist_linf_wrn28-10_without.pt)
|
| MNIST | ℓ<sub>∞</sub> | 0.3 | WRN-28-10 | ✗ | 99.26% | 96.34% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/mnist_linf_wrn28-10_without.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/mnist_linf_wrn28-10_without.pt)
|
||||||
|
|
||||||
|
The following table contains the models from **Rebuffi et al., 2021**.
|
||||||
|
|
||||||
|
| dataset | norm | radius | architecture | extra data | clean | robust | link |
|
||||||
|
|---|:---:|:---:|:---:|:---:|---:|---:|:---:|
|
||||||
|
| CIFAR-10 | ℓ<sub>∞</sub> | 8 / 255 | WRN-106-16 | ✗ | 88.50% | 64.64% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn106-16_cutmix_ddpm_v2.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn106-16_cutmix_ddpm_v2.pt)
|
||||||
|
| CIFAR-10 | ℓ<sub>∞</sub> | 8 / 255 | WRN-70-16 | ✗ | 88.54% | 64.25% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn70-16_cutmix_ddpm_v2.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn70-16_cutmix_ddpm_v2.pt)
|
||||||
|
| CIFAR-10 | ℓ<sub>∞</sub> | 8 / 255 | WRN-28-10 | ✗ | 87.33% | 60.75% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn28-10_cutmix_ddpm_v2.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn28-10_cutmix_ddpm_v2.pt)
|
||||||
|
| CIFAR-10 | ℓ<sub>2</sub> | 128 / 255 | WRN-70-16 | ✗ | 92.41% | 80.42% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_l2_wrn70-16_cutmix_ddpm_v2.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_l2_wrn70-16_cutmix_ddpm_v2.pt)
|
||||||
|
| CIFAR-10 | ℓ<sub>2</sub> | 128 / 255 | WRN-28-10 | ✗ | 91.79% | 78.80% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_l2_wrn28-10_cutmix_ddpm_v2.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_l2_wrn28-10_cutmix_ddpm_v2.pt)
|
||||||
|
| CIFAR-100 | ℓ<sub>∞</sub> | 8 / 255 | WRN-70-16 | ✗ | 63.56% | 34.64% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn70-16_cutmix_ddpm.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn70-16_cutmix_ddpm.pt)
|
||||||
|
| CIFAR-100 | ℓ<sub>∞</sub> | 8 / 255 | WRN-28-10 | ✗ | 62.41% | 32.06% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn28-10_cutmix_ddpm.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn28-10_cutmix_ddpm.pt)
|
||||||
|
|
||||||
### Using the model
|
### Using the model
|
||||||
|
|
||||||
Once downloaded, a model can be evaluated (clean accuracy) by running the
|
Once downloaded, a model can be evaluated (clean accuracy) by running the
|
||||||
@@ -45,8 +61,8 @@ python3 eval.py \
|
|||||||
|
|
||||||
## Citing this work
|
## Citing this work
|
||||||
|
|
||||||
If you use this code or these models in your work, please cite the accompanying
|
If you use this code or these models in your work, please cite the relevant
|
||||||
paper:
|
accompanying paper:
|
||||||
|
|
||||||
```
|
```
|
||||||
@article{gowal2020uncovering,
|
@article{gowal2020uncovering,
|
||||||
@@ -58,6 +74,18 @@ paper:
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
or
|
||||||
|
|
||||||
|
```
|
||||||
|
@article{rebuffi2021fixing,
|
||||||
|
title={Fixing Data Augmentation to Improve Adversarial Robustness},
|
||||||
|
author={Rebuffi, Sylvestre-Alvise and Gowal, Sven and Calian, Dan A. and Stimberg, Florian and Wiles, Olivia and Mann, Timothy},
|
||||||
|
journal={arXiv preprint arXiv:2103.01946},
|
||||||
|
year={2021},
|
||||||
|
url={https://arxiv.org/pdf/2103.01946}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
## Disclaimer
|
## Disclaimer
|
||||||
|
|
||||||
This is not an official Google product.
|
This is not an official Google product.
|
||||||
|
|||||||
@@ -0,0 +1,61 @@
|
|||||||
|
# Adversarial Robustness
|
||||||
|
|
||||||
|
This repository contains the code needed to evaluate models trained in
|
||||||
|
[Data Augmentation Can Improve Robustness](https://storage.googleapis.com/dm-adversarial-robustness/rebuffi2021data.pdf)
|
||||||
|
which has been accepted at
|
||||||
|
[ICLR 2021 Security and Safety in Machine Learning Systems Workshop](https://aisecure-workshop.github.io/aml-iclr2021/).
|
||||||
|
|
||||||
|
|
||||||
|
## Contents
|
||||||
|
|
||||||
|
We have released our top-performing models in two formats compatible with
|
||||||
|
[JAX](https://github.com/google/jax) and [PyTorch](https://pytorch.org/).
|
||||||
|
This repository also contains our model definitions.
|
||||||
|
|
||||||
|
## Running the example code
|
||||||
|
|
||||||
|
### Downloading a model
|
||||||
|
|
||||||
|
Download a model from links listed in the following table.
|
||||||
|
Clean and robust accuracies are measured on the full test set.
|
||||||
|
The robust accuracy is measured using
|
||||||
|
[AutoAttack](https://github.com/fra31/auto-attack).
|
||||||
|
|
||||||
|
| dataset | norm | radius | architecture | extra data | clean | robust | link |
|
||||||
|
|---|:---:|:---:|:---:|:---:|---:|---:|:---:|
|
||||||
|
| CIFAR-10 | ℓ<sub>∞</sub> | 8 / 255 | WRN-70-16 | ✓ | 92.23% | 66.58% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn70-16_cutmix_external.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn70-16_cutmix_external.pt)
|
||||||
|
| CIFAR-10 | ℓ<sub>∞</sub> | 8 / 255 | WRN-70-16 | ✗ | 87.25% | 60.07% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn70-16_cutmix.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn70-16_cutmix.pt)
|
||||||
|
| CIFAR-10 | ℓ<sub>∞</sub> | 8 / 255 | WRN-28-10 | ✗ | 86.09% | 57.61% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn28-10_cutmix.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn28-10_cutmix.pt)
|
||||||
|
| CIFAR-100 | ℓ<sub>∞</sub> | 8 / 255 | WRN-70-16 | ✗ | 65.76% | 32.43% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn70-16_cutmix.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn70-16_cutmix.pt)
|
||||||
|
| CIFAR-100 | ℓ<sub>∞</sub> | 8 / 255 | WRN-28-10 | ✗ | 62.97% | 29.80% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn28-10_cutmix.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn28-10_cutmix.pt)
|
||||||
|
|
||||||
|
### Using the model
|
||||||
|
|
||||||
|
Once downloaded, a model can be evaluated (clean accuracy) by running the
|
||||||
|
`eval.py` script in either the `jax` or `pytorch` folders. E.g.:
|
||||||
|
|
||||||
|
```
|
||||||
|
cd jax
|
||||||
|
python3 eval.py \
|
||||||
|
--ckpt=${PATH_TO_CHECKPOINT} --depth=70 --width=16 --dataset=cifar10
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Citing this work
|
||||||
|
|
||||||
|
If you use this code or these models in your work, please cite the complete
|
||||||
|
version which combines data augmentation with generated samples:
|
||||||
|
|
||||||
|
```
|
||||||
|
@article{rebuffi2021fixing,
|
||||||
|
title={Fixing Data Augmentation to Improve Adversarial Robustness},
|
||||||
|
author={Rebuffi, Sylvestre-Alvise and Gowal, Sven and Calian, Dan A. and Stimberg, Florian and Wiles, Olivia and Mann, Timothy},
|
||||||
|
journal={arXiv preprint arXiv:2103.01946},
|
||||||
|
year={2021},
|
||||||
|
url={https://arxiv.org/pdf/2103.01946}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Disclaimer
|
||||||
|
|
||||||
|
This is not an official Google product.
|
||||||
@@ -0,0 +1,62 @@
|
|||||||
|
# Adversarial Robustness
|
||||||
|
|
||||||
|
This repository contains the code needed to evaluate models trained in
|
||||||
|
[Doing More with Less: Improving Robustness using Generated Data](https://storage.googleapis.com/dm-adversarial-robustness/gowal2021doing.pdf)
|
||||||
|
which has been accepted at
|
||||||
|
[ICLR 2021 Security and Safety in Machine Learning Systems Workshop](https://aisecure-workshop.github.io/aml-iclr2021/).
|
||||||
|
|
||||||
|
|
||||||
|
## Contents
|
||||||
|
|
||||||
|
We have released our top-performing models in two formats compatible with
|
||||||
|
[JAX](https://github.com/google/jax) and [PyTorch](https://pytorch.org/).
|
||||||
|
This repository also contains our model definitions.
|
||||||
|
|
||||||
|
## Running the example code
|
||||||
|
|
||||||
|
### Downloading a model
|
||||||
|
|
||||||
|
Download a model from links listed in the following table.
|
||||||
|
Clean and robust accuracies are measured on the full test set.
|
||||||
|
The robust accuracy is measured using
|
||||||
|
[AutoAttack](https://github.com/fra31/auto-attack).
|
||||||
|
|
||||||
|
| dataset | norm | radius | architecture | extra data | clean | robust | link |
|
||||||
|
|---|:---:|:---:|:---:|:---:|---:|---:|:---:|
|
||||||
|
| CIFAR-10 | ℓ<sub>∞</sub> | 8 / 255 | WRN-70-16 | ✗ | 86.94% | 63.62% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn70-16_ddpm_v2.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn70-16_ddpm_v2.pt)
|
||||||
|
| CIFAR-10 | ℓ<sub>∞</sub> | 8 / 255 | WRN-28-10 | ✗ | 85.97% | 60.73% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn28-10_ddpm_v2.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn28-10_ddpm_v2.pt)
|
||||||
|
| CIFAR-10 | ℓ<sub>2</sub> | 8 / 255 | WRN-70-16 | ✗ | 90.83% | 78.39% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn70-16_ddpm_v2.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_l2_wrn70-16_ddpm_v2.pt)
|
||||||
|
| CIFAR-10 | ℓ<sub>2</sub> | 8 / 255 | WRN-28-10 | ✗ | 90.24% | 77.44% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_linf_wrn28-10_ddpm_v2.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar10_l2_wrn28-10_ddpm_v2.pt)
|
||||||
|
| CIFAR-100 | ℓ<sub>∞</sub> | 8 / 255 | WRN-70-16 | ✗ | 60.46% | 33.49% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn70-16_ddpm.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn70-16_ddpm.pt)
|
||||||
|
| CIFAR-100 | ℓ<sub>∞</sub> | 8 / 255 | WRN-28-10 | ✗ | 59.18% | 30.81% | [jax](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn28-10_ddpm.npy), [pt](https://storage.googleapis.com/dm-adversarial-robustness/cifar100_linf_wrn28-10_ddpm.pt)
|
||||||
|
|
||||||
|
### Using the model
|
||||||
|
|
||||||
|
Once downloaded, a model can be evaluated (clean accuracy) by running the
|
||||||
|
`eval.py` script in either the `jax` or `pytorch` folders. E.g.:
|
||||||
|
|
||||||
|
```
|
||||||
|
cd jax
|
||||||
|
python3 eval.py \
|
||||||
|
--ckpt=${PATH_TO_CHECKPOINT} --depth=70 --width=16 --dataset=cifar10
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Citing this work
|
||||||
|
|
||||||
|
If you use this code or these models in your work, please cite the complete
|
||||||
|
version which combines data augmentation with generated samples:
|
||||||
|
|
||||||
|
```
|
||||||
|
@article{rebuffi2021fixing,
|
||||||
|
title={Fixing Data Augmentation to Improve Adversarial Robustness},
|
||||||
|
author={Rebuffi, Sylvestre-Alvise and Gowal, Sven and Calian, Dan A. and Stimberg, Florian and Wiles, Olivia and Mann, Timothy},
|
||||||
|
journal={arXiv preprint arXiv:2103.01946},
|
||||||
|
year={2021},
|
||||||
|
url={https://arxiv.org/pdf/2103.01946}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Disclaimer
|
||||||
|
|
||||||
|
This is not an official Google product.
|
||||||
Reference in New Issue
Block a user