Découvrez PyTorch, la bibliothèque centrale qui alimente Ultralytics . Découvrez ses graphiques dynamiques, GPU et comment créer des modèles d'apprentissage profond efficaces.
PyTorch une bibliothèque open source d'apprentissage automatique principalement développée par Meta AI, qui est devenue une référence pour les chercheurs et les développeurs dans le domaine de l'apprentissage profond. Réputée pour sa flexibilité et sa facilité d'utilisation, elle permet aux utilisateurs de créer et d'entraîner des réseaux neuronaux complexes à l'aide d'un graphe de calcul dynamique . Cette fonctionnalité, souvent appelée « exécution immédiate », permet d'évaluer le code immédiatement, ce qui rend le débogage et le prototypage beaucoup plus intuitifs par rapport aux frameworks qui s'appuient sur des définitions de graphes statiques. Elle s'intègre parfaitement au langage Python et apparaît comme une extension naturelle des outils informatiques scientifiques standard.
Au cœur de ce cadre se trouvent les tenseurs, qui sont des tableaux multidimensionnels similaires à ceux que l'on trouve dans la NumPy . Cependant, contrairement aux tableaux standard , PyTorch sont conçus pour tirer parti de GPU fournie par NVIDIA CUDA. Cette accélération matérielle est essentielle pour le traitement parallèle massif nécessaire à l'entraînement efficace des modèles d' intelligence artificielle (IA) modernes .
La bibliothèque prend en charge un vaste écosystème d'outils pour la vision par ordinateur (CV) et le traitement du langage naturel . En fournissant un ensemble complet de couches, d'optimiseurs et de fonctions de perte pré-construits, elle simplifie le processus de création d'algorithmes pour des tâches telles que la classification d'images et la modélisation de séquences.
La polyvalence de ce cadre a conduit à son adoption dans divers secteurs pour des solutions d'IA à fort impact :
Pour mieux comprendre son rôle, il est utile de distinguer PyTorch autres outils courants de la pile IA :
Toute la gamme Ultralytics , y compris le modèle de pointe YOLO26 et le très répandu YOLO11, est construite de manière native sur PyTorch. Cette base garantit aux utilisateurs de bénéficier de la vitesse, de la stabilité et du soutien étendu de la communauté du framework. Qu'il s'agisse d'effectuer un transfert d'apprentissage sur des données d'entraînement personnalisées ou d'exporter des modèles pour des appareils de pointe, l' architecture sous-jacente s'appuie sur PyTorch et les gradients PyTorch .
La future Ultralytics simplifie encore davantage cette expérience, en fournissant une interface unifiée pour gérer l'approvisionnement, la formation et le déploiement des ensembles de données sans avoir à écrire de code standardisé.
L'exemple suivant montre comment vérifier GPU et exécuter une inférence à l'aide d'un YOLO , illustrant ainsi 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)