Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Taille de lot

Découvrez l'impact de la taille de lot sur l'apprentissage profond. Optimisez efficacement la vitesse d'entraînement, l'utilisation de la mémoire et la performance du modèle.

La taille du lot est un hyperparamètre essentiel dans le domaine de l'apprentissage automatique. dans le domaine de l'apprentissage automatique, qui détermine le nombre d'échantillons de données d'apprentissage traités avant que le processus ne soit terminé. nombre d'échantillons de données d'apprentissage traités avant que le modèle ne mette à jour ses paramètres internes. avant que le modèle ne mette à jour ses paramètres internes. Au lieu d'analyser l'ensemble des données en une seule fois, ce qui est souvent impossible en raison des limites de la mémoire, l'apprentissage en profondeur (deep learning) permet d'améliorer la qualité des données. de mémoire, les cadres d'apprentissageprofond divisent les données en divisent les données en groupes plus petits appelés lots. Cette division régit la stabilité du processus d'apprentissage d'apprentissage, la vitesse de calcul et la quantité de mémoire requise par l'algorithme. GPU pendant l'apprentissage. Le choix de la taille de lot correcte constitue un équilibre entre l'efficacité du calcul et la qualité de la convergence du modèle. convergence du modèle.

L'impact sur la dynamique de la formation

La sélection d'une taille de lot modifie fondamentalement le mode d'apprentissage d'un réseau neuronal. d'apprentissage d'un réseau neuronal. Lorsque la taille du lot est définie à une valeur inférieure, le modèle met à jour ses poids du modèle plus fréquemment, ce qui introduit du bruit dans dans le processus de descente de gradient. Ce bruit peut être bénéfique, car il aide souvent l'algorithme d'optimisation à échapper aux minima locaux et à trouver des solutions plus robustes. minima locaux et à trouver des solutions plus robustes, ce qui contribue à ce qui permet d'éviter l'overfitting. Inversement, des lots de plus grande taille fournissent une estimation plus précise du gradient, ce qui conduit à des mises à jour plus lisses et plus stables. Cependant, elles nécessitent beaucoup plus de mémoire matérielle et peuvent parfois entraîner un "écart de généralisation", c'est-à-dire que le modèle fonctionne bien sur les données d'apprentissage mais moins bien sur les données d'évaluation. est performant sur les données d'apprentissage, mais moins efficace sur les données non vues.

Les capacités matérielles dictent souvent la limite supérieure de ce paramètre. Les accélérateurs matériels modernes, tels que ceux détaillés dans le le guide des performances de l'apprentissage profond deNVIDIA, s'appuient sur l'informatique parallèle pour traiter simultanément de grands blocs de données. de données simultanément. Par conséquent, l'utilisation d'une taille de lot alignée sur l'architecture du processeur - généralement des puissances puissance de deux, comme 32, 64 ou 128, peut maximiser le débit et réduire le temps total d'apprentissage par époques. époques.

Applications concrètes

Il est essentiel de comprendre comment régler ce paramètre pour déployer des solutions d'IA efficaces dans différents secteurs d'activité. différents secteurs d'activité.

  1. Imagerie médicale à haute résolution: En l 'IA dans le domaine de la santé, les modèles sont souvent chargés d'analyser des tomodensitogrammes ou des IRM détaillés afin d'identifier des anomalies telles que des tumeurs. La taille des fichiers de ces images est considérable. Le traitement simultané d'un grand nombre d'entre elles dépasserait la capacité de la mémoire vidéo (VRAM), même du matériel le plus puissant. le plus puissant. Par conséquent, les praticiens utilisent des lots de très petite taille (par exemple, 1 ou 2) pour faciliter l'analyse des images médicales sans planter le système. l'analyse d'images médicales sans bloquer le système sans faire planter le système, en donnant la priorité à la capacité de traiter des données de haute fidélité plutôt qu'à la vitesse d'apprentissage brute.
  2. Inspection de la fabrication en temps réel: Inversement, dans les environnements de environnements de fabrication intelligente, la rapidité est critique. Un système d'inspection visuelle automatisé sur un convoyeur peut capturer des milliers d'images de circuits imprimés par heure. circuits imprimés par heure. Au cours de la phase d'inférence (détection des défauts dans la production), les systèmes peuvent utiliser l'inférence par lots pour détecter les défauts. l'inférence par lots pour pour regrouper les images entrantes et les traiter en parallèle. Cela permet d'optimiser le débit du système de vision par ordinateur, en veillant à ce qu'il suive le rythme de la production. système de vision par ordinateur, en veillant à ce qu'il suive le rythme de la ligne de production rapide. avec la chaîne de production rapide.

Configurer la taille des lots avec Ultralytics

Lors de l'utilisation du Paquet Ultralytics PythonLa configuration de la taille du lot est simple. est simple. La taille du batch vous permet de spécifier exactement le nombre d'images que le modèle doit voir avant de mettre à jour les poids. S'il est défini à -1la bibliothèque peut également utiliser un Fonction AutoBatch pour déterminer automatiquement la taille la taille maximale du lot que votre matériel peut prendre en charge.

from ultralytics import YOLO

# Load the latest YOLO11 model
model = YOLO("yolo11n.pt")

# Train the model on the COCO8 dataset with a specific batch size
# A batch size of 32 balances speed and memory usage for most standard GPUs
results = model.train(data="coco8.yaml", epochs=50, batch=32)

Distinguer les concepts apparentés

Il est important pour les praticiens de distinguer la "taille du lot" de la terminologie similaire que l'on trouve dans les cadres d'apprentissage profond. dans les cadres d'apprentissage profond.

  • Taille du lot par rapport à l'époque: Une époque représente un passage complet dans l'ensemble des données de formation. l 'ensemble des données d'apprentissage. La taille du lot détermine le nombre de lots détermine le nombre de morceaux de données qui sont divisés au cours de cette seule époque. Par exemple, si vous disposez de 1 000 échantillons et d'une taille de lot de 100, il vous faudra environ un an pour obtenir un échantillon complet de l'ensemble de données. taille de lot de 100, il faudra 10 itérations pour compléter une époque.
  • Taille des lots et normalisation des lots: Bien qu'ils portent le même nom, la normalisation des lots est une couche spécifique, la normalisation par lots est une technique spécifique utilisée pour normaliser les entrées des couches afin d'améliorer la stabilité. Bien que l'efficacité de la normalisation par lots puisse dépend de la taille du lot (il faut un lot suffisamment grand pour calculer des statistiques précises), il s'agit d'un élément structurel de l'architecture du réseau, et pas seulement d'une technique de normalisation. structurelle de l'architecture du réseau, et pas seulement un paramètre d'entraînement.
  • Formation vs. Inférence Batching: Pendant la formation, l'objectif est d'apprendre les poids. Lors de l'inférence, la mise en lots est purement une optimisation de la vitesse. l'inférence, la mise en lots est purement une optimisation de la vitesse. Pour les applications sensibles à la latence comme les véhicules autonomes, une taille de lot de 1 est est souvent utilisée pour obtenir une réponse immédiate, tandis que les tâches d'analyse de données peuvent utiliser de grands lots pour pour traiter des séquences vidéo historiques pendant la nuit.

Rejoindre la communauté Ultralytics

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

Rejoindre maintenant