머신 러닝을 위한 데이터 라벨링의 기본을 익히세요. 객체 탐지와 같은 주요 유형을 알아보고 Ultralytics 활용해 워크플로우를 가속화하는 방법을 발견하세요.
데이터 라벨링은 이미지, 비디오 프레임, 텍스트 또는 오디오와 같은 원시 데이터를 식별하고 정보성 태그나 메타데이터를 추가하여 맥락을 제공하는 근본적인 과정입니다. 기계 학습(ML) 영역에서 알고리즘은 본질적으로 물리적 세계를 이해할 수 없으며, 이를 안내할 "교사"가 필요합니다. 이러한 안내는 지도 학습 과정에서 사용되는 라벨링된 데이터 세트의 형태로 제공됩니다. 라벨은 모델이 예측하고자 하는 정답을 나타내는 기준값 역할을 합니다. 단순 분류기 훈련이든 Ultralytics 복잡한 아키텍처 훈련이든, 이러한 라벨의 정확성, 일관성 및 품질은 모델 성공의 주요 결정 요소입니다.
비록 일상 대화에서는 이 용어들이 종종 혼용되지만, 주목할 만한 미묘한 차이가 존재합니다. "데이터 라벨링"은 일반적으로 데이터 조각에 범주나 태그를 할당하는 광범위한 행위를 의미합니다(예: 이메일에 "스팸" 태그를 지정하는 것). 반면, 데이터 어노테이션은 주로 컴퓨터 비전(CV) 분야에 특화된 개념으로, 바운딩 박스, 다각형 또는 키포인트를 사용한 객체의 정밀한 경계 설정을 포함합니다. 그러나 대부분의 머신러닝 운영(MLOps) 워크플로우 내에서 두 용어 모두 고품질 훈련 데이터 생성을 의미합니다.
모델이 수행해야 하는 작업에 따라 라벨링 방법이 달라집니다. 일반적인 유형은 다음과 같습니다:
데이터 라벨링의 유용성은 AI를 활용하는 거의 모든 산업 분야에 걸쳐 확장됩니다.
라벨링된 데이터셋을 생성하는 작업은 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")