Aggiorna '*var' secondo l'algoritmo di 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)$$
Classi nidificate
classe | ResourceApplyAdamWithAmsgrad.Options | Attributi facoltativi per ResourceApplyAdamWithAmsgrad |
Metodi pubblici
static <T> ResourceApplyAdamWithAmsgrad | create ( Ambito ambito , Operando <?> var, Operando <?> m, Operando <?> v, Operando <?> vhat, Operando <T> beta1Power, Operando <T> beta2Power, Operando <T> lr, Operando <T > beta1, Operando <T> beta2, Operando <T> epsilon, Operando <T> grad, Opzioni... opzioni) Metodo factory per creare una classe che racchiude una nuova operazione ResourceApplyAdamWithAmsgrad. |
static ResourceApplyAdamWithAmsgrad.Options | useLocking (useLocking booleano) |
Metodi ereditati
Metodi pubblici
public static ResourceApplyAdamWithAmsgrad create ( Ambito ambito , Operando <?> var, Operando <?> m, Operando <?> v, Operando <?> vhat, Operando <T> beta1Power, Operando <T> beta2Power, Operando <T> lr, Operando <T> beta1, Operando <T> beta2, Operando <T> epsilon, Operando <T> grad, Opzioni... opzioni)
Metodo factory per creare una classe che racchiude una nuova operazione ResourceApplyAdamWithAmsgrad.
Parametri
ambito | ambito attuale |
---|---|
var | Dovrebbe provenire da una variabile(). |
M | Dovrebbe provenire da una variabile(). |
v | Dovrebbe provenire da una variabile(). |
cosa | Dovrebbe provenire da una variabile(). |
beta1Power | Deve essere uno scalare. |
beta2Power | Deve essere uno scalare. |
lr | Fattore di scala. Deve essere uno scalare. |
beta1 | Fattore di quantità di moto. Deve essere uno scalare. |
beta2 | Fattore di quantità di moto. Deve essere uno scalare. |
epsilon | Termine di cresta. Deve essere uno scalare. |
grado | Il gradiente. |
opzioni | trasporta valori di attributi opzionali |
Ritorni
- una nuova istanza di ResourceApplyAdamWithAmsgrad
public static ResourceApplyAdamWithAmsgrad.Options useLocking (useLocking booleano)
Parametri
utilizzareBlocco | Se "True", l'aggiornamento dei tensori var, m e v sarà protetto da un blocco; altrimenti il comportamento non è definito, ma può mostrare meno contesa. |
---|