flux tensoriel : : opérations : : SparseApplyCenteredRMSProp
#include <training_ops.h>
Mettez à jour '*var' selon l'algorithme RMSProp centré.
Résumé
L'algorithme RMSProp centré utilise une estimation du deuxième moment centré (c'est-à-dire la variance) pour la normalisation, par opposition au RMSProp normal, qui utilise le deuxième moment (non centré). Cela facilite souvent la formation, mais coûte légèrement plus cher en termes de calcul et de mémoire.
Notez que dans une implémentation dense de cet algorithme, mg, ms et mom seront mis à jour même si le grade est nul, mais dans cette implémentation clairsemée, mg, ms et mom ne seront pas mis à jour dans les itérations pendant lesquelles le grade est nul.
Mean_square = décroissance * Mean_square + (1-décroissance) * gradient ** 2 Mean_grad = décroissance * Mean_grad + (1-décroissance) * gradient Delta = taux d'apprentissage * gradient / sqrt (mean_square + epsilon - Mean_grad ** 2)
Arguments :
- scope : un objet Scope
- var : doit provenir d'une variable ().
- mg : doit provenir d'une variable().
- ms : doit provenir d'une variable().
- maman : devrait provenir d'une variable ().
- lr : facteur d’échelle. Ça doit être un scalaire.
- rho : taux de décroissance. Ça doit être un scalaire.
- epsilon : terme de crête. Ça doit être un scalaire.
- grad : Le dégradé.
- indices : Un vecteur d'indices dans la première dimension de var, ms et mom.
Attributs facultatifs (voir Attrs
) :
- use_locking : Si
True
, la mise à jour des tenseurs var, mg, ms et mom est protégée par un verrou ; sinon, le comportement n'est pas défini, mais peut présenter moins de conflits.
Retours :
-
Output
: Identique à "var".
Constructeurs et Destructeurs | |
---|---|
SparseApplyCenteredRMSProp (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input mg, :: tensorflow::Input ms, :: tensorflow::Input mom, :: tensorflow::Input lr, :: tensorflow::Input rho, :: tensorflow::Input momentum, :: tensorflow::Input epsilon, :: tensorflow::Input grad, :: tensorflow::Input indices) | |
SparseApplyCenteredRMSProp (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input mg, :: tensorflow::Input ms, :: tensorflow::Input mom, :: tensorflow::Input lr, :: tensorflow::Input rho, :: tensorflow::Input momentum, :: tensorflow::Input epsilon, :: tensorflow::Input grad, :: tensorflow::Input indices, const SparseApplyCenteredRMSProp::Attrs & attrs) |
Attributs publics | |
---|---|
operation | |
out |
Fonctions publiques | |
---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const |
Fonctions statiques publiques | |
---|---|
UseLocking (bool x) |
Structures | |
---|---|
tensorflow : ops : SparseApplyCenteredRMSProp : Attrs | Setters d'attributs facultatifs pour SparseApplyCenteredRMSProp . |
Attributs publics
opération
Operation operation
dehors
::tensorflow::Output out
Fonctions publiques
SparseApplyCenteredRMSProp
SparseApplyCenteredRMSProp( const ::tensorflow::Scope & scope, ::tensorflow::Input var, ::tensorflow::Input mg, ::tensorflow::Input ms, ::tensorflow::Input mom, ::tensorflow::Input lr, ::tensorflow::Input rho, ::tensorflow::Input momentum, ::tensorflow::Input epsilon, ::tensorflow::Input grad, ::tensorflow::Input indices )
SparseApplyCenteredRMSProp
SparseApplyCenteredRMSProp( const ::tensorflow::Scope & scope, ::tensorflow::Input var, ::tensorflow::Input mg, ::tensorflow::Input ms, ::tensorflow::Input mom, ::tensorflow::Input lr, ::tensorflow::Input rho, ::tensorflow::Input momentum, ::tensorflow::Input epsilon, ::tensorflow::Input grad, ::tensorflow::Input indices, const SparseApplyCenteredRMSProp::Attrs & attrs )
nœud
::tensorflow::Node * node() const
opérateur :: tensorflow :: Entrée
operator::tensorflow::Input() const
opérateur :: tensorflow :: Sortie
operator::tensorflow::Output() const
Fonctions statiques publiques
UtiliserVerrouillage
Attrs UseLocking( bool x )