딥러닝의 발전 이유
1. GPU는 CPU보다 병렬 연산에 훨씬 강력함
2. 빅데이터와 빠른 처리 속도
3. 알고리즘의 진화
4. 개발 환경의 발전
5. 학계의 혁신 사례
6. ImageNet과 ILSVRC 대회
대표적인 딥러닝 프레임워크 (SW)

딥러닝의 한계
1. Overfitting : 과적합
학습 데이터에 너무 맞춰진 모델은 테스트 데이터에 대한 성능이 약하다.

Uderfitting : 너무 단순한 곡선
Good fitting : 적절한 곡선
Overfitting : 노이즈까지 학습해버려서 복잡한 곡선
🛠️ 해결 방법
1. 정규화
오류 함수를 오류항과 모델 복잡도항으로 정의한다.
복잡성이 모델을 과적합으로 이끌 수 있기 때문에 모델 복잡성을 패널티 항으로 추가하는 것이다.
Cost Function = Error Term + α * Model Complexity
여기서 α는 복잡도에 얼마나 패널티를 줄 것인지 결정하는 파라미터이다.
2. 배치 정규화
데이터를 한번에 다 학습시키면 시간이 너무 오래걸린다.
따라서 작은 단위인 미니 배치로 나누어 학습시키는 방식을 사용한다.
각 미니배치에 대해 기울기를 계산하고, 평균값으로 갱신한다.
이렇게 하면 노이즈에 덜 민감하게 학습이 가능하다.
∇g = 1/10 * i=1∑10 (∇gi)

미니배치는 학습 데이터 N개를 배치 사이즈 단위로 먼저 나눈다.
한 번 전체 데이터를 돌아며 1epoch가 된다.
에포크마다 데이터를 섞어 학습시키는데 이는 과적합을 방지할 수 있다.
아래는 3번의 에포크동안 배치 학습 흐름도를 보여주는 그림이다.

배치 정규화는 각 레이어에서 들어오는 데이터(미니 배치)의 분포를 정규화하여 학습을 안정적이고 빠르게 해주는 기법이다.
💡 왜 배치 정규화가 필요할까
딥러닝 모델은 Layer가 깊어질수록 문제가 발생한다.
1. 입력이 같아도 가중치의 초기값이나 작은 변화로 출력이 크게 달라진다.
2. 출력의 변화 문제때문에 학습이 불안정하고 기울기 소실 문제도 생긴다.
📍 배치 정규화의 역할
배치 정규화는 딥러닝에서 발생할 수 있는 위와 같은 문제를 완화시킬 수 있다.
각 미니 배치의 평균을 0, 분산을 1로 바꿔준다.
→ 이는 표준 정규분포를 따르는 것이다.
입력값 xi → 평균 μB, 표준편차 σB 를 사용하여 정규화한다.
정규화된 값은 아래와 같다.

이렇게 정규화 된 값에 scale(γ) / shift(β) 작업을 추가로 해주면 된다.

계산 흐름은 아래와 같다.
가중치 적용 → 평균 및 표준편차 계산 → (정규화) → shift/scale 적용 → ReLU
여기서 평균 및 표준편차 계산, γ / β 파라미터 적용 부분을 배치 정규화 블록이라고 한다.
👍 배치 정규화의 장점
1. 초기 가중치에 덜 민감하다.
2. 학습할 때 출력 값이 안정적이다. (→ 빠르게 수렴)
3. 과적합 확률이 감소한다.
4. 기울기 소실 문제가 완화된다.
5. 학습 속도가 향상된다.

아래 그림처럼 배치 정규화는 FC Layer와 활성화 함수 사이에 이루어진다.
FC Layer가 만든 출력값의 분포를 먼저 정규화하고, 비선형성을 적용하는 것이다.
각 배치마다 분포가 달라도, 정규화를 통해 일정한 형태로 맞춰주기 때문에 안정적인 학습이 가능해지는 것이다.
FC Layer → BatchNorm → ReLU (활성화 함수)

3. 드롭 아웃
드롭 아웃이란 학습 중에 일부 뉴런을 확률적으로 꺼버리는(비활성화) 기법이다.
📍 Dropout 동작 방식
1. 확률적으로 노드를 선택하여 비활성화
- 예를 들어 확률이 0.5면 노드의 절반을 학습에서 제외시킨다.
2. 학습할 때마다(미니배치 or epoch 마다) 무작위로 비활성화 함
- 매번 다른 노드가 비활성화 되기 때문에 여러 조합의 네트워크를 학습할 수 있다.
- 하나의 큰 네트워크가 여러 작은 네트워크의 앙상블처럼 동작하는 것이다.
3. 추론 시에는 Dropout 사용 안함 !
- 단 드롭된 비율만큼 전체 출력에 스케일링 작업을 한 후 사용한다.

Deep Learning Adances
1. ImageNet & ILSVRC
ImageNet은 1400만장의 이미지를 수작업 라벨링한 대형 데이터 셋이다.
ILSVRC는 객체 인식 성능 평가 대회(Top-5 error)이다.
ImageNet과 ILSVRC가 나오면서 딥러닝이 급속도로 성장하였다.

2. ResNet
잔차 연결 (Skip Connection)로 깊은 네트워크에서도 학습이 가능하다.
2015년 ILSVRC 대회에서 3.57%의 오류율로 우승을 한 모델이다.
깊어져도 성능 저하 없이 학습이 가능하도록 만든 모델이다.



딥러닝 아키텍쳐
정확도와 효율성
좋은 딥러닝 모델은 정확도, 효율성, 최적화의 균형이 맞아야 한다.
은닉층이 많아질수록 하이퍼파라미터가 많아지고, 하이퍼파라미터가 많아질수록 학습이 오래걸린다.

해당 그래프는 여러 모델들의 Top-1 정확도 vs 연산량을 비교한 것이다.
오른쪽 위에 있는 모델일수록 정확도도 높고, 연산량도 크다.
ResNet은 비교적 효율과 정확도 둘 다 높은 편이다.
계산 자원과 모델 복잡도
모델이 너무 단순하면 바이어스(편향)가 커지고, 너무 복잡하면 분산이 커져 과적합이 발생한다.

해당 그래프는 편향-분산의 Tradeoff를 보여준다.
가운데가 가장 적절한 복잡도 (최적 지점)이고 이 지점에서 총 오차가 가장 작다.
딥러닝 아키텍처 종류
Deep feedforward network : 전형적인 다층 퍼셉트론
RNN : 순서가 있는 데이터를 처리
LSTM : RNN의 장기 의존성 문제를 보완
CNN : 이미지 처리의 핵심 모델
GAN : 생성 모델
Transformer : 최근 자연어처리의 핵심
Attention Network : 어떤 부분에 더 집중할지 학습하는 구조
'CS > 기계학습' 카테고리의 다른 글
| [기계학습] 대표적인 CNN 모델 (2) | 2025.06.13 |
|---|---|
| [기계학습] CNN 기초 (1) | 2025.06.13 |
| [기계학습] Neural Network - Deep Learning 기초 (0) | 2025.06.12 |
| [기계학습] Neural Network - 퍼셉트론과 학습 메커니즘 (1) | 2025.06.11 |
| [기계학습] Neural Network - history (0) | 2025.06.11 |