비용 효율적인 머신러닝 방법인 능동 학습을 통해 더 적은 레이블로 정확도를 높이는 방법을 알아보세요. 이것이 어떻게 AI 학습을 혁신하는지 알아봅니다!
능동적 학습은 머신 러닝의 동적 접근 방식으로 머신 러닝(ML)의 동적 접근 방식입니다. 학습 프로세스를 최적화하기 위해 고안된 동적 접근 방식입니다. 표준 지도 학습에서는 학습에서는 모델에 사전 레이블이 지정된 대규모 데이터 세트가 수동적으로 공급되는데, 데이터에 중복되거나 유익하지 않은 예시가 포함된 경우 비효율적이고 비용이 많이 들 수 있습니다. 중복되거나 정보가 없는 예시가 포함된 경우 비효율적이고 비용이 많이 들 수 있습니다. 능동적 학습은 모델이 다음을 수행할 수 있도록 함으로써 이러한 패러다임을 전환합니다. 대화형으로 정보 소스(주로 인간 전문가 또는 '오라클'인)를 쿼리하여 특정 사례에 대한 라벨을 요청합니다, 라벨을 요청할 수 있습니다. 이 타겟팅 전략은 높은 정확도를 달성하는 데 필요한 높은 정확도를 달성하는 데 필요한 정확도를 달성하는 데 필요한 학습 데이터의 양을 크게 줄여주므로 예산이나 시간 제약이 엄격한 프로젝트에 이상적입니다.
능동적 학습 프로세스는 반복적인 주기로 작동하며, 종종 다음과 같이 설명됩니다. 반복 주기로 작동합니다. 이 주기를 통해 사람의 노력이 모델 개선에 가장 크게 기여하는 데이터에만 집중될 수 있습니다. 일반적인 일반적인 워크플로에는 다음이 포함됩니다:
이 방법의 효과는 샘플링 전략에 따라 크게 달라집니다. 불확실성 샘플링은 가장 일반적인 기법으로, 알고리즘이 결정 경계에 가장 가까운 인스턴스를 선택합니다. 이러한 전략에 대한 포괄적인 세부 정보 이러한 전략에 대한 자세한 내용은 다양한 다양한 능동 학습 문헌 조사에서 확인할 수 있습니다.
다음 코드 조각은 기본적인 불확실성 샘플링 루프를 구현하는 방법을 보여 줍니다. 모델을 로드하고, 이미지를 예측하고 을 로드하고, 신뢰도가 낮은 탐지 항목을 식별하여 수동 검토를 위해 플래그를 지정합니다.
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on a list or directory of unlabeled images
results = model.predict(["image1.jpg", "image2.jpg"])
# Identify images where the model is uncertain
uncertain_samples = []
for result in results:
# Check if detections exist and if the maximum confidence is below a threshold
if result.boxes.conf.numel() > 0 and result.boxes.conf.max() < 0.6:
uncertain_samples.append(result.path)
print(f"Flagging {result.path} for manual labeling.")
print(f"Total uncertain images found: {len(uncertain_samples)}")
능동형 학습은 특히 다음과 같은 영역에서 유용합니다. 데이터 라벨링에 비용이 많이 들거나 전문성이 필요한 분야에 특히 유용합니다.
액티브 러닝은 레이블이 지정되지 않은 데이터를 사용하지만 다른 머신 러닝 패러다임과 구별됩니다:
액티브 러닝을 구현하려면 강력한 머신 러닝 작업(MLOps) 파이프라인을 통해 모델, 데이터 세트 및 주석 인터페이스 간의 데이터 흐름을 관리해야 합니다. 데이터 지원 도구 버전 관리 및 관리는 쿼리된 샘플을 추적하는 데 필수적입니다. 범용 라이브러리 같은 scikit-learn 과 같은 범용 라이브러리가 일부 유용성을 제공하지만, 컴퓨터 비전 워크플로에는 종종 선택한 이미지를 시각화하고 주석을 달기 위해 선택한 이미지를 시각화하고 주석을 달기 위한 이미지 데이터 세트와의 효과적으로 시각화하고 주석을 달아야 하는 경우가 많습니다. 고급 사용자는 예측 결과물을 이러한 데이터에 입력하기 위해 어떻게 을 이러한 데이터 큐레이션 루프에 공급하도록 구조화할 수 있습니다.

