Découvrez comment la convolution alimente l'IA dans la vision par ordinateur, permettant des tâches telles que la détection d'objets, la reconnaissance d'images et l'imagerie médicale avec précision.
La convolution est une opération mathématique spécialisée qui constitue l'élément fondamental des systèmes modernes de vision par ordinateur. modernes de vision par ordinateur (VA). Dans le contexte de l'intelligence artificielle (IA), convolution permet aux modèles de traiter des données en grille, telles que des images, en filtrant systématiquement les entrées afin d'extraire des modèles significatifs. des motifs significatifs. Contrairement aux algorithmes traditionnels qui nécessitent la définition manuelle de règles, la convolution permet à un réseau neuronal d'apprendre automatiquement l'espace. réseau neuronal d'apprendre automatiquement des hiérarchies hiérarchies spatiales de caractéristiques - allant de simples bords et textures à des formes d'objets complexes - imitant les processus biologiques observés dans le cortex visuel de l'homme et de la femme. biologiques observés dans le cortex visuel du cerveau.
L'opération consiste à faire glisser une petite matrice de chiffres, appelée noyau ou filtre, sur une image d'entrée. noyau ou filtre, sur une image d'entrée. À chaque position, le noyau effectue une multiplication par élément avec les valeurs des pixels qui se chevauchent et additionne les résultats pour produire un seul pixel de sortie. produire un seul pixel de sortie. Ce processus génère une carte des caractéristiques, qui met en évidence les zones où des spécifiques ont été détectés.
Les paramètres clés qui définissent le comportement d'une convolution sont les suivants :
La convolution est le principal moteur des réseaux neuronaux réseaux neuronaux convolutifs (CNN). Son importance réside dans deux propriétés principales : le partage des paramètres et la localité spatiale. la localité spatiale. En utilisant les mêmes poids du modèle (noyau) sur l'ensemble de l'image, le réseau reste le réseau reste efficace sur le plan informatique et capable de invariance de traduction, ce qui signifie qu'il peut reconnaître un objet quel que soit l'endroit où il apparaît dans l'image. Cette efficacité permet à des architectures sophistiquées telles que YOLO11 d'effectuer des inférences en temps réel sur sur différents matériels, des puissants GPU aux appareils d'intelligence artificielle Edge AI à ressources limitées.
L'utilité de la convolution s'étend à pratiquement tous les secteurs utilisant des données visuelles :
Il est important de distinguer la convolution des couches entièrement connectées (denses). Dans une couche entièrement connectée, chaque neurone d'entrée se connecte à chaque neurone de sortie. chaque neurone d'entrée se connecte à chaque neurone de sortie, ce qui est coûteux en termes de calcul et ne tient pas compte de la structure spatiale des images. structure spatiale des images. À l'inverse, la convolution préserve les relations spatiales et réduit considérablement le nombre de paramètres. paramètres, ce qui permet d'éviter l'ajustement excessif sur des données données à haute dimension. Alors que les couches denses sont souvent utilisées pour la classification finale, les couches convolutives se chargent de l'extraction des caractéristiques. l'extraction des caractéristiques.
Vous pouvez visualiser l'architecture convolutive des détecteurs d'objets modernes à l'aide de la fonction
ultralytics paquet. Le code suivant charge un
YOLO11 et imprime sa structure, révélant ainsi les
Conv2d les couches utilisées pour le traitement.
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")
# Print the model architecture to observe Conv2d layers
# These layers perform the convolution operations to extract features
print(model.model)