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

데이터 라벨링

머신 러닝을 위한 데이터 라벨링의 기본을 익히세요. 객체 탐지와 같은 주요 유형을 알아보고 Ultralytics 활용해 워크플로우를 가속화하는 방법을 발견하세요.

데이터 라벨링은 이미지, 비디오 프레임, 텍스트 또는 오디오와 같은 원시 데이터를 식별하고 정보성 태그나 메타데이터를 추가하여 맥락을 제공하는 근본적인 과정입니다. 기계 학습(ML) 영역에서 알고리즘은 본질적으로 물리적 세계를 이해할 수 없으며, 이를 안내할 "교사"가 필요합니다. 이러한 안내는 지도 학습 과정에서 사용되는 라벨링된 데이터 세트의 형태로 제공됩니다. 라벨은 모델이 예측하고자 하는 정답을 나타내는 기준값 역할을 합니다. 단순 분류기 훈련이든 Ultralytics 복잡한 아키텍처 훈련이든, 이러한 라벨의 정확성, 일관성 및 품질은 모델 성공의 주요 결정 요소입니다.

데이터 라벨링 대 데이터 어노테이션

비록 일상 대화에서는 이 용어들이 종종 혼용되지만, 주목할 만한 미묘한 차이가 존재합니다. "데이터 라벨링"은 일반적으로 데이터 조각에 범주나 태그를 할당하는 광범위한 행위를 의미합니다(예: 이메일에 "스팸" 태그를 지정하는 것). 반면, 데이터 어노테이션은 주로 컴퓨터 비전(CV) 분야에 특화된 개념으로, 바운딩 박스, 다각형 또는 키포인트를 사용한 객체의 정밀한 경계 설정을 포함합니다. 그러나 대부분의 머신러닝 운영(MLOps) 워크플로우 내에서 두 용어 모두 고품질 훈련 데이터 생성을 의미합니다.

컴퓨터 비전의 주요 유형

모델이 수행해야 하는 작업에 따라 라벨링 방법이 달라집니다. 일반적인 유형은 다음과 같습니다:

  • 이미지 분류: 전체 이미지에 단일 레이블을 할당하는 작업으로, 예를 들어 날씨 상태를 "흐림" 또는 "맑음"으로 식별하는 것.
  • 객체 탐지: 서로 다른 객체 주변에 2D 바운딩 박스를 그려 모델에게 해당 객체가 무엇이며 어디에 위치하는지 가르치는 과정입니다.
  • 인스턴스 분할: 물체 주변에 픽셀 단위의 정밀한 마스크 또는 다각형을 생성하는 것으로, 정확한 형태와 경계를 결정하는 데 필수적입니다.
  • 자세 추정: 피사체에 특정 키포인트 (예: 골격 관절)를 표시하여 움직임이나 자세를 분석하는 것.

실제 애플리케이션

데이터 라벨링의 유용성은 AI를 활용하는 거의 모든 산업 분야에 걸쳐 확장됩니다.

  1. 자율주행 차량: 자율주행 차량은 모든 차량, 보행자, 교통 표지판, 차선 표시가 세심하게 라벨링된 방대한 데이터셋에 의존합니다. 이 라벨링된 데이터는 인식 시스템이 복잡한 환경을 안전하게 주행할 수 있도록 합니다. 자율주행 차량 기업들은 안전 규정 준수를 보장하기 위해 픽셀 단위 라벨링에 막대한 투자를 하고 있습니다.
  2. 정밀 농업: 현대 농업에서 농업용 인공지능은 detect 생장 단계를 detect 활용됩니다. 농부들은 "건강한" 잎과 "병든" 잎의 라벨링된 이미지로 훈련된 모델을 활용해 치료 과정을 자동화함으로써 화학 약품 사용을 줄이고 수확량을 높입니다.

라벨링 작업 흐름

라벨링된 데이터셋을 생성하는 작업은 AI 프로젝트에서 가장 시간이 많이 소요되는 부분입니다. 이 과정은 일반적으로 "인간이 개입하는(Human-in-the-Loop, HITL)" 방식을 채택하며, 인간 주석자가 라벨을 검증하여 높은 정확도를 보장합니다. 현대적인 워크플로는 Ultralytics 같은 도구를 활용하여 데이터셋 관리를 간소화하고 팀이 주석 작업에 협업할 수 있도록 합니다. 능동 학습과 같은 고급 기법도 적용할 수 있는데, 이는 모델이 데이터를 사전 라벨링하고 인간은 낮은 신뢰도 예측만 수정함으로써 프로세스를 크게 가속화합니다.

다음 예시는 사전 훈련된 YOLO26 모델을 사용하여 새 이미지에 대한 라벨을 자동으로 생성하는 방법(자동 라벨링)을 보여줍니다. 생성된 라벨은 이후 사람이 수정할 수 있습니다:

from ultralytics import YOLO

# Load the YOLO26n model (nano version)
model = YOLO("yolo26n.pt")

# Run inference on an image to detect objects
results = model("https://ultralytics.com/images/bus.jpg")

# Save the detection results to a text file in standard YOLO format
# This file can now be used as a starting point for data labeling
results[0].save_txt("bus_labels.txt")

Ultralytics 커뮤니티 가입

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

지금 참여하기