Ultralytics YOLO 에서 머신 러닝의 획기적인 발전이 모델 학습에 미치는 영향, 과적합 방지, 성능 최적화에 대해 알아보세요.
머신러닝(ML), 특히 딥러닝(DL) 모델 학습에서 에포크는 전체 학습 데이터세트를 한 번 완전히 통과하는 것을 의미합니다. 이는 모델이 모든 학습 예제를 한 번 보고 학습하는 전체 주기를 의미하는 기본 개념입니다. 훈련에는 일반적으로 여러 개의 에포크가 포함되며, 이를 통해 모델은 내부 파라미터(모델 가중치)를 반복적으로 개선하고 훈련 중인 작업에 대한 성능을 향상시킬 수 있습니다.
모델 학습 중에는 일반적으로 메모리 제약으로 인해 데이터 세트가 너무 커서 한 번에 모두 처리할 수 없습니다. 따라서 배치라고 하는 작은 덩어리로 나눕니다. 모델은 한 번에 하나의 배치를 처리하고, 오차(손실)를 계산하고, 경사 하강과 같은 최적화 알고리즘을 사용하여 가중치를 업데이트합니다. 모델이 전체 학습 데이터 집합을 포함하는 모든 배치를 처리한 후에야 에포크가 완료됩니다. 이 과정을 여러 에포크에 걸쳐 반복하면 모델이 데이터 내의 복잡한 패턴과 관계를 더 효과적으로 학습할 수 있습니다.
시대를 관련 용어와 구분하는 것이 중요합니다:
훈련 데이터 세트에 10,000개의 샘플이 있고 배치 크기가 100인 경우, 하나의 에포크는 100번의 반복(10,000개의 샘플/배치당 100개의 샘플)으로 구성됩니다.
여러 시대에 걸쳐 모델을 학습시키는 것은 수렴을 위해 매우 중요하며, 이는 모델이 최적 또는 최적에 가까운 안정적인 상태에 도달하는 것을 의미합니다. 각 에포크는 모델에 데이터 패턴을 학습할 수 있는 또 다른 기회를 제공합니다. 그러나 에포크의 수는 중요한 하이퍼파라미터입니다.
훈련 중 별도의 검증 세트에서 성능 지표를 모니터링하면 최적의 에포크 수를 결정하는 데 도움이 되며, 검증 성능이 개선되지 않을 때 훈련을 중단하는 조기 중단과 같은 기술을 사용하는 경우가 많습니다.
에포크는 ML에서 반복 학습의 초석으로, 데이터에 대한 충분한 노출의 필요성과 과적합의 위험 사이에서 균형을 유지합니다. 신중한 실험과 모니터링을 통해 적절한 에포크 수를 선택하는 것이 효과적인 모델을 구축하는 데 핵심입니다. 더 자세한 정의는 Google 머신러닝 용어집과 같은 리소스에서 확인할 수 있습니다.