View source on GitHub |
Wrinkle regularizer for PWL calibration layer.
tfl.pwl_calibration_layer.WrinkleRegularizer(
l1=0.0, l2=0.0, is_cyclic=False
)
Calibrator wrinkle regularization penalizes the change in the second derivative. It is defined to be:
l1 * ||third_derivative||_1 + l2 * ||third_derivative||_2^2
where third_derivative
is:
`3 * output_keypoints[1:end-2] - 3 * output_keypoints[2:end-1]
- output_keypoints[0:end-3] + output_keypoints[3:end]`.
This regularizer is zero when the output_keypoints form a 2nd order polynomial of the index (and not necessarily in input values, e.g. when using non-uniform input keypoints).
Args | |
---|---|
l1
|
l1 regularization amount as float. |
l2
|
l2 regularization amount as float. |
is_cyclic
|
Whether the first and last keypoints should take the same output value. |
Methods
from_config
@classmethod
from_config( config )
Creates a regularizer from its config.
This method is the reverse of get_config
,
capable of instantiating the same regularizer from the config
dictionary.
This method is used by TF-Keras model_to_estimator
, saving and
loading models to HDF5 formats, TF-Keras model cloning, some
visualization utilities, and exporting models to and from JSON.
Args | |
---|---|
config
|
A Python dictionary, typically the output of get_config. |
Returns | |
---|---|
A regularizer instance. |
get_config
get_config()
Standard Keras config for serialization.
__call__
__call__(
x
)
Returns regularization loss.
Args | |
---|---|
x
|
Tensor of shape: (k, units) which represents weights of PWL
calibration layer. First row of weights is bias term. All remaining
represent delta in y-value compare to previous point (segment heights).
|