Zaktualizuj „*var” zgodnie z algorytmem Adama.
$$lr_t := \text{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$$$$variable := variable - lr_t * m_t / (\sqrt{v_t} + \epsilon)$$
Klasy zagnieżdżone
| klasa | ZastosujAdam.Opcje | Opcjonalne atrybuty ApplyAdam | |
Stałe
| Smyczkowy | OP_NAME | Nazwa tej operacji znana silnikowi rdzenia TensorFlow |
Metody publiczne
| Wyjście <T> | jako wyjście () Zwraca symboliczny uchwyt tensora. |
| statyczny <T rozszerza TType > ApplyAdam <T> | utwórz (Zakres zasięgu , Operand <T> var, Operand <T> m, Operand <T> v, Operand <T> beta1Power, Operand <T> beta2Power, Operand <T> lr, Operand <T> beta1, Argument <T > beta2, Operand <T> epsilon, Operand <T> grad, Opcje... opcje) Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację ApplyAdam. |
| Wyjście <T> | na zewnątrz () To samo co „var”. |
| statyczny ApplyAdam.Options | useLocking (boolowski useLocking) |
| statyczny ApplyAdam.Options | useNesterov (Boolean useNesterov) |
Metody dziedziczone
Stałe
publiczny statyczny końcowy ciąg znaków OP_NAME
Nazwa tej operacji znana silnikowi rdzenia TensorFlow
Metody publiczne
publiczne wyjście <T> asOutput ()
Zwraca symboliczny uchwyt tensora.
Dane wejściowe operacji TensorFlow są wynikami innej operacji TensorFlow. Ta metoda służy do uzyskania symbolicznego uchwytu reprezentującego obliczenia danych wejściowych.
public static ApplyAdam <T> create ( Zakres zasięgu , Operand <T> var, Operand <T> m, Operand <T> v, Operand <T> beta1Power, Operand <T> beta2Power, Operand <T> lr, Argument <T > beta1, Argument <T> beta2, Argument <T> epsilon, Argument <T> grad, Opcje... opcje)
Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację ApplyAdam.
Parametry
| zakres | aktualny zakres |
|---|---|
| odm | Powinno pochodzić ze zmiennej (). |
| M | Powinno pochodzić ze zmiennej (). |
| w | Powinno pochodzić ze zmiennej (). |
| beta1Moc | Musi być skalarem. |
| beta2Power | Musi być skalarem. |
| lr | Współczynnik skalowania. Musi być skalarem. |
| beta1 | Czynnik pędu. Musi być skalarem. |
| beta2 | Czynnik pędu. Musi być skalarem. |
| epsilon | Termin grzbietowy. Musi być skalarem. |
| absolwent | Gradient. |
| opcje | przenosi opcjonalne wartości atrybutów |
Powroty
- nowa instancja ApplyAdam
public static ApplyAdam.Options useLocking (Boolean useLocking)
Parametry
| użyjBlokowanie | Jeśli `True`, aktualizacja tensorów var, m i v będzie chroniona blokadą; w przeciwnym razie zachowanie jest niezdefiniowane, ale może wykazywać mniejszą rywalizację. |
|---|
public static ApplyAdam.Options useNesterov (Boolean useNesterov)
Parametry
| użyj Niestierowa | Jeśli „True”, używa aktualizacji Nesterov. |
|---|