1. 왜 Swin Transformer가 나왔나?
- 문제: 원래 비전 트랜스포머(ViT)는 이미지를 조각(패치)으로 잘라서 모두 서로 비교(Self-Attention)해요.
근데 이미지 크기가 커지면(고해상도) 조각 수가 미친 듯이 많아지고, 계산량이 터져버려요. - 해결책: Swin Transformer는 “한 번에 다 비교하지 말고, 작은 창(Window) 안에서만 비교하자”는 아이디어예요.
그래서 계산량이 이미지 크기에 따라 선형(linear) 으로 늘어나도록 설계했어요 → 훨씬 효율적!
2. 핵심 아이디어 두 개
- Hierarchical (계층적 구조)
- ViT는 이미지를 조각낸 뒤 그냥 끝까지 같은 크기의 패치로만 처리.
- Swin은 작은 패치부터 시작해서 점점 합치면서 큰 패치로 가요.
- 이렇게 하면 작은 물체부터 큰 물체까지 다 다룰 수 있어요 → CNN처럼 계층적 특징을 가짐.
- Shifted Windows (창 옮기기)
- 그냥 고정된 창(Window) 안에서만 비교하면 창 경계에 있는 애들은 서로 못 봄.
- 그래서 다음 레이어에서 창을 살짝 옆으로 밀어줌.
- 이렇게 하면 옆 창에 있던 애들도 연결돼서 정보가 섞임.
3. 구조 간단 정리
- Patch 분리: 이미지를 작은 조각으로 나눔.
- 윈도우 Self-Attention: 조각들을 창 단위로만 비교.
- Shifted Windows: 창을 옆으로 밀어서 정보 교환.
- Patch Merging: 패치들을 합쳐서 점점 더 큰 특징맵 만듦 → CNN처럼 계층적으로 발전.
- 결과: 작은 것도 잘 보고, 큰 것도 잘 보고, 계산도 효율적!
4. 실험 결과
- Swin Transformer는 ImageNet 같은 데이터셋에서 기존 CNN(ResNet 등)보다도 성능 좋고,
다른 트랜스포머보다 계산 효율도 훨씬 뛰어남. - 그래서 백본(backbone) 으로 되게 많이 쓰여요 (객체 탐지, 분할 등등 다 가능).
'**Autonomous driving tech. > *Machine-Learning' 카테고리의 다른 글
| [강화학습] Q-learning (0) | 2025.07.06 |
|---|---|
| [강화학습] SARSA 알고리즘 (0) | 2025.07.04 |
| [강화학습] TD, MC 기법 비교 (0) | 2025.07.02 |
| Autonomous Car-[강화학습] (0) | 2025.05.16 |
| Autonmous Car-[강화학습] (0) | 2025.05.14 |