Introduction
Disons que nous voulons prédire les finalistes de la Coupe du Monde de Rugby. Au lieu de s'appuyer uniquement sur l'analyse humaine, nous pouvons utiliser un modèle de Deep Learning.
Le modèle serait entraîné sur des données historiques des matchs de la Coupe du Monde de Rugby, y compris les performances des équipes et les résultats. En appliquant des transformations successives aux données d'entrée à l'aide de fonctions d'activation, le modèle apprend des motifs et des relations complexes.
Une fois entraîné, le modèle prend les performances récentes des équipes participantes en entrée. Il utilise des fonctions d'activation pour traiter les données et faire des prédictions sur les deux équipes les plus susceptibles d'atteindre la finale.
Cet article vise à explorer diverses fonctions d'activation couramment utilisées dans les tâches de vision par ordinateur. Nous examinerons leurs propriétés, discuterons des avantages et des limites, et fournirons des exemples spécifiques pour illustrer leurs applications dans différents scénarios.
Comprendre les réseaux de neurones
Avant de nous plonger dans les subtilités des fonctions d'activation, rappelons brièvement le concept des réseaux neuronaux dans le domaine de la vision par ordinateur. Les réseaux neuronaux, inspirés par la complexité du cerveau humain, sont constitués de couches interconnectées de neurones artificiels. Il y a une couche d'entrée et une couche de sortie, reliées par des couches cachées, comme le montre la figure. Chaque couche cachée est constituée de neurones connectés à un ou plusieurs neurones de la couche précédente et de la couche suivante. Les neurones sont en fait des fonctions.
Pour simplifier : si nous considérons les données d'entrée comme un point de départ et les données de sortie comme un point d'arrivée, nous pouvons voir le réseau neuronal comme une combinaison des chemins empruntés par les données d'entrée pour arriver au résultat.
Grâce au processus de formation, ces réseaux apprennent à reconnaître des modèles et à faire des prédictions en ajustant les poids et les biais de ces neurones.
Les poids
Les poids représentent les coefficients dans l'équation d'un réseau neuronal. Lors de la formation d’un réseau neuronal à l’aide d’un ensemble de données de formation, cela commence par un ensemble de poids prédéterminé. Ces poids sont ensuite ajustés et optimisés pendant le processus d'entraînement pour obtenir les meilleures valeurs possibles.
Cela se produit pendant le processus de formation grâce à une technique appelée rétropropagation combinée à une descente de gradient.
- Initialisation : La première étape consiste à initialiser aléatoirement les poids, chaque poids représentant un paramètre qui détermine l'influence d'une fonctionnalité ou d'un filtre particulier dans le réseau.
- Propagation vers l'avant: Lors de la propagation vers l'avant, les données d'entrée sont introduites dans le réseau et les poids sont utilisés pour calculer les prédictions de sortie. Les prédictions sont ensuite comparées aux étiquettes réelles pour calculer la perte, qui représente l'écart entre les valeurs prédites et réelles.
- Rétropropagation: Dans cette étape, les gradients de perte par rapport aux poids sont calculés à l'aide de la règle de calcul en chaîne. Les gradients indiquent la direction et l'ampleur des ajustements de poids nécessaires pour réduire la perte.
- Descente graduelle: Les gradients calculés sont utilisés pour mettre à jour les poids dans le réseau. La descente de gradient est utilisée, ce qui implique de faire de petits pas dans la direction opposée aux gradients, dans le but de minimiser la perte. Le taux d'apprentissage détermine la taille de ces étapes.
- Optimisation itérative : Les étapes 2 à 4 sont répétées de manière itérative sur l'ensemble de données d'entraînement. Chaque itération est appelée une époque. Au fur et à mesure de la formation, le réseau apprend progressivement à ajuster ses pondérations pour réduire les pertes et améliorer la précision de ses prédictions.
- Convergence:Le processus de formation se poursuit jusqu'à ce qu'un critère d'arrêt soit rempli, comme atteindre un nombre maximum d'époques ou observer une amélioration négligeable des performances.
En ajustant à plusieurs reprises les pondérations en fonction des gradients calculés, le CNN apprend à reconnaître des modèles et des caractéristiques significatives dans les données d'entrée, optimisant ainsi les pondérations pour obtenir les meilleures valeurs possibles pour des prédictions précises.
Le biais
Le biais, quant à lui, est une valeur fixe ajoutée au produit des intrants et des pondérations. Il sert d’opposé au seuil, déterminant quand activer la fonction d’activation. Essentiellement, la valeur du biais régit le processus décisionnel de la fonction d’activation.
Les fonctions d'activation jouent un rôle central dans ce processus, agissant comme des transformations non linéaires appliquées aux sorties de ces neurones, leur permettant de modéliser des relations complexes entre les entrées et les sorties.
Importance des fonctions d'activation dans les réseaux de neurones
Les réseaux de neurones sans fonctions d'activation se limiteraient à représenter des transformations linéaires, ce qui les rendrait inadéquats pour résoudre des problèmes complexes. Les fonctions d'activation introduisent la non-linéarité, permettant aux réseaux neuronaux de capturer des modèles complexes et de faire des prédictions plus précises. En appliquant une fonction d'activation appropriée, la puissance d'expression du réseau augmente de façon exponentielle, lui permettant d'apprendre et de généraliser à partir d'ensembles de données complexes.
Fonctions d'activation populaires
Dans cette section, nous explorerons plusieurs fonctions d'activation populaires largement utilisées dans les tâches de vision par ordinateur et analyserons leurs caractéristiques, avantages et limites.
- Fonction d'activation sigmoïde
La fonction d'activation sigmoïde, également connue sous le nom de fonction logistique, est un choix classique dans les réseaux de neurones.
- Définition et propriétés :
La fonction sigmoïde mappe l'entrée sur une plage comprise entre 0 et 1.
- Convient aux tâches de classification binaire. Il présente une courbe lisse en forme de S, facilitant une optimisation fluide basée sur le gradient.
- Cas d'utilisation et limites de la vision par ordinateur : bien que le sigmoïde ait été largement utilisé dans le passé, il présente des limites, telles que le problème du gradient de disparition. À mesure que l’entrée devient extrêmement grande ou petite, le gradient se rapproche de zéro, ce qui entraîne une convergence plus lente et des défis dans la formation des réseaux neuronaux profonds.
- Unité Linéaire Rectifiée (ReLU)
ReLU a gagné en popularité ces dernières années, notamment pour sa simplicité et son efficacité dans les réseaux de neurones profonds.
- Définition et propriétés :
La fonction d'activation ReLU renvoie l'entrée telle quelle si elle est positive, et zéro sinon. Il introduit la parcimonie et l'efficacité des calculs en mettant à zéro les valeurs négatives.
- Avantages par rapport à la fonction d'activation sigmoïde : ReLU surmonte le problème de gradient de disparition associé à la fonction sigmoïde, permettant une convergence plus rapide et un entraînement plus efficace des réseaux neuronaux profonds.
- Exemples d'application : dans les tâches de vision par ordinateur telles que la détection et la segmentation d'objets, les fonctions d'activation ReLU se sont révélées très efficaces en raison de leur capacité à gérer des ensembles de données à grande échelle et à capturer des fonctionnalités complexes.
- ReLU qui fuit
Leaky ReLU résout le problème du « ReLU mourant » rencontré avec le ReLU classique, où certains neurones deviennent inactifs.
- Définition et propriétés : Leaky ReLU introduit une petite pente pour les entrées négatives, permettant à un petit gradient de s'écouler même pour les valeurs négatives, empêchant ainsi les neurones de mourir.
- Résoudre le problème du « Dying ReLU » : en atténuant le problème des neurones morts, Leaky ReLU garantit que le réseau conserve sa capacité à apprendre et à généraliser efficacement.
- Cas d'utilisation et avantages en vision par ordinateur : Leaky ReLU trouve des applications dans diverses tâches de vision par ordinateur, telles que la classification d'images, où la prévention des neurones morts contribue aux performances globales du réseau.
- Tangente hyperbolique (tanh)
La fonction tangente hyperbolique partage des similitudes avec la fonction sigmoïde mais offre une plage de valeurs de sortie légèrement différente.
- Définition et propriétés :
Tanh mappe l'entrée sur une plage comprise entre -1 et 1, présentant des propriétés similaires à celles de la fonction sigmoïde mais avec un gradient plus raide autour de zéro.
- Comparaisons avec les fonctions d'activation sigmoïde et ReLU : tanh évite le problème de saturation associé au sigmoïde en fournissant une symétrie autour de zéro. Cependant, comme le sigmoïde, le tanh peut souffrir du problème du gradient de disparition.
- Exemples d'application : Tanh trouve une application dans les tâches de vision par ordinateur nécessitant des résultats dans une plage spécifique, telles que la reconnaissance des expressions faciales ou la reconnaissance des gestes.
- Softmax
Softmax est particulièrement utile dans les problèmes de classification multi-classes, fournissant une distribution de probabilité sur plusieurs classes de sortie.
- Définition et propriétés :
Softmax normalise les sorties d'une couche de réseau neuronal, garantissant qu'elles totalisent un, permettant ainsi l'interprétation en tant que probabilités de classe.
- Rôle dans les problèmes de classification multi-classes : Softmax est couramment utilisé dans les tâches de vision par ordinateur telles que la catégorisation d'images, où le réseau doit attribuer une seule étiquette à l'image d'entrée parmi plusieurs classes possibles.
- Utilisation et avantages en vision par ordinateur : Softmax permet des prédictions fiables en produisant des probabilités de classe, aidant ainsi à la prise de décision pour diverses applications de vision par ordinateur.
Choisir la bonne fonction d'activation
La sélection de la fonction d'activation appropriée pour une tâche de vision par ordinateur donnée est cruciale pour obtenir des résultats optimaux. Plusieurs facteurs doivent être pris en compte lors de ce processus de sélection.
1. Exigences des tâches et caractéristiques des données: Différentes tâches de vision par ordinateur nécessitent des fonctions d'activation spécifiques. Comprendre les exigences de la tâche, telles que la classification binaire ou multiclasse, la détection d'objets ou la segmentation, permet de guider le choix de la fonction d'activation.
2. Performances et vitesse de convergence : Les fonctions d'activation peuvent avoir un impact significatif sur la vitesse de convergence et les performances globales du réseau neuronal. Certaines fonctions facilitent une convergence plus rapide, tandis que d'autres peuvent la ralentir. Il est important d’évaluer les compromis et de sélectionner en conséquence.
3. Éviter les dégradés qui disparaissent et explosent : Les gradients qui disparaissent ou explosent peuvent entraver le processus de formation. Une sélection minutieuse des fonctions d’activation peut contribuer à atténuer ces problèmes et à promouvoir une formation stable et efficace.
Sélection de la fonction d'activation pour des tâches spécifiques de vision par ordinateur
Différentes tâches de vision par ordinateur ont des exigences variables, et le choix de la bonne fonction d'activation est essentiel pour obtenir des performances optimales. Explorons les choix recommandés pour certaines tâches courantes de vision par ordinateur :
1. Classement des images : ReLU et ses variantes, telles que Leaky ReLU, sont couramment utilisées dans la classification d'images en raison de leur capacité à capturer efficacement des caractéristiques complexes. De plus, softmax est appliqué dans la couche finale pour obtenir les probabilités de classe.
2. Détection d'objets : Les tâches de détection d'objets bénéficient souvent de l'utilisation de fonctions d'activation telles que ReLU, qui gèrent des ensembles de données à grande échelle et l'extraction de fonctionnalités complexes. Softmax peut également être utilisé pour classer les objets détectés.
3. Segmentation sémantique : La segmentation sémantique nécessite une détection précise des limites, ce qui rend les fonctions d'activation telles que ReLU et Leaky ReLU des choix populaires. Ces fonctions facilitent la capacité du réseau à capturer les limites d'objets complexes et à générer des cartes de segmentation précises.
Conclusion
Les fonctions d'activation sont des composants fondamentaux des réseaux de neurones, notamment dans les tâches de vision par ordinateur. Nous avons exploré diverses fonctions d'activation populaires, leurs propriétés, avantages et limites. Le choix approprié de la fonction d'activation peut avoir un impact significatif sur les performances, la vitesse de convergence et les capacités de généralisation du réseau. De plus, les fonctions et techniques d’activation avancées offrent des possibilités intéressantes pour améliorer encore l’efficacité des réseaux neuronaux en vision par ordinateur.