Problem Solving with Algorithms

728x90
반응형

Overview of Adversarial Machine Learning

이 영상은 적대적 머신러닝(adversarial ML)의 전체 그림을 짧게 요약해 주는 소개 강의입니다.​

 

적대적 머신러닝 개요

영상은 자율주행차가 스톱 사인을 속도 제한 표지로 잘못 인식하는 예시로 시작하며, 스티커 몇 개만으로도 표지판 인식 모델을 속일 수 있음을 보여줍니다. 이런 식으로 공격자가 데이터나 모델을 교묘하게 조작해, 모델이 “엉뚱한 것을 배우거나, 엉뚱한 행동을 하거나, 원치 않는 정보를 새어 나가게 만드는 모든 행위를 적대적 머신러닝이라고 정의합니다.​

 

 

 

공격자가 노리는 세 가지 목표: Learn / Do / Reveal

영상에서는 공격 목표를 크게 세 가지 축으로 나누는 간단한 분류 체계(taxonomy)를 제시합니다.​

1. Learn the wrong thing (잘못 배우게 만들기)

- 핵심은 훈련 단계를 건드려 모델이 잘못된 규칙을 학습하도록 만드는 것입니다.​
- 대표적인 예가 데이터 중독(poisoning)공급망(supply chain) 공격입니다.
-- 예: 표지판 데이터에 특정 스티커 패턴이 붙은 스톱 사인을 모두 “속도 제한 표지”로 레이블링해 넣으면, 나중에 실세계에서 그 패턴이 붙은 스톱 사인을 보고도 속도 제한으로 오인하도록 학습시킬 수 있습니다.​
-- 오픈소스 “기반 모델(foundation model)”을 미리 중독시켜 배포하는 경우, 그 모델을 가져다 쓰는 다운스트림 시스템도 동일한 트리거에 취약해집니다.​

 

2. Do the wrong thing (잘못 행동하게 만들기)

- 여기서는 훈련된 모델에 적대적 패턴(adversarial pattern)을 입력으로 주어, 분류 결과를 일부러 틀리게 만드는 회피(evasion) 공격이 중심입니다.​

- Goodfellow 등의 고전적인 FGSM 예제처럼, 판다 이미지에 사람 눈에는 거의 보이지 않는 노이즈를 더해 모델이 “기번(gibbon)”으로 오분류하도록 만드는 사례가 대표입니다.​

- 즉, 모델은 학습은 정상적으로 했지만, 입력 공간의 취약한 방향으로 최적화된 미세 교란을 통해 런타임에 오동작을 유도하는 범주입니다.​

3. Reveal the wrong thing (원치 않는 것을 드러나게 만들기)

- 이 범주는 모델이나 훈련 데이터에 대한 기밀 정보 유출을 다룹니다.​
- 모델 추출(model extraction): 공개 API에 쿼리를 반복적으로 보내고 출력을 관찰해, 사실상 동일한 사본 모델을 재구축하는 공격입니다.​
- 모델 역추론(model inversion): 모델의 출력을 역으로 활용해, 훈련에 사용된 데이터의 민감한 속성을 재구성하는 공격입니다.​

예: 얼굴 데이터셋으로 학습된 모델에 대해 랜덤 노이즈를 입력으로 넣고, 모델 출력이 특정 사람 클래스의 확률을 높이도록 반복적으로 최적화하면, 결국 그 사람을 닮은 얼굴 이미지가 나오고, 사람 평가자들이 80% 이상 정확도로 원본 인물을 맞추는 식입니다.​

 

 

방어가 어려운 이유

영상은 “각 공격 유형마다 전용 방어 기법이 있는가?”라는 질문에 대해, 범용적이고 입증된 방어는 아직 거의 없고, 이 분야는 활발한 연구 진행 중이라고 강조합니다.​

- 공격 표면이 데이터·모델·공급망·API 등 매우 넓고, 공격자 능력과 지식 수준(화이트박스/블랙박스)에 따라 위협 모델이 크게 달라지기 때문입니다.​

- 일부 방어는 특정 공격에는 효과적이지만, 새로운 공격 기법이 나오면 쉽게 우회당하는 경우가 많습니다.​

 

 

강건성 평가와 좋은 실험 조건

적대적 강건성을 주장하려면, 정확한 위협 모델과 재현 가능한 평가 절차가 필요하다고 강조합니다.​

- 명시적인 위협 모델 정의

-- 공격자의 목표(무엇을 망가뜨리려 하는지),

-- 공격자가 가진 능력(데이터 조작 가능 여부, 파라미터 접근권, 쿼리 제한 등),

-- 공격자의 지식 수준(화이트박스 vs 블랙박스)을 명확히 기술해야 합니다.​

- 적응형(adaptive) 평가

-- 한 번의 실험 결과에 안주하지 말고, 이전 실험에서 드러난 취약점을 반영해 점점 강한 공격을 가정하는 평가를 반복해야 합니다.​

-- 단, 각 평가 단계는 독립적으로도 의미 있는 실험이 되도록 설계해야 합니다.​

- 과학적·재현 가능한 결과

-- 실험자는 항상 자신의 결과를 의심하고, 다른 환경·조건에서도 동일한 결과가 나오는지 확인해야 합니다.​

-- 평가 설정이 너무 특수해서, 다른 연구자가 독립적으로 재현할 수 없다면 강건성 주장은 신뢰하기 어렵습니다.​

요약

이 영상은 적대적 머신러닝을

- “모델이 잘못 배우게 하거나(learn), 잘못 행동하게 하거나(do), 원치 않는 것을 드러내게 하는(reveal) 공격들의 총칭”으로 정의하고,​

- 데이터 중독·적대적 예제·모델 추출·모델 역추론 등의 사례를 통해 각각이 실제 시스템에 어떤 위험을 주는지 설명합니다.​
또한, 범용 방어가 아직 부족하다는 점과, 위협 모델 정의·적응형 평가·재현 가능한 실험을 중심으로 한 강건성 평가의 중요성을 강조하면서, 이 분야가 앞으로도 계속 연구되어야 할 중요한 안전(Safety) 주제임을 강조합니다.​

 

https://youtu.be/C8jJ4H6BL1c?si=LW7CvvJ-MstY80Oc

 

 

 

 

 

Adversarial Machine Learning explained! | With examples.

이 영상은 적대적 머신러닝(adversarial ML)의 기본 개념, 대표 공격인 FGSM, 공격/방어 분류를 직관적인 예시와 함께 설명하는 입문용 강의입니다.​

GAN vs 적대적 머신러닝

먼저 GAN(Generative Adversarial Network)과 적대적 머신러닝을 구분합니다.​

- GAN은 “생성자 vs 판별자” 두 네트워크가 경쟁하며 새로운 데이터를 만들어내는 생성 모델입니다.

- 적대적 머신러닝은 이미 학습된 모델을 속이거나 망가뜨리는 공격·방어 기법 전체를 가리키며, 생성 자체가 목적은 아닙니다.​

 

 

노이즈 공격과 FGSM

영상은 이미지에 무작위 노이즈(random noise)를 더했을 때와, 최적화된 노이즈(adversarial noise)를 더했을 때를 비교합니다.​

- 무작위 노이즈는 보통 모델을 크게 속이지 못하지만,

- 손실의 그래디언트를 이용해 계산한 특수한 노이즈는 사람 눈에는 비슷해 보이지만 모델만 크게 틀리게 만드는 입력을 만들 수 있습니다.​

대표 기법인 FGSM(Fast Gradient Sign Method)

xadv =x+ϵ⋅sign(∇ x L(x,y))
형태로, 각 픽셀 방향으로 손실을 가장 빠르게 키우는 부호 방향으로 ϵ만큼 이동시켜 적대적 예제를 생성하는 단일 스텝 공격입니다.​

 

타깃/비타깃, 화이트박스/블랙박스

영상은 적대적 공격을 두 축으로 나누어 설명합니다.​

- Untargeted vs Targeted
-- Untargeted: “정답만 아니면 된다” → 단순히 손실을 최대화하는 공격.
-- Targeted: “특정 클래스(예: 판다 → 기번)로 오판하게 만들기”처럼 목표 클래스를 정해놓고 그 확률을 높이는 공격입니다.

- White-box vs Black-box
-- White-box: 모델 구조·가중치·그래디언트까지 완전히 알고 있는 공격자를 가정합니다. FGSM, PGD 등 대부분의 이론적 공격이 여기에 속합니다.​

-- Black-box: API처럼 입력–출력만 관찰 가능한 상황으로, 쿼리를 반복하거나, 다른 모델에서 생성한 적대적 예제를 전이시켜 사용하는 공격을 예로 듭니다.​

 

적대적 예제와 방어

다양한 이미지/영상에서, 사람에겐 자연스러운 장면이지만 모델이 완전히 틀리는 적대적 예제(adversarial examples) 사례들을 보여주며, 작은 스티커·패치·텍스트 노이즈로도 모델을 속일 수 있음을 시각적으로 보여줍니다. 방어 기법으로는 다음과 같은 방법들이 간단히 언급됩니다.​

- 적대적 학습(adversarial training): 훈련 단계에서 적대적 예제를 함께 학습시키는 방법

- 입력 전처리/정규화: 노이즈 제거, 압축, 스무딩 등으로 공격 효과를 줄이려는 시도

- 모델 앙상블·탐지기: 여러 모델을 함께 사용하거나, 적대적 예제를 따로 탐지하는 서브 모델을 두는 방식

영상 후반에는 다양한 적대적 공격 데모를 모은 컴필레이션을 보여주며, 실제 시스템(자율주행, 감시카메라 등)에서 이런 공격이 얼마나 직관적이고 위험해 보일 수 있는지를 강조합니다.​

 

 

https://youtu.be/YyTyWGUUhmo?si=hbUXtjtp7M3U5oE2

 

 

 

 

 

 

Adversarial Attacks in Machine Learning Demystified

이 영상은 머신러닝에서의 적대적 공격(adversarial attack)을 개념적으로 정리하고, 두 가지 유형과 방어 아이디어를 간단한 예시로 설명하는 내용입니다.​

 

분류기와 오라클 개념

영상에서는 먼저 이진 분류기를 예로 들어, 참양성(TP), 참음성(TN), 거짓양성(FP, 1종 오류), 거짓음성(FN, 2종 오류)의 네 가지 결과를 상기시킵니다. 여기서 “오라클(Oracle)”은 인간 전문가처럼 진짜 정답을 알고 있다고 가정하는 이상적인 기준 모델을 의미합니다.​

참양성(TP), 참음성(TN), 거짓양성(FP, 1종 오류), 거짓음성(FN, 2종 오류)

 

 

 

 

 

적대적 공격의 두 유형

적대적 공격은 어떤 종류의 오류를 늘리려 하느냐에 따라 두 가지로 나뉩니다.​



- Type 1 공격: 거짓양성(False Positive)을 증가시키는 공격입니다.
  분류기가 “양성”이라고 믿게 만들지만, 오라클 입장에서는 분명히 다른 클래스인 입력을 만들어내는 공격입니다.​

- Type 2 공격: 거짓음성(False Negative)을 증가시키는 공격입니다.
  오라클 입장에서는 두 입력이 같은 클래스인데, 분류기가 서로 다른 클래스로 예측하도록 교란하는 공격입니다.​


Type 2 공격은 입력에 아주 작은 노이즈만 더해도 되기 때문에, 실제 연구에서 더 많이 다루어지고 실행도 더 쉽다고 설명합니다.​

 

 

 

 

 

Type 2 공격: 작은 변화로 다른 예측 만들기

Type 2 공격: 작은 변화로 다른 예측 만들기

 

Type 2 공격에서는 오라클이 보는 중요한 특징은 유지한 채, 분류기가 사용하는 불필요한 특징 축으로만 점을 이동시키는 방식으로 설명합니다.​

- 예시로, 입력을 특징공간 (X 1 ,X 2 ,X 3 ) 위의 점으로 보고, 오라클은 (X 1 ,X 2 )를 기준으로 클래스를 나누지만 실제 분류기는 (X 1 ,X 3 )만 사용하는 상황을 가정합니다.​

- 이때 공격자는 X 3  방향으로만 점을 살짝 이동시켜, 오라클 눈에는 같은 클래스처럼 보이지만 분류기 결정경계를 넘어가도록 만들어 거짓음성을 유도합니다.​

- 영상에서는 숫자 분류기 예를 들어, 사람 눈에는 여전히 ‘3’으로 보이지만, 약간의 노이즈 추가로 모델이 ‘8’로 잘못 분류하는 사례를 보여줍니다.​

 

 

 

 

Type 1 공격: 입력을 크게 바꿔도 같은 예측 유지시키기

 

Type 1 공격에서는 반대로 오라클이 중요하게 쓰는 특징 중, 분류기 모델이 아예 쓰지 않는 “빠진 특징(missing feature)” 축을 따라 점을 이동하는 그림으로 설명합니다.​

- 오라클은 (X 1 ,X 2 )로 판단하지만, 분류기는 (X 1 ,X 3 )만 쓰는 상황에서, 공격자는 X 2  방향으로 많이 이동시켜 오라클이 보기에 클래스가 바뀌었다고 느끼게 만듭니다.​

- 하지만 분류기 입장에서는 (X 1 ,X 3 ) 좌표가 그대로라서 여전히 같은 클래스로 예측하게 되고, 이로써 거짓양성이 발생합니다.​

- 숫자 예시에서는, 사람 눈에는 ‘8’로 보이도록 입력을 크게 바꾸지만, 모델은 여전히 ‘3’로 분류하는 상황을 보여줍니다.​

 

 

방어 기법 개요

영상에서는 간단한 방어 전략도 함께 소개합니다.​

- 적대적 학습(adversarial training)
-- 학습 과정에 적대적 예제를 함께 포함시켜, 모델이 이런 교란에 익숙해지도록 만드는 방법입니다.​

- 앙상블 및 feature squeezing
-- 입력 특징을 압축(squeezing)한 버전을 두 번째 분류기에 넣고, 원본 입력을 사용하는 기본 모델과 예측을 비교합니다.​
-- 두 모델의 출력이 크게 다르면 해당 입력을 적대적 공격으로 추정하는 방식입니다.​

 

정리

이 영상의 핵심은 다음과 같습니다.​

- 적대적 공격은 분류기의 오류 유형(FP/FN)을 의도적으로 증가시키는 전략입니다.

- Type 2 공격은 작은 노이즈로 거짓음성을 늘리는 방식이며, Type 1 공격은 크게 다른 입력으로 거짓양성을 유도하는 방식입니다.​

- 이 둘을 오라클이 보는 특징 vs 분류기가 실제 사용하는 특징의 차이로 직관적으로 설명하고, 간단한 방어 기법으로 적대적 학습과 feature squeezing 기반 탐지를 소개합니다.​

 

 

https://www.youtube.com/watch?v=Xe_ShxUtuMo

 

 

 

 

 

 

Top 5 things to know about adversarial attacks

이 영상은 적대적 공격(adversarial attacks)의 위험성·특징·연구 동향을 아주 압축해서 정리한 내용입니다.​

 

적대적 공격이란 무엇인가

적대적 공격은 머신러닝 모델을 속이기 위해, 사람에게는 거의 구분되지 않는 작은 변형(노이즈)을 입력에 섞어 넣는 기법입니다. 이런 공격은 이미지·텍스트·오디오 등 다양한 형태로 만들어져, 다른 머신러닝 모델의 예측을 의도적으로 잘못 나오게 합니다.​

 

 

1. 알고리즘만 알고 있는 블랙박스 공격

딥러닝 모델 자체가 내부적으로 블랙박스에 가깝기 때문에, 어떤 노이즈가 어떤 오작동을 일으키는지 인간이 직관적으로 이해하기 어렵습니다. 공격 알고리즘은 사람 눈에는 거의 차이가 없는 이미지를 만들지만, 타깃 모델은 전혀 다른 클래스로 인식하도록 속일 수 있습니다.​

 

 

2. 통계적인 공격이라 완벽히 막기 어렵다

적대적 공격은 통계적으로 설계되기 때문에, 모든 상황에서 100% 성공하진 않습니다. 촬영 각도·조명·환경 등 여러 변수에 따라 실패할 수 있지만, 공격자는 “일정 비율 이상만 속이면 된다”는 관점에서 반복적으로 시도합니다.​

 

 

3. 단일한 ‘완벽한 방어’는 존재하지 않는다

한 번 알려진 공격에 대응해서 모델 구조나 파라미터를 조정하면, 공격자는 다시 그에 맞춰 새로운 노이즈 패턴을 학습시킬 수 있습니다. 이 때문에 적대적 공격에 대해 “한 번에 끝나는 패치”는 없고, 공격·방어가 계속 진화하는 arms race에 가깝다고 설명합니다.​

 

 

4. 관련 연구는 급격히 증가하는 중이다

영상에서는 arXiv에서 “adversarial attacks / adversarial examples” 키워드로 검색했을 때,

- 2014년에는 관련 논문이 거의 없었지만,
- 2019년에는 약 800편,
- 2020년에는 약 1100편이 올라왔다는 점을 언급합니다.​

  즉, 최근 몇 년간 적대적 공격/방어가 매우 활발한 연구 주제가 되었다는 점을 강조합니다.​

 

5. 업계도 문제를 인식하고 대응을 시작했다

OpenAI는 적대적 예제가 “명확하게 존재하는 문제지만, 해결에는 상당한 연구 노력이 필요하다”고 밝힌 바 있으며, 이를 뒷받침하듯 Microsoft·IBM·NVIDIA·MITRE 등의 연구자들이 Adversarial ML Threat Matrix를 발표해 시스템 취약점을 체계적으로 정리했습니다. 영상은 “지금은 아직 대규모 피해가 현실화되진 않았지만, 지금부터 방어 체계를 준비하지 않으면 언젠가 큰 위험이 될 수 있다”는 메시지로 마무리합니다.​

 

https://youtu.be/Tf9WW5W4t0U?si=yHlkAV5nB8wGgLNL

 

 

 

 

 

 

Adversarial Robustness

이 강의는 적대적 강건성(adversarial robustness)을 체계적으로 소개하면서, 왜 중요한지, 어떤 공격·방어 기법이 있는지, 이론·실무 양쪽 관점에서 개념을 정리한 내용입니다.​

 

적대적 예제와 문제 설정

강의는 먼저 고전적인 “고양이 → 과카몰리” 예제로 시작해, 작은 노이즈가 모델의 예측을 크게 바꾸는 현상을 설명합니다. 최근에는 미세 노이즈뿐 아니라 트럭 그림의 그림자, 커피머신 표식처럼 사람 눈에도 보이는 변화로도 모델을 속일 수 있다는 점을 강조하며, 핵심은 “인간 입장에서는 같은 클래스인데 모델만 틀리게 만드는 것”이라고 정리합니다.​

 

위협 모델과 FGSM·PGD 공격

이후 Lp  노름 개념을 복습하고, 공격자가 허용된 교란 예산(예: ∥δ∥ p ≤ϵ) 안에서 손실을 최대로 만드는 δ를 찾는 문제로 위협 모델을 정의합니다.​

- FGSM: x adv =x+ϵ⋅sign(∇ x L) 형태로, L ∞  제약을 꽉 채우는 1스텝 공격이라 “빠르지만 지금 기준으로는 약한 공격”으로 소개합니다.​

- PGD: FGSM을 다단계로 반복하고, 매 스텝마다 ϵ 볼 안으로 클리핑하는 방식으로 FGSM보다 훨씬 강력한 표준 공격으로 설명합니다.​

 

 

적대적 학습과 평가의 함정

방어 기법으로는 PGD 기반 적대적 학습(adversarial training)이 가장 널리 쓰인다고 소개합니다.​

- 미니배치를 샘플링하고, 그 위에 PGD 등으로 적대적 예제를 생성한 뒤, 이 적대적 예제에 대해 올바른 레이블로 학습하는 절차입니다.​

- 다만, 이 과정은 깨끗한(클린) 정확도를 떨어뜨리고, 공격에 완전 무적이 되지도 않는다는 한계를 함께 언급합니다.​
평가 측면에서는, 과거 여러 방어 논문이 새로운 공격(Carlini–Wagner 등)에 의해 한 번에 우회된 사례를 보여주며, 화이트박스·어댑티브 공격, 다양한 위협 모델을 포함한 신중한 평가 체크리스트의 필요성을 강조합니다.​

 

 

화이트박스/블랙박스, 전이, 예상치 못한 공격

강의는 화이트박스(파라미터 공개)와 블랙박스(출력만 관찰) 설정을 비교하면서, 보안 관점에서 블랙박스 가정에만 의존하는 것은 ‘security through obscurity’라 취약할 수 있음을 지적합니다. 또한, 한 모델에 대해 만든 적대적 예제가 다른 구조·학습 설정의 모델에도 종종 잘 통하는 전이(transferability) 현상을 보여주며, 실제 인쇄→촬영 같은 물리적 노이즈에도 공격이 어느 정도 유지될 수 있음을 사례로 설명합니다. 더 나아가 L ∞  노이즈 외에도, adversarial snow처럼 구조적 제약이 있는 교란, 텍스트에서의 오타·단어 치환 공격(TextBugger, BERT 기반 공격 등)까지 포함하는 보다 넓은 위협 모델을 다룹니다.​

 

 

강건성 향상 기법과 인증

Robustness 향상 방안으로는 크게 세 가지 축을 제시합니다.​

- 데이터 측면: 더 많은 라벨 데이터, 혹은 대규모 데이터셋(예: ImageNet)에 대한 적대적 사전학습 후 다운스트림 데이터셋(CIFAR-10 등)에서 파인튜닝을 통해 강건성이 전이될 수 있음을 실험 결과로 보여줍니다.​

- 데이터 증강: CutMix처럼 이미지 일부를 다른 샘플로 잘라 붙이고 라벨도 비율로 섞는 기법이, 기본 패드+크롭 대비 클린 정확도와 적대적 강건성을 동시에 향상시키는 파레토 개선을 제공한다는 결과를 소개합니다.​

- 모델 구조: ReLU 대신 Jello 같은 더 매끄러운 활성화 함수를 사용할 경우 ResNet-50의 적대적 정확도가 유의미하게 상승하는 실험을 보여주며, 이는 주로 경험적 관찰임을 언급합니다.​

마지막으로, 단순 경험적 테스트에 그치지 않고 일정 반경 내에서 예측이 바뀌지 않음을 수학적으로 보증하는 “robustness certificates” 연구를 소개하면서, 모델 가중치만으로도 제한적인 형태의 안전성 보장을 증명할 수 있는 이론적 방향이 존재함을 설명하며 강의를 마무리합니다.​

 

https://www.youtube.com/watch?v=wIX00bZ173k

 

 

 

 

 

Adversarial Attacks on Neural Networks - Bug or Feature?

이 영상은 “Adversarial Examples Are Not Bugs, They Are Features” 논문의 핵심 아이디어를 쉽게 풀어 설명하는 요약 영상입니다.​

 

적대적 예제와 1픽셀 공격

영상은 먼저 딥러닝 분류기가 아주 잘 동작하는 것처럼 보이지만, 미세한 노이즈를 더하면 버스를 타조로 착각하는 적대적 예제가 만들어질 수 있다는 점을 상기시킵니다. 이어서 “얼마나 적게 바꿔도 속일 수 있을까?”라는 질문에서 출발해, 단 한 개의 픽셀만 바꿔도 말(馬) 이미지를 99.9% 확신으로 개구리로 오분류시키는 ‘1‑픽셀 공격’ 사례를 소개합니다. 이런 예제는 직관적으로는 “버그 같다”고 느껴지지만, 논문은 다른 관점을 제시합니다.​

 

논문의 주장: 버그가 아니라 ‘특징’

논문의 주장: 버그가 아니라 ‘특징’

 

논문의 핵심 주장은 적대적 예제가 단순한 구현 버그가 아니라, 데이터 안에 실제로 존재하는 “비강건(non‑robust) 특징” 때문이라는 것입니다.​

- 어떤 특징들은 예측력은 있지만, 아주 취약해서 작은 교란에도 쉽게 깨집니다.

- 현재의 신경망은 이런 비강건 특징들도 활용해 높은 정확도를 달성하는데, 이게 바로 적대적 공격에 잘 속는 근본 이유라는 설명입니다.​

영상에서 소개된 작업은, 이미 존재하는 데이터셋에서 이런 비강건 특징을 분리·제거하고, 보다 강건한(robust) 특징만을 사용해 학습시키면 적대적 공격에 훨씬 덜 취약한 분류기를 만들 수 있다는 결과를 보여줍니다.​

Distill 토론 기사와 연구 문화

두 번째 부분에서는 Distill 저널에 실린 토론(discussion) 기사를 소개합니다. 이 글에서는 여러 연구자들이 원 논문에 대해 직접 코멘트·재현 실험을 공유하고, 저자들이 이에 답변하는 형식으로 주요 주장과 한계, “우리가 주장하지 않는 것(non‑claims)”까지 명확히 정리합니다. 예를 들어, 저자들은 “적대적 예제가 소프트웨어 버그에서 비롯된다고 주장하는 것은 아니다”와 같은 오해를 직접 교정합니다. 영상은 이런 공개 토론과 재현성 강화 시도가 연구의 신뢰성과 명료성을 높이는 좋은 사례라고 강조하며, 시청자에게도 원 논문과 Distill 토론 글을 직접 읽어볼 것을 권합니다.​

 

 

https://www.youtube.com/watch?v=AOZw1tgD8dA

 

 

 

 

 

[Attack AI in 5 mins] Adversarial ML #1. FGSM

이 영상은 FGSM(Fast Gradient Sign Method)를 예제로 삼아, 적대적 공격의 직관과 수식을 짧게 정리한 내용입니다.​

 

 

FGSM 직관

적대적 공격의 목표는

1. 입력 변화는 사람이 거의 못 느낄 정도로 작게 유지하면서,
2. 모델 출력(손실)은 최대한 크게 바꾸는 것
  입니다. 이를 위해 각 픽셀 변화량을 ϵ이라는 작은 값으로 제한하고, 손실이 가장 빨리 증가하는 방향(그래디언트 방향)으로 입력을 살짝 밀어 넣습니다.​

 

 

FGSM 수식

영상에서 설명하는 FGSM 수식은 다음과 같습니다.​


x adv =x+ϵ⋅sign(∇ x L(x,y))

- x: 원본 입력 이미지
- y: 정답 레이블
- L: 손실 함수
- ϵ: 허용하는 최대 교란 크기
- sign(⋅): 각 픽셀별 그래디언트의 부호만 취해, 모든 차원에서 ±ϵ만큼 이동하도록 만드는 연산입니다.​

즉, 원래는 그래디언트 상승(gradient ascent)을 여러 스텝 수행해 손실을 키울 수 있지만, FGSM은 “빠르게(fast)” 한 번만, 각 차원별로 최대 허용량 ϵ을 사용하는 단일 스텝 공격입니다.​

 

 

예시와 구현

영상에서는 MNIST 분류기를 예로 들어, ϵ을 키워 가며

- 정확도가 97% → 점점 떨어져 결국 랜덤 수준(10%) 근처까지 가는 모습,

- 동시에 이미지에 점점 눈에 띄는 노이즈가 쌓이는 모습을 보여줍니다. 또, “타깃 공격”으로 목표 클래스를 8로 고정했을 때, 사람 눈에는 여전히 원래 숫자로 보이지만 모델은 전부 8로 분류하게 만드는 사례도 제시합니다.​

구현은
- 직접 수식을 코드로 쓰거나,
- Adversarial Robustness Toolbox(ART) 같은 라이브러리에서 제공하는 FGSM 함수를 호출하는 방식 두 가지를 소개합니다.​

 

https://www.youtube.com/watch?v=4TseynD_v7M

 

 

 

 

Stanford CS230: Deep Learning | Autumn 2018 | Lecture 4 - Adversarial Attacks / GANs

이 강의는 Stanford CS230의 한 강의로, 적대적 예제(adversarial examples)와 GAN을 따로 다루되, 먼저 “신경망 공격” 파트를 집중적으로 설명합니다.​

 

적대적 예제의 목표와 설정

강의의 첫 부분에서 Kian이 정의하는 문제는 다음과 같습니다.​
- ImageNet으로 학습된 고성능 이미지 분류기(예: VGG, Inception, ResNet)가 있다고 가정합니다.
- 이 네트워크는 원래 고양이, 이구아나 등 1000개 클래스를 잘 구분합니다.
- 공격의 목표는 인간 눈에는 고양이처럼 보이는 이미지를 네트워크가 ‘이구아나’라고 확신하도록 만드는 것입니다.

이를 위해 손실 함수를
- 출력이 “이구아나” 원‑핫 벡터에 가깝도록 만드는 항,
- 동시에 입력 이미지가 원래 고양이 이미지와 가깝게 유지되도록 하는 항
  두 개로 구성하고, 네트워크 파라미터는 고정한 채 입력 이미지에 대해 그래디언트 디센트/어센트로 최적화하는 방식으로 적대적 예제를 생성합니다.​

 

왜 입력은 거의 안 변해 보이는데 예측은 크게 바뀌는가

강의 중간에는 왜 이런 적대적 예제가 존재하는지에 대한 직관적 설명이 나옵니다.​

- 단순한 선형 회귀 y^ =wx+b 예제를 통해,
--입력 x에 ϵ⋅sign(w) 같은 작은 교란을 더하면
-- 출력 y^ 가 선형으로 크게 변할 수 있음을 보입니다.

- 차원이 높을수록(이미지는 수천 차원) 이 효과가 누적되어, x와 x \* 의 차이는 눈에 띄지 않을 만큼 작아도, 출력은 크게 달라질 수 있다는 점을 강조합니다.​

- 또한, 현대 딥넷은 ReLU, 적절한 초기화 등으로 훈련 시 최대한 “선형에 가까운 영역”에서 동작하도록 설계되기 때문에, 이런 선형적 취약성이 실제 신경망에도 그대로 나타난다는 논지를 소개합니다.​

 

공격 유형: 타깃/비타깃, 화이트박스/블랙박스, 전이성

강의 후반에서는 적대적 공격을 다음과 같이 분류합니다.​

- Non‑targeted vs Targeted
-- Non‑targeted: “정답만 아니면 된다” → 어떤 다른 클래스라도 예측하게 만들면 성공.
-- Targeted: “고양이를 반드시 이구아나로 만들기”처럼 특정 타깃 클래스를 지정.

- White‑box vs Black‑box
-- White‑box: 모델 구조·파라미터·그래디언트에 완전 접근 가능 → 강의에서 설명한 방식대로 입력에 직접 역전파하여 적대적 예제를 만들 수 있습니다.​
-- Black‑box: 내부를 모른 채 쿼리(입력–출력)만 가능한 경우 → 수치적 그래디언트 추정이나, 다른 모델에서 만든 적대적 예제를 가져와 사용하는 전이 공격(transferability)을 활용합니다.​
-- 강의는 “한 모델에서 만든 적대적 예제가, 전혀 다른 구조·학습 설정의 모델에서도 종종 잘 통하는” 전이 현상이 여전히 활발한 연구 주제라고 설명합니다.​

방어 아이디어와 한계

방어 측면에서는 여러 아이디어를 소개하지만, “완벽한 방어는 없다”는 점을 분명히 합니다.​

-- 탐지 네트워크(Safety Net): 본 모델 앞에 “이 입력이 적대적 예제인지/정상인지”를 구분하는 별도 분류기를 두는 방식입니다. 공격자는 이 탐지기도 함께 속여야 하므로 난도가 올라가지만, 원칙적으로는 또 다른 공격 대상이 생기는 셈입니다.​
-- 앙상블(ensemble): 서로 다른 구조의 모델 여러 개를 함께 쓰면, 하나만 속이는 예제가 전체를 동시에 속이기는 더 어렵다는 직관을 이용합니다.​
-- 적대적 학습(adversarial training): 매 학습 스텝마다 입력 x에서 적대적 예제 x adv 를 생성하고, 


L total =L(f(x),y)+λL(f(x adv ),y)
  같은 손실로 학습하는 방법을 설명합니다. 다만, 각 스텝에서 적대적 예제를 새로 생성해야 하므로 계산량이 매우 크고, 특정 종류의 공격에 과적합될 위험이 있다고 언급합니다.​

강의는 마지막에, 이런 취약성이 고차원·거의 선형적인 모델 구조에서 자연스럽게 생기는 현상이며, 공격·방어는 암호학과 비슷한 “공격–방어 경쟁”의 성격을 가진다고 정리한 뒤, 이어서 GAN 파트로 넘어갑니다.​

 

https://youtu.be/ANszao6YQuM?si=K4lknLweXQXuFsHc

 

 

728x90
반응형
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
250x250