용어집

유효성 검사 데이터

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

검증 데이터는 모델의 하이퍼파라미터를 조정하는 동안 모델의 적합성을 편견 없이 평가하는 데 사용되는 훈련 프로세스에서 보류된 데이터 샘플입니다. 검증 세트의 주요 역할은 머신 러닝(ML) 모델의 성능을 자주, 독립적으로 평가하여 모델 개발을 안내하는 것입니다. 이 피드백 루프는 강력한 인공 지능(AI) 시스템을 만드는 데 있어 핵심적인 개념인, 기존에 본 데이터에서 잘 작동할 뿐만 아니라 새로운 데이터에 효과적으로 일반화할 수 있는 모델을 구축하는 데 필수적입니다.

유효성 검사 데이터의 역할

검증 데이터의 주요 목적은 과적합을 방지하는 것입니다. 과적합은 모델이 학습 데이터를 너무 잘 학습하여 새로운 데이터에 적용되지 않는 노이즈와 세부 사항을 포착하여 성능을 저하시킬 때 발생합니다. 개발자는 정기적으로(예: 각 에포크 이후) 유효성 검사 세트에 대해 모델을 테스트함으로써 일반화 오류를 모니터링할 수 있습니다. 학습 데이터의 성능이 계속 향상되는 반면 검증 데이터의 성능이 정체되거나 저하된다면 이는 과적합의 명백한 신호입니다.

이 평가 프로세스는 하이퍼파라미터 튜닝에 매우 중요합니다. 하이퍼파라미터는 데이터에서 학습되지 않는 학습 속도나 배치 크기와 같은 모델 외부의 구성 설정입니다. 검증 세트를 사용하면 다양한 하이퍼파라미터 조합을 실험하여 최상의 성능을 내는 세트를 찾을 수 있습니다. 이 반복적인 프로세스는 모델 선택 및 최적화의 핵심 부분입니다.

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

일반적인 ML 프로젝트에서 데이터 세트는 세 개의 하위 집합으로 나뉘며, 각각의 역할을 이해하는 것은 기본입니다. 데이터 분할에 대한 일반적인 접근 방식은 학습에 70%, 검증에 15%, 테스트에 15%를 할당하는 것입니다.

  • 학습 데이터: 데이터의 가장 큰 부분으로, 모델을 학습시키는 데 사용됩니다. 모델은 내부 모델 가중치를 조정하여 이 데이터 세트에서 패턴, 특징 및 관계를 반복적으로 학습합니다.
  • 검증 데이터: 이 별도의 하위 집합은 훈련 과정에서 편향되지 않은 평가를 제공하는 데 사용됩니다. 이는 하이퍼파라미터를 조정하고 과적합을 방지하기 위해 조기 중지를 구현할 시기와 같은 주요 결정을 내리는 데 도움이 됩니다. Ultralytics 에코시스템에서 이 평가는 검증 모드에서 처리됩니다.
  • 테스트 데이터: 이 데이터 세트는 모델이 완전히 학습되고 튜닝될 때까지 보관됩니다. 모델 성능에 대한 편견 없는 최종 평가를 제공하기 위해 한 번만 사용됩니다. 테스트 세트의 성능은 실제 배포 시나리오에서 모델이 어떻게 작동할 것으로 예상되는지를 나타냅니다.

특히 검증 세트와 테스트 세트를 엄격하게 분리하는 것은 모델의 기능을 정확하게 평가하고 편향성-편차 트레이드오프를 피하는 데 매우 중요합니다.

실제 사례

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

교차 유효성 검사

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

요약하자면, 유효성 검사 데이터는 PyTorchTensorFlow와 같은 프레임워크로 신뢰할 수 있는 고성능 AI 모델을 구축하는 데 있어 초석입니다. 이를 통해 효과적인 하이퍼파라미터 조정, 모델 선택, 과적합 방지를 가능하게 하여 모델이 학습된 데이터 이상으로 일반화되도록 보장합니다. 이러한 데이터 세트를 효과적으로 관리하기 위한 통합 도구를 제공하는 플랫폼이 바로 Ultralytics HUB입니다.

울트라 애널리틱스 커뮤니티 가입

AI의 미래와 함께하세요. 글로벌 혁신가들과 연결, 협업, 성장하기

지금 가입하기
링크가 클립보드에 복사됨