Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Ensemble de modèles

Découvrez comment les ensembles de modèles combinent plusieurs architectures telles que Ultralytics pour améliorer la précision et la robustesse. Apprenez les techniques clés et les conseils de mise en œuvre.

Un ensemble de modèles est une approche stratégique en apprentissage automatique qui consiste à combiner les prédictions de plusieurs modèles individuels afin d'obtenir un résultat final souvent plus précis et plus robuste que celui qu'un modèle unique pourrait atteindre seul. Tout comme un comité d'experts qui délibère pour parvenir à une meilleure décision qu'un seul individu, un ensemble de modèles exploite les points forts de diverses architectures pour atténuer les erreurs. Cette technique est largement utilisée pour améliorer les performances dans des tâches complexes, réduire le risque de surajustement et gérer le compromis inhérent entre biais et variance que l'on trouve dans la modélisation statistique .

Les mécanismes de l'assemblage

Le principe fondamental qui sous-tend un ensemble de modèles est la « diversité ». En entraînant plusieurs modèles, souvent appelés « apprenants de base » ou « apprenants faibles », sur différents sous-ensembles de données d'entraînement ou en utilisant différents algorithmes, l' ensemble garantit que les erreurs commises par un modèle sont susceptibles d'être corrigées par les autres. Dans le contexte de l' apprentissage profond, cela implique souvent d'exécuter plusieurs réseaux neuronaux en parallèle pendant l' inférence.

Les méthodes courantes pour combiner ces prédictions comprennent :

  • Vote : utilisé dans la classification d'images, où la classe sélectionnée par la majorité des modèles devient la prédiction finale.
  • Moyenne : souvent utilisée dans les tâches de régression, où les résultats numériques sont moyennés pour lisser le bruit.
  • Fusion pondérée : dans la détection d'objets, des techniques telles que la fusion pondérée de boîtes (WBF) fusionnent les boîtes englobantes provenant de différents détecteurs en fonction des scores de confiance.

Applications concrètes

Les ensembles de modèles sont essentiels dans les environnements à haut risque où la maximisation de la précision est primordiale et où les ressources informatiques permettent d' exécuter plusieurs modèles.

  1. Diagnostic médical : dans le domaine de l' analyse d'images médicales, un diagnostic erroné peut avoir des conséquences graves. Les radiologues utilisent souvent des ensembles qui combinent un réseau neuronal convolutif (CNN) standard avec un transformateur de vision (ViT). Le CNN excelle dans l'analyse locale des textures, tandis que le ViT capture le contexte global, ce qui permet au système de detect avec une sensibilité supérieure à celle de chacune des deux architectures prises séparément.
  2. Conduite autonome : les systèmes de perception des véhicules autonomes doivent être à sécurité intégrée. Les ingénieurs déploient souvent un ensemble de modèles de détection, par exemple en fusionnant la vitesse en temps réel de YOLO26 avec la précision basée sur un transformateur de RT-DETR. Cela garantit que les piétons ou les obstacles sont détectés même si un modèle est confronté à des conditions d'éclairage spécifiques, telles que des reflets ou des ombres.

Mise en œuvre d'ensembles avec Python

Bien que des stratégies d'ensemble complexes puissent être élaborées à l'aide de bibliothèques telles que Scikit-learn, vous pouvez créer un ensemble d'inférence de base pour la vision par ordinateur en chargeant simplement plusieurs modèles et en traitant la même entrée. L'exemple suivant montre comment charger deux Ultralytics YOLO pour générer des prédictions sur la même image.

from ultralytics import YOLO

# Load two different model variants to create a diverse ensemble
model_a = YOLO("yolo26n.pt")  # Nano model (Speed focused)
model_b = YOLO("yolo26s.pt")  # Small model (Higher accuracy)

# Perform inference on an image with both models
# In production, results are typically merged programmatically
results_a = model_a("https://ultralytics.com/images/bus.jpg")
results_b = model_b("https://ultralytics.com/images/bus.jpg")

print(f"Model A detected {len(results_a[0].boxes)} objects.")
print(f"Model B detected {len(results_b[0].boxes)} objects.")

Ensemble de modèles vs mélange d'experts

Il est utile de différencier un ensemble de modèles standard d'un mélange d'experts (MoE), un terme souvent utilisé dans la recherche moderne sur les grands modèles linguistiques (LLM).

  • Ensemble de modèles : interroge généralement tous les modèles de la collection pour chaque entrée et agrège les résultats. Cela maximise les métriques telles que la précision moyenne (mAP), mais augmente considérablement la latence d'inférence et le coût de calcul. Il s'agit d'une approche brute force de la qualité.
  • Mélange d'experts : utilise un « réseau de sélection » pour acheminer les données uniquement vers quelques sous-modèles « experts » spécifiques les mieux adaptés à l'entrée actuelle. Cela permet une évolutivité massive des modèles de base sans la pénalité computationnelle liée à l'exécution de chaque paramètre pour chaque jeton.

Avantages et considérations

Le principal avantage de l'utilisation d'un ensemble de modèles est l'amélioration des performances. Les ensembles dominent souvent les classements dans les défis liés à la science des données, tels que les concours Kaggle, car ils permettent de modéliser des modèles complexes que les modèles individuels ne peuvent pas prendre en compte. Cependant, cela a un coût : le déploiement d'ensembles nécessite davantage de mémoire et de puissance de calcul.

Pour les équipes qui cherchent à gérer efficacement ces demandes en ressources, Ultralytics propose des outils pour former, track et comparer différentes architectures de modèles. En comparant facilement les mesures de performance, les développeurs peuvent décider si le gain de précision d'un ensemble justifie l'infrastructure supplémentaire nécessaire au déploiement dans des scénarios d'IA de pointe.

Rejoindre la communauté Ultralytics

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

Rejoindre maintenant