Mettez à jour les entrées pertinentes dans '*var' selon le schéma Ftrl-proximal.
C'est pour les lignes pour lesquelles nous avons grad, nous mettons à jour var, accumulé et linéaire comme suit : grad_with_shrinkage = grad + 2 * l2_shrinkage * var accum_new = accum + grad * grad Linear += grad_with_shrinkage - (accum_new^(-lr_power) - accum^ (-lr_power)) / lr * var quadratique = 1,0 / (accum_new^(lr_power) * lr) + 2 * l2 var = (signe (linéaire) * l1 - linéaire) / quadratique si |linéaire| > l1 sinon 0,0 cumul = accum_new
Classes imbriquées
classe | SparseApplyFtrl.Options | Attributs facultatifs pour SparseApplyFtrl |
Constantes
Chaîne | OP_NAME | Le nom de cette opération, tel que connu par le moteur principal TensorFlow |
Méthodes publiques
Sortie <T> | comme Sortie () Renvoie le handle symbolique du tenseur. |
statique <T étend TType > SparseApplyFtrl <T> | créer ( Scope scope, Opérande <T> var, Opérande <T> accum, Opérande <T> linéaire, Opérande <T> grad, Opérande <? étend TNumber > indices, Opérande <T> lr, Opérande <T> l1, Opérande <T> l2, Opérande <T> l2Retrait, Opérande <T> lrPuissance, Options... options) Méthode d'usine pour créer une classe encapsulant une nouvelle opération SparseApplyFtrl. |
SparseApplyFtrl.Options statique | multiplierLinearByLr (booléen multiplierLinearByLr) |
Sortie <T> | dehors () Identique à "var". |
SparseApplyFtrl.Options statique | useLocking (booléen useLocking) |
Méthodes héritées
Constantes
chaîne finale statique publique OP_NAME
Le nom de cette opération, tel que connu par le moteur principal TensorFlow
Méthodes publiques
sortie publique <T> asOutput ()
Renvoie le handle symbolique du tenseur.
Les entrées des opérations TensorFlow sont les sorties d'une autre opération TensorFlow. Cette méthode est utilisée pour obtenir un handle symbolique qui représente le calcul de l’entrée.
public static SparseApplyFtrl <T> create ( Portée de la portée , Opérande <T> var, Opérande <T> accum, Opérande <T> linéaire, Opérande <T> grad, Opérande <? étend TNumber > indices, Opérande <T> lr, Opérande <T> l1, Opérande <T> l2, Opérande <T> l2Retrait, Opérande <T> lrPuissance, Options... options)
Méthode d'usine pour créer une classe encapsulant une nouvelle opération SparseApplyFtrl.
Paramètres
portée | portée actuelle |
---|---|
var | Doit provenir d'une variable (). |
cumuler | Doit provenir d'une variable (). |
linéaire | Doit provenir d'une variable (). |
diplômé | Le dégradé. |
indices | Un vecteur d'indices dans la première dimension de var et cumul. |
g / D | Facteur d'échelle. Ça doit être un scalaire. |
l1 | Régularisation L1. Ça doit être un scalaire. |
l2 | Régularisation du retrait L2. Ça doit être un scalaire. |
lrPower | Facteur d'échelle. Ça doit être un scalaire. |
choix | porte des valeurs d'attributs facultatifs |
Retour
- une nouvelle instance de SparseApplyFtrl
public statique SparseApplyFtrl.Options useLocking (booléen useLocking)
Paramètres
utiliserVerrouillage | Si `True`, la mise à jour des tenseurs var et cumul sera protégée par un verrou ; sinon, le comportement n'est pas défini, mais peut présenter moins de conflits. |
---|