Fonction d'activation

Un article de Wikipédia, l'encyclopédie libre.
Sauter à la navigation Sauter à la recherche

Dans le domaine des réseaux de neurones artificiels, la fonction d'activation est une fonction mathématique appliquée à un signal en sortie d'un neurone artificiel. Le terme de "fonction d'activation" vient de l'équivalent biologique "potentiel d'activation", seuil de stimulation qui, une fois atteint entraîne une réponse du neurone. La fonction d'activation est souvent une fonction non-linéaire. Un exemple de fonction d'activation est la fonction de Heaviside, qui renvoie tout le temps 1 si le signal en entrée est positif, ou 0 s'il est négatif.

Caractéristiques des fonctions d'activation[modifier | modifier le code]

Les fonctions d'activation sont utilisées selon leurs caractéristiques :

  • Non-linéarité : Quand une fonction est non linéaire, un réseau neuronal à 2 couches peut être considéré comme un approximateur de fonction universel[1] . Note: La fonction identité a l'effet inverse, rendant un réseau neuronal multicouches équivalent à un réseau neuronal à une mono-couche.
  • Partout différentiable : Cette propriété permet de créer des optimisations basées sur les gradients[2].
  • Étendue : Quand la plage d'activation est finie, les méthodes d'apprentissage basées sur les gradients sont plus stables (impact sur un nombre de poids limités). Quand la plage est infinie, l'apprentissage est généralement plus efficace (impact sur davantage de poids).
  • Monotone: Lorsque la fonction est monotone, la surface d'erreur associée avec un modèle monocouche est certifié convexe[3].
  • Douce (dérivée monotone) : Les fonctions à dérivée monotone ont été montrées comme ayant une meilleure capacité à généraliser dans certains cas. Ces fonctions permettent d'appliquer des principes comme le rasoir d'Ockham[4].
  • Identité en 0 ( quand ) : Ces fonctions permettent de faire un apprentissage rapide en initialisant les poids de manière aléatoire. Si la fonction ne converge pas vers l'identité en 0, alors un soin spécial doit être apporté lors de l'initialisation des poids[5].

Liste de fonctions d'activation usuelles[modifier | modifier le code]

Comparatif des principales fonctions, avec leur étendue, leur continuité, si elles sont monotones, douces et si elles convergent vers l'identité en 0.

Nom Graphe Équation Dérivée Étendue Ordre de continuité Monotone Douce

(dérivée monotone)

Identité en 0
Identité/Rampe Activation identity.svg
Oui
Oui
Oui
Marche/Heaviside Activation binary step.svg
Oui
Non Non
Logistique (ou marche douce, ou sigmoïde ) Activation logistic.svg
Oui
Non Non
Tangente Hyperbolique (TanH) Activation tanh.svg
Oui
Non
Oui
Arc Tangente (ArcTan ou Tan-1) Activation arctan.svg
Oui
Non
Oui
Signe doux [6] Activation softsign.png
Oui
Non
Oui
Unité de Rectification Linéaire (ReLU)[7] Activation rectified linear.svg
Oui
Oui
Oui
Unité de Rectification Linéaire

Paramétrique (PReLU)[8]

Activation prelu.svg
Oui
Oui
Oui
Unité Exponentielle Linéaire(ELU)[9] Activation elu.svg si
Oui
Oui
Oui, ssi
Unité de Rectification Linéaire Douce (SoftPlus)[10] Activation softplus.svg
Oui
Oui
Non
Identité courbée Activation bent identity.svg
Oui
Oui
Oui
Exponentielle douce paramétrique

(soft exponential) [11]

Activation soft exponential.svg
Oui
Oui
Oui, ssi
Sinusoïde Activation sinusoid.svg Non Non
Oui
Sinus cardinal (Sinc) Activation sinc.svg Non Non Non
Fonction Gaussienne Activation gaussian.svg Non Non Non

Structures Alternatives[modifier | modifier le code]

Une classe spéciale de fonction d'activation est regroupée dans les fonctions à base radiale (RBFs) . Elles sont souvent utilisées dans les réseaux neuronaux RBF, très efficaces en tant qu'approximateurs de fonction universels. si ces fonctions peuvent être très variées, on retrouve généralement une des 3 formes suivantes (en fonction d'un vecteur ):

  • Fonction gaussienne :
  • Fonction multiquadratique :
  • Fonction multiquadratique inverse:

est le vecteur représentant le centre de la fonction, est un paramètre permettant de régler l'étalement de la fonction.

Les machines à support vectoriel (SVMs) peuvent utiliser une classe de fonctions d'activation qui inclut à la fois les sigmoïdes et les RBF. Dans ce cas, l'entrée est transformée pour refléter un "decision boundary hyperplane", basé sur peu d'entrées (appelées vecteurs support . La fonction d'activation pour les couches cachées de ces machines est souvent appelée "noyau du produit intérieur" : . Les vecteurs supports sont représentés comme les centres de RBF dont le noyau serait égal aux fonctions d'activation, mais ils prennent une unique forme de perceptron :

,

et doivent satisfaire certains critères de convergence. Ces machines peuvent aussi accepter des fonctions d'activation polynomiale d'un ordre arbitraire :

[12].

Voir aussi[modifier | modifier le code]

Références[modifier | modifier le code]

  1. Cybenko, George. "Approximation by superpositions of a sigmoidal function." Mathematics of control, signals and systems 2.4 (1989): 303-314.
  2. Snyman, Jan. Practical mathematical optimization: an introduction to basic optimization theory and classical and new gradient-based algorithms. Vol. 97. Springer Science & Business Media, 2005.
  3. Wu, Huaiqin. "Global stability analysis of a general class of discontinuous neural networks with linear growth activation functions." Information Sciences 179.19 (2009): 3432-3441.
  4. Gashler, Michael S., and Stephen C. Ashmore. "Training Deep Fourier Neural Networks to Fit Time-Series Data." Intelligent Computing in Bioinformatics. Springer International Publishing, 2014. 48-55, « 1405.2262 », texte en accès libre, sur arXiv.
  5. Sussillo, David, and L. F. Abbott. "Random walks: Training very deep nonlinear feed-forward networks with smart initialization." CoRR, « 1412.6558 », texte en accès libre, sur arXiv. (2014): 286.
  6. Glorot, Xavier and Bengio, Yoshua."Understanding the difficulty of training deep feedforward neural networks". In Proceedings of the International Conference on Artificial Intelligence and Statistics (AISTATS’10). Society for Artificial Intelligence and Statistics. 2010. http://jmlr.org/proceedings/papers/v9/glorot10a/glorot10a.pdf
  7. Nair, Vinod, and Geoffrey E. Hinton. "Rectified linear units improve restricted boltzmann machines." Proceedings of the 27th International Conference on Machine Learning (ICML-10). 2010.
  8. « 1502.01852 », texte en accès libre, sur arXiv.
  9. « 1511.07289v3 », texte en accès libre, sur arXiv.
  10. Glorot, Xavier, Antoine Bordes, and Yoshua Bengio. "Deep sparse rectifier neural networks." International Conference on Artificial Intelligence and Statistics. 2011.
  11. Luke B. Godfrey and Gashler, Michael S. A Continuum among Logarithmic, Linear, and Exponential Functions, and Its Potential to Improve Generalization in Neural Networks. In Proceedings of the 7th International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management: KDIR, pages 481-486. Lisbon, Portugal, November, 2015, « 1602.01321 », texte en accès libre, sur arXiv..
  12. (en) Simon Haykin, Neural Networks: A Comprehensive Foundation, Prentice Hall, (ISBN 0-13-273350-1)