Yolo 비전 선전
선전
지금 참여하기
용어집

Underfitting (과소적합)

머신러닝에서 과소적합을 식별하고 해결하는 방법을 알아보세요. 원인과 지표, 그리고 더 나은 정확도를 위해 Ultralytics 모델을 최적화하는 방법을 탐구해 보십시오.

언더피팅은 머신러닝 모델이 지나치게 단순하거나 훈련 데이터 내의 근본적인 추세와 패턴을 포착할 능력이 부족할 때 발생합니다. 개념적으로 이는 뚜렷한 곡선을 이루는 데이터 포인트에 직선을 맞추려는 시도와 유사합니다. 모델은 입력과 출력 간의 관계 복잡성을 파악하지 못합니다. 모델이 데이터를 효과적으로 학습하지 못했기 때문에 훈련 세트뿐만 아니라 미확인 검증 데이터에서도 열악한 성능을 보이며 낮은 예측 정확도로 이어집니다. 이 현상은 종종 AI의 높은 편향성 결과로 발생하는데, 알고리즘이 목표 함수에 대해 지나치게 단순화된 가정들을 하기 때문입니다.

원인과 지표

모델이 과소적합되는 데는 여러 요인이 있습니다. 가장 흔한 원인은 주어진 작업에 비해 충분히 복잡하지 않은 모델 구조를 사용하는 것입니다. 예를 들어 비선형 데이터에 선형 회귀를 적용하는 경우입니다. 훈련 기간이 불충분한 경우, 즉 모델이 수렴할 만큼 충분한 에포크를 부여받지 못하면 적절한 학습이 이루어지지 않습니다. 또한 정규화(일반적으로 반대 문제를 방지하기 위해 사용되는 기법)가 과도하면 모델을 지나치게 제약하여 중요한 특징을 포착하지 못하게 할 수 있습니다.

엔지니어는 훈련 중 손실 함수를 모니터링하여 언더피팅을 식별할 수 있습니다. 훈련 오류와 검증 오류가 모두 높게 유지되고 현저히 감소하지 않는다면, 모델은 언더피팅 상태일 가능성이 높습니다. 모델이 데이터를 이해하도록 도움주는 효과적인 특징 공학과는 대조적으로, 특징을 너무 적게 제공하면 모델이 필요한 정보를 충분히 얻지 못하게 할 수도 있습니다.

과소 피팅 대 과잉 피팅

언더피팅과 그 반대 개념인 오버피팅을 구분하는 것이 매우 중요하다. 이 두 개념은 바이어스-분산 상충관계의 양극단을 나타낸다.

  • 언더피팅(고편향): 모델이 지나치게 경직되어 있습니다. 기본적인 신호를 학습하지 못했기 때문에 훈련 데이터와 테스트 데이터 모두에서 성능이 저조합니다.
  • 과적합(고분산): 모델이 지나치게 유연합니다. 잡음을 포함한 훈련 데이터를 암기하여 훈련 과정에서는 탁월한 성능을 보이지만, 새로운 예시에 대한 일반화에는 실패합니다.

이 두 극단 사이의 "최적점"을 찾는 것이 모델 최적화의 주요 목표이다.

실제 애플리케이션

다양한 산업 분야에서 신뢰할 수 있는 AI 시스템을 개발하기 위해서는 언더피팅을 이해하는 것이 매우 중요하다.

  • 자율주행: 자율주행 차량의 맥락에서, 과소적합된 물체 감지 모델은 복잡한 도시 환경에서 보행자와 가로등을 구분하지 못할 수 있습니다. 모델이 미묘한 시각적 차이를 학습할 매개변수가 부족하기 때문에 이는 AI 안전성을 위협합니다.
  • 의료 진단: 종양과 같은 detect 위해 의료 영상 분석을 적용할 때, 지나치게 단순한 모델은 작거나 불규칙한 종양을 놓칠 수 있습니다. 신경망이 너무 얕으면 높은 민감도와 특이도에 필요한 복잡한 조직 구조를 학습하지 못해 진단 누락으로 이어집니다.

코드 기반 언더피팅 해결

In 컴퓨터 비전과소적합은 종종 작업 난이도에 비해 모델 변형이 너무 작을 때 발생합니다(예: 고해상도 드론 영상에서 작은 물체 탐지). 다음은 Python 예제는 더 작고 단순한 모델에서 더 크고 기능이 풍부한 모델로 전환하는 방법을 보여줍니다. ultralytics 잠재적 과소적합을 해결하기 위한 라이브러리.

from ultralytics import YOLO

# If 'yolo26n.pt' (Nano) is underfitting and yielding low accuracy,
# upgrade to a model with higher capacity like 'yolo26l.pt' (Large).
model = YOLO("yolo26l.pt")

# Train the larger model.
# Increasing epochs also helps the model converge if it was previously underfitting.
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

더 큰 Ultralytics 모델로 전환하고 충분한 훈련 기간을 확보함으로써 시스템은 복잡한 패턴을 학습하는 데 필요한 매개변수를 획득하여 효과적으로 언더피팅을 완화합니다. 모델이 더 이상 언더피팅되지 않는지 확인하려면 항상 견고한 테스트 데이터셋을 대상으로 평가하십시오. 데이터셋 관리 및 실험 추적을 통해 언더피팅을 조기에 발견하기 위해 Ultralytics 시각화 및 분석을 위한 포괄적인 도구를 제공합니다.

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기