View source on GitHub
|
Loss base class.
tf.keras.Loss(
name=None, reduction='sum_over_batch_size', dtype=None
)
This is the class to subclass in order to create new custom losses.
Args | |
|---|---|
reduction
|
Type of reduction to apply to the loss. In almost all cases
this should be "sum_over_batch_size". Supported options are
"sum", "sum_over_batch_size", "mean",
"mean_with_sample_weight" or None. "sum" sums the loss,
"sum_over_batch_size" and "mean" sum the loss and divide by the
sample size, and "mean_with_sample_weight" sums the loss and
divides by the sum of the sample weights. "none" and None
perform no aggregation. Defaults to "sum_over_batch_size".
|
name
|
Optional name for the loss instance. |
dtype
|
The dtype of the loss's computations. Defaults to None, which
means using keras.backend.floatx(). keras.backend.floatx() is a
"float32" unless set to different value
(via keras.backend.set_floatx()). If a keras.DTypePolicy is
provided, then the compute_dtype will be utilized.
|
To be implemented by subclasses:
call(): Contains the logic for loss calculation usingy_true,y_pred.
Example subclass implementation:
class MeanSquaredError(Loss):
def call(self, y_true, y_pred):
return ops.mean(ops.square(y_pred - y_true), axis=-1)
Attributes | |
|---|---|
dtype
|
|
Methods
call
call(
y_true, y_pred
)
from_config
@classmethodfrom_config( config )
get_config
get_config()
__call__
__call__(
y_true, y_pred, sample_weight=None
)
Call self as a function.
View source on GitHub