Class ApplyFtrl<T extends TType>

java.lang.Object
org.tensorflow.op.RawOp
org.tensorflow.op.train.ApplyFtrl<T>
All Implemented Interfaces:
Shaped, Op, Operand<T>

@Operator(group="train") public final class ApplyFtrl<T extends TType> extends RawOp implements Operand<T>
Update '*var' according to the Ftrl-proximal scheme. 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 quadratic = 1.0 / (accum_new^(lr_power) * lr) + 2 * l2 var = (sign(linear) * l1 - linear) / quadratic if |linear| > l1 else 0.0 accum = accum_new
  • Field Details

  • Constructor Details

    • ApplyFtrl

      public ApplyFtrl(Operation operation)
  • Method Details

    • create

      @Endpoint(describeByClass=true) public static <T extends TType> ApplyFtrl<T> create(Scope scope, Operand<T> var, Operand<T> accum, Operand<T> linear, Operand<T> grad, Operand<T> lr, Operand<T> l1, Operand<T> l2, Operand<T> l2Shrinkage, Operand<T> lrPower, ApplyFtrl.Options... options)
      Factory method to create a class wrapping a new ApplyFtrlV2 operation.
      Type Parameters:
      T - data type for ApplyFtrlV2 output and operands
      Parameters:
      scope - current scope
      var - Should be from a Variable().
      accum - Should be from a Variable().
      linear - Should be from a Variable().
      grad - The gradient.
      lr - Scaling factor. Must be a scalar.
      l1 - L1 regularization. Must be a scalar.
      l2 - L2 shrinkage regularization. Must be a scalar.
      l2Shrinkage - The l2Shrinkage value
      lrPower - Scaling factor. Must be a scalar.
      options - carries optional attribute values
      Returns:
      a new instance of ApplyFtrl
    • useLocking

      public static ApplyFtrl.Options useLocking(Boolean useLocking)
      Sets the useLocking option.
      Parameters:
      useLocking - If True, updating of the var and accum tensors will be protected by a lock; otherwise the behavior is undefined, but may exhibit less contention.
      Returns:
      this Options instance.
    • multiplyLinearByLr

      public static ApplyFtrl.Options multiplyLinearByLr(Boolean multiplyLinearByLr)
      Sets the multiplyLinearByLr option.
      Parameters:
      multiplyLinearByLr - the multiplyLinearByLr option
      Returns:
      this Options instance.
    • out

      public Output<T> out()
      Gets out. Same as "var".
      Returns:
      out.
    • asOutput

      public Output<T> asOutput()
      Description copied from interface: Operand
      Returns the symbolic handle of the tensor.

      Inputs to TensorFlow operations are outputs of another TensorFlow operation. This method is used to obtain a symbolic handle that represents the computation of the input.

      Specified by:
      asOutput in interface Operand<T extends TType>
      See Also: