반응형
미니 배치 경사 하강법은 전체 데이터셋이 아닌 작은 데이터 묶음(미니 배치)을 사용해 모델의 파라미터(가중치와 편향)를 업데이트하는 최적화 알고리즘입니다. 이는 경사 하강법의 변형 중 하나로, 전통적인 배치 경사 하강법과 확률적 경사 하강법(SGD)의 중간 형태입니다.
1. 작동 방식
1. 데이터 분할:
전체 데이터셋을 미니 배치라 불리는 작은 데이터 묶음으로 나눕니다.
예: 데이터셋이 10,000개고, 미니 배치 크기가 100이라면 총 100개의 미니 배치가 생성됩니다.
2. 모델 업데이트 과정:
각 에포크(epoch)에서:
(1) 미니 배치 하나를 선택합니다.
(2) 해당 미니 배치 데이터를 기반으로 손실 함수의 기울기를 계산합니다.
(3) 계산된 기울기를 사용해 파라미터를 업데이트합니다.
이 과정을 데이터셋의 모든 미니 배치에 대해 반복합니다.
2. 장점
1. 계산 효율성:
배치 경사 하강법은 모든 데이터를 한 번에 계산하므로 메모리 사용량이 높지만, 미니 배치는 적은 데이터로 처리하기 때문에 메모리 부담이 적습니다.
2. 속도와 안정성의 균형:
확률적 경사 하강법(SGD)은 매번 데이터를 랜덤하게 선택하므로 진동이 크고, 배치 경사 하강법은 느립니다.
미니 배치는 두 방식의 장점을 절충하여 비교적 빠르면서도 안정적인 수렴을 제공합니다.
3. 병렬 처리 가능:
각 미니 배치는 독립적으로 계산되므로 GPU 같은 병렬 처리 하드웨어에 적합합니다.
3. 하이퍼파라미터: 미니 배치 크기
미니 배치 크기(예: 16, 32, 64 등)는 중요한 하이퍼파라미터로, 성능에 영향을 미칩니다.
- 작은 크기: 빠른 업데이트 가능, 더 많은 진동 발생.
- 큰 크기: 업데이트가 안정적이지만, 계산 시간이 길어질 수 있음.
일반적으로 GPU 사용 시 2n2^n2n 형태(예: 32, 64, 128)가 권장됨.
4. 수식
- 미니 배치에 포함된 데이터 수:
- 손실 함수:
- 모델 파라미터:
- 학습률:
미니 배치 BB 에 대해:
여기서
: 데이터 xix_i , yiy_i 에서의 손실 함수 기울기.
5. 활용 사례
- 딥러닝 모델 훈련 시 일반적으로 미니 배치 경사 하강법을 사용.
- 대규모 데이터셋 처리가 필요한 모든 머신러닝/딥러닝 알고리즘에서 효과적.
반응형
'AI > 관련 자료' 카테고리의 다른 글
[머신러닝] 배치 하강 경사법(Batch Gradient Descent) 정리 (0) | 2024.11.20 |
---|---|
[머신러닝] 활성 함수(Activation function)란? (0) | 2024.11.15 |
[머신러닝] 손실 함수(Loss Function)란? (0) | 2024.11.15 |
[딥러닝] 원-핫 인코딩이란? / One-hot (0) | 2024.11.14 |
[딥러닝] 텐서플로 케라스란? / TensorFlow Keras (0) | 2024.11.14 |