콘텐츠로 건너뛰기

모델 테스트 가이드

소개

모델을 훈련하고 평가했다면 이제 테스트할 차례입니다. 모델 테스트에는 실제 시나리오에서 모델이 얼마나 잘 작동하는지 평가하는 작업이 포함됩니다. 테스트에서는 정확성, 신뢰성, 공정성, 모델의 결정을 얼마나 쉽게 이해할 수 있는지와 같은 요소를 고려합니다. 목표는 모델이 의도한 대로 작동하고 예상한 결과를 제공하며 애플리케이션이나 프로젝트의 전반적인 목표에 부합하는지 확인하는 것입니다.

Model testing is quite similar to model evaluation, but they are two distinct steps in a computer vision project. Model evaluation involves metrics and plots to assess the model's accuracy. On the other hand, model testing checks if the model's learned behavior is the same as expectations. In this guide, we'll explore strategies for testing your computer vision models.

모델 테스트 대. 모델 평가

먼저 모델 평가와 테스트의 차이점을 예시를 통해 이해해 보겠습니다.

Suppose you have trained a computer vision model to recognize cats and dogs, and you want to deploy this model at a pet store to monitor the animals. During the model evaluation phase, you use a labeled dataset to calculate metrics like accuracy, precision, recall, and F1 score. For instance, the model might have an accuracy of 98% in distinguishing between cats and dogs in a given dataset.

평가 후에는 애완동물 가게의 이미지를 사용하여 모델을 테스트하여 보다 다양하고 실제적인 조건에서 고양이와 개를 얼마나 잘 식별하는지 확인합니다. 고양이와 개가 움직이거나, 조명 조건이 다르거나, 장난감이나 가구와 같은 물체에 부분적으로 가려져 있을 때 정확하게 라벨을 지정할 수 있는지 확인합니다. 모델 테스트는 모델이 통제된 평가 환경 밖에서 예상대로 작동하는지 확인합니다.

모델 테스트 준비

Computer vision models learn from datasets by detecting patterns, making predictions, and evaluating their performance. These datasets are usually divided into training and testing sets to simulate real-world conditions. Training data teaches the model while testing data verifies its accuracy.

모델을 테스트하기 전에 염두에 두어야 할 두 가지 사항은 다음과 같습니다:

  • 사실적인 표현: 이전에 볼 수 없었던 테스트 데이터는 모델이 배포될 때 처리해야 하는 데이터와 유사해야 합니다. 이를 통해 모델의 기능을 현실적으로 이해하는 데 도움이 됩니다.
  • 충분한 크기: 테스트 데이터 세트의 크기는 모델이 얼마나 잘 작동하는지에 대한 신뢰할 수 있는 인사이트를 제공할 수 있을 만큼 충분히 커야 합니다.

컴퓨터 비전 모델 테스트

컴퓨터 비전 모델을 테스트하고 성능을 이해하기 위해 수행해야 할 주요 단계는 다음과 같습니다.

  • 예측을 실행합니다: 모델을 사용하여 테스트 데이터 세트에 대한 예측을 수행합니다.
  • 예측 비교: 모델의 예측이 실제 레이블(실측값)과 얼마나 잘 일치하는지 확인합니다.
  • 성능 지표를 계산합니다: 정확도, 정밀도, 리콜, F1 점수와 같은 지표를 계산하여 모델의 강점과 약점을 파악합니다. 테스트는 이러한 지표가 실제 성능을 어떻게 반영하는지에 중점을 둡니다.
  • 결과 시각화: 혼동 행렬 및 ROC 곡선과 같은 시각적 보조 자료를 생성하세요. 이를 통해 실제 애플리케이션에서 모델이 제대로 작동하지 않을 수 있는 특정 영역을 파악할 수 있습니다.

다음으로 테스트 결과를 분석할 수 있습니다:

  • 잘못 분류된 이미지: 모델이 잘못 분류한 이미지를 식별하고 검토하여 어디가 잘못되었는지 파악합니다.
  • 오류 분석: 철저한 오류 분석을 수행하여 오류 유형(예: 오탐 대 오탐)과 잠재적 원인을 파악합니다.
  • 편향성 및 공정성: 모델의 예측에 편향성이 있는지 확인합니다. 특히 인종, 성별 또는 나이와 같은 민감한 속성이 포함된 경우 모델이 데이터의 여러 하위 집합에서 동일하게 잘 작동하는지 확인합니다.

Testing Your YOLO11 Model

To test your YOLO11 model, you can use the validation mode. It's a straightforward way to understand the model's strengths and areas that need improvement. Also, you'll need to format your test dataset correctly for YOLO11. For more details on how to use the validation mode, check out the Model Validation docs page.

Using YOLO11 to Predict on Multiple Test Images

If you want to test your trained YOLO11 model on multiple images stored in a folder, you can easily do so in one go. Instead of using the validation mode, which is typically used to evaluate model performance on a validation set and provide detailed metrics, you might just want to see predictions on all images in your test set. For this, you can use the prediction mode.

유효성 검사 모드와 예측 모드의 차이점

  • 유효성 검사 모드: 알려진 레이블(기준값)과 예측을 비교하여 모델의 성능을 평가하는 데 사용됩니다. 정확도, 정밀도, 리콜 및 F1 점수와 같은 세부 지표를 제공합니다.
  • 예측 모드: 보이지 않는 새로운 데이터에 대해 모델을 실행하여 예측을 생성하는 데 사용됩니다. 자세한 성능 메트릭은 제공하지 않지만 실제 이미지에서 모델이 어떻게 작동하는지 확인할 수 있습니다.

Running YOLO11 Predictions Without Custom Training

If you are interested in testing the basic YOLO11 model to understand whether it can be used for your application without custom training, you can use the prediction mode. While the model is pre-trained on datasets like COCO, running predictions on your own dataset can give you a quick sense of how well it might perform in your specific context.

Overfitting and Underfitting in Machine Learning

특히 컴퓨터 비전에서 머신러닝 모델을 테스트할 때는 과적합과 과소적합을 주의해야 합니다. 이러한 문제는 모델이 새로운 데이터로 얼마나 잘 작동하는지에 큰 영향을 미칠 수 있습니다.

오버피팅

과적합은 모델이 새로운 데이터에 일반화되지 않는 노이즈와 세부 사항을 포함하여 훈련 데이터를 너무 잘 학습할 때 발생합니다. 컴퓨터 비전에서 이는 모델이 훈련 이미지에서는 잘 작동하지만 새로운 이미지에서는 어려움을 겪을 수 있음을 의미합니다.

과적합의 징후

  • High Training Accuracy, Low Validation Accuracy: If your model performs very well on training data but poorly on validation or test data, it's likely overfitting.
  • 시각적 검사: 모델이 이미지의 사소한 변경 사항이나 관련 없는 세부 사항에 너무 민감하게 반응하는 경우 과적합을 볼 수 있습니다.

언더피팅

과소적합은 모델이 데이터의 기본 패턴을 포착하지 못할 때 발생합니다. 컴퓨터 비전에서 과소적합 모델은 학습 이미지에서 물체를 올바르게 인식하지 못할 수도 있습니다.

미흡한 피팅의 징후

  • 낮은 훈련 정확도: 모델이 훈련 세트에서 높은 정확도를 달성하지 못하면 적합성이 떨어지는 것일 수 있습니다.
  • 시각적 오분류: 명백한 특징이나 물체를 지속적으로 인식하지 못하는 경우 피팅이 잘못되었음을 의미합니다.

오버피팅과 언더피팅의 균형 맞추기

핵심은 과적합과 과소적합 사이의 균형을 찾는 것입니다. 이상적으로 모델은 학습 및 검증 데이터 세트 모두에서 우수한 성능을 보여야 합니다. 메트릭과 시각적 검사를 통해 모델의 성능을 정기적으로 모니터링하고 올바른 전략을 적용하면 최상의 결과를 얻을 수 있습니다.

오버피팅 및 언더피팅 개요

컴퓨터 비전에서의 데이터 유출과 이를 방지하는 방법

모델을 테스트할 때 염두에 두어야 할 중요한 사항은 데이터 유출입니다. 데이터 유출은 학습 데이터 세트 외부의 정보가 실수로 모델 학습에 사용될 때 발생합니다. 훈련 중에는 모델이 매우 정확해 보일 수 있지만, 데이터 유출이 발생하면 보이지 않는 새로운 데이터에 대해서는 제대로 작동하지 않습니다.

데이터 유출이 발생하는 이유

데이터 유출은 발견하기 까다로울 수 있으며, 종종 학습 데이터에 숨겨진 편향으로 인해 발생합니다. 다음은 컴퓨터 비전에서 발생할 수 있는 몇 가지 일반적인 방법입니다:

  • 카메라 편향: 다양한 각도, 조명, 그림자, 카메라 움직임으로 인해 원치 않는 패턴이 발생할 수 있습니다.
  • 오버레이 편향: 이미지의 로고, 타임스탬프 또는 기타 오버레이는 모델을 오도할 수 있습니다.
  • 글꼴 및 개체 편향: 특정 수업에 자주 등장하는 특정 글꼴이나 개체는 모델의 학습을 왜곡할 수 있습니다.
  • Spatial Bias: Imbalances in foreground-background, bounding box distributions, and object locations can affect training.
  • 레이블 및 도메인 편향: 잘못된 레이블이나 데이터 유형의 변경은 유출로 이어질 수 있습니다.

데이터 유출 탐지

데이터 유출을 찾으려면 다음과 같이 하세요:

  • 성능을 확인합니다: 모델의 결과가 의외로 좋다면 누수가 있을 수 있습니다.
  • 기능 중요도를 살펴보세요: 한 기능이 다른 기능보다 훨씬 더 중요하면 유출을 의미할 수 있습니다.
  • 시각적 검사: 모델의 결정이 직관적으로 이해되는지 다시 한 번 확인합니다.
  • 데이터 분리 확인: 처리하기 전에 데이터가 올바르게 분리되었는지 확인하세요.

데이터 유출 방지

데이터 유출을 방지하려면 다양한 카메라와 환경에서 촬영한 이미지 또는 동영상으로 구성된 다양한 데이터 세트를 사용하세요. 데이터를 주의 깊게 검토하고 특정 시간대에 모든 양성 샘플이 촬영되는 등 숨겨진 편향이 없는지 확인합니다. 데이터 유출을 방지하면 실제 상황에서 컴퓨터 비전 모델을 더 안정적이고 효과적으로 만드는 데 도움이 됩니다.

모델 테스트 후 다음 단계

모델을 테스트한 후 다음 단계는 결과에 따라 달라집니다. 모델이 잘 작동하면 실제 환경에 배포할 수 있습니다. 결과가 만족스럽지 않다면 개선해야 합니다. 여기에는 오류 분석, 더 많은 데이터 수집, 데이터 품질 개선, 하이퍼파라미터 조정, 모델 재학습 등이 포함될 수 있습니다.

AI 대화에 참여하기

컴퓨터 비전 애호가 커뮤니티의 일원이 되면 문제를 해결하고 더 효율적으로 학습하는 데 도움이 될 수 있습니다. 다음은 서로 연결하고 도움을 구하며 생각을 공유하는 몇 가지 방법입니다.

커뮤니티 리소스

  • GitHub Issues: Explore the YOLO11 GitHub repository and use the Issues tab to ask questions, report bugs, and suggest new features. The community and maintainers are very active and ready to help.
  • Ultralytics 디스코드 서버: Ultralytics Discord 서버에 가입하여 다른 사용자 및 개발자와 채팅하고, 지원을 받고, 경험을 공유하세요.

공식 문서

  • Ultralytics YOLO11 Documentation: Check out the official YOLO11 documentation for detailed guides and helpful tips on various computer vision projects.

이러한 리소스를 통해 컴퓨터 비전 커뮤니티의 최신 트렌드와 사례에 대한 최신 정보를 얻고 문제를 해결하는 데 도움이 됩니다.

요약

Building trustworthy computer vision models relies on rigorous model testing. By testing the model with previously unseen data, we can analyze it and spot weaknesses like overfitting and data leakage. Addressing these issues before deployment helps the model perform well in real-world applications. It's important to remember that model testing is just as crucial as model evaluation in guaranteeing the model's long-term success and effectiveness.

자주 묻는 질문

컴퓨터 비전에서 모델 평가와 모델 테스트의 주요 차이점은 무엇인가요?

Model evaluation and model testing are distinct steps in a computer vision project. Model evaluation involves using a labeled dataset to compute metrics such as accuracy, precision, recall, and F1 score, providing insights into the model's performance with a controlled dataset. Model testing, on the other hand, assesses the model's performance in real-world scenarios by applying it to new, unseen data, ensuring the model's learned behavior aligns with expectations outside the evaluation environment. For a detailed guide, refer to the steps in a computer vision project.

How can I test my Ultralytics YOLO11 model on multiple images?

To test your Ultralytics YOLO11 model on multiple images, you can use the prediction mode. This mode allows you to run the model on new, unseen data to generate predictions without providing detailed metrics. This is ideal for real-world performance testing on larger image sets stored in a folder. For evaluating performance metrics, use the validation mode instead.

컴퓨터 비전 모델이 과적합 또는 과소적합의 징후를 보이면 어떻게 해야 하나요?

과적합 문제를 해결합니다:

  • Regularization techniques like dropout.
  • 학습 데이터 세트의 크기를 늘립니다.
  • 모델 아키텍처를 단순화합니다.

피팅 부족 문제를 해결합니다:

  • 더 복잡한 모델을 사용하세요.
  • 더 많은 관련 기능을 제공하세요.
  • Increase training iterations or epochs.

잘못 분류된 이미지를 검토하고, 철저한 오류 분석을 수행하며, 정기적으로 성능 지표를 추적하여 균형을 유지하세요. 이러한 개념에 대한 자세한 내용은 오버피팅 및 언더피팅 섹션을 참조하세요.

컴퓨터 비전에서 데이터 유출을 감지하고 방지하려면 어떻게 해야 하나요?

데이터 유출을 감지합니다:

  • 테스트 성능이 비정상적으로 높지 않은지 확인합니다.
  • 기능 중요도를 확인하여 예상치 못한 인사이트를 확인하세요.
  • 모델 결정을 직관적으로 검토하세요.
  • 처리하기 전에 올바른 데이터 분할을 확인합니다.

데이터 유출을 방지하기 위해:

  • 다양한 환경에서 다양한 데이터 세트를 사용하세요.
  • 숨겨진 편견이 있는지 데이터를 주의 깊게 검토하세요.
  • 트레이닝 세트와 테스트 세트 간에 정보가 겹치지 않도록 합니다.

데이터 유출 방지에 대한 자세한 전략은 컴퓨터 비전에서의 데이터 유출에 대한 섹션을 참조하세요.

컴퓨터 비전 모델을 테스트한 후 어떤 단계를 수행해야 하나요?

테스트 후 모델 성능이 프로젝트 목표를 충족하면 배포를 진행합니다. 결과가 만족스럽지 않은 경우 고려하세요:

모델 테스트 대 모델 평가 섹션에서 인사이트를 얻으세요. 모델 평가 섹션에서 실제 애플리케이션에서 모델 효과를 개선하고 향상할 수 있는 인사이트를 얻으세요.

How do I run YOLO11 predictions without custom training?

You can run predictions using the pre-trained YOLO11 model on your dataset to see if it suits your application needs. Utilize the prediction mode to get a quick sense of performance results without diving into custom training.

📅 Created 3 months ago ✏️ Updated 22 days ago

댓글