Ultralytics YOLO27 : Rejoins la liste d'attente.
Licence YOLO
Retour au glossaire Ultralytics

Convolutional Neural Network (CNN)

Un réseau neuronal convolutif (CNN) apprend des caractéristiques d’image à l’aide de filtres glissants partagés. Découvre ses couches, ses propriétés, ses principaux modèles et les différences entre les CNN et les ViT.

Un réseau neuronal convolutif (CNN) est une architecture d'apprentissage profond qui traite des données structurées en grille, le plus souvent des images, à l'aide de petits filtres apprenables qui glissent sur l'entrée. Chaque filtre réutilise les mêmes poids à chaque position ; un CNN détecte donc un motif, comme un bord ou une roue, où qu'il apparaisse, tout en utilisant beaucoup moins de paramètres qu'un réseau entièrement connecté. Les couches empilées construisent une hiérarchie de caractéristiques, des bords et textures des premières couches aux parties d'objets et aux objets entiers des couches plus profondes. Les CNN ont porté la majeure partie des progrès en vision par ordinateur depuis la victoire d'AlexNet au concours ImageNet en 2012, et restent le choix le plus courant pour la vision en temps réel sur du matériel périphérique.

Fonctionnement d'un CNN#

Un CNN répète quelques types de couches organisées en étapes, chacune travaillant à une résolution inférieure à celle de la précédente :

  • Couches de convolution : Chaque couche fait glisser sur la hauteur et la largeur de l'entrée un ensemble de filtres apprenables, généralement de 3×3. Chaque filtre produit un canal de la carte de caractéristiques de sortie ; une couche comportant 64 filtres produit donc 64 canaux.
  • Normalisation et activation : La normalisation par lots maintient les sorties de chaque couche dans une plage stable pendant l'entraînement, et une fonction d'activation non linéaire comme ReLU ou SiLU permet aux couches empilées de représenter plus qu'une seule transformation linéaire.
  • Sous-échantillonnage : La mise en commun maximale ou une convolution de pas 2 réduit de moitié la hauteur et la largeur, ce qui élargit le champ réceptif des couches suivantes et réduit le calcul. De nombreuses architectures modernes effectuent le sous-échantillonnage principalement avec des convolutions à pas.
  • Tête : Pour la classification d'images, la mise en commun moyenne globale réduit chaque canal final à un nombre, et une couche entièrement connectée convertit ces nombres en scores de classe. Les modèles de détection et de segmentation remplacent cette tête par des couches qui prédisent des boîtes ou des masques par pixel.

Principales propriétés des CNN#

Trois propriétés expliquent pourquoi les convolutions sont adaptées aux images. La connectivité locale signifie que chaque sortie ne dépend que d'un petit voisinage de l'entrée, ce qui correspond à la forte corrélation entre pixels proches. Le partage des poids signifie qu'un filtre couvre toute l'image ; le nombre de paramètres reste donc identique quelle que soit la taille de l'entrée. L'équivariance par translation signifie que le décalage de l'entrée entraîne le même décalage de la carte de caractéristiques : un motif appris dans un coin est ainsi reconnu partout, et les couches de mise en commun ajoutent une certaine tolérance aux petits décalages. Ensemble, ces propriétés constituent le biais inductif du CNN, c'est-à-dire les hypothèses intégrées qui lui permettent d'apprendre à partir de moins d'images qu'un transformer.

L'extrait PyTorch ci-dessous compare une couche convolutive à une couche entièrement connectée appliquée à la même image RGB de 224×224.

import torch
from torch import nn

image = torch.randn(1, 3, 224, 224)

# 64 learnable 3x3 filters, each reused at every position of the RGB image
conv = nn.Conv2d(in_channels=3, out_channels=64, kernel_size=3, padding=1)

# A fully connected layer mapping the same flattened image to only 64 numbers
dense = nn.Linear(3 * 224 * 224, 64)

conv_params = sum(p.numel() for p in conv.parameters())
dense_params = sum(p.numel() for p in dense.parameters())
print(f"Conv2d: output {tuple(conv(image).shape)}, {conv_params:,} parameters")
print(f"Linear: output {tuple(dense(image.flatten(1)).shape)}, {dense_params:,} parameters")

Il affiche Conv2d: output (1, 64, 224, 224), 1,792 parameters et Linear: output (1, 64), 9,633,856 parameters. Grâce au partage des poids, la convolution produit 64 cartes de caractéristiques en pleine résolution avec 1 792 paramètres ; la couche entièrement connectée en nécessite 5 376 fois plus pour ne produire que 64 nombres.

Architectures CNN emblématiques#

  • LeNet-5 (1998) : Le réseau de Yann LeCun, conçu pour lire des chiffres manuscrits, a établi le modèle d'alternance entre couches convolutives et de mise en commun, suivies de couches entièrement connectées ; il a été déployé commercialement pour lire des chèques bancaires.
  • AlexNet (2012) : Entraîné sur deux GPU avec des activations ReLU et du dropout, le modèle a remporté le défi ILSVRC 2012 avec un taux d'erreur de 15,3 % sur les cinq premières prédictions, contre 26,2 % pour le deuxième.
  • VGG (2014) : A montré que l'empilement de petites convolutions 3×3, jusqu'à 16 à 19 couches de poids, améliore nettement la précision sur ImageNet.
  • ResNet (2015) : Les connexions résiduelles ont rendu entraînables des réseaux pouvant atteindre 152 couches, et un ensemble de ResNet a remporté ILSVRC 2015.
  • U-Net (2015) : CNN encodeur-décodeur avec connexions de saut, devenu l'architecture de référence pour la segmentation d'images biomédicales.
  • ConvNeXt (2022) : ResNet modernisé à l'aide de choix de conception issus de l'ère des transformers, qui atteint une précision top-1 de 87,8 % sur ImageNet et surpasse Swin Transformer pour la détection sur COCO.

Applications des CNN#

  • Détection d'objets : Les détecteurs CNN à une étape repèrent et classent les objets en une seule passe avant, assez rapidement pour traiter des vidéos sur des caméras, des téléphones et des cartes embarquées.
  • Analyse d'images médicales : Les CNN de type U-Net segmentent les organes, les tumeurs et les lésions dans les scanners CT et les IRM, où l'étiquette de chaque pixel compte.
  • Estimation de pose : Les CNN prédisent les points clés du corps pour l'analyse sportive, l'ergonomie et les applications de remise en forme.
  • Signaux autres que les images : Les convolutions unidimensionnelles traitent les formes d'onde audio et les séries temporelles de capteurs, tandis que les CNN bidimensionnels classent les spectrogrammes en reconnaissance vocale.

CNN et Vision Transformers#

Un transformer de vision (ViT) découpe une image en patches et relie chaque patch à tous les autres par l'auto-attention ; il dispose donc d'un contexte global dès la première couche. Son biais inductif plus faible a un coût : le ViT d'origine était moins performant que des ResNet de taille similaire lorsqu'il était entraîné uniquement sur ImageNet, et ne les égalait ou ne les dépassait qu'après un préentraînement sur 14 à 300 millions d'images. Le coût de l'attention augmente aussi avec le carré du nombre de patches, ce qui rend les entrées haute résolution coûteuses, alors que celui d'une convolution n'augmente que linéairement avec le nombre de pixels. De nombreux modèles actuels combinent donc les deux approches : ils conservent des étapes convolutives à haute résolution et ajoutent l'attention lorsque la carte de caractéristiques est petite. YOLO26 suit ce modèle : les blocs Conv (convolution, normalisation par lots et SiLU) et les blocs C3k2 font l'essentiel du travail, tandis que l'auto-attention multi-têtes ne s'exécute que sur la carte de caractéristiques de pas 32, une grille 20×20 pour une image de 640×640.

Découvre les solutions

La vision par ordinateur dans le sport

La vision par ordinateur dans le sport

Découvre comment Ultralytics YOLO propulse la vision par ordinateur dans le sport grâce au suivi des joueurs et du ballon, aux analyses de performance, aux conseils d’entraînement et à la rééducation des athlètes.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les images aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Applique la vision par ordinateur dans l’aérospatiale avec Ultralytics YOLO pour l’inspection des aéronefs, la détection des corps étrangers sur les pistes, les opérations au sol des aéroports et la détection des défauts des matériaux composites.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble l’avenir de l’IA !

Commence ton parcours vers l’avenir de l’apprentissage automatique