논문 리뷰

[Paper] Improving Robustness Without Sacrificing Accuracy with Patch Gaussian Augmentation

망나 2019. 8. 6. 10:52

Contributions of this paper

  • Characterize a trade-off between robustness and accuracy among two standard data augmentations: Cutout and Gaussian
  • Devise a simple data augmentation method (Patch Gaussian) that enables interpolation between the two augmentations above
  • Find that Patch Gaussian allows us to overcome the observed trade-off, and achieves a new state of the art in the Common Corruptions benchmark on CIFAR-C and ImageNet-C

 

About this paper...

목표는 accuracy가 높으면서 robust한 모델을 만드는 것 입니다.

 

하지만 기존의 data augmentation 기법에서 Cutout은 clean accuracy를 향상시키지만 robust하지 않고, Gaussian은 robustness를 향상시키지만 accuracy가 떨어지는 문제점이 있습니다.

 

논문의 저자들은 위 문제점을 해결하기 위해서 Patch Gaussian이라는 새로운 기법을 제안하고 실제로 robust하면서도 높은 accuracy를 유지하는 결과를 보였습니다.

 

 

Data Augmentation

Cutout

example of Cutout

입력 이미지에 랜덤 패치부분을 데이터셋의 mean pixel값 상수로 설정하는 방법으로 clean accuracy를 향상시킬 수 있는 data augmentation 방법입니다.

 

 

 

 

 

 

 

 

Gaussian

example of Gaussian blur

입력 이미지의 각 pixel에 독립적인 Gaussian noise를 더하는 방법으로 robustness를 향상시킬 수 있는 data augmentation 방법입니다.

 

 

 

 

 

 

 

The robustness-accuracy trade-off between Cutout and Gaussian augmentations

"Cutout improves accuracy on clean test data. Despite this, we find it does not lead to increased robustness. Conversely, training with higher \(\sigma\) of Gaussian can lead to increased robustness to Gaussian noise, but it also leads to decreased accuracy on clean data. Therefore, any robustness gains are offset by poor overall performance."
The robustness comes at the cost of generalization.

 

 

Patch Gaussian

논문에서 accuracy와 robustness를 함께 향상시키기 위한 기법으로 제안하는 Patch Gaussian은 이미지에 N x N patch of Gaussian noise를 더하는 방법입니다.

 

그림에서 볼 수 있듯이 Patch Gaussian은 이미지에 네모난 Gaussian noise patch를 더하는 방법입니다. 이러한 방법으로 Gaussian augmentation과 Cutout augmentation이 통합된 효과를 볼 수 있습니다.

 

아래 그래프를 보면 알 수 있듯이 Patch Gaussian을 사용해서 Clean Accuracy 뿐만 아니라 Robustness 또한 함께 향상되는 결과를 확인 할 수 있습니다. 따라서 Patch Gaussian이 Cutout과 같이 accuracy를 향상시키고 동시에 Gaussian과 같이 Robustness를 향상시킨다고 할 수 있습니다.

 

Patch Gaussian을 활용한 실험 결과. 좌측은 \(\sigma\)에 따른 결과이고 우측은 patch 사이즈에 따른 결과입니다.

 

Patch Gaussian은 noise-based augmentation입니다. 그러므로 Patch Gaussian이 noise-based corruptions (Gaussian Noise, Shot Noise, and Impulse Noise)에 대해서만 성능 향상을 보이는지 아니면 다른 모든 종류의 corruption들에 대해서도 성능 향상을 보이는지를 알아보기 위한 추가 실험을 진행하였습니다. 결과적으로 아래 표를 확인하면, noise-based corruption이 아닌 경우에도 동일하게 성능이 향상되는 것을 볼 수 있고 따라서 Patch Gaussian 방법은 일반적으로 모든 경우에 대해서 활용 가능하다고 할 수 있습니다.

 

Original mCE는 jpeg-compressed benchmark이고 mCE는 추가 jpeg-compression이 없는 버전의 benchmark입니다.

 

Patch Gaussian을 적용한 이미지 (Patch size와 \(\sigma\)에 따른 변화)