MaxNorm
classtf_keras.constraints.MaxNorm(max_value=2, axis=0)
MaxNorm weight constraint.
Constrains the weights incident to each hidden unit to have a norm less than or equal to a desired value.
Also available via the shortcut function tf.keras.constraints.max_norm
.
Arguments
Dense
layer the weight matrix
has shape (input_dim, output_dim)
,
set axis
to 0
to constrain each weight vector
of length (input_dim,)
.
In a Conv2D
layer with data_format="channels_last"
,
the weight tensor has shape
(rows, cols, input_depth, output_depth)
,
set axis
to [0, 1, 2]
to constrain the weights of each filter tensor of size
(rows, cols, input_depth)
.MinMaxNorm
classtf_keras.constraints.MinMaxNorm(min_value=0.0, max_value=1.0, rate=1.0, axis=0)
MinMaxNorm weight constraint.
Constrains the weights incident to each hidden unit to have the norm between a lower bound and an upper bound.
Also available via the shortcut function
tf.keras.constraints.min_max_norm
.
Arguments
(1 - rate) * norm + rate * norm.clip(min_value, max_value)
.
Effectively, this means that rate=1.0 stands for strict
enforcement of the constraint, while rate<1.0 means that
weights will be rescaled at each step to slowly move
towards a value inside the desired interval.Dense
layer the weight matrix
has shape (input_dim, output_dim)
,
set axis
to 0
to constrain each weight vector
of length (input_dim,)
.
In a Conv2D
layer with data_format="channels_last"
,
the weight tensor has shape
(rows, cols, input_depth, output_depth)
,
set axis
to [0, 1, 2]
to constrain the weights of each filter tensor of size
(rows, cols, input_depth)
.NonNeg
classtf_keras.constraints.NonNeg()
Constrains the weights to be non-negative.
Also available via the shortcut function tf.keras.constraints.non_neg
.
UnitNorm
classtf_keras.constraints.UnitNorm(axis=0)
Constrains the weights incident to each hidden unit to have unit norm.
Also available via the shortcut function tf.keras.constraints.unit_norm
.
Arguments
Dense
layer the weight matrix
has shape (input_dim, output_dim)
,
set axis
to 0
to constrain each weight vector
of length (input_dim,)
.
In a Conv2D
layer with data_format="channels_last"
,
the weight tensor has shape
(rows, cols, input_depth, output_depth)
,
set axis
to [0, 1, 2]
to constrain the weights of each filter tensor of size
(rows, cols, input_depth)
.RadialConstraint
classtf_keras.constraints.RadialConstraint()
Constrains Conv2D
kernel weights to be the same for each radius.
Also available via the shortcut function
tf.keras.constraints.radial_constraint
.
For example, the desired output for the following 4-by-4 kernel:
kernel = [[v_00, v_01, v_02, v_03],
[v_10, v_11, v_12, v_13],
[v_20, v_21, v_22, v_23],
[v_30, v_31, v_32, v_33]]
is this::
kernel = [[v_11, v_11, v_11, v_11],
[v_11, v_33, v_33, v_11],
[v_11, v_33, v_33, v_11],
[v_11, v_11, v_11, v_11]]
This constraint can be applied to any Conv2D
layer version, including
Conv2DTranspose
and SeparableConv2D
, and with either "channels_last"
or "channels_first"
data format. The method assumes the weight tensor is
of shape (rows, cols, input_depth, output_depth)
.