CNN(합성곱 신경망) 완벽 정리 – Inductive Bias부터 ResNet까지
1. Inductive Bias(유도 바이어스)란?
딥러닝은 데이터를 통해 스스로 패턴을 학습하는 방식이다.
하지만 현실에서는 다음과 같은 제약이 존재한다.
- 데이터는 무한하지 않다
- 모델은 완벽하지 않다
- 계산 자원은 제한적이다
👉 그래서 모델이 더 잘 학습하도록 사람이 힌트를 주는 것이 필요하다.
이것을 **Inductive Bias(유도 바이어스)**라고 한다.
✔ 핵심 정의
사람이 모델에게 특정한 가정이나 힌트를 주어 학습을 돕는 것
2. 이미지에서의 Inductive Bias
이미지 데이터에는 다음과 같은 특징이 존재한다.
① 공간적 연속성 (Spatial Locality)
- 가까운 픽셀일수록 비슷하다
- 멀리 있는 픽셀보다 더 관련성이 높다
👉 예: 같은 영역은 비슷한 색/질감
② 위치 불변성 (Translation Invariance)
- 객체가 어디에 있든 동일한 객체로 인식 가능
👉 강아지가 왼쪽에 있든 오른쪽에 있든 "강아지"
③ 변형 불변성 (Transformation Invariance)
- 회전, 크기 변화, 노이즈에도 의미는 유지됨
👉 흑백 이미지라도 여전히 강아지
3. CNN이란?
CNN(Convolutional Neural Network)은
👉 이러한 이미지의 Inductive Bias를 반영한 신경망 구조이다.
4. CNN의 전체 구조
CNN은 크게 3가지 레이어로 구성된다.
1) Convolution Layer
- 특징(Feature) 추출
2) Pooling Layer
- 크기 축소 + 중요 정보 유지
3) Fully Connected Layer
- 최종 분류 수행
5. Convolution(합성곱) 핵심 개념
✔ 정의
작은 필터(kernel)를 이용해 입력 데이터를 스캔하면서 특징을 추출하는 연산
✔ 동작 방식
- 작은 필터(예: 3×3)를 만든다
- 이미지를 한 칸씩 이동하며 계산
- 각 영역을 하나의 값으로 요약
👉 결과: Feature Map 생성
✔ 왜 중요한가?
- 국소 정보 학습 (local pattern)
- 동일 필터 사용 → 위치 불변성 확보
- 파라미터 수 감소
👉 MLP보다 훨씬 효율적
6. Convolution 주요 하이퍼파라미터
① Kernel Size
- 한 번에 보는 영역 크기
| 크기 | 의미 |
| 작음 | 세밀한 패턴 (texture) |
| 큼 | 큰 구조 (shape) |
② Filter 개수
- 특징 종류의 개수
👉 많을수록 다양한 특징 학습 가능
👉 하지만 연산량 증가
③ Stride
- 필터 이동 간격
| 값 | 효과 |
| 작음 | 촘촘한 분석 |
| 큼 | 빠른 계산 + 정보 손실 |
④ Padding
- 가장자리에 0 추가
👉 출력 크기 유지 가능
7. Pooling Layer
✔ 역할
- Feature Map 크기 축소
- 중요한 정보 유지
✔ 종류
1) Max Pooling
- 가장 큰 값만 선택
👉 가장 많이 사용됨
2) Average Pooling
- 평균값 사용
✔ 효과
- 연산량 감소
- 위치 변화에 강건
8. Feature Extraction 과정
CNN은 다음과 같이 학습된다.
초기 레이어
- 선, 곡선 등 기초 패턴
중간 레이어
- 텍스처, 모양
깊은 레이어
- 객체의 의미 (강아지, 고양이)
👉 점점 추상적인 특징을 학습
9. CNN 학습 흐름
- Convolution + Pooling → 특징 추출
- Flatten → 벡터 변환
- Fully Connected → 분류
- Softmax → 확률 출력
10. 대표 CNN 모델 발전 과정
① LeNet (1998)
- CNN 최초 모델
- 구조:
- Conv → Pool → Conv → FC
👉 기본 구조 확립
② AlexNet (2012)
- ImageNet 대회 우승
- 특징:
- 깊은 구조 (5 Conv)
- ReLU 사용
- Dropout 적용
- GPU 활용
👉 CNN 대중화 시작
③ VGGNet
- 매우 깊은 구조 (16~19층)
- 특징:
- 3×3 필터만 사용
👉 단순하지만 강력
④ Inception (GoogLeNet)
- 다양한 필터를 동시에 사용
👉 1×1, 3×3, 5×5 병렬 처리
- 장점:
- 다양한 스케일 특징 학습
⑤ ResNet (핵심 중요 ⭐)
- 매우 깊은 네트워크 (최대 152층)
11. ResNet 핵심 아이디어 (Residual Learning)
✔ 문제
- 깊어질수록 학습 어려움 (기울기 소실)
✔ 해결
👉 Skip Connection (잔차 연결)
출력 = F(x) + x
✔ 의미
- "변화량만 학습"
👉 원래 정보(x)는 그대로 유지
✔ 장점
- 학습 안정성 증가
- 매우 깊은 모델 가능
- 성능 크게 향상
12. CNN의 핵심 정리
✔ CNN은 이미지 특성을 반영한 구조
✔ Convolution → 특징 추출
✔ Pooling → 정보 압축
✔ FC → 분류 수행
13. 한 줄 핵심 요약
👉 CNN은 "이미지의 공간적 구조를 활용해서 특징을 추출하는 신경망"이다.
'인하대학교 공학대학원(인공지능융합전공) > 심층신경망' 카테고리의 다른 글
| 심층신경망_Transformer (0) | 2026.05.02 |
|---|---|
| 심층신경망_CNN부터 RNN까지: 시계열 데이터와 순환신경망 완전 정리 (1) | 2026.04.17 |
| 심층신경망-신경망의 학습방식 (1) | 2026.04.10 |
| 심층신경망-신경망의 기본구조와 학습방식 (0) | 2026.03.26 |
| 심층신경망-딥러닝의 종류 (0) | 2026.03.20 |