Lors de la formation d'un réseau neuronal à l'aide de l'algorithme de rétropropagation, la méthode de descente en gradient est utilisée pour déterminer les mises à jour du poids. Ma question est la suivante: Plutôt que d'utiliser la méthode de descente en gradient pour localiser lentement le point minimum par rapport à un certain poids, pourquoi ne pas simplement définir la dérivée , et trouver la valeur du poids qui minimise l'erreur?
Aussi, pourquoi sommes-nous sûrs que la fonction d'erreur dans la rétropropagation sera au minimum? Ne peut-il pas s'avérer que la fonction d'erreur est un maximum à la place? Existe-t-il une propriété spécifique des fonctions d'écrasement qui garantit qu'un réseau avec un nombre quelconque de nœuds cachés avec des poids arbitraires et des vecteurs d'entrée donnera toujours une fonction d'erreur qui a des minima?
22
Réponses:
Parce que nous ne pouvons pas. La surface d'optimisation en fonction des poids w est non linéaire et aucune solution de forme fermée n'existe pour d S ( w )S( w ) w .réS( w )réw= 0
La descente en pente, par définition, descend. Si vous atteignez un point stationnaire après la descente, ce doit être un minimum (local) ou un point de selle, mais jamais un maximum local.
la source
En ce qui concerne la réponse de Marc Claesen, je pense que la descente en pente peut s'arrêter à un maximum local dans les situations où vous initialisez à un maximum local ou vous vous retrouvez justement là-bas en raison de la malchance ou d'un paramètre de taux erroné. Le maximum local aurait un gradient nul et l'algorithme penserait qu'il a convergé. C'est pourquoi je lance souvent plusieurs itérations à partir de différents points de départ et garde une trace des valeurs en cours de route.
la source
Dans les méthodes de type Newton, à chaque étape on résout pour uneversionlinéariséeou approximative du problème. Ensuite, le problème est linéarisé sur le nouveau point, et le processus se répète jusqu'à la convergence. Certaines personnes l'ont fait pour les réseaux neuronaux, mais il présente les inconvénients suivants,ré( erreur )réw= 0
Si l'on utilise une méthode de Krylov pour la résolution de la Hesse et que l'on n'utilise pas un bon préconditionneur pour la Hesse, alors les coûts s'équilibrent à peu près - les itérations de Newton prennent beaucoup plus de temps mais font plus de progrès, de telle sorte que le temps total est à peu près la même ou plus lente que la descente en pente. D'un autre côté, si l'on a un bon préconditionneur hessois, la méthode de Newton gagne gros.
Cela dit, les méthodes Newton-Krylov dans la région de confiance sont la référence en matière d'optimisation moderne à grande échelle, et je ne m'attendrais à ce que leur utilisation augmente dans les réseaux neuronaux dans les années à venir, car les gens veulent résoudre des problèmes de plus en plus importants. (et aussi à mesure que de plus en plus de personnes en optimisation numérique s'intéressent à l'apprentissage automatique)
la source