본문 바로가기
AI/관련 자료

[머신러닝] 미니 배치 경사 하강법(Mini-Batch Gradient Descent) 정리

by 뒹굴거리는프로도 2024. 11. 21.
반응형

 


 

미니 배치 경사 하강법은 전체 데이터셋이 아닌 작은 데이터 묶음(미니 배치)을 사용해 모델의 파라미터(가중치와 편향)를 업데이트하는 최적화 알고리즘입니다. 이는 경사 하강법의 변형 중 하나로, 전통적인 배치 경사 하강법과 확률적 경사 하강법(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. 활용 사례

- 딥러닝 모델 훈련 시 일반적으로 미니 배치 경사 하강법을 사용.

- 대규모 데이터셋 처리가 필요한 모든 머신러닝/딥러닝 알고리즘에서 효과적.

 

 


 

반응형