tensorflow::ops::ResourceSparseApplyCenteredRMSProp

#include <training_ops.h>

Mettre à jour '*var' selon l'algorithme RMSProp centré.

Résumé

L'algorithme RMSProp centré utilise une estimation du moment d'ordre deux centré (c'est-à-dire la variance) pour la normalisation, contrairement à l'algorithme RMSProp classique qui utilise le moment d'ordre deux (non centré). Cela facilite souvent l'apprentissage, mais est légèrement plus gourmand en ressources de calcul et de mémoire.

Notez que dans l'implémentation dense de cet algorithme, mg, ms et mom seront mis à jour même si le gradient est nul, mais dans cette implémentation clairsemée, mg, ms et mom ne seront pas mis à jour lors des itérations au cours desquelles le gradient est nul.

moyenne_carrée = décroissance * moyenne_carrée + (1-décroissance) * gradient ** 2 moyenne_grad = décroissance * moyenne_grad + (1-décroissance) * gradient Delta = taux_apprentissage * gradient / sqrt(moyenne_carrée + epsilon - moyenne_grad ** 2)

ms <- rho * ms_{t-1} + (1-rho) * grad * grad mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms + epsilon) var <- var - mom

Arguments :

  • portée : un objet Scope
  • var : Doit provenir d'une Variable().
  • mg : Doit provenir d'une variable().
  • ms : Devrait provenir d’une variable().
  • maman : Devrait provenir d'une variable().
  • lr : Facteur d’échelle. Doit être un scalaire.
  • rho : Taux de décroissance. Doit être un scalaire.
  • epsilon : Terme de crête. Doit être un scalaire.
  • grad : Le gradient.
  • indices : Un vecteur d'indices dans la première dimension de var, ms et mom.

Attributs optionnels (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 est indéfini, mais peut présenter moins de contention.

Retours :

Constructeurs et destructeurs

ResourceSparseApplyCenteredRMSProp (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)
ResourceSparseApplyCenteredRMSProp (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 ResourceSparseApplyCenteredRMSProp::Attrs & attrs)

attributs publics

operation

fonctions publiques

operator::tensorflow::Operation () const

fonctions statiques publiques

UseLocking (bool x)

Structures

tensorflow::ops::ResourceSparseApplyCenteredRMSProp::Attrs

Définiteurs d'attributs optionnels pour ResourceSparseApplyCenteredRMSProp .

attributs publics

opération

Operation operation

fonctions publiques

ResourceSparseApplyCenteredRMSProp

 ResourceSparseApplyCenteredRMSProp(
  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
)

ResourceSparseApplyCenteredRMSProp

 ResourceSparseApplyCenteredRMSProp(
  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 ResourceSparseApplyCenteredRMSProp::Attrs & attrs
)

opérateur::tensorflow::Opération

 operator::tensorflow::Operation() const 

fonctions statiques publiques

Utiliser le verrouillage

Attrs UseLocking(
  bool x
)