Découvrez comment l'apprentissage en ensemble améliore la précision et réduit le surajustement. Apprenez à combiner plusieurs modèles tels que Ultralytics pour obtenir des résultats supérieurs en matière de vision par ordinateur.
L'apprentissage par ensemble est une stratégie robuste en apprentissage automatique (ML) où plusieurs modèles indépendants, souvent appelés « apprenants faibles », sont combinés pour produire un seul résultat prédictif . Le principe fondamental est qu'un groupe de modèles peut souvent atteindre une plus grande précision et une meilleure généralisation qu'un modèle unique agissant seul. En agrégeant les prédictions de divers algorithmes, les méthodes d'apprentissage en ensemble réduisent efficacement le risque de surajustement aux données d'entraînement, lissent les erreurs aléatoires et améliorent la stabilité globale du système. Cette approche est analogue à la consultation d'un panel d'experts plutôt que de se fier à l' opinion d'une seule personne pour prendre une décision critique.
L'efficacité des méthodes d'ensemble réside dans leur capacité à manipuler le compromis biais-variance. Les modèles individuels peuvent souffrir d'une variance élevée (sensibilité au bruit) ou d'un biais élevé (simplification excessive). L'ensemble atténue ces problèmes grâce à des techniques spécifiques :
Dans le domaine de la vision par ordinateur (CV), les ensembles sont fréquemment utilisés pour optimiser les performances dans les concours et les applications critiques en matière de sécurité. Pour la détection d'objets, cela implique souvent d'exécuter plusieurs modèles, tels que différentes versions de YOLO26, sur la même image. Les cadres de sélection obtenus sont ensuite fusionnés à l'aide de techniques telles que la suppression non maximale (NMS) ou la fusion pondérée des cadres (WBF) afin de déterminer les emplacements les plus probables des objets.
Les méthodes d'ensemble sont omniprésentes dans les secteurs où la fiabilité prédictive est primordiale.
Vous pouvez simuler un ensemble d'inférences de base en chargeant plusieurs modèles entraînés et en générant des prédictions pour la même entrée. La Ultralytics vous permet d'entraîner facilement ces variantes . L'exemple suivant montre comment charger deux modèles différents Ultralytics YOLO (YOLO26n et YOLO26s) pour vérifier les détections sur une image.
from ultralytics import YOLO
# Load two distinct YOLO26 model variants
# 'n' (nano) is faster, 's' (small) is more accurate
model_nano = YOLO("yolo26n.pt")
model_small = YOLO("yolo26s.pt")
# Define the image source
source = "https://ultralytics.com/images/bus.jpg"
# Run inference with both models
results_n = model_nano(source)
results_s = model_small(source)
# Compare the number of objects detected by each model
print(f"Nano Model Found: {len(results_n[0].boxes)} objects")
print(f"Small Model Found: {len(results_s[0].boxes)} objects")
Il est important de distinguer l'apprentissage en ensemble de l' augmentation des données.
Alors que l'augmentation des données aide un modèle unique à mieux apprendre, l'apprentissage en ensemble aide plusieurs modèles à vérifier mutuellement leurs résultats. Ces deux stratégies sont souvent utilisées conjointement pour obtenir des résultats de pointe dans des tâches telles que la segmentation d'instances et l' estimation de pose.