Class L2Regularization
- java.lang.Object
-
- org.nd4j.linalg.learning.regularization.L2Regularization
-
- All Implemented Interfaces:
Serializable
,Regularization
public class L2Regularization extends Object implements Regularization
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.nd4j.linalg.learning.regularization.Regularization
Regularization.ApplyStep
-
-
Constructor Summary
Constructors Constructor Description L2Regularization(double l2)
L2Regularization(@NonNull ISchedule l2)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
apply(INDArray param, INDArray gradView, double lr, int iteration, int epoch)
Apply the regularization by modifying the gradient array in-placeRegularization.ApplyStep
applyStep()
Regularization
clone()
double
score(INDArray param, int iteration, int epoch)
Calculate the loss function score component for the regularization.
For example, in L2 regularization, this would returnL = 0.5 * sum_i param[i]^2
For regularization types that don't have a score component, this method can return 0.
-
-
-
Field Detail
-
l2
protected final ISchedule l2
-
-
Constructor Detail
-
L2Regularization
public L2Regularization(double l2)
- Parameters:
l2
- L2 regularization coefficient
-
L2Regularization
public L2Regularization(@NonNull @NonNull ISchedule l2)
- Parameters:
l2
- L2 regularization coefficient (schedule)
-
-
Method Detail
-
applyStep
public Regularization.ApplyStep applyStep()
- Specified by:
applyStep
in interfaceRegularization
- Returns:
- The step that the regularization should be applied, as defined by
Regularization.ApplyStep
-
apply
public void apply(INDArray param, INDArray gradView, double lr, int iteration, int epoch)
Description copied from interface:Regularization
Apply the regularization by modifying the gradient array in-place- Specified by:
apply
in interfaceRegularization
- Parameters:
param
- Input array (usually parameters)gradView
- Gradient view array (should be modified/updated). Same shape and type as the input array.lr
- Current learning rateiteration
- Current network training iterationepoch
- Current network training epoch
-
score
public double score(INDArray param, int iteration, int epoch)
Description copied from interface:Regularization
Calculate the loss function score component for the regularization.
For example, in L2 regularization, this would returnL = 0.5 * sum_i param[i]^2
For regularization types that don't have a score component, this method can return 0. However, note that this may make the regularization type not gradient checkable.- Specified by:
score
in interfaceRegularization
- Parameters:
param
- Input array (usually parameters)iteration
- Current network training iterationepoch
- Current network training epoch- Returns:
- Loss function score component based on the input/parameters array
-
clone
public Regularization clone()
- Specified by:
clone
in interfaceRegularization
- Overrides:
clone
in classObject
- Returns:
- An independent copy of the regularization instance
-
-