Convolutional Neural Network (CNN)
Découvre comment les réseaux neuronaux convolutifs (CNNs) alimentent la vision par ordinateur moderne. Explore les couches et les applications, et apprends à exécuter Ultralytics YOLO26 pour l’IA en temps réel.
Un réseau de neurones convolutif (CNN) est une architecture spécialisée d’apprentissage profond conçue pour traiter des données à topologie en grille, notamment les images numériques. Inspirés de la structure biologique du cortex visuel, les CNN sont particulièrement capables de préserver les relations spatiales au sein des données d’entrée. Contrairement aux réseaux neuronaux traditionnels, qui aplatissent une image pour en faire une longue liste de nombres, les CNN analysent de petites régions qui se chevauchent afin d’apprendre automatiquement des hiérarchies de caractéristiques — des contours et textures simples aux formes et objets complexes. Cette capacité fait des CNN la technologie fondamentale des systèmes modernes de vision par ordinateur (CV).
Fonctionnement des réseaux de neurones convolutifs#
La puissance d’un CNN tient à sa capacité à réduire une image complexe à une forme plus facile à traiter, sans perdre les caractéristiques essentielles à une bonne prédiction. Pour cela, un enchaînement de couches distinctes transforme le volume d’entrée en une classe ou une valeur de sortie :
- Couche de convolution : C’est le bloc fondamental. Elle utilise un ensemble de filtres (ou noyaux) entraînables qui glissent sur l’image d’entrée comme le faisceau d’une lampe torche. À chaque position, le filtre effectue une opération mathématique appelée convolution et crée une carte de caractéristiques qui met en évidence des motifs précis, comme les lignes horizontales ou les dégradés de couleur.
- Fonction d’activation : Après la convolution, une fonction non linéaire est appliquée à la sortie. Le choix le plus courant est ReLU (unité linéaire rectifiée), qui ramène à zéro les valeurs de pixels négatives. Cela introduit de la non-linéarité, permettant au réseau d’apprendre des motifs complexes au-delà des simples relations linéaires.
- Couche de pooling : Également appelée sous-échantillonnage, cette couche réduit la dimension des cartes de caractéristiques. Des techniques comme le max pooling ne conservent que les caractéristiques les plus importantes (les valeurs les plus élevées) d’une région, ce qui réduit la charge de calcul et contribue à prévenir le surapprentissage.
- Couche entièrement connectée : À la dernière étape, les caractéristiques traitées sont aplaties puis transmises à un réseau neuronal (NN) standard. Cette couche s’appuie sur les caractéristiques de haut niveau détectées par les couches précédentes pour effectuer une classification ou une prédiction finale, comme « chat » ou « chien ».
Applications concrètes#
Les CNN ont transformé de nombreux secteurs en automatisant des tâches visuelles avec une précision surhumaine.
- Diagnostic médical : Dans le domaine de la santé, les CNN aident les radiologues à repérer des anomalies dans les examens médicaux plus rapidement que l’œil humain. Par exemple, les modèles d’apprentissage profond analysent les IRM et les scanners pour détecter les premiers signes de tumeurs ou de fractures. Les recherches sur l'IA en radiologie montrent comment ces outils améliorent la cohérence et la rapidité des diagnostics.
- Systèmes autonomes : Les voitures autonomes s’appuient fortement sur les CNN pour percevoir leur environnement. Des modèles comme YOLO26 utilisent des architectures de base CNN efficaces pour effectuer la détection d’objets en temps réel et identifier les piétons, les panneaux de signalisation et les autres véhicules afin de prendre des décisions de conduite en une fraction de seconde.
CNN et Vision Transformers (ViT)#
Les CNN ont longtemps été la norme pour les tâches de vision, mais une architecture plus récente, appelée Vision Transformer (ViT), a fait son apparition.
- CNN : Les CNN traitent les images à l’aide de caractéristiques locales et sont très efficaces sur les petits jeux de données grâce à leur « biais inductif » (ils supposent que les pixels voisins sont liés). Ils excellent dans les scénarios nécessitant l'inférence en temps réel sur des appareils périphériques.
- ViT : Les ViT découpent les images en patches et les traitent à l’aide de mécanismes d'auto-attention globale. Ils peuvent ainsi capturer les dépendances à longue portée dans une image, mais nécessitent généralement d’immenses jeux de données et davantage de puissance de calcul pour un entraînement efficace.
Exemple de mise en œuvre#
Les bibliothèques modernes facilitent l’utilisation des modèles basés sur les CNN. Le package ultralytics donne accès à des modèles de pointe comme YOLO26, qui intègrent des architectures CNN hautement optimisées pour une inférence rapide.
L’exemple suivant montre comment charger un modèle CNN préentraîné et effectuer une prédiction :
from ultralytics import YOLO
# Charger un modèle YOLO26, qui utilise une architecture CNN avancée
model = YOLO("yolo26n.pt")
# Lancer l’inférence sur une image pour identifier les objets
results = model("https://ultralytics.com/images/bus.jpg")
# Afficher les résultats de la prédiction
results[0].show()Outils de développement#
Le développement de CNN s’appuie sur un écosystème robuste d’outils open source. Les ingénieurs utilisent généralement des frameworks comme PyTorch ou TensorFlow pour créer des architectures personnalisées. Ces bibliothèques fournissent les opérations de bas niveau sur les tenseurs nécessaires à la convolution et à la rétropropagation.
Pour les équipes qui souhaitent rationaliser le cycle de vie des projets de vision par ordinateur — de la collecte de données au déploiement —, la plateforme Ultralytics propose une solution complète. Elle simplifie les flux de travail complexes, permettant aux développeurs de se concentrer sur l’utilisation des CNN pour résoudre des problèmes métier plutôt que sur la gestion de l’infrastructure. De plus, les modèles peuvent être exportés dans des formats comme ONNX ou TensorRT pour un déploiement haute performance sur des appareils périphériques.










