HyperAI
Back to Headlines

Pourquoi les Réseaux Neuronaux Convolutifs Excellencent-ils avec les Images?

il y a 24 jours

Pourquoi les réseaux de neurones convolutifs sont-ils excellents pour l'analyse d'images ? Le théorème d'approximation universelle stipule qu'un réseau de neurones avec une seule couche cachée et une fonction d'activation non-linéaire peut approximer toute fonction continue. En pratique, cependant, le nombre de neurones dans cette couche cachée peut devenir extrêmement grand, ce qui rend difficile l'utilisation exclusive de ce type d'architecture. Ainsi, bien que théoriquement possible, un réseau neuronal à propagation simple n'est pas le choix le plus adapté pour traiter des données structurées, comme les images. La plateforme Hugging Face, connue pour son large catalogue de modèles d'intelligence artificielle, recense aujourd'hui plus d'un million de modèles pré-entraînés. Selon la tâche, différents types d'architectures de réseaux de neurones sont utilisés : par exemple, les transformateurs pour le traitement du langage naturel et les réseaux convolutifs pour la classification d'images. Cette diversité d'architectures s'explique par la structure spécifique des données à traiter. Symétrie et invariance Les physiciens sont fascinés par la symétrie, qui joue un rôle central dans les lois fondamentales de la physique. Par exemple, l'équation de mouvement d'une particule est la même, peu importe sa position dans l'espace-temps. La symétrie implique toujours une invariance par rapport à certaines transformations. Des cristaux de glace, par exemple, exhibent une invariance translationnelle ; les petits motifs se ressemblent, quelle que soit leur position dans le contexte plus large. Si nous savons que certaines symétries persistent dans nos données, nous pouvons exploiter cette information pour simplifier l'architecture de notre réseau neuronal. Considérons le cas de la classification d'images. Imaginons trois scènes différentes où apparaît un poisson rouge. Le poisson peut se trouver à n'importe quel endroit dans l'image, mais celle-ci doit toujours être classifiée comme "poisson rouge". Un réseau neuronal à propagation simple pourrait certes accomplir cette tâche avec une quantité suffisante de données d'entraînement. Cependant, il nécessite que l'image soit aplatie en un vecteur de pixels. Chaque neurone de la couche d'entrée, représentant un pixel, est alors connecté à chaque neurone de la couche cachée, et chaque neurone de la couche cachée à chaque neurone de la couche de sortie. Voici une illustration simplifiée de ce processus : L'image originale de 100x100 pixels devient un vecteur de 10 000 valeurs. Les connexions entre les pixels et les neurones cachés, puis les neurones cachés et les neurones de sortie, nécessitent un nombre colossal de paramètres. En aplatisseant l'image, deux problèmes majeurs émergent : 1. Perte d'information spatiale : l'ordre et la position des pixels sont perdus, ce qui rend difficile la détection de structures locales telles que des contours ou des formes. 2. Augmentation exponentielle des paramètres : le nombre de paramètres entraînables devient impraticable pour des images de grande taille. Exploitation des symétries : le réseau neuronal convolutif Les réseaux de neurones convolutifs (CNN) résolvent ces problèmes en utilisant des noyaux, également appelés filtres. Ces noyaux sont généralement de petite taille, comprises entre 3 et 7 pixels, et leurs paramètres sont appris au cours de l'entraînement. Le noyau est appliqué à l'image comme une grille, ce qui permet de capturer des caractéristiques localisées. Par exemple, un noyau peut détecter les lignes horizontales dans l'image, tandis qu'un autre peut capter les courbes convexes. Un CNN dispose généralement de plusieurs noyaux dans une couche, chacun se concentrant sur des aspects spécifiques de l'image. Les noyaux préservent l'ordre des pixels et favorisent l'apprentissage de structures localisées. En empilant plusieurs couches convolutives et en combinant avec des couches de regroupement (pooling), on peut apprendre des caractéristiques de haut niveau, tout en réduisant significativement la taille du réseau. En effet, le nombre de paramètres entraînables d'une couche convolutrice est beaucoup plus faible que celui d'une couche entièrement connectée. Pour une couche convolutrice, il suffit de taille_noyau x taille_noyau x nombre_noyaux de paramètres. Ainsi, l'utilisation de CNN permet de réaliser des économies de mémoire et de puissance de calcul, en exploitant la symétrie inhérente aux images. Résumé Les réseaux de neurones convolutifs sont particulièrement adaptés à l'analyse d'images car ils préservent l'information locale de celles-ci. Contrairement aux réseaux entièrement connectés qui aplatisse l'image, perdant ainsi sa structure spatiale, les CNN utilise des noyaux avec des paramètres apprenables pour identifier des caractéristiques localisées. Cette approche offre plusieurs avantages : - Préservation des structures locales : les noyaux permettent de détecter des contours, des formes, et d'autres détails pertinents. - Réduction du nombre de paramètres : en concentrant l'apprentissage sur des zones localisées, les CNN nécessitent moins de paramètres, ce qui optimise les performances et l'efficacité. D'autres architectures avancées exploitant des symétries, comme les réseaux de neurones graphiques et les réseaux de neurones informés par la physique, ont également été développées pour répondre à des besoins spécifiques dans des domaines variés. En conclusion, les CNN sont un choix judicieux pour la classification d'images grâce à leur capacité à préserver et à exploiting les structures locales tout en minimisant les coûts computationnels.

Related Links