보안_기타

FGSM ( fast gradient sign method )

정지홍 2024. 9. 13. 06:09

FGSM이란?

  • 딥러닝 모델을 공격하기 위한 적대적 기법 중 하나이다.
  • 인공 신경망의 취약점을 이용해서 모델을 혼란 시키는 입력을 생성하는 방법이다.
  • 신경망 모델의 손실함수에 대한 입력의 기울기를 구하고, 해당하는 방향으로 입력 데이터를 조금씩 변형해서 모델을 혼란스럽게 만든다.
  • 모델이 학습시 손실을 최소화 하려는 방식으로 기울기를 계산하는데, FGSM은 반대 방향으로 작은 변화를 주어 손실을 최대화 시키는 입력을 만든다.

FGSM과정

  1. 신경망 모델 f(θ,x)에 입력 를 넣어, 출력 y를 얻는다. ( θ는 모델의 파라미터, x는 조작한 입력값)
  2. 위의 과정으로 모델은 잘못된 예측을 할것이다.

손실함수를 이용하여 공격하는 과정

  1. 모델의 손실함수 J(θ,x,y)가 있다고 하자.
  2. 공격을 위해서 입력값 x에 대해서 손실함수의 기울기를 계산한다.
  3. 위에서 계산된 기울기를 기반으로 입력 x에 작은 변화를 줘서 적대적 예제 x'을 생성한다.
  4. 여기서 gradient sign만을 이용해서 생성하는것.

이러한 계산으로 이루어진다. sign은 gradient부호다.

   5. 여기에서 ϵ은 입력에 곱해지는 값이다. ϵ을 이용해서 얼마나 변화할지 설정한다. 즉, 변화량을 조절한다.

   6. 결과적으로 x'을 넣어서 원래 예측과 다른 결과를 얻게 만든다.


gradient 부호란?

  • gradient vector의 각 요소의 방향을 나타내는 값이다.
  • 그래디언트 벡터의 각 요소에 대한 부호는 함수의 변화 방향을 결정한다.
  • 양수(+) 부호: 해당 변수의 값이 증가하면 함수 의 값도 증가한다는 의미입니다.
  • 음수(-) 부호: 해당 변수의 값이 증가하면 함수 의 값은 감소한다는 의미입니다.

  ex) 만약 gradient vector가 ( 0.1 , -0.5 , 0.3 )이라면, gradient sign은 (1 , -1 , 1)이다.

        ==> FGSM은 이 부호만을 이용해서 입력에 작은 변화를 더하는 방식으로 적대적 예제를 생성한다.

 ==>즉, 부호는 함수의 증감여부를 나타내니, FGSM에서는 이 부호 정보를 가지고 입력을 변형하는 방향을 결정한다.

 

 


FGSM의 특징

  • 간단하며 빠름
  • 적은 변화로 강력한 효과
  • 단순한 방법이니, 좀 더 정교한 방어 기법이 있다면 쉽게 적용 안됨.

응용

  • 모델 취약성 평가 및 적대적 학습

 


FGSM을 시계열 데이터를 다루는 LSTM에 적용하려면???....

=> 모델에 적용하기 위해서는, 시계열 데이터의 특성을 고려해야함.

==>  따라서 시계열 데이터를 변형하는 방식으로 하는것도 방법이다.

===> 즉, 시계열 데이터에 FGSM을 적용해서 각각의 time step의 입력을 교란시킨다.

 


한번 적용 과정을 생각해보자...

  1. 우선 모델을 만들고 학습시킬 데이터를 생각하자. 데이터는 시간에 따른 x1,x2,x3....xt이다. predict값은 y이다.
  2. 여기에서 t는 시퀀스 길이이다. (가령, A그룹 데이터라면 t=24x365 이다.)
  3. 손실함수는 모델이 예측한 값과 실제 y의 오차를 계산한다.
  4. FGSM에서는 순차적인 데이터에 대해서 손실함수의 기울기 계산한다. (기울기 식은 아래 식 1 참고)
  5. 식1을 보면 x는 입력값이며, 식이 의미하는 바는 각각의 time step에서의 입력에 대한 손실의 변화량이다.
  6. 식2에 맞춰서 데이터를 변조시키고 이를 적용한다.
  7. 데이터는 시계열이니, 각 스텝에 따른 적대적 예제 x't가 생성된다.
  8. 그리고 x't를 모델에 입력해서, lstm이 잘못된 예측을 하게 유도한다.

식1.
식2.

 

 


미세먼지 lstm에 FGSM 적용....

1. A그룹의 데이터를 가지고 학습을 시킨다.

2. B그룹은 짧은 기간의 데이터 4개가 생성된다.

3. 3개를 가지고 학습을 시킨다.(원본 데이터와 FGSM이 적용된 데이터)

4. 각각의 RMSE를 비교한다.

 

==> 목표는 전이학습 기반 lstm모델에 대한 적대적예제 방어