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

능동 학습

비용 효율적인 머신러닝 방법인 능동 학습을 통해 더 적은 레이블로 정확도를 높이는 방법을 알아보세요. 이것이 어떻게 AI 학습을 혁신하는지 알아봅니다!

능동적 학습은 머신 러닝의 동적 접근 방식으로 머신 러닝(ML)의 동적 접근 방식입니다. 학습 프로세스를 최적화하기 위해 고안된 동적 접근 방식입니다. 표준 지도 학습에서는 학습에서는 모델에 사전 레이블이 지정된 대규모 데이터 세트가 수동적으로 공급되는데, 데이터에 중복되거나 유익하지 않은 예시가 포함된 경우 비효율적이고 비용이 많이 들 수 있습니다. 중복되거나 정보가 없는 예시가 포함된 경우 비효율적이고 비용이 많이 들 수 있습니다. 능동적 학습은 모델이 다음을 수행할 수 있도록 함으로써 이러한 패러다임을 전환합니다. 대화형으로 정보 소스(주로 인간 전문가 또는 '오라클'인)를 쿼리하여 특정 사례에 대한 라벨을 요청합니다, 라벨을 요청할 수 있습니다. 이 타겟팅 전략은 높은 정확도를 달성하는 데 필요한 높은 정확도를 달성하는 데 필요한 정확도를 달성하는 데 필요한 학습 데이터의 양을 크게 줄여주므로 예산이나 시간 제약이 엄격한 프로젝트에 이상적입니다.

능동적 학습 주기

능동적 학습 프로세스는 반복적인 주기로 작동하며, 종종 다음과 같이 설명됩니다. 반복 주기로 작동합니다. 이 주기를 통해 사람의 노력이 모델 개선에 가장 크게 기여하는 데이터에만 집중될 수 있습니다. 일반적인 일반적인 워크플로에는 다음이 포함됩니다:

  1. 초기화: 다음과 같은 모델 Ultralytics YOLO11와 같은 모델은 초기에 레이블이 지정된 작은 레이블이 지정된 작은 시드 데이터 세트로 학습됩니다.
  2. 쿼리: 모델은 레이블이 지정되지 않은 대규모 데이터 풀에서 예측을 실행합니다. 쿼리 전략을 사용하여 신뢰도가 낮은 샘플을 식별하거나 예측이 불확실한 샘플을 식별합니다.
  3. 주석: 이러한 우선 순위가 높은 '불확실한' 샘플은 인간 어노테이터에게 보내집니다. 라벨을 붙입니다.
  4. 업데이트: 새로 레이블이 지정된 샘플이 학습 세트에 추가되고 모델 학습 과정을 반복하여 알고리즘을 개선합니다.

이 방법의 효과는 샘플링 전략에 따라 크게 달라집니다. 불확실성 샘플링은 가장 일반적인 기법으로, 알고리즘이 결정 경계에 가장 가까운 인스턴스를 선택합니다. 이러한 전략에 대한 포괄적인 세부 정보 이러한 전략에 대한 자세한 내용은 다양한 다양한 능동 학습 문헌 조사에서 확인할 수 있습니다.

Python 예제: YOLO11 사용한 불확실성 샘플링

다음 코드 조각은 기본적인 불확실성 샘플링 루프를 구현하는 방법을 보여 줍니다. 모델을 로드하고, 이미지를 예측하고 을 로드하고, 신뢰도가 낮은 탐지 항목을 식별하여 수동 검토를 위해 플래그를 지정합니다.

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)}")

실제 애플리케이션

능동형 학습은 특히 다음과 같은 영역에서 유용합니다. 데이터 라벨링에 비용이 많이 들거나 전문성이 필요한 분야에 특히 유용합니다.

  • 의료 영상 분석: 의료 분야에서 다음과 같은 작업을 위해 라벨이 지정된 데이터를 얻으려면 뇌종양 감지와 같은 작업을 위해 라벨링된 데이터를 얻으려면 고도로 숙련된 방사선 전문의의 시간이 필요합니다. 능동형 학습 시스템은 수천 건의 일상적인 스캔에 라벨을 붙이는 대신에 전문가 검토를 위해 희귀하거나 모호한 이상 징후를 식별할 수 있습니다. 연구 분야 생물의학 이미지 세분화 연구에 따르면 이러한 이 접근 방식은 진단 정확도를 유지하면서 주석 작업을 대폭 줄일 수 있습니다.
  • 자율주행 차량: 자율주행차는 방대한 양의 비디오 데이터를 수집합니다. 모든 프레임에 라벨을 붙이는 것은 비현실적입니다. 능동적 학습 은 엔지니어가 비정상적인 기상 조건이나 의상을 입은 보행자와 같은 '엣지 케이스'를 찾는 데 도움을 줍니다. 현재 객체 감지 모델로는 classify 수 있습니다. 이러한 까다로운 시나리오에 우선순위를 둠으로써 다음과 같은 기업은 다음과 같은 이점을 얻을 수 있습니다. NVIDIA 인식 시스템의 안전성과 견고성을 인식 시스템의 안전성과 견고성을 개선합니다.

관련 개념과의 차이점

액티브 러닝은 레이블이 지정되지 않은 데이터를 사용하지만 다른 머신 러닝 패러다임과 구별됩니다:

  • 반지도 학습: 이 방법은 학습 중에 레이블이 지정된 데이터와 레이블이 지정되지 않은 데이터를 모두 사용하지만 일반적으로 수동적으로 수행합니다. 이 방법은 종종 레이블을 전파하기 위해 데이터 분포에 대한 가정에 의존하는 반면, 능동형 학습은 명시적으로 새로운 정보를 명시적으로 쿼리합니다.
  • 자기 주도 학습: 이 접근 방식에서는 모델이 데이터 구조에서 자체 감독 신호를 생성합니다(예: 이미지의 누락된 부분 예측). 이미지의 누락된 부분 예측). 레이블이 없는 부분에 대한 레이블을 생성하는 데 사람의 개입이 필요하지 않습니다. 핵심 연구 분야입니다.
  • 강화 학습: 에이전트가 환경으로부터 보상이나 벌칙을 받음으로써 의사 결정을 학습하는 것을 포함합니다. 데이터 포인트에 대한 정적 레이블을 찾는 데이터 포인트에 대한 정적 레이블을 찾는 능동 학습과 달리, 강화 학습은 일련의 동작을 최적화하는 데 중점을 둡니다. 최적화하는 데 중점을 둡니다.

MLOps에 통합

액티브 러닝을 구현하려면 강력한 머신 러닝 작업(MLOps) 파이프라인을 통해 모델, 데이터 세트 및 주석 인터페이스 간의 데이터 흐름을 관리해야 합니다. 데이터 지원 도구 버전 관리 및 관리는 쿼리된 샘플을 추적하는 데 필수적입니다. 범용 라이브러리 같은 scikit-learn 과 같은 범용 라이브러리가 일부 유용성을 제공하지만, 컴퓨터 비전 워크플로에는 종종 선택한 이미지를 시각화하고 주석을 달기 위해 선택한 이미지를 시각화하고 주석을 달기 위한 이미지 데이터 세트와의 효과적으로 시각화하고 주석을 달아야 하는 경우가 많습니다. 고급 사용자는 예측 결과물을 이러한 데이터에 입력하기 위해 어떻게 을 이러한 데이터 큐레이션 루프에 공급하도록 구조화할 수 있습니다.

Ultralytics 커뮤니티 가입

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

지금 참여하기