CPU
Explore le rôle essentiel du CPU dans l'IA. Apprends à optimiser le prétraitement et le post-traitement des données et à exécuter l'inférence Ultralytics YOLO26 sur des appareils edge dès aujourd'hui.
Une unité centrale de traitement (CPU) est le composant principal d'un ordinateur, qui agit comme son « cerveau » et interprète et exécute les instructions provenant du matériel et des logiciels. Dans le contexte de l'intelligence artificielle (AI), le CPU joue un rôle fondamental dans la gestion des données, l'orchestration du système et l'exécution des inférences, notamment sur les appareils edge où l'efficacité énergétique est essentielle. Bien que le matériel spécialisé comme les GPU soit souvent associé aux tâches intensives de l'entraînement des modèles de deep learning, le CPU reste indispensable à l'ensemble du pipeline de machine learning (ML).
Le rôle des CPU dans les workflows d'IA#
Bien que les GPU soient réputés pour leur parallélisme massif pendant l'entraînement, le CPU constitue le moteur de nombreuses étapes essentielles du cycle de vie de la vision par ordinateur (CV). Son architecture, généralement fondée sur des conceptions x86 (Intel, AMD) ou ARM, est optimisée pour le traitement séquentiel et le contrôle d'une logique complexe.
- Prétraitement des données : Avant qu'un réseau neuronal puisse apprendre, les données doivent être préparées. Les CPU excellent dans des tâches telles que le chargement de fichiers, le nettoyage des données et les transformations complexes à l'aide de bibliothèques comme NumPy et OpenCV.
- Inférence edge : Pour un déploiement dans le monde réel, l'exécution de modèles sur d'immenses serveurs n'est pas toujours viable. Les CPU permettent un déploiement efficace de modèles sur du matériel grand public, par exemple pour exécuter Ultralytics YOLO26 sur un ordinateur portable ou un Raspberry Pi.
- Post-traitement : Après qu'un modèle a produit des probabilités brutes, le CPU prend souvent en charge la logique finale, notamment la suppression des non-maxima (NMS) en détection d'objets, afin de filtrer les prédictions en double et d'affiner les résultats.
CPU contre GPU contre TPU#
Comprendre l'écosystème matériel est essentiel pour optimiser les opérations de machine learning (MLOps). Ces processeurs diffèrent considérablement par leur architecture et leurs cas d'utilisation idéaux.
- CPU : Conçu pour la polyvalence et la logique complexe. Il comporte quelques cœurs puissants qui traitent les tâches séquentiellement. Il convient particulièrement à l'augmentation des données, à la gestion des pipelines et à l'inférence à faible latence sur de petits lots.
- GPU (unité de traitement graphique) : Initialement conçus pour les graphismes, les GPU disposent de milliers de petits cœurs conçus pour le traitement parallèle. Ils sont la norme pour l'entraînement des modèles, car ils peuvent effectuer des multiplications matricielles bien plus rapidement qu'un CPU.
- TPU (unité de traitement des tenseurs) : Circuit spécialisé (ASIC) développé par Google Cloud, spécifiquement conçu pour les calculs tensoriels. Bien qu'il soit très efficace pour certaines charges de travail, il ne possède pas la flexibilité polyvalente d'un CPU.
Applications concrètes#
Les CPU sont souvent le matériel privilégié pour les applications où le coût, la disponibilité et la consommation énergétique l'emportent sur le besoin d'un débit brut massif.
-
Caméras de sécurité intelligentes : Dans les systèmes d'alarme de sécurité, les caméras traitent souvent les flux vidéo localement. Un modèle de détection d'objets basé sur un CPU peut identifier une personne ou un véhicule et déclencher une alerte sans envoyer la vidéo vers le cloud, ce qui préserve la bande passante et la confidentialité des utilisateurs.
-
Automatisation industrielle : Dans les usines, les systèmes de maintenance prédictive utilisent des CPU pour surveiller les données des capteurs des machines. Ces systèmes analysent en temps réel les vibrations ou les pics de température afin de prédire les pannes, garantissant une automatisation fluide de la fabrication sans nécessiter de coûteux clusters de GPU.
Exécuter des inférences sur CPU avec Ultralytics#
Les développeurs testent souvent les modèles sur des CPU afin de vérifier leur compatibilité avec les environnements de cloud computing serverless ou les appareils basse consommation. L'API Ultralytics te permet de cibler facilement le CPU et de garantir que ton application s'exécute partout.
L'exemple suivant montre comment charger un modèle léger et exécuter une inférence spécifiquement sur le CPU :
from ultralytics import YOLO
# Load the lightweight YOLO26 nano model
# Smaller models are optimized for faster CPU execution
model = YOLO("yolo26n.pt")
# Run inference on an image, explicitly setting the device to 'cpu'
results = model.predict("https://ultralytics.com/images/bus.jpg", device="cpu")
# Print the detection results (bounding boxes)
print(results[0].boxes.xywh)Pour améliorer davantage les performances sur les CPU Intel, les développeurs peuvent exporter leurs modèles au format OpenVINO, qui optimise spécifiquement la structure du réseau neuronal pour l'architecture x86. Pour gérer les jeux de données et orchestrer ces déploiements, des outils comme l'Ultralytics Platform simplifient le workflow, de l'annotation à l'exécution sur edge.









