Comprendre descente de gradient (b) (papiers théoriques) | machine que vous rencontrerez l'apprentissage de la « fosse »

préparation mathématiques
  • Hadamard produit: correspondant à des éléments respectifs de la multiplication matricielle

Un bon algorithme d'optimisation, d'une part pour être rapide, le nombre d'itérations qui est mis à jour que possible, d'autre part, le coût de l'informatique à petite, à savoir l'utilisation des informations que possible. Nous savons maintenant que les deux peuvent ne pas avoir à la fois, il suffit de calculer la pente de descente de gradient, mais à chaque étape de la taille des gouttes est limitée

La direction locale, plus le nombre d'itérations mis à jour, et cette seconde méthode d'optimisation afin Newton, en utilisant les informations de la matrice de Hesse, le gradient prédéterminé est égal à zéro, de sorte que le nombre d'itérations en général moins de mises à jour, mais chaque itération nécessité de calculer les échantillons inverses écuyère.

Si nous voulons sur la base de la méthode de Newton de réduire davantage la quantité d'informations que nous pouvons considérer BFGS (Broyden-Fletcher-Goldfalb-Shanno) Cette méthode quasi-Newton bien connu, il ne calcule pas directement l'inverse hessois, mais prendre vecteur et le produit d'addition d'une matrice pour remplacer le Hessian, de sorte que la quantité de calcul est en outre diminuée. Mais même si nous avons encore rarement utilisé dans une étude approfondie, le principal facteur est les paramètres du modèle et des données pour les grandes, la complexité de l'espace est trop grand, la consommation de mémoire grave.

Donc, descente de gradient semble regarder meilleur choix, mais il y a encore place à l'amélioration. Tout d'abord, nous avons dans le calcul du gradient, avec tous les échantillons, car une telle estimation de gradient est plus précis, mais de nombreux échantillons sont trop similaires, tels que d'autres conditions sont les mêmes, une hauteur 172, 63 kg de poids, une autre hauteur 172,5, poids 63,4, la contribution d'un tel échantillon de la fonction de perte est similaire, l'estimation générée par gradient est similaire, nous pouvons employer moins et des informations efficaces pour remplacer les informations redondantes, d'autre part, dans la pratique, même de petites quantités de descente de gradient augmenter le nombre d'itérations, mais le coût de calcul moins, l'efficacité globale est encore élevé, et enfin, une sélection aléatoire de petites quantités d'échantillon dans une certaine mesure de la variance accrue (terme de bruit) estimation gradient, mais rend la possibilité d'échapper à la descente de gradient local minimum, et pour assurer l'échantillon complet entraîne une descente de gradient presque une condition sine qua non, il y avait encore plus de possibilités.

Une telle approche que nous appelons descente de gradient stochastique (Stochastic gradient de descente), certaines personnes vont suivre chaque mise à jour en utilisant un gradient de taille de l'échantillon, plus divisé en faible volume, en ligne, etc., une telle classification n'est pas nécessaire, dire maintenant généralement au hasard, se réfère généralement à la petite descente de gradient par lots. En raison d'un gradient de mise à jour unique de l'échantillon, les résultats d'estimation de gradient seront pauvres, et ne peuvent pas utiliser efficacement le fonctionnement multi-thread, nous ne serons pas discuté ici.

descente de gradient stochastique sur les paramètres de la formule de mise à jour d'origine:

Les modifications de la:

Lorsque vous utilisez une descente de gradient stochastique, le point d'origine du zéro gradient généralement pas nul, mais il peut aussi devenir très petit, donc nous allons voir la descente de gradient stochastique et ne restera pas au minimum (s'il y a une valeur minimum de mots ), mais une légère commotion cérébrale dans le voisinage. D'autres expériences montrent que la descente de pente de descente de gradient stochastique serait bien au-delà de la performance de tous les échantillons dans l'itération initiale.

Ensuite, la descente de gradient ne peut pas plus vite? Parce que nous pouvons imaginer, si les valeurs initiales des paramètres plus proches de point cible, alors certainement plus vite le processus d'optimisation, chaque gradients étape sont accumulés dans le même sens, il peut aussi réduire beaucoup d'itérations inutiles, après tout, est essentiellement une descente de gradient gourmand a.

Comme le montre, les paramètres initiaux a et b ne sont pas les mêmes, les résultats d'une descente de gradient plus rapide que b, bien que chaque étape du gradient b est réduite en ce moment la meilleure direction, mais dans l'ensemble, b perdu dans l'étape de déplacement d'avant en arrière à proximité du contour.

Cependant, en général, nous ne savons pas la nature de la fonction de perte, nous ne pouvons pas déterminer la valeur initiale parfaite (dans la pratique, généralement supposer une distribution normale ou initialisation aléatoire), autrement dit, nous devons trouver des moyens de plus généralement face à la situation, dans la mesure du possible de réduire le dos et le mouvement en avant dans le voisinage du contour.

algorithme de Momentum peut atténuer ce problème, il introduit une quantité appelée la vitesse, utilisée pour accumuler les informations de gradient précédent:

Cette approche est des considérations physiques, la fonction de perte est le gradient négatif du gradient de potentiel de négatif sur le plan physique, nous l'appelons une force, l'additionneur vectoriel, ou faire décomposition orthogonale, peut voir directement, CUMUL le résultat est d'augmenter la force de la même direction à chaque fois, mais dans la direction opposée annulent, de sorte que la vitesse augmente dans la même direction chaque force de temps est essentiellement sur la direction du gradient de la normalisée faire, alors nous choisissons utiliser la vitesse de mise à jour des paramètres:

Considérons le cas d'extrême, si la même chaque fois que la direction du gradient, alors v sera de plus en plus le long d'une direction, un paramètre utilisé pour ajuster la proportion des gradients de gradient passés et présents accumulés, un plus grand, le passé l'information a représenté la plus grande proportion. Nous pouvons également ajouter la vitesse sur l'élément dans l'argument avant le calcul gradient:

Nesterov obtenir un algorithme dynamique, un terme simple, et pas inhabituel, les différentes étapes ne sont ajoutées dans le cycle et, après l'algorithme de mouvement standard sera exécuté tôt ou tard, la mise à jour des paramètres de gradient. En fait, si nous faisons une simple addition de vecteur:

Comme représenté, le côté gauche est l'algorithme de quantité de mouvement ordinaire suit l'additionneur vectoriel, dans lequel le gradient de l'étape de gradient par étape en utilisant la vitesse actuelle n, en gradient par étapes a été utilisé Nesterov de l'information de vitesse, l'étape finale se produit que le décalage réel .

Momentum a accéléré l'algorithme dans une certaine mesure dans la descente de gradient, mais introduit un autre ultra-paramètres a, plus important encore, la pratique a constaté que les mêmes paramètres que super, loin d'être le taux d'apprentissage

Important, nous espérons sans introduire des paramètres supplémentaires pour optimiser l'accélération, vous devez considérer le taux d'apprentissage. Nous voulons atteindre le gradient effet, le taux d'apprentissage dans un grand temps, deviennent plus petits, et ne manquerons pas d'une valeur minimale, le gradient devient plus grand à un très jeune âge, donc lieu de plat de perte pour aller plus vite. Ceci est appelé algorithme de taux d'apprentissage adaptatif.

Plus le gradient de vitesse d'apprentissage à être plus petite, une idée naturelle est d'utiliser un montant cumulé de l'ensemble du gradient:

Et puis en multipliant le gradient de vitesse d'apprentissage réciproque qui

Est une très faible constante pour éviter le dénominateur est nul:

Cet algorithme est appelé AdaGrad, lieu simple à réaliser un gradient de plus, plus le taux d'objectifs d'apprentissage. Mais tout cela gradient accumulé de sorte que le taux d'apprentissage du déclin prématuré, donc nous pouvons aussi donner différentes périodes du facteur de pondération de gradient étant donné que le gradient plus tôt est pas important, mais le plus important gradient plus proche:

Cet algorithme a été RMSProp, sur cette base, nous voulons aussi ajouter quelques éléments de correction gradient, le gradient va utiliser des personnes touchées actuellement par l'histoire de l'algorithme gradient avec un élan comme ceci:

Dernière mise à jour la formule devient également:

Cela a été la forme de base de l'algorithme Adam, qui contient deux ultra-paramètre, qui est la profondeur de l'algorithme d'apprentissage est le plus fréquemment utilisé.

Lire Xinjunkaiba Salle de classe CONSEILS

Avec l'augmentation des données, dans certains cas, nous avons dû utiliser un échantillon aléatoire de déclin de gradient unique, car selon le développement actuel, la taille du taux de croissance des données a dépassé la croissance de la puissance de calcul, en outre, l'ensemble de la formation est divisée la formation par lots devient de plus en plus commun.

ajuster également l'algorithme de taux d'apprentissage est essentiellement dynamique

L'un d'un plus grand, plus rapide, mais l'algorithme de mouvement a un inconvénient évident, qui est, lorsque la vitesse est trop rapide, vous ne pouvez pas arrêter à proximité de la valeur minimale, qui limite le développement de facteurs, à la fois générale algorithme de mouvement est combiné avec un autre algorithme adaptatif peut jouer le plus grand effet.

algorithme Adam est également considéré comme le premier moment et le deuxième moment de la correction de l'écart, mais pour les débutants, une meilleure compréhension de la façon dont l'élan est RMSprop + algorithme doit noter que l'accumulation de gradient et l'accumulation de momentum premières tendances à zéro, en général, nous allons corriger d'abord, par exemple:

.

Auteur: moine sans tête et épaules Pour réimprimer, s'il vous plaît laisser un message dans les coulisses, se conformer aux normes de réimpression
Pékin Tongzhou Yongshun démolition de la jetée de la ville de résidents de la porte de l'solution de coordination multipartites voyage dans la peur
Précédent
collision parfaite classique et moderne voiture concept tchèque voie JETOUR X a dévoilé / entrées intérieur
Prochain
F1 rencontre grand prix de l'entrevue 1000 Alfa Romeo avec les pilotes de l'équipe F1
concours créatif BDIC: « programmeur saisir beaucoup, mais les gens ont des idées difficiles à voir. »
Années d'expérience de conduite ancien pilote, transfert SAIC Chase D90, partager des sentiments demi de voiture
Sony téléphones Plein écran apparaissent, le rapport d'aspect du merveilleux travail que vous aurait pas vu!
Aujourd'hui, le son de base | Vous pensez, « Nestle » café seulement? Les gens sont les véritables poids lourds de transfrontaliers
Certaines personnes appellent, je dois être! Shun ville forcer souvent, d'améliorer l'indice de bien-être résident!
Chine 0-3 Iran: la défaite de la nuit, le football national montrent leurs couleurs
BDIC saison proposition commerciale: « Pour le passage programme de base, il n'y a pas de base tout le monde parle. »
Xiao Bian risqua l'exposition! Enseignez-vous d'identifier vote hommes / femmes a déraillé preuves irréfutables -
Aujourd'hui, le son de base | salle de gym virtuelle complète de la technologie, de sorte que la forme physique devient une chose facile
boutique Ichiban ont trois écureuils se précipitent sur le marché, où les nouveaux arrivants à survivre?
Hommage vieux Jim! plan médias a félicité le score au-delà de Chamberlain