Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Apprentissage Actif

Découvrez l'apprentissage actif, une méthode d'apprentissage automatique rentable qui améliore la précision avec moins d'étiquettes. Découvrez comment il transforme la formation en IA !

L'apprentissage actif est une approche dynamique de l'apprentissage l 'apprentissage machine (ML) visant à optimiser le processus processus de formation en choisissant sélectivement les points de données les plus informatifs pour l'annotation. Dans l'apprentissage supervisé supervisé standard, un modèle est alimenté passivement par un grand ensemble de données pré-étiquetées, ce qui peut s'avérer inefficace et coûteux si les données comprennent des exemples redondants ou non informatifs. si les données comprennent des exemples redondants ou non informatifs. L'apprentissage actif modifie ce paradigme en permettant au modèle de d'interroger interactivement une source d'information - souvent un expert humain ou un "oracle" - afin de demander des étiquettes pour des cas spécifiques et ambigus, spécifiques et ambigus. Cette stratégie ciblée réduit considérablement la quantité de données d'entraînement nécessaires pour atteindre une précision, ce qui en fait un outil idéal pour les projets budgets limités ou des contraintes de temps strictes.

Le cycle d'apprentissage actif

Le processus d'apprentissage actif fonctionne comme un cycle itératif, souvent décrit comme un flux de travail humain en boucle. humain dans la boucle. Ce cycle Ce cycle garantit que l'effort humain se concentre uniquement sur les données qui contribuent le plus à l'amélioration du modèle. Le flux de travail typique implique :

  1. Initialisation: Un modèle, tel que Ultralytics YOLO11est entraîné sur un petit ensemble de données initialement étiqueté.
  2. Interrogation: Le modèle effectue des prédictions sur un grand ensemble de données non étiquetées. À l'aide d'une stratégie d'interrogation, il identifie les échantillons pour lesquels sa confiance est faible ou où les prédictions sont incertaines.
  3. Annotation: Ces échantillons "incertains" hautement prioritaires sont envoyés à un annotateur humain pour être étiquetés. l'étiquetage.
  4. Mise à jour: les échantillons nouvellement étiquetés sont ajoutés à l'ensemble d'apprentissage et le processus d'apprentissage du modèle est répété pour affiner l'algorithme. processus d'apprentissage du modèle est répété pour affiner l'algorithme.

L'efficacité de cette méthode dépend fortement de la stratégie d'échantillonnage. L'échantillonnage d'incertitude est la technique technique la plus courante, où l'algorithme sélectionne les instances les plus proches de sa frontière de décision. Des détails détaillés détails sur ces stratégies sont disponibles dans diverses études documentaires sur l'apprentissage actif.

Exemple Python : Échantillonnage d'incertitude avec YOLO11

L'extrait de code suivant montre comment mettre en œuvre une boucle d'échantillonnage d'incertitude de base. Il charge un modèle, prédit sur les images, et identifie celles dont la probabilité de détection est faible, en les signalant pour un examen manuel.

from ultralytics import YOLO

# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")

# Run inference on a list or directory of unlabeled images
results = model.predict(["image1.jpg", "image2.jpg"])

# Identify images where the model is uncertain
uncertain_samples = []
for result in results:
    # Check if detections exist and if the maximum confidence is below a threshold
    if result.boxes.conf.numel() > 0 and result.boxes.conf.max() < 0.6:
        uncertain_samples.append(result.path)
        print(f"Flagging {result.path} for manual labeling.")

print(f"Total uncertain images found: {len(uncertain_samples)}")

Applications concrètes

L'apprentissage actif est particulièrement utile dans les domaines où l'étiquetage des données est coûteux ou nécessite une spécialisée.

  • Analyse d'images médicales: Dans le domaine de la santé, l'obtention de données étiquetées pour des tâches telles que comme la détection des tumeurs cérébrales temps de radiologues hautement qualifiés. Au lieu d'étiqueter des milliers de scans de routine, les systèmes d'apprentissage actif peuvent d'apprentissage actif peuvent identifier des anomalies rares ou ambiguës pour les soumettre à l'examen d'experts. La recherche dans le domaine de la segmentation d'images la segmentation d'images biomédicales a montré que cette approche peut réduire considérablement les efforts d'annotation tout en maintenant la précision du diagnostic.
  • Véhicules autonomes: Les voitures autonomes collectent des quantités massives de données vidéo. Il n'est pas possible d'étiqueter chaque image. L'apprentissage actif aide les ingénieurs à trouver des "cas limites" - tels que des conditions météorologiques inhabituelles ou des piétons déguisés - que le modèle actuel de détection d'objets peine à traiter. que le modèle actuel de détection d'objets a du mal à à classify. En donnant la priorité à ces scénarios difficiles, des entreprises telles que NVIDIA améliorent la sécurité et la robustesse de leurs de leurs systèmes de perception.

Distinction par rapport aux concepts apparentés

Bien que l'apprentissage actif implique l'utilisation de données non étiquetées, il se distingue des autres paradigmes d'apprentissage automatique :

  • Apprentissage semi-supervisé: Cette méthode utilise à la fois des données étiquetées et non étiquetées pendant la formation, mais elle le fait généralement de manière passive. Elle s'appuie souvent Elle s'appuie souvent sur des hypothèses concernant la distribution des données pour propager les étiquettes, alors que l'apprentissage actif demande explicitement de nouvelles informations. nouvelles informations.
  • Apprentissage auto-supervisé: Dans cette approche, le modèle crée ses propres signaux de supervision à partir de la structure des données (par exemple, prédire une partie manquante d'une image). partie manquante d'une image). Il ne nécessite pas d'interaction humaine pour générer des étiquettes pour la partie non étiquetée, un domaine de recherche clé dans des laboratoires tels que Google AI. domaine clé de la recherche dans des laboratoires comme Google AI.
  • Apprentissage par renforcement: Il s'agit d'un agent qui apprend à prendre des décisions en recevant des récompenses ou des pénalités d'un environnement. Contrairement à l'apprentissage l'apprentissage actif, qui recherche des étiquettes statiques pour les points de données, l'apprentissage par renforcement se concentre sur l'optimisation d'une séquence d'actions. d'actions.

Intégration dans les MLOps

La mise en œuvre de l'apprentissage actif nécessite un système robuste d'opérations d'apprentissage automatique (MLOps). opérations d'apprentissage automatique (MLOps) pour gérer le flux de données entre le modèle, le jeu de données et l'interface d'annotation. Les outils qui prennent en charge la version et la gestion des données sont essentiels pour suivre les échantillons qui ont été interrogés. version et la gestion des données sont essentiels pour savoir quels échantillons ont été interrogés. Bien que les bibliothèques à usage général comme scikit-learn offrent une certaine utilité, les flux de travail de vision par ordinateur nécessitent souvent une intégration personnalisée avec les ensembles de données d'images afin de visualiser et d'annoter les images sélectionnées. d'images pour visualiser et annoter efficacement les images sélectionnées. de manière efficace. Les utilisateurs avancés peuvent explorer le dépôt GitHub Ultralytics GitHub pour voir comment les résultats des prédictions peuvent être structurés pour alimenter ces boucles de curation de données.

Rejoindre la communauté Ultralytics

Rejoignez le futur de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

Rejoindre maintenant