Gradient Descent
모델의 손실 함수를 최소화하기 위해 사용되는 최적화 알고리즘 중 한 종류
Batch Gradient Descent
- 전체 학습 데이터셋을 사용하여 모델 업데이트 , batch_szie = n
- 안정적, 병렬처리가 가능하여 속도는 빠르지만, 업데이트 속도는 느림 (한 epoch 당 1번 update)
- 전체 데이터셋을 처리하는 동안 계산이 느리고 메모리를 많이 사용
cost에 대한 gradient
Stochastic Gradient Descent
- 학습 데이터셋의 각 샘플에 대해 모델 업데이트 , batch_szie = 1
- 업데이트 속도는 빠르지만, 불안정 (한 epoch 당 n 번 update)
loss에 대한 gradient
Mini-Batch Gradient Descent
- 미니배치 단위로 모델을 업데이트
- batch_size 만큼 병렬 처리 가능, 업데이트 주기도 꽤 빠름 ( GPU 활용에 효율적 !!)
- 일반적으로 Batch Gradient Descent와 SGD 사이의 성능을 가지고 있으며, 대부분의 딥러닝 학습에서 사용
'AI' 카테고리의 다른 글
BERT (Bidirectional Encoder Representations from Transformers) (0) | 2023.05.09 |
---|---|
Transformer: Attention Is All You Need (0) | 2023.05.09 |
Optimizer (0) | 2023.05.09 |
Dropout (0) | 2023.05.02 |
Pre-training, Transfer Learning, Fine-tuning (0) | 2023.04.30 |