public class AdaGrad extends Object implements IUpdater
Modifier and Type | Class and Description |
---|---|
static class |
AdaGrad.Builder |
Modifier and Type | Field and Description |
---|---|
static double |
DEFAULT_ADAGRAD_EPSILON |
static double |
DEFAULT_ADAGRAD_LEARNING_RATE |
Constructor and Description |
---|
AdaGrad() |
AdaGrad(double learningRate) |
AdaGrad(double learningRate,
double epsilon) |
AdaGrad(ISchedule learningRateSchedule) |
AdaGrad(ISchedule learningRateSchedule,
double epsilon) |
Modifier and Type | Method and Description |
---|---|
AdaGrad |
clone()
Clone the updater
|
double |
getLearningRate(int iteration,
int epoch)
Get the learning rate - if any - for the updater, at the specified iteration and epoch.
|
boolean |
hasLearningRate() |
GradientUpdater |
instantiate(INDArray viewArray,
boolean initializeViewArray)
Create a new gradient updater
|
GradientUpdater |
instantiate(Map<String,INDArray> updaterState,
boolean initializeStateArrays) |
void |
setLrAndSchedule(double lr,
ISchedule lrSchedule)
Set the learning rate and schedule.
|
long |
stateSize(long numParams)
Determine the updater state size for the given number of parameters.
|
public static final double DEFAULT_ADAGRAD_LEARNING_RATE
public static final double DEFAULT_ADAGRAD_EPSILON
public AdaGrad()
public AdaGrad(double learningRate)
public AdaGrad(double learningRate, double epsilon)
public AdaGrad(ISchedule learningRateSchedule)
public AdaGrad(ISchedule learningRateSchedule, double epsilon)
public long stateSize(long numParams)
IUpdater
public GradientUpdater instantiate(INDArray viewArray, boolean initializeViewArray)
IUpdater
instantiate
in interface IUpdater
viewArray
- The updater state size view awayinitializeViewArray
- If true: initialise the updater statepublic GradientUpdater instantiate(Map<String,INDArray> updaterState, boolean initializeStateArrays)
instantiate
in interface IUpdater
public double getLearningRate(int iteration, int epoch)
IUpdater
getLearningRate
in interface IUpdater
iteration
- Iteration at which to get the learning rateepoch
- Epoch at which to get the learning ratepublic boolean hasLearningRate()
hasLearningRate
in interface IUpdater
public void setLrAndSchedule(double lr, ISchedule lrSchedule)
IUpdater
IUpdater.hasLearningRate()
returns false.setLrAndSchedule
in interface IUpdater
lr
- Learning rate to set (typically not used if LR schedule is non-null)lrSchedule
- Learning rate schedule to set (may be null)Copyright © 2020. All rights reserved.