L'un des plus optimisation commune apprentissage machine « à sec » - Résumé de l'algorithme d'optimisation de descente de gradient

1 Ji-won nouvelle réimpression autorisée

annuaire

  • Trois types de cadre d'optimisation de descente de gradient

    Lot descente de gradient

descente de gradient Stochastique

descente petit gradient de lot

  • Enjeux et défis

  • Gradient optimisation descente algorithme

élan

gradient Nesterov accéléré

Adagrad

Adadelta

RMSprop

Adam

  • Visualisation algorithme

  • Choisissez l'algorithme d'optimisation?

  • SDG parallèle et distribuée

Hogwild!

Downpour SGD

Délai tolérant Algorithmes pour SGD

tensorflow

Élastique SGD calcul de la moyenne

  • Plus stratégie d'optimisation SDG

jeu de formation au hasard et cours brassé

lot normalisation

Arrêt précoce

bruit gradient

  • résumé

  • citation

Trois types de cadre d'optimisation de descente de gradient

  • Lot descente de gradient (lot de descente de gradient)

Par montant total de l'ensemble de la formation pour mettre à jour les paramètres du modèle, à savoir: = -J ()

nombre maximum d'époques itérations est entré par l'utilisateur. Appel peut être vu le code, le calcul du gradient de chaque fonction de la perte de loss_function de params_grad utilisant tout l'ensemble d'apprentissage, le gradient de vitesse d'apprentissage learning_rate vers la direction opposée pour mettre à jour le modèle pour chaque paramètre params. Certaines générale des bibliothèques d'apprentissage machine existantes offrent un calcul de gradient api. Si vous voulez écrire du code pour calculer leurs propres mains, nous devons vérifier si le processus de mise au point du programme de calcul de gradient correct.

  • descente de gradient stochastique (descente de gradient stochastique)

perturbation Figure 1 SGD

  • Petite descente de gradient de traitement par lots (descente de gradient mini-lot)

= -J (; xi: i + m; yi: i + m)

Enjeux et défis

Bien que l'algorithme de descente de gradient bon effet, et il est largement utilisé, mais en même temps qu'il ya des défis et des problèmes à résoudre:

  • Sélectionnez un taux raisonnable d'apprentissage difficile. Si le taux d'apprentissage est trop petit, cela conduira à une convergence très lente. Si le taux d'apprentissage est trop élevé, il gênera la convergence, qui oscillent autour du point extrême.

  • ajustement du taux d'apprentissage (également appelé programmation de débit d'apprentissage, les barèmes de taux d'apprentissage) à chaque tentative de processus de mise à jour pour changer le taux d'apprentissage, tel que le recuit. politiques générales d'utilisation ou l'atténuation de certains mis en avant un seuil plus faible à chaque itération. Les deux méthodes de réglage, vous devez être fixé à l'avance, ne peut pas être ici, les caractéristiques des ensembles de données d'apprentissage adaptatif de chacun des .

  • Tous les paramètres du modèle sont mis à jour chaque fois en utilisant le même taux d'apprentissage. Si les données sont des caractéristiques rares ou caractéristiques de chacun a des caractéristiques différentes et valeur statistique spatiale, alors vous ne pouvez pas utiliser les mêmes paramètres pour chacun des taux d'apprentissage dans chaque mise à jour, la fonctionnalité qui devrait rarement utiliser une relativement grande le taux d'apprentissage.

  • Pour fonction objective non-convexe, ceux qui sont vulnérables aux sous-optimaux points de extrema locaux, comme dans le réseau de neurones. Alors, comment l'éviter. Dauphin indique un problème plus grave que le point d'extrême local, mais un point de selle.

Gradient optimisation descente algorithme

  • élan

  • gradient Nesterov accéléré (NAG)

vt = t-1 + J (-t-1), = -vt

  • Adagrad

  • Adam

Visualisation algorithme

Comme on peut le voir sur la figure ,, SGD, Momentum NAG a été secoué avec le point selle dans la direction du gradient est égal à zéro au niveau du point selle (points de selle) à (à savoir gradient zéro, les dimensions de certains gradient non nul sur certaines dimensions), difficile de rompre la symétrie de la position du point selle; Adagrad, RMSprop Adadelta et peuvent rapidement se déplacer dans la direction du gradient est non nulle.

Comment choisir optimiseur SGD

SGD parallèle et distribué

  • Hogwild

Niu Procédé parallèle appelé Hogwild le SGD. Le procédé passe en parallèle dans une pluralité de temps de calcul. Le processeur accède aux paramètres de la mémoire partagée, et ces paramètres ne sont pas verrouillés. Il cpu attribué pour chaque partie ne paramètre chevauchement (attribué mutuellement exclusifs), chaque cpu met à jour uniquement les paramètres responsables. Cette méthode ne convient que pour le traitement des données est fonction clairsemée. Cette méthode peut presque atteindre un taux de convergence optimal, car il n'y a pas même information de réécriture entre cpu.

  • Downpour SGD

Downpour SGD est Dean proposé une variante de SGD asynchrone utilisé dans DistBelief (le prédécesseur de Google tensorflow). Elle forme copie simultanément plusieurs modèles sur le sous-ensemble de la formation. Ces copies seront envoyées au serveur de mise à jour des paramètres respectifs (PS, serveur de paramètres), les mises à jour du serveur seulement une partie de chaque paramètre paramètres mutuellement exclusifs, ne communiquent pas entre les copies. Ce qui pourrait conduire au détriment des paramètres de divergence de convergence.

  • Délai tolérant Algorithmes pour SGD

McMahan et Streeter extension AdaGrad, retard tolérant par le développement de l'algorithme (algorithmes de tolérance de retard), l'algorithme adaptatif seulement des gradients passés, et le retard mis à jour. Cette méthode a été montré pour être efficace dans la pratique.

  • tensorflow

Tensorflow est open source de Google une bibliothèque d'apprentissage automatique à grande échelle, qui est le prédécesseur DistBelief. Il a été utilisé dans un grand nombre sur un appareil mobile ou grand, les clusters distribués ont été par l'épreuve de la pratique. Sa mise en uvre distribuée est basée sur un calcul, il est divisé en une pluralité de sous diagramme figure, chaque entité de calcul en tant que noeud de calcul dans le graphique, ils communiquent par Rend / réception.

  • Élastique SGD calcul de la moyenne

Zhang et al. proposé SGD Moyennage élastique (EASGD), qui sont reliés les uns aux travaux de manière asynchrone mis à jour par un paramètre force élastique (un centre serveur de stockage de paramètres).

Plus stratégie d'optimisation de SGD

  • Et programme d'apprentissage Shuffling

Afin de rendre le processus d'apprentissage plus impartial, aléatoire devrait perturber l'ensemble des échantillons de formation à chaque itération.

D'autre part, dans de nombreux cas, nous résolvons progressivement le problème, mais l'ensemble de la formation selon un ordre significatif permettra d'améliorer la performance du modèle et de la convergence SGD, comment construire un ensemble de formation est un arrangement significatif Curriculum visé apprentissage .

Zaremba et Sutskever Apprentissage de programme pour former à l'utilisation de LSTMs pour résoudre certains problèmes simples, ce qui suggère qu'une combinaison de stratégie politique ou mixte est mieux que l'ensemble de la formation selon l'ordre croissant selon la difficulté de la formation. (Exprimé ne sais pas, mauvais)

  • normalisation des lots

Afin de faciliter la formation, nous avons habituellement des paramètres initialisés zéro moyenne 1 variance, la formation continue, à divers paramètres de mise à jour de degrés, de sorte que ces paramètres se traduira par la perte de la distribution des biens 01 écart, ce qui réduira la vitesse des trains et des paramètres d'amplification avec l'approfondissement de changement dans la structure du réseau.

normalisation des lots 0 les paramètres signifie à nouveau une variance normalisée après chaque rétropropagation mini-lot. Cela permet l'utilisation du taux d'apprentissage plus et dépenser moins d'énergie sur le point d'initialisation des paramètres. la normalisation des lots agit comme une régularisation, réduire ou même éliminer la nécessité Dropout.

  • arrêt précoce

Si le processus continu de multiples itérations de la fonction de perte n'est plus réduit de manière significative sur l'ensemble de validation, il doit mettre fin à la formation initiale, reportez-vous NIPS détaillées 2015 diapositives tutoriel, ou une méthode pour prévenir, voir surajustement.

  • bruit gradient

Gradient bruit à-dire en ajoutant à chaque itération un gradient de distribution gaussienne N (0, 2t) erreur aléatoire, à savoir,

gt, i = gt, i + N (0, 2t)

variance d'erreur gaussienne nécessite recuit:

2t = (1 + t)

Le gradient augmenté erreur aléatoire augmentera la robustesse du modèle, même si la valeur initiale des paramètres aux pauvres, et particulièrement adapté à la responsabilité profonde de former le réseau. La raison est d'augmenter le bruit aléatoire aura plus de possibilités de sauter les optima locaux et de trouver une meilleure optima locale, cette possibilité est plus fréquente dans le réseau de niveau profond.

résumé

Cet article est reproduit avec l'autorisation de la traduction: http: //blog.csdn.net/heyongluoyao8/article/details/52478715

Puisque le mot micro-lettre limite article, cet article ne mentionne pas toutes les références, s'il vous plaît voir le cachet original.

Cliquez pour lire le texte, voir les nouveaux emplois Ji-won

Shu poésie de la poésie qui inscrit 40! Absolute classique!
Précédent
l'argent mondial accélère l'arrivée des médias étrangers: le marché chinois est la victoire, Buffett: l'apprentissage de la Chine
Prochain
En Afrique, parlant histoire chinoise | Je vois l'étranger de mère patrie
Acheter est de faire, que plusieurs boutique de vente SUV a commencé à baisser le prix!
Notre logiciel est de manger le monde, il est également consommé de l'apprentissage machine à l'apprentissage en profondeur
Voir empire Apple, l'iPhone est seulement un petit rôle avec le modèle d'affaires
RMB ou va commencer un grand rebond, le marché mondial se moque de la Fed
150000 au sol, il est nécessaire d'avoir une grande sécurité de l'espace, jetez un oeil sur les quatre voitures
Il a conçu un tas d'ordures, non seulement Jackie Chan pour son appel de combat, tout le monde applaudit!
Car ne voulait pas, mais a acheté un regret, rien de moins que ces raisons
Quel modèle d'affaires est la plus difficile est d'imiter | Chen Xue fréquence
développement « blockbuster Nature » première résilience auto-guérison semi-conducteurs du monde avec succès percée robot bionique intelligente
300.000 voitures particulières hommes garés propriété à être vendu comme le démantèlement de la ferraille
En Tengchong, vous êtes juste de celui-ci et l'automne arbre ginkgo!