Class ApplyFtrl<T extends TType>
java.lang.Object
org.tensorflow.op.RawOp
org.tensorflow.op.train.ApplyFtrl<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
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classApplyFtrl.Inputs<T extends TType>static classOptional attributes forApplyFtrl -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe name of this op, as known by TensorFlow core engine -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionasOutput()Returns the symbolic handle of the tensor.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.static ApplyFtrl.OptionsmultiplyLinearByLr(Boolean multiplyLinearByLr) Sets the multiplyLinearByLr option.out()Gets out.static ApplyFtrl.OptionsuseLocking(Boolean useLocking) Sets the useLocking option.
-
Field Details
-
OP_NAME
The name of this op, as known by TensorFlow core engine- See Also:
-
-
Constructor Details
-
ApplyFtrl
-
-
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 forApplyFtrlV2output and operands- Parameters:
scope- current scopevar- 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 valuelrPower- Scaling factor. Must be a scalar.options- carries optional attribute values- Returns:
- a new instance of ApplyFtrl
-
useLocking
Sets the useLocking option.- Parameters:
useLocking- IfTrue, 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
Sets the multiplyLinearByLr option.- Parameters:
multiplyLinearByLr- the multiplyLinearByLr option- Returns:
- this Options instance.
-
out
-
asOutput
Description copied from interface:OperandReturns 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.
-