BraveTiger
CH6. 딥러닝_Multi Layer Perceptron의 Overfitting 본문
Overfitting 해결법
: Deep Neural Network(은닉층의 개수가 많은 경우)에서 과대적합이 발생할 확률이 높다.
- 데이터의 양을 늘려준다.
- Regularization 사용
- L1/L2 Regularization: Weight가 작아지도록 학습하여 Outlier의 영향을 덜 받도록 하는 방법
- L1 Regularization(Lasso)
- Cost function 계산 시 L1 norm을 사용하여 weight의 절댓값을 더해주는 방법
- Feature selection 가능,
- sparse model에 적합
- L2 Regularization(Ridge)
- Cost function 계산 시 L2 norm을 사용하여 weight의 제곱값을 더해주는 방법
- weight가 작아지지만 제거되지 않는다.
- L1 Regularization(Lasso)
- L1/L2 Regularization: Weight가 작아지도록 학습하여 Outlier의 영향을 덜 받도록 하는 방법
- DropOut
- 특정 비율로 임의의 노드들을 동작하지 않도록 학습하는 방법
- Dropconnect
- Dropout의 일반화된 형태
- 노드 연결 중 일부가 동작하지 않도록 하는 방법(노드 사이에 전달되는 가중치를 무작위로 차단하는 방법)
- 모든 노드가 학습에 사용되지만, 다음 층으로 가는 일부 가중치를 0으로 차단한다.
- Batch Normalization
- 학습 과정에서 Batch마다 평균과 분산을 활용하여 데이터의 분포를 정규화하는 과정
※ Normalization
- 빠른 학습과 Local Minimum에 빠지는 가능성을 줄이기 위해 사용
- MinMaxscaler
- x - x.min / x.max - x.min
- Standardscaler
- x - μ / σ
- MinMaxscaler
- Unnormalization
- 타원 모양
- 수평으로 이동할 때와 수직으로 이동할 때 변화량의 불균형 발생
- Gradient Descent 알고리즘의 적용이 어렵고 learning rate를 작게 해야 함.
- Normalization
- 구 모양
- Gradient Descent 적용이 쉽고 빠르게 최적화 지점을 찾을 수 있음
- learning rate에 민감하지 않다.
Mini Batch
: 모든 학습 데이터에 대해 loss를 구하는 것은 시간이 오래 걸리므로, 데이터의 일부를 사용해 학습한다.
- Epochs
- 모든 데이터 셋이 Neural Network 전체에 대한 학습을 1회 수행한 것
- Batch Size
- Single batch 내 학습용 데이터 사이즈
- Iterations
- 1 Epoch을 달성하기 위한 Batch 개수
- Iterations = 전체 데이터 수 / Batch_size
1000개의 데이터, batch_size = 100이면, 1 Epoch을 달성하기 위해 10 Iterations를 한다.
'취업 준비 > AIVLE SCHOOL' 카테고리의 다른 글
CH6. 딥러닝 - CNN(Convolutional Neural Networks) (0) | 2023.04.25 |
---|---|
CH6. 딥러닝 - Overfitting을 방지하기 위한 방법 (0) | 2023.04.25 |
CH6. 딥러닝(1) - 딥러닝 개요와 Keras 코드 파헤치기 (2) | 2023.04.25 |
CH6. 딥러닝_인공신경망 개요 (0) | 2023.04.25 |
AICE ASSOCIATE 후기와 팁 (0) | 2023.04.25 |
Comments