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.Methods inherited from interface Op
envModifier and TypeMethodDescriptiondefault ExecutionEnvironmentenv()Return the execution environment this op was created in.
-
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.
-