Entdecken Sie Active Learning, eine kosteneffiziente Methode des maschinellen Lernens, die die Genauigkeit mit weniger Labels erhöht. Erfahren Sie, wie es das KI-Training transformiert!
Active Learning is a strategic approach in machine learning (ML) where the algorithm proactively selects the most informative data points for labeling, rather than passively accepting a pre-labeled dataset. In traditional supervised learning, models often require massive amounts of annotated data, which can be expensive and time-consuming to create. Active learning optimizes this process by identifying "uncertain" or "hard" examples—those near the decision boundary or where the model lacks confidence—and requesting human annotators to label only those specific instances. This iterative loop allows models to achieve high accuracy with significantly fewer labeled samples, making it highly efficient for projects with limited budgets or time constraints.
Der Kern des aktiven Lernens ist eine Feedbackschleife, die oft als Human-in-the-Loop bezeichnet wird. Anstatt einmalig auf einem statischen Datensatz zu trainieren, entwickelt sich das Modell durch Zyklen von Abfragen und Aktualisierungen weiter.
Aktives Lernen ist in Branchen unverzichtbar, in denen Daten im Überfluss vorhanden sind, die Beschriftung jedoch Fachwissen oder hohe Kosten erfordert.
Das folgende Beispiel veranschaulicht eine einfache „Uncertainty Sampling”-Logik unter Verwendung von Ultralytics . Wir laden ein Modell, führen eine Inferenz für Bilder durch und markieren diejenigen, deren Konfidenzscore unter einem bestimmten Schwellenwert liegt, für eine manuelle Überprüfung.
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# List of unlabeled image paths
unlabeled_images = ["https://ultralytics.com/images/bus.jpg", "https://ultralytics.com/images/zidane.jpg"]
# Run inference
results = model(unlabeled_images)
# Identify samples with low confidence for active learning
uncertain_threshold = 0.6
for result in results:
# Check if any detection confidence is below the threshold
if result.boxes.conf.numel() > 0 and result.boxes.conf.min() < uncertain_threshold:
print(f"Active Learning Query: {result.path} needs human labeling.")
Es ist wichtig, aktives Lernen von ähnlichen Trainingsparadigmen zu unterscheiden:
Die effektive Umsetzung von aktivem Lernen erfordert eine robuste Machine Learning Operations (MLOps) Pipeline. Sie benötigen eine Infrastruktur, um Datenversionen zu verwalten, Nachschulungsaufträge auszulösen und die Annotationsschnittstelle für Menschen bereitzustellen. Tools, die sich in das Ultralytics integrieren lassen, ermöglichen es Benutzern, nahtlos zwischen Inferenz, Datenkuratierung und Schulung zu wechseln. Mithilfe von benutzerdefinierten Schulungsskripten können Entwickler beispielsweise schnell neue Stapel aktiver Lerndaten in ihre YOLO integrieren.
Für weitere Informationen zu Stichprobenstrategien verweisen Forscher häufig auf umfassende Übersichtsarbeiten in der Literatur zum aktiven Lernen. Darüber hinaus ist das Verständnis von Modellbewertungsmetriken entscheidend, um zu überprüfen, ob der aktive Lernzyklus tatsächlich die Leistung verbessert.