CNN (합성곱 신경망) 핵심 개념 정리
이미지는 보통 높이(Height), 너비(Width), 채널(Channel)로 구성된 데이터이다.
예를 들어 흑백 이미지는 채널이 1, RGB 이미지는 채널이 3이다.
1. 필터(Convolution)
필터는 이미지에서 특정한 특징(feature)을 추출하기 위한 도구이다.
필터는 일반적으로 (k × k × 채널) 형태의 가중치 집합으로 구성되며,
이미지 위를 슬라이딩하면서 다음과 같은 연산을 수행한다:
- 필터와 이미지의 해당 영역을 요소별로 곱한 뒤
- 모든 값을 더해서 하나의 값을 생성
이 과정을 통해 특정 패턴(모서리, 선, 질감 등)을 추출할 수 있다.
또한 필터의 개수는 곧 출력 채널 수(feature map 수)가 된다.
2. Stride와 출력 크기
Stride는 필터가 한 번에 이동하는 칸 수를 의미한다.
출력 크기는 다음과 같이 계산된다:
출력 크기=(N−F)/S + 1
- N: 입력 크기
- F: 필터 크기
- S: stride
Stride가 커질수록 출력 크기는 더 작아진다.
3. Padding
필터를 적용하면 이미지의 가장자리가 줄어드는 문제가 발생한다.
이를 해결하기 위해 입력 가장자리에 0을 추가하는 제로 패딩(Zero Padding)을 사용한다.
- padding='valid' → 패딩 없음 → 크기 감소
- padding='same' → 크기 유지
4. 풀링(Pooling)
풀링은 feature map의 크기를 줄이면서 중요한 정보만 남기는 과정이다.
대표적으로 Max Pooling이 많이 사용되며,
일정 영역에서 가장 큰 값만 선택한다.
예:
[1 3
2 0] → 3
2 0] → 3
특징:
- 연산량 감소
- 과적합 방지
- 위치 변화에 강건함(이동 불변성)
보통 pool_size와 stride를 동일하게 설정한다.
5. CNN의 전체 구조
CNN은 크게 두 단계로 나뉜다:
1) Feature Extraction
- Convolution
- Activation (ReLU)
- Pooling
이미지에서 특징을 추출
2) Classification
- Flatten 또는 Global Average Pooling
- Dense Layer
추출된 특징을 기반으로 분류 수행
한 줄 정리
CNN은
“이미지에서 특징을 자동으로 추출하고, 이를 이용해 분류하는 모델”
'AI > 개념' 카테고리의 다른 글
| 파인튜닝 추천 전략 및 팁 (0) | 2026.04.28 |
|---|---|
| 비전 객체탐지 모델 응용 및 전이학습(심화) (0) | 2026.04.28 |
| 비전 객체탐지 모델 응용 및 전이학습 (0) | 2026.04.27 |
| CNN 주요 모델 흐름 정리 (0) | 2026.04.24 |
| 인공신경망 모델의 구조와 동작원리 (0) | 2026.04.21 |