active learning
**Active Learning** is a **machine learning paradigm where the model strategically selects which unlabeled examples should be labeled by a human oracle** — instead of randomly labeling data, the model identifies the most informative examples (those where it is most uncertain, most diverse, or most likely to improve performance), requesting labels only for those examples, typically achieving the same accuracy with 10-50% of the labels required by random sampling.
**What Is Active Learning?**
- **Definition**: An iterative training loop where the model actively queries a human annotator for labels on the most informative unlabeled examples, rather than passively receiving a pre-labeled dataset.
- **The Problem**: Labeled data is expensive. A radiologist charges $50+ per medical image annotation. NLP labeling requires domain expertise at $25-50/hour. You have 1 million unlabeled images but a budget for only 10,000 labels.
- **The Insight**: Not all data points are equally informative. Labeling an ambiguous borderline case teaches the model far more than labeling an obvious example deep inside a cluster. Active learning formalizes this insight.
**The Active Learning Loop**
| Step | Action | Example |
|------|--------|---------|
| 1. **Seed** | Label a small random set (50-200 examples) | Radiologist labels 100 X-rays |
| 2. **Train** | Train model on current labeled set | Train ResNet on 100 labeled X-rays |
| 3. **Score** | Model scores all unlabeled examples by informativeness | Compute uncertainty for 999,900 unlabeled X-rays |
| 4. **Query** | Select top-k most informative examples | Pick 50 most uncertain X-rays |
| 5. **Annotate** | Human labels the selected examples | Radiologist labels 50 selected X-rays |
| 6. **Retrain** | Add new labels to training set, retrain | Now training on 150 labeled X-rays |
| 7. **Repeat** | Continue until budget exhausted or accuracy target met | Iterate until 10,000 labels used |
**Acquisition Functions (Query Strategies)**
| Strategy | How It Works | Best For | Weakness |
|----------|-------------|----------|----------|
| **Uncertainty Sampling** | Label examples where model is most uncertain (entropy, margin, least-confident) | Simple classification tasks | Can select outliers that are uninformative |
| **Query-by-Committee (QBC)** | Train multiple models, label examples where they disagree most | Ensemble-compatible models | Expensive (multiple models) |
| **Diversity Sampling** | Label examples most different from current training set (core-set approach) | Avoiding redundant selections | May miss hard boundary cases |
| **Expected Model Change** | Label examples that would most change model parameters | Gradient-based models | Computationally expensive |
| **BADGE** | Combines uncertainty (gradient magnitude) + diversity (k-means++ in gradient space) | Deep learning | State-of-the-art but complex |
| **Bayesian Active Learning (BALD)** | Maximize mutual information between prediction and model parameters | Bayesian neural networks | Requires uncertainty estimation |
**Active Learning vs Random Sampling**
| Metric (typical results) | Random Sampling | Active Learning |
|--------------------------|----------------|----------------|
| Labels needed for 90% accuracy | 10,000 | 2,000-5,000 (2-5× fewer) |
| Cost at $10/label | $100,000 | $20,000-$50,000 |
| Annotation time | Weeks | Days |
| Label efficiency | Baseline | 2-10× more efficient |
**Active Learning is the most cost-effective strategy for building labeled datasets** — enabling models to achieve target accuracy with 2-10× fewer labels by intelligently selecting the most informative examples for human annotation, making it essential for domains where labeling is expensive (medical imaging, legal document review, scientific data) and annotation budgets are limited.