Descente de gradient
La descente de gradient est un algorithme d’optimisation couramment utilisé pour entraîner des modèles d’apprentissage automatique et d’apprentissage profond.
La descente de gradient peut être comprise intuitivement à l’aide de l’analogie suivante :1
Une personne est coincée en montagne et tente de descendre (c’est-à-dire de trouver le minimum global). Un brouillard épais rend la visibilité extrêmement faible. Par conséquent, le chemin pour descendre de la montagne n’est pas visible, et la personne doit donc utiliser des informations environnantes pour déterminer le minimum. Elle peut utiliser la méthode de la descente de gradient, qui consiste à examiner la raideur de la pente depuis sa position actuelle, puis à se diriger dans la direction de la descente la plus raide (c’est-à-dire vers le bas). Si elle essayait de trouver le sommet de la montagne (c’est-à-dire le maximum), elle irait dans la direction de la montée la plus raide (c’est-à-dire vers le haut). Avec cette méthode, la personne finirait par trouver son chemin vers le bas de la montagne ou par rester coincée dans un creux (c’est-à-dire un minimum local ou un point de selle), comme un lac de montagne. Cependant, supposons également que la raideur de la pente n’est pas immédiatement évidente par simple observation, mais qu’elle nécessite un instrument de mesure sophistiqué, que la personne possède à ce moment-là. Mesurer l’inclinaison de la colline à l’aide de l’instrument prend un certain temps, et la personne doit donc limiter son utilisation de l’instrument si elle veut pouvoir redescendre de la montagne avant le coucher du soleil. La difficulté consiste alors à choisir la fréquence à laquelle mesurer l’inclinaison de la colline afin de rester sur le bon chemin.
Dans cette analogie, la personne représente l’algorithme, et le chemin emprunté pour descendre de la montagne représente la séquence de paramètres que l’algorithme va explorer. L’inclinaison de la colline représente la pente de la fonction à ce point. L’instrument utilisé pour mesurer la pente est la différenciation. La direction qu’elle choisit de prendre correspond au gradient de la fonction à ce point. Le temps écoulé avant de prendre une autre mesure est la taille du pas.
La descente de gradient stochastique est une extension de la descente de gradient utilisée pour entraîner la plupart des réseaux profonds actuels.
IBM (2023) What is gradient descent?, IBM.
scikit learn (2023) Stochastic gradient descent, Scikit-Learn, octobre.