De nombreux didacticiels en ligne parlent de la descente de gradient et presque tous utilisent une taille de pas fixe (taux d'apprentissage ). Pourquoi n'y a-t-il pas d'utilisation de la recherche de ligne (comme la recherche de ligne en arrière ou la recherche de ligne exacte)?
18
Réponses:
La descente du gradient de vanille peut être rendue plus fiable en utilisant des recherches en ligne; J'ai écrit des algorithmes qui font cela et cela fait un algorithme très stable (bien que pas nécessairement rapide).
Cependant, cela n'a presque aucun sens de faire une recherche en ligne pour les méthodes de gradient stochastique . La raison pour laquelle je dis cela est que si nous effectuons une recherche de ligne basée sur la minimisation de la fonction de perte complète, nous avons immédiatement perdu l'une des principales motivations pour faire des méthodes stochastiques; nous devons maintenant calculer la fonction de perte complète pour chaque mise à jour, qui a généralement un coût de calcul comparable au calcul de la première dérivée complète. Étant donné que nous voulions éviter de calculer le gradient complet en raison des coûts de calcul, il semble très peu probable que nous voulons être d'accord avec le calcul de la fonction de perte complète.
Alternativement, vous pourriez penser à faire quelque chose comme une recherche de ligne basée sur votre point de données échantillonné au hasard. Cependant, ce n'est pas une bonne idée non plus; cela ne vous dira pas si vous êtes allé trop loin (ce qui est le principal avantage des recherches en ligne). Par exemple, supposons que vous effectuez une régression logistique. Ensuite, chaque résultat est simplement un 0 ou 1, et pour tout échantillon unique, nous obtenons trivialement une séparation parfaite, de sorte que la solution optimale pour nos paramètres de régression basés sur l'échantillon de 1 est trivialement ou ∞ par l'effet Hauck Donner. Ce n'est pas bon.−∞ ∞
ÉDITER
@DeltaIV souligne que cela s'applique également aux mini-lots, pas seulement aux échantillons individuels.
la source
Les didacticiels parlent de la descente du gradient, probablement parce que c'est l'un des algorithmes les plus simples utilisés pour l'optimisation, il est donc facile à expliquer. Étant donné que la plupart de ces didacticiels sont plutôt brefs, ils se concentrent sur des choses simples. Il existe au moins plusieurs algorithmes d'optimisation populaires au-delà de la simple descente de gradient qui sont utilisés pour l'apprentissage en profondeur. En fait, les gens utilisent souvent différents algorithmes puis descente de gradient car ils convergent généralement plus rapidement. Certains d'entre eux ont un taux d'apprentissage non constant (par exemple, diminuant avec le temps). Pour un examen de ces algorithmes, vous pouvez consulter la publication Un aperçu des algorithmes d'optimisation de la descente de gradient par Sebastian Ruder (ou l' article arXived ).
la source