용어집

Epoch

Ultralytics YOLO 에서 머신 러닝의 획기적인 발전이 모델 학습에 미치는 영향, 과적합 방지, 성능 최적화에 대해 알아보세요.

YOLO 모델을 Ultralytics HUB로 간단히
훈련

자세히 알아보기

머신러닝(ML), 특히 딥러닝(DL) 모델 학습에서 에포크는 전체 학습 데이터세트를 한 번 완전히 통과하는 것을 의미합니다. 이는 모델이 모든 학습 예제를 한 번 보고 학습하는 전체 주기를 의미하는 기본 개념입니다. 훈련에는 일반적으로 여러 개의 에포크가 포함되며, 이를 통해 모델은 내부 파라미터(모델 가중치)를 반복적으로 개선하고 훈련 중인 작업에 대한 성능을 향상시킬 수 있습니다.

에포크 작동 방식

모델 학습 중에는 일반적으로 메모리 제약으로 인해 데이터 세트가 너무 커서 한 번에 모두 처리할 수 없습니다. 따라서 배치라고 하는 작은 덩어리로 나눕니다. 모델은 한 번에 하나의 배치를 처리하고, 오차(손실)를 계산하고, 경사 하강과 같은 최적화 알고리즘을 사용하여 가중치를 업데이트합니다. 모델이 전체 학습 데이터 집합을 포함하는 모든 배치를 처리한 후에야 에포크가 완료됩니다. 이 과정을 여러 에포크에 걸쳐 반복하면 모델이 데이터 내의 복잡한 패턴과 관계를 더 효과적으로 학습할 수 있습니다.

에포크 대 반복 대 배치 크기

시대를 관련 용어와 구분하는 것이 중요합니다:

  • Epoch: 전체 훈련 데이터 세트에 대한 전체 주기.
  • 배치 크기: 모델의 가중치가 업데이트되기 전에 처리되는 학습 샘플의 수입니다.
  • 반복: 모델의 가중치를 한 번 업데이트합니다. 반복에는 하나의 데이터 배치를 처리하는 작업이 포함됩니다.

훈련 데이터 세트에 10,000개의 샘플이 있고 배치 크기가 100인 경우, 하나의 에포크는 100번의 반복(10,000개의 샘플/배치당 100개의 샘플)으로 구성됩니다.

교육에서 에포크의 중요성

여러 시대에 걸쳐 모델을 학습시키는 것은 수렴을 위해 매우 중요하며, 이는 모델이 최적 또는 최적에 가까운 안정적인 상태에 도달하는 것을 의미합니다. 각 에포크는 모델에 데이터 패턴을 학습할 수 있는 또 다른 기회를 제공합니다. 그러나 에포크의 수는 중요한 하이퍼파라미터입니다.

  • 너무 적은 에포크: 모델이 충분히 학습하지 못하여 학습 데이터에서도 제대로 작동하지 않는 과소적합이 발생할 수 있습니다.
  • 너무 많은 에포크: 모델이 노이즈 및 특정 세부 사항을 포함하여 학습 데이터를 너무 잘 학습하여 과적합으로 이어질 수 있습니다. 과적합 모델은 학습 데이터에서는 잘 작동하지만 보이지 않는 데이터(검증 데이터 또는 실제 사례)에서는 제대로 작동하지 않습니다.

훈련 중 별도의 검증 세트에서 성능 지표를 모니터링하면 최적의 에포크 수를 결정하는 데 도움이 되며, 검증 성능이 개선되지 않을 때 훈련을 중단하는 조기 중단과 같은 기술을 사용하는 경우가 많습니다.

실제 사례

  1. Ultralytics YOLO 사용한객체 감지: 교육 시 Ultralytics YOLO 모델과 같은 YOLOv8 또는 YOLO11와 같은 데이터 세트에서 100개의 에포크에 대한 학습을 지정할 수 있습니다. 각 에포크에서 모델은 전체 COCO 훈련 이미지 세트(배치로 나눈)를 처리하여 가중치를 조정하여 객체를 더 잘 식별하고 위치를 찾습니다. Ultralytics HUB와 같은 플랫폼은 이 훈련 프로세스를 관리하고 여러 에포크에 걸쳐 진행 상황을 모니터링할 수 있는 도구를 제공합니다.
  2. 자연어 처리(NLP): 고객 리뷰 데이터 세트에 대한 감정 분석을 위해 BERT와 같은 모델을 훈련하는 데는 여러 번의 에포크가 필요합니다. 예를 들어, 5개의 에포크에 대한 훈련은 모델이 모든 리뷰를 5번 읽는 것을 의미합니다. 각 패스(에포크)마다 다음과 같은 프레임워크를 통해 Hugging Face 트랜스포머와 같은 라이브러리를 사용하는 경우가 많습니다. PyTorch 또는 TensorFlow와 같은 프레임워크를 사용하면 모델은 리뷰를 긍정, 부정 또는 중립으로 분류하는 능력이 향상됩니다.

에포크는 ML에서 반복 학습의 초석으로, 데이터에 대한 충분한 노출의 필요성과 과적합의 위험 사이에서 균형을 유지합니다. 신중한 실험과 모니터링을 통해 적절한 에포크 수를 선택하는 것이 효과적인 모델을 구축하는 데 핵심입니다. 더 자세한 정의는 Google 머신러닝 용어집과 같은 리소스에서 확인할 수 있습니다.

모두 보기