Towards Robust Vision Transformer
- CVPR 2022
- 2025.01.18 기준 인용 횟수: 226회
Introduction
- 기존의 Vision Transformer(ViT) 모델 변형들: DeiT, ConViT, Swin, PVT, PiT
- 표준 정확도(standard accuracy)와 계산 비용에만 초점을 맞췄으나 모델의 견고성과 일반화에는 부족한 연구
- 높은 standard accuracy를 달성했지만 robust accuracy는 떨어지는 현상 발생
- 견고성 → adversarial attack이나 out-of-distribution에 받는 영향
- 본 논문:
- ViT의 구조적 구성요소 분석
- 패치 임베딩, 위치 임베딩, 트랜스포머 블록, 분류 헤드가 견고성에 미치는 영향 연구
- 플러그 앤 플레이 기법 제안 → 다른 ViT에도 적용 가능
- 위치 인식 어텐션 스케일링(PAAS)
- 패치 기반 증강을 통해 풍부한 데이터
2. Robustness Analysis of Designed Components
(1) Patch Embedding
- ViT에서 이미지를 patch로 나누는 단순한 토큰화는 가장자리와 모서리를 포착하기 어렵게 만듬
- convolutional stem을 사용해 계산 비용을 낮추며 저수준 특징을 활용 → convolutional embedder를 활용
(2) Position Embedding
- 기존 CPE(조건부 위치 임베딩)는 인코딩 입력에 위치가 쉽게 변경되어 견고성이 낮음
- 다단계 설계 채택으로 공간 해상도가 큰 문제 해결
(3) Transformer Blocks
① Multi-stage Design
- 큰 spatial resolution을 갖는 트랜스포머 블록이 많을 수록 모델의 견고성이 낮아짐
- 트랜스포머 블록에서 spatial resolution을 점진적으로 낮추면 견고성이 어느 정도 향상됨
② 적절한 Attention Head 수
- NLP와 유사하게 중복성을 줄이고 특징 다양성을 고려한 적절한 Attention Head 수도 모델의 견고성에 영향이 있음
③ Locality constraints of self-attention layer
- Swin은 self-attention 계산을 입력에서 겹치지 않는 local window로 제한 → 모델 견고성에 좋지 않았음
④ Convolutional FFN
- Convolutional FFN이 표준 정확도와 견고성을 모두 향상
- local self-attention과 비교하여 ViT의 long-term dependencies를 손상시키지 않는 것으로 추측
- FFN은 single token을 인코딩하는 반면 Convolutional FFN은 현재와 이웃 토큰을 모두 인코딩
(4) Classification Head
- CLS 토큰을 평균 풀링으로 대체
- CLS 토큰은 특정 위치 정보에 의존할 수 있음
- 평균 풀링은 모든 CLS 토큰을 동일한 비중으로 취급해 위치에 대한 의존도를 낮춤
- 이미지의 Translation-Invariance를 개선하고 견고성 강화 → 이미지 내에서 객체가 이동하거나 변형해도 동일하게 인식
3. Plug-and-play techniques
- 다른 ViT 모델에도 적용가능
(1) Position-Aware Attention Scaling(PAAS)
- Scaled Dot-product Attention에서 공간 정보 상관관계가 부족
- 위치 중요도 행렬을 정의하여 원래 스케일링에서 수정
- adversarial attack(FGSM)과 out-of-distribution generalization에 좋았음
(2) Patch-Wise Augmentation
- 기존 이미지 전체 증강 방식을 유지하면서 각 패치에 개별적으로 다양한 증강을 추가 → 패치 내 특징 뿐만 아니라 패치 간 관계도 학습
- 사용된 증강 방법
- 무작위 크기 조정 자르기(random resized crop)
- 무작위 수평 뒤집기(random horizontal flip)
- 무작위 가우시안 노이즈(random gaussian noise)
참고
Adversarial Attack의 유형
- White-box 공격
- 공격자가 모델의 구조와 파라미터를 모두 알고 있을 때 수행
- 예: Fast Gradient Sign Method(FGSM), Projected Gradient Descent(PGD)