Deep Learning/컴퓨터 비전 (CV)
학부 연구생 - Day04: CNN 대표 아키텍처: ResNet, VGGNet, AlexNet
nakyung1007
2025. 3. 10. 23:30
CNN 대표 아키텍처
Convolutional Layer을 사용하는 이유
- 계층적 특징 학습
- 초기 레이어에서는 기본적인 낮은 수준의 특징을 추출하고, 깊은 레이어로 갈수록 이러한 특징들이 결합되어 복잡하고 추상적인 패턴을 인식
- 효과적인 receptive field 확장
- Non-linearity (비선형성의 누적)
- → 데이터의 복잡한 패턴과 특성을 추출
💡AlexNet
구조 : 5개의 Convolutional Layer + 3개의 Fully Connected Layer,
⇒ 총 8개의 층으로 구성
- ReLU 활성화 함수 최초 본격 도입 → 학습 속도 및 성능 개선
- DropOut 기법 사용 → Overfitting 안화What is DropOut ??
- → AlexNet은 파라미터가 많아서 학습 데이터가 부족하면 쉽게 과적합되는 위험이 발생
: 학습 과정에서 은닉층을 무작위로 일부 “꺼버리는(Drop)” 기법
→ 매 학습 Step마다 다른 부분집합의 뉴런만 활성화되어, 은닉층들이 서로 공동 의존하는것을 막음
(즉, 네트워크가 더 일반화 능력을 가지도록 도움)
- GPU 병렬 처리 활용
💡 VGGNet
단순하게 3×3 합성곱을 여러 번 쌓고, Pooling으로 크기를 줄이는 구조를 채택함으로써, 복잡한 설계 없이도 ‘깊이(Depth)’가 성능 향상에 매우 중요한 요소임을 보여준 것이 VGG 시리즈의 핵심
구조: 네트워크 깊이에 따라 VGG16, VGG19 등으로 구분
특징:
- 각 Convolution Layer가 3X3 필터로 통일
- 초기 레이어의 64개의 Filter, 이후 128, 256, 512개 등으로 점진적으로 2배씩 증가Filter의 수는 그 이미지가 64,128,256 2배씩 늘어남
VGG16 : 13개의 Convolution Layer + 3개의 Fully Connected
VGG19: 16개의 Convolution Layer + 3개의 Fully Connected
💡 ResNet
구조: 152개의 Convolution Layer
🙄 Convolution layer가 많으면 좋나?!
→ 문제점 : convolution layer가 많아질수록 back propagation 과정에서 기울기 소실 문제가 발생
즉, Degradation 문제가 발생함
(훈련 오차도 깊어질수로록 더 높아지는 현상으로, 단순한 과적합이 아닌 학습 자체가 제대로 안되는 문제 발생)
→ Convolution layer가 많을수록 미분을 많이 하기 때문에 앞에 layer일수록 미분이 작아짐
🍎 ResNet의 핵심 포인트
“ Residual Connection(스킵 연결)”
⇒ 즉, 초기값이 더해졌다.
참고문헌