용어집

유효성 검사 데이터

검증 데이터로 머신러닝 모델을 최적화하여 과적합을 방지하고, 하이퍼파라미터를 조정하며, 강력한 실제 성능을 보장합니다.

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

자세히 알아보기

검증 데이터는 머신러닝(ML) 개발 주기에서 중요한 구성 요소입니다. 이는 모델을 맞추는 데 사용되는 학습 데이터 및 최종 평가에 사용되는 테스트 데이터와는 별개의 원본 데이터 세트의 하위 집합입니다. 검증 데이터의 주요 목적은 모델 하이퍼파라미터를 조정하고 모델 아키텍처에 대한 결정을 내리는 동안 학습 데이터 세트에 대한 모델 적합도에 대한 편견 없는 평가를 제공하는 것입니다. 이 프로세스는 보이지 않는 데이터에 대한 최종 성능을 평가하기 전에 최상의 모델 구성을 선택하는 데 도움이 됩니다.

유효성 검사 데이터의 역할

모델 학습 과정에서 머신러닝 모델은 학습 데이터에서 패턴을 학습합니다. 그러나 이 데이터만으로 모델을 평가하면 모델이 단순히 훈련 예제를 암기할 수 있기 때문에 과적합이라고 알려진 현상이 발생할 수 있습니다. 검증 데이터는 체크포인트 역할을 합니다. 개발자는 훈련 중에 주기적으로 이 별도의 세트에 대한 모델의 성능을 평가함으로써 다음과 같이 할 수 있습니다:

  1. 하이퍼파라미터 조정: 유효성 검사 세트에서 계산된 성능 지표(정확도, mAP)를 기반으로 학습 속도, 배치 크기 또는 모델 복잡도와 같은 설정을 조정합니다. 이 작업은 하이퍼파라미터 튜닝 가이드에 설명된 기술을 사용하여 수행되는 경우가 많습니다.
  2. 모델을 선택합니다: 검증 성능을 기반으로 다양한 모델 아키텍처 또는 버전을 비교합니다(예: Ultralytics YOLOv8 YOLOv10 비교).
  3. 과적합 방지: 유효성 검사 지표를 모니터링하여 훈련 성능이 향상되더라도 유효성 검사 세트에서 모델의 성능이 나빠지기 시작하여 과적합을 나타내는 시점을 감지합니다. 조기 중지와 같은 기술은 유효성 검사 성능에 의존합니다.

검증 데이터와 훈련 및 테스트 데이터 비교

강력한 모델 개발을 위해서는 학습, 검증, 테스트 데이터 세트의 차이점을 이해하는 것이 기본입니다:

  • 학습 데이터: 학습 알고리즘이 패턴을 학습하고 모델 가중치를 조정하는 데 직접 사용하는 데이터 세트의 가장 큰 부분입니다. 모델은 학습 루프(에포크) 동안 이 데이터를 자주 '보게' 됩니다.
  • 검증 데이터: 학습 중에 간접적으로 사용되는 작은 부분입니다. 모델이 이 데이터에서 직접 학습하지는 않지만, 이 세트의 성능은 하이퍼파라미터와 모델 구조에 대한 결정을 안내합니다. 개발 단계에서 모델이 새로운 데이터에 얼마나 잘 일반화할 수 있는지에 대한 피드백을 제공합니다.
  • 테스트 데이터: 학습 또는 검증 중에 모델이 본 적이 없는 완전히 별도의 데이터 부분입니다. 모든 학습 및 튜닝이 완료된 후 한 번만 사용하여 보이지 않는 실제 데이터에 대한 모델의 일반화 능력에 대한 편향되지 않은 최종 추정치를 제공합니다.

데이터 세트 버전 관리 및 관리를 위해 Ultralytics HUB와 같은 도구를 사용하여 관리되는 적절한 분리는 테스트 세트의 정보가 훈련 또는 모델 선택 프로세스로 '누수'되어 지나치게 낙관적인 성능 추정치를 초래하는 것을 방지합니다.

하이퍼파라미터 튜닝 및 모델 선택

검증 데이터는 하이퍼파라미터 튜닝에 없어서는 안 될 필수 요소입니다. 하이퍼파라미터는 학습 프로세스가 시작되기 전에 설정하는 모델 자체 외부의 구성 설정입니다. 예를 들어 학습 속도, 신경망의 레이어 수 또는 사용되는 최적화 알고리즘 유형 등이 있습니다. 개발자는 서로 다른 하이퍼파라미터 조합으로 여러 모델 버전을 학습시키고, 검증 세트에서 각각을 평가한 후 가장 좋은 성능을 내는 조합을 선택합니다. 이러한 체계적인 검색은 그리드 검색 또는 베이지안 최적화와 같은 방법을 사용하여 자동화할 수 있으며, 종종 MLOps 도구와 통합된 플랫폼에서 이를 용이하게 합니다.

실제 사례

  1. 컴퓨터 비전 객체 감지: 훈련 시 Ultralytics YOLO 모델을 훈련할 때(예: VisDrone 데이터 세트 사용), 레이블이 지정된 이미지의 일부가 유효성 검사 데이터로 따로 설정됩니다. 학습 중에 각 에포크마다 이 검증 세트에 대해 모델의 평균 정밀도(mAP) 가 계산됩니다. 이 검증 mAP는 테스트 세트에 대한 최종 성능 점검 전에 학습을 중단할 시기(조기 중단) 또는 가장 효과적인 데이터 증강 기법 세트를 결정하는 데 도움이 됩니다. 효과적인 모델 평가 전략은 이 분할에 크게 의존합니다.
  2. 자연어 처리 텍스트 분류: 고객 리뷰를 긍정 또는 부정으로 분류하는 모델을 개발할 때(감성 분석), 검증 세트는 최적의 아키텍처(예: LSTMTransformer)를 선택하거나 탈락률과 같은 하이퍼파라미터를 조정하는 데 사용됩니다. 검증 세트에서 가장 높은 F1 점수 또는 정확도를 달성한 모델이 최종 테스트를 위해 선택됩니다. 다음과 같은 리소스 Hugging Face 와 같은 리소스는 이러한 목적을 위해 미리 분할된 데이터 세트를 제공하는 경우가 많습니다.

교차 유효성 검사

사용 가능한 데이터의 양이 제한되어 있는 경우 교차 검증 (특히 K-Fold 교차 검증)이라는 기법을 사용하는 경우가 많습니다. 여기서 학습 데이터는 'K'개의 하위 집합(폴드)으로 나뉩니다. 모델은 매번 K-1개의 폴드를 훈련에 사용하고 나머지 폴드를 유효성 검사 집합으로 사용하여 K번 훈련됩니다. 그런 다음 모든 K회 실행에 대한 성능의 평균을 구합니다. 이렇게 하면 모델 성능을 더 강력하게 추정할 수 있으며, Ultralytics K-Fold 교차 검증 가이드에 설명된 대로 제한된 데이터를 더 잘 활용할 수 있습니다.

요약하자면, 검증 데이터는 신뢰할 수 있고 성능이 뛰어난 인공지능(AI) 모델을 구축하는 데 있어 초석입니다. 이를 통해 효과적인 하이퍼파라미터 튜닝, 모델 선택, 과적합 방지를 가능하게 하여 모델이 학습된 데이터 이상으로 일반화되도록 보장합니다.

모두 보기