AdaDelta

classe publique AdaDelta

Optimiseur qui implémente l'algorithme Adadelta.

L'optimisation Adadelta est une méthode de descente de gradient stochastique basée sur un taux d'apprentissage adaptatif par dimension pour résoudre deux inconvénients :

  • la baisse continue des taux d’apprentissage tout au long de la formation
  • la nécessité d'un taux d'apprentissage global sélectionné manuellement

Adadelta est une extension plus robuste d'Adagrad qui adapte les taux d'apprentissage en fonction d'une fenêtre mobile de mises à jour de gradient, au lieu d'accumuler tous les gradients passés. De cette façon, Adadelta continue d'apprendre même lorsque de nombreuses mises à jour ont été effectuées. Par rapport à Adagrad, dans la version originale d'Adadelta, vous n'avez pas besoin de définir un taux d'apprentissage initial. Dans cette version, le taux d'apprentissage initial peut être défini, comme dans la plupart des autres optimiseurs.

Selon la section 4.3 (« Taux d'apprentissage effectifs »), vers la fin de la taille des étapes de formation convergent vers 1, ce qui est effectivement un taux d'apprentissage élevé qui entraînerait une divergence. Cela ne se produit que vers la fin de la formation, car les gradients et les tailles de pas sont petits et la constante epsilon au numérateur et au dénominateur domine les gradients passés et les mises à jour des paramètres qui font converger le taux d'apprentissage vers 1.

Selon la section 4.4 (« Données vocales »), où un grand réseau neuronal avec 4 couches cachées a été formé sur un corpus de données en anglais américain, ADADELTA a été utilisé avec 100 répliques de réseau. L'epsilon utilisé est 1e-6 avec rho=0,95 qui a convergé plus rapidement qu'ADAGRAD, par la construction suivante : new AdaDelta(graph, 1.0f, 0.95f, 1e-6f);

Constantes

Chaîne ACCUMULATEUR
Chaîne ACCUMULATEUR_UPDATE
flotter EPSILON_DEFAULT
flotter LEARNING_RATE_DEFAULT
flotter RHO_DEFAULT

Constantes héritées

Constructeurs Publics

AdaDelta ( Graphique , float learningRate)
Crée un optimiseur AdaDelta
AdaDelta ( Graphique , float learningRate, float rho, float epsilon)
Crée un optimiseur AdaDelta
AdaDelta ( Graphique , nom de la chaîne, float learningRate)
Crée un optimiseur AdaDelta
AdaDelta ( Graphique , nom de chaîne, float learningRate, float rho, float epsilon)
Crée un optimiseur AdaDelta

Méthodes publiques

Chaîne
getOptimizerName ()
Obtenez le nom de l'optimiseur.
Chaîne

Méthodes héritées

Constantes

chaîne finale statique publique ACCUMULATEUR

Valeur constante : "accumuler"

chaîne finale statique publique ACCUMULATOR_UPDATE

Valeur constante : "accum_update"

public statique final float EPSILON_DEFAULT

Valeur constante : 1,0E-7

public statique final float LEARNING_RATE_DEFAULT

Valeur constante : 0,001

public statique final float RHO_DEFAULT

Valeur constante : 0,95

Constructeurs Publics

public AdaDelta ( Graphique )

public AdaDelta ( Graphique , float learningRate)

Crée un optimiseur AdaDelta

Paramètres
graphique le graphique TensorFlow
taux d'apprentissage le taux d'apprentissage

public AdaDelta ( Graphique , float learningRate, float rho, float epsilon)

Crée un optimiseur AdaDelta

Paramètres
graphique le graphique TensorFlow
taux d'apprentissage le taux d'apprentissage
rho Le facteur de désintégration
épsilon Un epsilon constant utilisé pour mieux conditionner la mise à jour des diplômés

public AdaDelta ( Graphique , nom de la chaîne, float learningRate)

Crée un optimiseur AdaDelta

Paramètres
graphique le graphique TensorFlow
nom le nom de cet optimiseur (par défaut "Adadelta")
taux d'apprentissage le taux d'apprentissage

public AdaDelta ( Graphique , nom de chaîne, float learningRate, float rho, float epsilon)

Crée un optimiseur AdaDelta

Paramètres
graphique le graphique TensorFlow
nom le nom de cet optimiseur (par défaut "Adadelta")
taux d'apprentissage le taux d'apprentissage
rho Le facteur de désintégration
épsilon Un epsilon constant utilisé pour mieux conditionner la mise à jour des diplômés

Méthodes publiques

chaîne publique getOptimizerName ()

Obtenez le nom de l'optimiseur.

Retour
  • Le nom de l'optimiseur.

chaîne publique versString ()