Mettez à jour '*var' selon l'algorithme d'Adam.
$$\text{lr}_t := \mathrm{learning_rate} * \sqrt{1 - \beta_2^t} / (1 - \beta_1^t)$$$$m_t := \beta_1 * m_{t-1} + (1 - \beta_1) * g$$$$v_t := \beta_2 * v_{t-1} + (1 - \beta_2) * g * g$$$$\hat{v}_t := max{\hat{v}_{t-1}, v_t}$$$$\text{variable} := \text{variable} - \text{lr}_t * m_t / (\sqrt{\hat{v}_t} + \epsilon)$$
Classes imbriquées
classe | ResourceApplyAdamWithAmsgrad.Options | Attributs facultatifs pour ResourceApplyAdamWithAmsgrad |
Constantes
Chaîne | OP_NAME | Le nom de cette opération, tel que connu par le moteur principal TensorFlow |
Méthodes publiques
statique <T étend TType > ResourceApplyAdamWithAmsgrad | créer ( Scope scope, Opérande <?> var, Opérande <?> m, Opérande <?> v, Opérande <?> vhat, Opérande <T> beta1Power, Opérande <T> beta2Power, Opérande <T> lr, Opérande <T > beta1, Opérande <T> beta2, Opérande <T> epsilon, Opérande <T> grad, Options... options) Méthode d'usine pour créer une classe encapsulant une nouvelle opération ResourceApplyAdamWithAmsgrad. |
statique ResourceApplyAdamWithAmsgrad.Options | 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
public static ResourceApplyAdamWithAmsgrad create ( Scope scope, Operand <?> var, Operand <?> m, Operand <?> v, Operand <?> vhat, Operand <T> beta1Power, Operand <T> beta2Power, Operand <T> lr, Opérande <T> beta1, Opérande <T> beta2, Opérande <T> epsilon, Opérande <T> grad, Options... options)
Méthode d'usine pour créer une classe encapsulant une nouvelle opération ResourceApplyAdamWithAmsgrad.
Paramètres
portée | portée actuelle |
---|---|
var | Doit provenir d'une variable (). |
m | Doit provenir d'une variable (). |
v | Doit provenir d'une variable (). |
quoi | Doit provenir d'une variable (). |
bêta1Puissance | Ça doit être un scalaire. |
bêta2Power | Ça doit être un scalaire. |
g / D | Facteur d'échelle. Ça doit être un scalaire. |
bêta1 | Facteur d'élan. Ça doit être un scalaire. |
bêta2 | Facteur d'élan. Ça doit être un scalaire. |
épsilon | Terme de crête. Ça doit être un scalaire. |
diplômé | Le dégradé. |
choix | porte des valeurs d'attributs facultatifs |
Retour
- une nouvelle instance de ResourceApplyAdamWithAmsgrad
public statique ResourceApplyAdamWithAmsgrad.Options useLocking (booléen useLocking)
Paramètres
utiliserVerrouillage | Si `True`, la mise à jour des tenseurs var, m et v sera protégée par un verrou ; sinon, le comportement n'est pas défini, mais peut présenter moins de conflits. |
---|