public class
Ftrl
Optimizer that implements the FTRL algorithm.
This version has support for both online L2 (the L2 penalty given in the paper below) and shrinkage-type L2 (which is the addition of an L2 penalty to the loss function).
See Also
Constants
| String | ACCUMULATOR | |
| float | INITIAL_ACCUMULATOR_VALUE_DEFAULT | |
| float | L1STRENGTH_DEFAULT | |
| float | L2STRENGTH_DEFAULT | |
| float | L2_SHRINKAGE_REGULARIZATION_STRENGTH_DEFAULT | |
| float | LEARNING_RATE_DEFAULT | |
| float | LEARNING_RATE_POWER_DEFAULT | |
| String | LINEAR_ACCUMULATOR |
Inherited Constants
Public Constructors
Public Methods
| String |
getOptimizerName()
Get the Name of the optimizer.
|
Inherited Methods
Constants
public static final String ACCUMULATOR
Constant Value:
"gradient_accumulator"
public static final float INITIAL_ACCUMULATOR_VALUE_DEFAULT
Constant Value:
0.1
public static final float L1STRENGTH_DEFAULT
Constant Value:
0.0
public static final float L2STRENGTH_DEFAULT
Constant Value:
0.0
public static final float L2_SHRINKAGE_REGULARIZATION_STRENGTH_DEFAULT
Constant Value:
0.0
public static final float LEARNING_RATE_DEFAULT
Constant Value:
0.001
public static final float LEARNING_RATE_POWER_DEFAULT
Constant Value:
-0.5
public static final String LINEAR_ACCUMULATOR
Constant Value:
"linear_accumulator"
Public Constructors
public Ftrl (Graph graph, String name)
Creates a Ftrl Optimizer
Parameters
| graph | the TensorFlow Graph |
|---|---|
| name | the name of this Optimizer |
public Ftrl (Graph graph, float learningRate)
Creates a Ftrl Optimizer
Parameters
| graph | the TensorFlow Graph |
|---|---|
| learningRate | the learning rate |
public Ftrl (Graph graph, String name, float learningRate)
Creates a Ftrl Optimizer
Parameters
| graph | the TensorFlow Graph |
|---|---|
| name | the name of this Optimizer |
| learningRate | the learning rate |
public Ftrl (Graph graph, float learningRate, float learningRatePower, float initialAccumulatorValue, float l1Strength, float l2Strength, float l2ShrinkageRegularizationStrength)
Creates a Ftrl Optimizer
Parameters
| graph | the TensorFlow Graph |
|---|---|
| learningRate | the learning rate |
| learningRatePower | Controls how the learning rate decreases during training. Use zero for a fixed learning rate. |
| initialAccumulatorValue | The starting value for accumulators. Only zero or positive values are allowed. |
| l1Strength | the L1 Regularization strength, must be greater than or equal to zero. |
| l2Strength | the L2 Regularization strength, must be greater than or equal to zero. |
| l2ShrinkageRegularizationStrength | This differs from L2 above in that the L2 above is a stabilization penalty, whereas this L2 shrinkage is a magnitude penalty. must be greater than or equal to zero. |
Throws
| IllegalArgumentException | if the initialAccumulatorValue, l1RegularizationStrength, l2RegularizationStrength, or l2ShrinkageRegularizationStrength are less than 0.0, or learningRatePower is greater than 0.0. |
|---|
public Ftrl (Graph graph, String name, float learningRate, float learningRatePower, float initialAccumulatorValue, float l1Strength, float l2Strength, float l2ShrinkageRegularizationStrength)
Creates a Ftrl Optimizer
Parameters
| graph | the TensorFlow Graph |
|---|---|
| name | the name of this Optimizer |
| learningRate | the learning rate |
| learningRatePower | Controls how the learning rate decreases during training. Use zero for a fixed learning rate. |
| initialAccumulatorValue | The starting value for accumulators. Only zero or positive values are allowed. |
| l1Strength | the L1 Regularization strength, must be greater than or equal to zero. |
| l2Strength | the L2 Regularization strength, must be greater than or equal to zero. |
| l2ShrinkageRegularizationStrength | This differs from L2 above in that the L2 above is a stabilization penalty, whereas this L2 shrinkage is a magnitude penalty. must be greater than or equal to zero. |
Throws
| IllegalArgumentException | if the initialAccumulatorValue, l1RegularizationStrength, l2RegularizationStrength, or l2ShrinkageRegularizationStrength are less than 0.0, or learningRatePower is greater than 0.0. |
|---|
Public Methods
public String getOptimizerName ()
Get the Name of the optimizer.
Returns
- The optimizer name.