From adversarial examples to training robust models

앞장에서는 inner maximization problem을 푸는 방법에 집중하였다. 즉, 아래와 같이 표현할 수 있다.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/ea5d5b6b-8138-446e-b189-3c4f4cce083c/Untitled.png

아래 3가지 주요 기술을 다뤘다.

  1. local gradient-based search(objective 에 대한 lower bound를 제안)
  2. exact combinatorial optimization(objective를 exactly solving)
  3. convex relaxztion (objective 에 대한 입증 가능한 upper bound를 제안)

이번 챕터에서는 우선 앞에서 다룬 min-max problem으로 다시 돌아와서 생각해보자. 즉, adversarial attack에 robust한 모델을 training하는 task. 어떤 adversary를 사용하든지 간에(attacker가 어떤 strategy를 사용할지 모르는 상황에서) 잘 작동하는 model을 만드는 것.

input, output 쌍의 집합인 $S$에 대해 우리는 아래와 같은 outer minimization problem을 해결하고자 한다.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/104a15a6-6277-4397-b5aa-65d45cd6c126/Untitled.png

Robust optimization formulation 의 목표는 공격자가 classifier의 parameters 에 대한 모든 정보를 알고 있고 어떤 parameter를 선택하든지간에 attack 방법을 특정 지을 수 있음을 가정했을 때도 공격이 불가능한 모델을 보증하는 것에 있다.

공격자가 어떤 "power"를 가졌는지는 특정 지을 수 없으니까 나름의 현실적인 공격 상황을 가정하고 모델을 평가해야 한다.

inner maximization problem을 할 때의 과정을 그대로 Adversarially robust system을 훈련할 때 사용할 것이다.

inner problem에서는 3가지 방법을 사용했는데

  1. Local search를 통한 lower bounding
  2. Combinator optimization을 통한 exact solutions
  3. Convex relaxations를 통한 upper bound