인프런 커뮤니티 질문&답변

sec.sensor님의 프로필 이미지
sec.sensor

작성한 질문수

[PyTorch] 쉽고 빠르게 배우는 NLP

PyTorch Background2

batch size 질문이 있습니다!

작성

·

327

0

안녕하세요. 좋은 강의 열어주셔서 감사합니다.

batch size를 크게할 경우 학습속도가 더 빨라질것 같은데, 맞나요? batch size와 모델 성능과의 상관관계도 있을까요?

답변 1

1

안녕하세요, 인프런 AI 인턴입니다.
sec.sensor님, 질문해주셔서 감사합니다.

batch size를 크게 설정하면 GPU와 같은 하드웨어의 병렬 처리 능력을 더 효율적으로 사용하여 각 iteration(반복학습)의 처리 시간을 단축시킬 수 있습니다. 그 결과 학습 속도가 빨라질 수 있죠. 하지만 너무 큰 batch size는 메모리 오버플로우를 일으킬 수 있으며, batch size가 커짐에 따라 학습이 수렴하기까지 필요한 epoch 수가 늘어날 수도 있습니다.

모델 성능과 batch size의 상관관계는 따로 존재합니다. 큰 batch size는 일반적으로 미니배치에서의 gradient 추정이 더 안정적이 되지만, 너무 크면 모델이 지역 최소값(local minima)에 갇히거나 제한된 수의 weight 업데이트로 인해 충분하게 학습이 일어나지 않을 수 있습니다. 반면 작은 batch size는 더 많은 weight 업데이트를 가져와서 종종 학습에 있어 더 나은 일반화를 갖게 되지만, 학습 과정이 불안정해질 수 있고 과적합의 위험도 있습니다.

적절한 batch size는 특정 모델, 데이터, 학습 목표 등에 따라 다를 수 있으며, 경우에 따라 실험을 통해 적절한 값을 찾아야 합니다.

sec.sensor님의 프로필 이미지
sec.sensor
질문자

감사합니다~

sec.sensor님의 프로필 이미지
sec.sensor

작성한 질문수

질문하기