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
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.