Pourquoi utilisons-nous ReLU dans les réseaux de neurones et comment lutilisons-nous?

Pourquoi utilisons-nous des unités linéaires rectifiées (ReLU) avec des réseaux de neurones? Comment cela améliore-t-il le réseau neuronal?

Pourquoi disons-nous que ReLU est une fonction dactivation? La fonction dactivation softmax nest-elle pas pour les réseaux de neurones? Je suppose que nous utilisons à la fois ReLU et softmax, comme ceci:

neurone 1 avec sortie softmax —-> ReLU sur la sortie du neurone 1, qui est une entrée du neurone 2 —> neurone 2 avec sortie softmax -> …

de sorte que lentrée du neurone 2 soit fondamentalement ReLU (softmax (x1)). correct?

Réponse

La fonction ReLU est $ f (x) = \ max (0, x). $ Habituellement, ceci est appliqué élément par élément à la sortie dune autre fonction, telle quun produit matrice-vecteur. Dans les utilisations MLP, les unités de redressement remplacent toutes les autres fonctions dactivation sauf peut-être la lecture Mais je suppose que vous pouvez les mélanger et les assortir si vous le souhaitez.

Une façon dont les ReLU améliorent les réseaux de neurones est d’accélérer la formation. Le calcul du gradient est très simple (soit 0 soit 1 selon le signe de $ x $ ). De plus, létape de calcul dun ReLU est facile: tous les éléments négatifs sont mis à 0,0 – pas dexponentiels, pas dopérations de multiplication ou de division.

Les gradients des réseaux tangents logistiques et hyperboliques sont plus petits que la partie positive de le ReLU. Cela signifie que la partie positive est mise à jour plus rapidement à mesure que la formation progresse. Cependant, cela a un coût. Le gradient 0 sur le côté gauche a son propre problème, appelé « neurones morts », dans lequel une mise à jour du gradient définit les valeurs entrantes sur un ReLU de telle sorte que la sortie soit toujours zéro; les unités ReLU modifiées telles que ELU (ou Leaky ReLU, ou PReLU, etc.) peuvent améliorer cela.

$ \ frac {d} {dx} \ text { ReLU} (x) = 1 \ forall x > 0 $ . En revanche, le gradient dune unité sigmoïde est au plus 0,25 $ ; en revanche, $ \ tanh $ se comporte mieux pour les entrées dans une région proche de 0 puisque 0,25 $ < \ frac {d} {dx} \ tanh (x) \ le 1 \ forall x \ in [-1,31, 1,31] $ (environ).

Commentaires

  • Je ne vois aucune preuve que jai voulu poser une question ou que jai participé à cette page. Franchement, ‘ je suis étonné de voir à quel point ReLU fonctionne bien, mais jai ‘ arrêté de le remettre en question :).
  • @aginensky Il semble que le commentaire a été supprimé entre-temps.
  • Le commentaire na pas été supprimé par moi et je nai pas été informé. Jai ‘ arrêté de répondre aux questions et je suppose que cela signifie que jai ‘ fini de commenter aussi.
  • @aginensky Je ne ‘ pas pourquoi cela vous empêcherait de commenter. Si vous avez des questions sur les commentaires et la modération, vous pouvez poser une question dans meta.stats.SE.

Réponse

Une chose importante à souligner est que ReLU est idempotent. Étant donné que ReLU est $ \ rho (x) = \ max (0, x) $ , il « est facile de voir que $ \ rho \ circ \ rho \ circ \ rho \ circ \ dots \ circ \ rho = \ rho $ est vrai pour toute composition finie. Cette propriété est très importante pour les réseaux de neurones profonds, car chaque couche du network applique une non-linéarité. Maintenant, appliquons deux fonctions de la famille sigmoïde à la même entrée à plusieurs reprises 1 à 3 fois:

entrez la description de limage ici

Vous pouvez immédiatement voir que les fonctions sigmoïdes » écrasent « leurs entrées, ce qui entraîne le problème du gradient de fuite: les dérivés approchent de zéro comme $ n $ (le nombre dapplications répétées) sapproche de linfini.

Answer

ReLU est la fonction max (x, 0) avec lentrée x par exemple matrice à partir dune image convoluée. ReLU définit ensuite toutes les valeurs négatives de la matrice x sur zéro et toutes les autres valeurs sont maintenues constantes.

ReLU est calculé après la convolution et est une fonction dactivation non linéaire comme tanh ou sigmoid.

Softmax est un classifieur à lextrémité du réseau neuronal. Cest une régression logistique pour normaliser les sorties à des valeurs comprises entre 0 et 1. (Alternative ici est un classificateur SVM).

CNN Forward Pass par exemple: input-> conv-> ReLU-> Pool-> conv-> ReLU-> Pool-> FC-> softmax

Commentaires

  • Downvoting. Cest une très mauvaise réponse! Softmax nest pas un classificateur! Cest une fonction qui normalise (met à léchelle) les sorties dans la plage [0,1] et garantit quelles totalisent 1. La régression logistique ne  » régularise pas  » nimporte quoi!La phrase  » ReLU est calculée après la convolution et donc une fonction dactivation non linéaire comme tanh ou sigmoïde.  » na ni verbe, ni sens.
  • La réponse nest pas si mauvaise. La phrase sans le verbe doit être  » ReLU est calculé après la convolution et IS donc une fonction dactivation non linéaire comme tanh ou sigmoid.  » Penser softmax comme un classificateur a également du sens. Il peut être vu comme un classificateur probabiliste qui attribue une probabilité à chaque classe. Il  » régularise  » /  » normalise  » les sorties à lintervalle [0,1].

Answer

ReLU est un commutateur littéral. Avec un interrupteur électrique, 1 volt dentrée donne 1 volt, n volts dentrée donne n volts lorsquil est allumé. On / Off lorsque vous décidez de passer à zéro donne exactement le même graphique que ReLU. La somme pondérée (produit scalaire) dun certain nombre de sommes pondérées est toujours un système linéaire. Pour une entrée particulière, les commutateurs ReLU sont activés ou désactivés individuellement. Cela se traduit par une projection linéaire particulière de lentrée vers la sortie, car diverses sommes pondérées de la somme pondérée de … sont reliées entre elles par les commutateurs. Pour une entrée particulière et un neurone de sortie particulier, il existe un système composé de sommes pondérées qui peuvent en fait être résumées en une seule somme pondérée effective. Puisque ReLU change létat à zéro, il ny a pas de discontinuités soudaines dans la sortie pour des changements graduels dans lentrée.

Il existe dautres algorithmes de somme pondérée numériquement efficaces (produit scalaire) comme la FFT et la transformée de Walsh Hadamard. Il ny a aucune raison pour que vous ne puissiez pas les incorporer dans un réseau de neurones basé sur ReLU et bénéficier des gains de calcul. (Par exemple. Réseaux de neurones à banque de filtres fixes.)

Réponse

ReLU est probablement lune des fonctions non linéaires les plus simples possibles. Une fonction détape est plus simple. Cependant, une fonction détape a la première dérivée (gradient) zéro partout sauf en un point, à laquelle elle a un gradient infini. ReLU a une dérivée finie (gradient) partout. Il a une dérivée seconde infinie en un point.

Les réseaux à feed-forward sont formés en recherchant un gradient nul. Limportant ici est que il ya beaucoup de premières dérivées à calculer dans la routine de rétropropagation dun grand réseau, et il est utile quelles soient rapides à calculer comme ReLU. La seconde est que contrairement à la fonction step, les gradients de ReLU sont toujours finis et ils ne des zéros triviaux presque partout. Enfin, nous avons besoin dactivations non linéaires pour que le réseau dapprentissage en profondeur fonctionne bien l, mais c « est un sujet différent.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *