배치사이즈(Batch size)와 에폭(Epoch)

byun·2023년 3월 20일
0

인공지능

목록 보기
1/2
post-thumbnail

배치사이즈(Batch size)

배치사이즈란, 한 번에 모델이 학습하는 데이터 샘플의 개수를 의미합니다. 학습 데이터셋이 매우 클 경우, 전체 데이터셋을 한 번에 모델에 넣어 학습하는 것은 메모리와 게산적인 측면에서 불가능할 수 있습니다. 이러한 경우, 데이터셋을 작은 단위로 나누어 모델에 입력하게 되는데, 이때 단위를 배치라고 합니다.

예를 들어, 1000개의 학습 데이터가 있다고 합시다.
배치 사이즈가 100이라면 전체 데이터셋을 10개의 배치로 나누어 모델에 입력하게 됩니다.
각 배치는 100개의 데이터 샘플을 포함하므로, 모델은 100개의 데이터 샘플을 처리한 후에 가중치를 업데이트 합니다.

  • 인공지능 모델은 각 배치사이즈마다 가중치와 편향을 업데이트 합니다.

에폭(Epoch)

에폭(Epoch)란, 전체 학습 데이터셋을 모델이 한 번 학습하는 것을 의미합니다. 따라서 1 에폭은 전체 데이터셋을 한 번 사용하여 학습한 것입니다.

예를들어, 1000개의 학습 데이터가 있고 배치 사이즈가 100이라면, 1에폭은 10개의 배치를 처리한 후에 완료됩니다. 만약 10 에폭을 실행했다면, 전체 데이터셋을 10번 반복해서 학습한 것입니다!

가중치의 업데이트

인공지능 모델은 각 배치사이즈와 에폭마다 가중치를 업데이트 합니다.
초기 학습 시작시, 가중치와 편향은 초기값으로 설정되어 있고, 모델이 학습을 시작함에 따라 인공지능 모델은 각 배치마다 입력 데이터를 받아 출력을 계산하고, 이 출력과 정답 데이터 간의 차이를 계산하여 손실(loss)를 구합니다. 손실은 모델의 성능을 나타내는 지표이며, 이 손실을 최소화하는 방향으로 가중치와 편향을 업데이트 합니다.

따라서, 각 배치마다 모델은 손실을 계산하고, 이 손실을 최소화하기 위해 가중치와 편향을 업데이트합니다. 이 과정을 반복하면서 모델은 최적의 가중치와 편향을 찾아내고, 높은 정확도를 가진 예측 결과를 출력할 수 있게 됩니다.

추가로 모델은 전체 학습 데이터셋을 한 번 처리한 후(에폭마다) 모든 배치의 손실을 평균하여 전체 손실을 게산합니다. 이렇게 계산된 전체 손실을 최소화하기 위해 가중치를 업데이트합니다.

에폭마다 가중치를 업데이트하는 이유는 모델이 학습 데이터셋을 더 많이 보고 가중치를 더 많이 업데이트할 수 있기 때문입니다. 일반적으로 에폭을 늘릴수록 모델의 성능이 향상되지만, 너무 많은 에폭을 설정하면 과적합(Overfitting)이 될 가능성이 있으므로 적절한 에폭 값을 설정하는 중요합니다.

요약

배치사이즈 : 전체 데이터셋을 쪼갠, 모델이 한 번에 처리하는 데이터 샘플의 개수.
에폭 : 전체 학습 데이터셋을 모델이 한 번 학습한 것.
배치사이즈와 에폭마다 모델의 가중치와 편향이 업데이트 된다.

profile
Live life with no regrets

0개의 댓글