능동 학습
비용 효율적인 머신러닝 방법인 능동 학습을 통해 더 적은 레이블로 정확도를 높이는 방법을 알아보세요. 이것이 어떻게 AI 학습을 혁신하는지 알아봅니다!
능동 학습은 학습 알고리즘이 새로운 데이터 포인트에 레이블을 지정하기 위해 사용자 또는 다른 정보 소스("오라클")에 대화식으로 쿼리할 수 있는 머신 러닝(ML)의 특수한 훈련 방법론입니다. 핵심 아이디어는 모델이 학습할 데이터를 선택할 수 있다면 훨씬 적은 훈련 데이터로 더 높은 정확도를 달성할 수 있다는 것입니다. 이는 데이터 레이블 지정이 비싸거나 시간이 오래 걸리거나 전문 지식이 필요한 도메인에서 특히 유용합니다. 전체 데이터 세트에 한 번에 레이블을 지정하는 대신 능동 학습은 레이블 지정을 위해 가장 "유익한" 샘플의 우선 순위를 지정하여 모델 훈련 프로세스를 훨씬 더 효율적으로 만듭니다.
능동 학습 작동 방식
능동 학습 프로세스는 순환적이며 종종 Human-in-the-Loop 워크플로로 설명됩니다. 일반적으로 다음 단계를 따릅니다.
- 초기 모델 학습: Ultralytics YOLO11 감지기와 같은 모델은 먼저 작은 초기 레이블이 지정된 데이터 세트에서 학습됩니다.
- 레이블이 지정되지 않은 데이터 쿼리: 부분적으로 훈련된 모델은 대규모의 레이블이 지정되지 않은 데이터 풀에서 예측을 수행하는 데 사용됩니다. 이러한 예측을 기반으로 모델은 가장 "불확실한" 샘플의 하위 집합을 선택합니다.
- 사람에 의한 어노테이션: 이러한 불확실한 샘플은 사람 전문가(오라클)에게 제공되어 올바른 레이블을 제공합니다.
- 데이터 증강(Dataset Augmentation): 새롭게 레이블링된 샘플은 학습 데이터 세트에 추가됩니다.
- 재학습: 모델은 업데이트된 더 큰 데이터 세트에서 재학습됩니다. 이 주기는 모델의 성능이 원하는 임계값에 도달하거나 레이블링 예산이 소진될 때까지 반복됩니다.
이 프로세스의 핵심은 쿼리 전략에 있습니다. 일반적인 전략으로는 불확실성 샘플링(모델이 가장 확신하지 못하는 인스턴스 선택), 쿼리 바이 커미티(여러 모델을 사용하고 서로 동의하지 않는 인스턴스 선택) 또는 예상 모델 변경 추정 등이 있습니다. 이에 대한 좋은 개요는 이 Active Learning survey에서 확인할 수 있습니다.
실제 애플리케이션
능동 학습은 전문적인 주석이 병목 현상인 특수 분야에서 매우 효과적입니다.
- 의료 영상 분석: 의료 영상에서 암과 같은 질병을 탐지하기 위해 AI를 학습할 때 수백만 개의 이미지를 사용할 수 있지만 방사선 전문의의 시간은 제한적일 수 있습니다. 무작위 이미지를 레이블링하는 대신 능동 학습 시스템은 검토할 가장 모호하거나 드문 사례를 정확히 찾아낼 수 있습니다. 이는 전문가의 노력을 가장 필요한 곳에 집중시켜 뇌종양 탐지와 같은 작업에 대한 매우 정확한 모델 개발을 가속화합니다. 이 분야의 연구는 생체 의학 영상 분할에 대한 연구에서 자세히 설명된 바와 같이 레이블링 노력의 상당한 감소를 보여줍니다.
- 자율 주행: 자율 주행 차량의 인식 시스템은 수많은 운전 시나리오를 다루는 방대하고 다양한 데이터 세트에서 학습해야 합니다. 능동 학습은 현재 객체 감지 모델이 어려움을 겪고 있는 수집된 운전 데이터에서 "엣지 케이스"(예: 장애물에 부분적으로 가려진 보행자 또는 비정상적인 기상 조건)를 식별할 수 있습니다. 개발자는 이러한 어려운 장면에 주석을 다는 데 우선순위를 둠으로써 모델의 견고성과 안전성을 보다 효과적으로 향상시킬 수 있습니다.
능동 학습 vs. 관련 개념
미레이블 데이터를 활용하는 다른 학습 패러다임과 능동 학습을 구별하는 것이 중요합니다.
- 준지도 학습: 훈련 중에 레이블이 지정된 데이터와 레이블이 지정되지 않은 데이터를 동시에 사용합니다. 능동 학습과 달리 일반적으로 특정 인스턴스에 대해 레이블을 선택적으로 쿼리하는 대신 사용 가능한 모든 레이블이 지정되지 않은 데이터를 수동적으로 사용합니다.
- 자체 지도 학습: 전치 작업(예: 이미지의 마스크 처리된 부분 예측)을 생성하여 레이블이 지정되지 않은 데이터에서 표현을 학습합니다. 사전 훈련 단계에서는 사람의 주석이 필요하지 않지만, 능동 학습은 레이블에 대한 오라클에 의존합니다. DeepMind에서 이 영역을 광범위하게 탐구했습니다.
- 강화 학습: 환경과의 상호 작용을 통해 시행착오 방식으로 학습하며, 행동에 대한 보상이나 벌칙을 받습니다. 능동 학습과 같이 명시적 레이블을 쿼리하는 과정은 포함되지 않습니다.
- Federated Learning: 주로 데이터 개인 정보 보호 문제를 해결하면서 데이터를 로컬에 유지하면서 분산 장치에서 모델을 훈련하는 데 중점을 둡니다. 능동 학습은 효율적인 레이블 획득에 중점을 둡니다. 이러한 기술은 때때로 결합될 수 있습니다.
도구 및 구현
활성 학습을 구현하려면 ML 모델을 주석 도구와 통합하고 데이터 워크플로를 관리해야 하는 경우가 많습니다. scikit-learn과 같은 프레임워크는 일부 기능을 제공하는 반면 특정 작업을 위한 특수 라이브러리가 있습니다. Label Studio와 같은 주석 소프트웨어를 활성 학습 파이프라인에 통합하여 주석가가 쿼리된 샘플에 대한 레이블을 제공할 수 있습니다. 진화하는 데이터 세트 및 훈련된 모델의 효과적인 관리가 중요하며 Ultralytics HUB와 같은 플랫폼은 개발 수명 주기 전반에 걸쳐 이러한 자산을 구성하기 위한 인프라를 제공합니다. 고급 ML 기술 구현에 대한 자세한 내용은 Ultralytics GitHub 저장소를 참조하십시오.