PyTorch
Explore PyTorch, la bibliothèque centrale alimentant Ultralytics YOLO26. Apprends ses graphes dynamiques, l'accélération GPU et comment construire des modèles d'apprentissage profond efficaces.
PyTorch est une bibliothèque de machine learning open-source principalement développée par Meta AI qui est devenue une pierre angulaire pour les chercheurs et les développeurs dans le domaine du deep learning. Connue pour sa flexibilité et sa facilité d'utilisation, elle te permet de construire et d'entraîner des neural networks complexes en utilisant un graphe de calcul dynamique. Cette fonctionnalité, souvent appelée « eager execution », permet au code d'être évalué immédiatement, rendant le debugging et le prototypage nettement plus intuitifs par rapport aux frameworks qui reposent sur des définitions de graphes statiques. Elle s'intègre parfaitement au langage de programmation Python, s'apparentant à une extension naturelle des outils de calcul scientifique standard.
Link to this sectionMécanismes fondamentaux et importance#
Au cœur de ce framework se trouvent des tensors, qui sont des tableaux multidimensionnels similaires à ceux trouvés dans la NumPy documentation. Cependant, contrairement aux tableaux standard, les tensors PyTorch sont conçus pour tirer parti de l'GPU acceleration fournie par NVIDIA CUDA. Cette accélération matérielle est critique pour le traitement parallèle massif requis pour entraîner efficacement des modèles d'artificial intelligence (AI).
La bibliothèque prend en charge un vaste écosystème d'outils pour le computer vision (CV) et le traitement du langage naturel. En fournissant un riche ensemble de couches pré-construites, d'optimiseurs et de fonctions de perte, elle simplifie le processus de création d'algorithmes pour des tâches telles que l'image classification et la modélisation de séquences.
Link to this sectionApplications concrètes#
La polyvalence de ce framework a conduit à son adoption dans diverses industries pour des solutions AI à fort impact :
-
Autonomous Vehicles : Les leaders de l'industrie tirent parti de PyTorch pour construire des modèles de deep learning qui traitent les flux vidéo provenant des caméras embarquées. Ces modèles effectuent de l'object detection en temps réel pour identifier les voies, les panneaux et les piétons, permettant une navigation plus sûre.
-
Diagnostics médicaux : Les chercheurs utilisent le framework pour développer des applications de santé avancées. Par exemple, il alimente des systèmes qui analysent les scanners IRM ou les radiographies pour aider les médecins à détecter des tumeurs via une image segmentation précise.
Link to this sectionComparaison avec des outils connexes#
Pour mieux comprendre son rôle, il est utile de distinguer PyTorch des autres outils courants de la pile AI :
- Vs. TensorFlow : Développé par Google, TensorFlow s'appuyait historiquement sur des graphes de calcul statiques, ce qui rendait le débogage plus difficile mais optimisait le déploiement. Bien que les deux frameworks aient convergé en termes de fonctionnalités, PyTorch est souvent préféré pour le prototypage rapide et la recherche grâce à son interface intuitive.
- Vs. OpenCV : OpenCV est une bibliothèque axée sur les fonctions traditionnelles de traitement d'image (comme le redimensionnement, le filtrage et la conversion de couleur) plutôt que sur l'entraînement de réseaux de neurones. Dans un flux de travail typique, les développeurs utilisent OpenCV pour le data preprocessing avant d'injecter les images dans un modèle PyTorch pour analyse.
Link to this sectionIntégration avec Ultralytics#
L'ensemble de la famille de modèles Ultralytics, y compris le très avancé YOLO26 et le largement utilisé YOLO11, est construit nativement sur PyTorch. Cette fondation garantit que tu bénéficies de la vitesse, de la stabilité et du vaste soutien de la communauté liés au framework. Que tu effectues du transfer learning sur des training data personnalisées ou que tu exportes des modèles pour des appareils Edge, l'architecture sous-jacente repose sur les tensors et les gradients de PyTorch.
La prochaine Ultralytics Platform simplifie encore cette expérience, en fournissant une interface unifiée pour gérer l'approvisionnement en datasets, l'entraînement et le déploiement sans avoir besoin d'écrire beaucoup de code passe-partout.
L'exemple suivant montre comment vérifier la disponibilité du GPU et exécuter l'inférence en utilisant un modèle YOLO, illustrant comment le framework gère l'accélération matérielle en arrière-plan :
import torch
from ultralytics import YOLO
# Check if CUDA (GPU) is available for PyTorch acceleration
device = "cuda" if torch.cuda.is_available() else "cpu"
print(f"PyTorch is using device: {device}")
# Load a YOLO26n model (built on PyTorch)
model = YOLO("yolo26n.pt")
# Perform object detection on an image
# PyTorch handles tensor operations and moves data to the GPU automatically
results = model("https://ultralytics.com/images/bus.jpg", device=device)





