Active Learning

Active learning er en maskinlæringsteknik, hvor algoritmen aktivt vælger de mest informative datapunkter til manuel annotering for at optimere modelpræstation med minimalt antal mærkede data.

Kort fortalt

Modellen vælger selv, hvilke data den vil lære fra, så den lærer hurtigere med mindre menneskelig indsats.

Kategori
teknik
Niveau
øvet
Udtale
/ˈæktɪv ˈlɜːrnɪŋ/

Betydninger

1
  1. 1

    En maskinlæringsmetode, hvor læringsalgoritmen interaktivt forespørger en bruger (eller en anden informationskilde) om at mærke nye datapunkter med de ønskede output. Målet er at opnå høj nøjagtighed med så få mærkede eksempler som muligt.

    • I active learning vælger modellen de mest usikre prædiktioner til manuel gennemgang.
    • Active learning har vist sig effektiv til tekstklassifikation, hvor annotering af store mængder data er uoverkommelig.

Hvornår bruges det

Active learning anvendes typisk i situationer, hvor mærkede data er dyre eller tidskrævende at fremskaffe, f.eks. i medicinsk billeddiagnostik, hvor en radiolog skal annotere usikre billeder. Modellen præsenterer de mest usikre eller repræsentative eksempler for en ekspert til mærkning.

Kodeeksempel

from modAL import ActiveLearner
from sklearn.ensemble import RandomForestClassifier

# Initial labeled data
X_initial = ...
y_initial = ...

learner = ActiveLearner(
    estimator=RandomForestClassifier(),
    query_strategy='uncertainty_sampling',
    X_training=X_initial, y_training=y_initial
)

# Query for new labels
query_idx, query_instance = learner.query(X_pool)
# Expert labels the instance
y_new = get_label(query_instance)
# Teach the learner
learner.teach(query_instance, y_new)

Eksempel på active learning med modAL-biblioteket med usikkerhedsprøvetagning.

Oprindelse

Udtrykket stammer fra maskinlæringslitteraturen i 1990'erne, især arbejde af David A. Cohn, Zoubin Ghahramani og Michael I. Jordan. 'Active' refererer til at læringsalgoritmen tager aktiv del i valget af træningsdata.

Afledte ord

3

Kilder

1