Glossaire

SiLU (unité linéaire sigmoïde)

Découvre comment la fonction d'activation SiLU (Swish) booste les performances de l'apprentissage profond dans les tâches d'IA telles que la détection d'objets et le NLP.

Entraîne les modèles YOLO simplement
avec Ultralytics HUB

En savoir plus

SiLU (Sigmoid Linear Unit), également connue sous le nom de fonction Swish, est une fonction d'activation utilisée dans les modèles d'apprentissage profond (DL), en particulier dans les réseaux neuronaux (NN). Elle a été proposée par des chercheurs de Google et a gagné en popularité en raison de son efficacité à améliorer les performances des modèles par rapport aux fonctions d'activation traditionnelles comme ReLU et Sigmoïde. SiLU est appréciée pour sa douceur et ses propriétés non monotones, qui peuvent aider à l'écoulement du gradient et à l'optimisation du modèle. Pour une compréhension plus large, voir un aperçu général des fonctions d'activation.

Comment fonctionne SiLU

SiLU est défini comme le produit de l'entrée et de la Sigmoïde appliquée à l'entrée. Essentiellement , SiLU(x) = x * sigmoid(x). Cette formulation permet à SiLU d'agir comme un mécanisme d'autorégulation, où la composante sigmoïde détermine la mesure dans laquelle l'entrée linéaire x est traversée. Lorsque la sortie sigmoïde est proche de 1, l'entrée passe à travers presque inchangée (similaire à ReLU pour les valeurs positives), et lorsqu'elle est proche de 0, la sortie est supprimée vers zéro. Contrairement à ReLU, SiLU est lisse et non monotone (il peut diminuer même lorsque l'entrée augmente), des propriétés dérivées de son Détails de la fonction sigmoïde composant. Le concept a été détaillé dans le papier Swish original.

Avantages de SiLU

SiLU offre plusieurs avantages qui contribuent à son efficacité dans les modèles d'apprentissage profond :

  • Lisse : Contrairement à ReLU, SiLU est une fonction lisse, ce qui signifie que sa dérivée est continue. Ce caractère lisse peut être bénéfique pour les algorithmes d'optimisation basés sur le gradient pendant la rétropropagation, ce qui permet d'obtenir un apprentissage plus stable.
  • Non-monotonie : La forme de la fonction, qui plonge légèrement pour les entrées négatives avant de remonter vers zéro, pourrait aider le réseau à représenter des modèles plus complexes.
  • Éviter les gradients de fuite : Alors que les fonctions sigmoïdes peuvent souffrir de manière significative du problème du gradient de fuite dans les réseaux profonds, SiLU atténue ce problème, en particulier pour les entrées positives où il se comporte de manière linéaire, de manière similaire à ReLU.
  • Amélioration des performances : Des études empiriques ont montré que le remplacement de ReLU par SiLU peut conduire à des améliorations de la précision du modèle pour diverses tâches et ensembles de données, en particulier dans les architectures plus profondes.

Comparaison avec d'autres fonctions d'activation

SiLU se distingue des autres fonctions d'activation courantes :

  • ReLU : ReLU est plus simple sur le plan informatique (max(0, x)) et linéaire pour les valeurs positives mais souffre du problème du "dying ReLU" où les neurones peuvent devenir inactifs pour les entrées négatives. Voir un Explication de ReLU. SiLU est lisse et évite ce problème grâce à sa sortie non nulle pour les valeurs négatives.
  • Sigmoïde : Sigmoïde fait correspondre les entrées à une plage entre 0 et 1, mais souffre de saturation et de gradients qui s'évanouissent, ce qui la rend moins adaptée aux couches cachées dans les réseaux profonds par rapport à SiLU.
  • Leaky ReLU : Le Leaky ReLU résout le problème de la ReLU mourante en autorisant un petit gradient non nul pour les entrées négatives. SiLU offre un profil différent et plus lisse.
  • GELU : GELU (Gaussian Error Linear Unit) est une autre fonction d'activation lisse qui donne souvent des résultats similaires à SiLU. SiLU est généralement considérée comme légèrement plus simple à calculer que GELU.

Applications de SiLU

SiLU est polyvalent et a été appliqué avec succès dans divers domaines où des modèles d'apprentissage profond sont utilisés :

Mise en œuvre

SiLU est facilement disponible dans les principaux cadres d'apprentissage profond :

Des plateformes comme Ultralytics HUB prennent en charge la formation des modèles et l'exploration de diverses options de déploiement pour les modèles utilisant des composants avancés comme SiLU. La recherche continue et les ressources d'organisations telles que DeepLearning.AI aident les praticiens à tirer parti de ces fonctions de manière efficace.

Tout lire