Logo elodees  elodees

Une IA bien-veillante pour un monde meilleur













Seuls les caractères alphabétiques accentués ou non ainsi que l'espace sont acceptés

Logo IA




Descente de gradient stochastique





Pas encore de compte ?

Inscrivez-vous pour accéder à tous les contenus




La descente de gradient stochastique est considéré comme une approximation stochastique de l'optimisation de descente de gradient, puisqu'il remplace le gradient réel par une estimation de celui-ci.

La descente de gradient stochastique est devenue une méthode d'optimisation importante dans l'apprentissage automatique.

Le mot stochastique désigne un système ou un processus lié à une probabilité aléatoire.

Dans le Stochastic Gradient Descent, certains échantillons sont sélectionnés au hasard au lieu de l'ensemble des données pour chaque itération.

Le Stochastic Gradient Descent n'utilise qu'un seul échantillon.

Stochastic Gradient Descent
Stochastic Gradient Descent


Stochastic gradient descent compared with gradient descent
Stochastic Gradient Descent




Implémentation de descente de gradient stochastique, SGD avec momentum, Adagrad, RMSprop, Adam, optimiseur Adamax à partir de zéro



Relation entre les différents algorithmiques



Tous ces algorithmes sont développés les uns à partir des autres ou combinés pour obtenir un fonctionnement optimal.



Relation between different algorithms




Descente de gradient



En mathématiques, la descente de gradient (également souvent appelée descente la plus raide) est un algorithme d'optimisation itératif du premier ordre permettant de trouver un minimum local d'une fonction différentiable. L'idée est de faire des pas répétés dans la direction opposée du gradient (ou du gradient approximatif) de la fonction au point actuel car c'est la direction de la descente la plus raide.



Gradient descent




La dimension des flèches ci-dessous dépend de la variable du taux d'apprentissage.



Gradient descent




SGD(Descente de gradient stochastique)



Descente de gradient stochastique, quelques échantillons sont sélectionnés au hasard au lieu de l'ensemble de données complet pour chaque itération. opérations de calcul de descente de gradient sur tous les ensembles de données. Le problème survient lorsque les données sont si volumineuses (par exemple, 200 millions de données). Ce problème est résolu par Stochastic Gradient Descent. Dans SGD, il n'utilise qu'un seul échantillon, c'est-à-dire une taille de lot de un, pour effectuer chaque itération. dans SGD, on trouve le gradient de la fonction de coût d'un seul exemple à chaque itération au lieu de la somme du gradient de la fonction de coût de tous les exemples.



Gradient descent


SGD est généralement plus bruyant que la descente de gradient typique.





SGD avec momentum



SGD avec Momentum est une méthode d'optimisation stochastique qui ajoute un terme de momentum à la descente de gradient stochastique régulière



Gradient descent


Une valeur typique est de 0,9. Le nom de l'élan vient d'une analogie avec la physique, comme une balle accélérant sur une pente. Dans le cas des mises à jour de poids, nous pouvons considérer les poids comme une particule voyageant à travers l'espace des paramètres qui subit une accélération à partir du gradient de la perte. mais pourquoi l'élan ? En fait, SGD avec momentum est la méthode qui aide à accélérer les vecteurs de gradients dans les bonnes directions, conduisant ainsi à une convergence plus rapide.





Adagrad



Adagrad nous permet de donner plus d'importance aux mises à jour de paramètres qui ont des caractéristiques associées qui sont rares, ou plus généralement, de donner plus d'importance aux mises à jour de paramètres qui ont expérimenté un enregistrement de gradients relativement plus faibles.



Gradient descent


Adagrad nous permet de donner plus d'importance aux mises à jour de paramètres qui ont des caractéristiques associées qui sont rares, ou plus généralement, de donner plus d'importance aux mises à jour de paramètres qui ont expérimenté un enregistrement de gradients relativement plus faibles.Il existe une légère variation d'AdaGrad appelée RMSProp (Root Mean Squared Propagation) qui résout le problème d'AdaGrad. Avec RMSProp, nous gardons toujours la somme cumulée des gradients au carré, mais au lieu de laisser cette somme croître continuellement tout au long de la formation, nous laissons cette somme décroître. Algorithmes d'optimisation en Deep Learning.





RMSprop



Il existe une légère variation d'AdaGrad appelée RMSProp (Root Mean Squared Propagation) qui résout le problème d'AdaGrad. Avec RMSProp, nous gardons toujours la somme cumulée des gradients au carré, mais au lieu de laisser cette somme croître continuellement tout au long de la formation, nous laissons cette somme décroître. Algorithmes d'optimisation en Deep Learning.



Gradient descent


L'étape de mise à jour dans le cas de RMSProp ressemble à celle d'AdaGrad où nous divisons le gradient actuel par la somme des gradients au carré pour avoir cette belle propriété d'accélérer le mouvement le long d'une dimension et de ralentir le mouvement le long de l'autre dimension. Le taux d'apprentissage RMSprop est toujours manuel car la valeur suggérée n'est pas toujours appropriée pour chaque tâche.





Adam



L'estimation adaptative du moment (Adam) est une autre méthode qui calcule les taux d'apprentissage adaptatifs pour chaque paramètre. En plus de stocker une moyenne en décroissance exponentielle des gradients au carré passés vt comme Adadelta et RMSprop, Adam conserve également une moyenne en décroissance exponentielle des gradients passés mt, similaire à l'élan.



Gradient descent


Adam est l'optimiseur le plus courant dans les modèles d'apprentissage profond car :

1.Nécessite peu d'espace mémoire
2. Bon pour les objectifs non stationnaires
3. Fonctionne bien sur les problèmes avec des gradients bruyants ou clairsemés
4. Fonctionne bien avec de grands ensembles de données et de grands paramètres





Adamax



Adamax est une variante d'Adam basée sur la norme de l'infini.



Gradient descent




Comparaison



adagrad animation

adam animation

adamax animation

gd animation

rmsprop animation

sgd animation

sgdMomentum animation



Gradient-descent-optimizer-variations

License: MITLicenseMIT  Copyright (c) 2022 Mohamadreza Khanmohamadi


GitHub







Implémentation de différents algorithmes d'optimisation de descente de gradient stochastique
Cliquez sur l'image



neural-net-gradient-optimization - GitHub





Descente de gradient













Bienvenu, je m’appelle Eric Soupet et je suis l'administrateur du site elodees.com. elodees.com est un état de l'art de l'Intelligence Artificielle et se veut collaboratif, vous pouvez dès à présent proposer du contenu tels que des articles, des événements, des tutoriels, ... alors n'hésitez pas !

Crédit des images de la plate-forme : Pixabay - Pixabay License | Pexels - Pexels License