flux tensoriel : : opérations : : SparseApplyProximalAdagrad

#include <training_ops.h>

Entrées de mise à jour éparses dans '*var' et '*accum' selon l'algorithme FOBOS.

Résumé

C'est pour les lignes pour lesquelles nous avons grad, nous mettons à jour var et accumulons comme suit : $$accum += grad * grad$$ $$prox_v = var$$ $$prox_v -= lr * grad * (1 / sqrt(accum))$$ $$var = sign(prox_v)/(1+lr*l2) * max{|prox_v|-lr*l1,0}$$

Arguments :

  • scope : un objet Scope
  • var : doit provenir d'une variable ().
  • cumul : doit provenir d'une variable ().
  • gd : Taux d’apprentissage. Ça doit être un scalaire.
  • l1 : régularisation L1. Ça doit être un scalaire.
  • l2 : régularisation L2. Ça doit être un scalaire.
  • grad : Le dégradé.
  • indices : Un vecteur d'indices dans la première dimension de var et cumul.

Attributs facultatifs (voir Attrs ) :

  • use_locking : Si True, la mise à jour des tenseurs var et accum sera 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".

Attributs publics

operation
out

Fonctions publiques

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

Fonctions statiques publiques

UseLocking (bool x)

Attributs publics

opération

Operation operation

dehors

::tensorflow::Output out

Fonctions publiques

SparseApplyProximalAdagrad

 SparseApplyProximalAdagrad(
 
const ::tensorflow::Scope & scope,
 
::tensorflow::Input var,
 
::tensorflow::Input accum,
 
::tensorflow::Input lr,
 
::tensorflow::Input l1,
 
::tensorflow::Input l2,
 
::tensorflow::Input grad,
 
::tensorflow::Input indices
)

SparseApplyProximalAdagrad

 SparseApplyProximalAdagrad(
 
const ::tensorflow::Scope & scope,
 
::tensorflow::Input var,
 
::tensorflow::Input accum,
 
::tensorflow::Input lr,
 
::tensorflow::Input l1,
 
::tensorflow::Input l2,
 
::tensorflow::Input grad,
 
::tensorflow::Input indices,
 
const SparseApplyProximalAdagrad::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
)