przepływ tensorowy:: ops:: ZasóbSparseApplyFtrlV2

#include <training_ops.h>

Zaktualizuj odpowiednie wpisy w „*var” zgodnie ze schematem Ftrl-proximal.

Streszczenie

To znaczy dla wierszy, dla których mamy grad, aktualizujemy var, accum i linear w następujący sposób: grad_with_shrinkage = grad + 2 * l2_shrinkage * var accum_new = accum + grad_with_shrinkage * grad_with_shrinkage linear += grad_with_shrinkage + (accum_new^(-lr_power) - accum^ (-lr_power)) / lr * var kwadratowy = 1,0 / (accum_new^(lr_power) * lr) + 2 * l2 var = (znak(liniowy) * l1 - liniowy) / kwadratowy jeśli |liniowy| > l1 else 0,0 accum = accum_new

Argumenty:

  • zakres: Obiekt Scope
  • var: Powinien pochodzić ze zmiennej ().
  • accum: Powinien pochodzić ze zmiennej ().
  • liniowy: powinien pochodzić ze zmiennej ().
  • grad: gradient.
  • indeksy: wektor indeksów do pierwszego wymiaru var i accum.
  • lr: Współczynnik skalowania. Musi być skalarem.
  • l1: Regularyzacja L1. Musi być skalarem.
  • l2: Regularyzacja skurczu L2. Musi być skalarem.
  • lr_power: Współczynnik skalowania. Musi być skalarem.

Opcjonalne atrybuty (patrz Attrs ):

  • use_locking: Jeśli True , aktualizacja tensorów var i accum będzie chroniona blokadą; w przeciwnym razie zachowanie jest niezdefiniowane, ale może wykazywać mniejszą rywalizację.

Zwroty:

Konstruktory i destruktory

ResourceSparseApplyFtrlV2 (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input accum, :: tensorflow::Input linear, :: tensorflow::Input grad, :: tensorflow::Input indices, :: tensorflow::Input lr, :: tensorflow::Input l1, :: tensorflow::Input l2, :: tensorflow::Input l2_shrinkage, :: tensorflow::Input lr_power)
ResourceSparseApplyFtrlV2 (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input accum, :: tensorflow::Input linear, :: tensorflow::Input grad, :: tensorflow::Input indices, :: tensorflow::Input lr, :: tensorflow::Input l1, :: tensorflow::Input l2, :: tensorflow::Input l2_shrinkage, :: tensorflow::Input lr_power, const ResourceSparseApplyFtrlV2::Attrs & attrs)

Atrybuty publiczne

operation

Funkcje publiczne

operator::tensorflow::Operation () const

Publiczne funkcje statyczne

MultiplyLinearByLr (bool x)
UseLocking (bool x)

Struktury

tensorflow:: ops:: ResourceSparseApplyFtrlV2:: Attrs

Opcjonalne moduły ustawiające atrybuty dla ResourceSparseApplyFtrlV2 .

Atrybuty publiczne

działanie

Operation operation

Funkcje publiczne

ZasóbSparseApplyFtrlV2

 ResourceSparseApplyFtrlV2(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input var,
  ::tensorflow::Input accum,
  ::tensorflow::Input linear,
  ::tensorflow::Input grad,
  ::tensorflow::Input indices,
  ::tensorflow::Input lr,
  ::tensorflow::Input l1,
  ::tensorflow::Input l2,
  ::tensorflow::Input l2_shrinkage,
  ::tensorflow::Input lr_power
)

ZasóbSparseApplyFtrlV2

 ResourceSparseApplyFtrlV2(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input var,
  ::tensorflow::Input accum,
  ::tensorflow::Input linear,
  ::tensorflow::Input grad,
  ::tensorflow::Input indices,
  ::tensorflow::Input lr,
  ::tensorflow::Input l1,
  ::tensorflow::Input l2,
  ::tensorflow::Input l2_shrinkage,
  ::tensorflow::Input lr_power,
  const ResourceSparseApplyFtrlV2::Attrs & attrs
)

operator::tensorflow::Operacja

 operator::tensorflow::Operation() const 

Publiczne funkcje statyczne

PomnóżLiniowoPrzezLr

Attrs MultiplyLinearByLr(
  bool x
)

Użyj Blokowania

Attrs UseLocking(
  bool x
)