tf.losses.hinge_loss(
labels,
logits,
weights=1.0,
scope=None,
loss_collection=tf.GraphKeys.LOSSES,
reduction=Reduction.SUM_BY_NONZERO_WEIGHTS
)
Defined in tensorflow/python/ops/losses/losses_impl.py
.
Adds a hinge loss to the training procedure.
Args:
labels
: The ground truth output tensor. Its shape should match the shape of logits. The values of the tensor are expected to be 0.0 or 1.0. Internally the {0,1} labels are converted to {-1,1} when calculating the hinge loss.logits
: The logits, a float tensor. Note that logits are assumed to be unbounded and 0-centered. A value > 0 (resp. < 0) is considered a positive (resp. negative) binary prediction.weights
: OptionalTensor
whose rank is either 0, or the same rank aslabels
, and must be broadcastable tolabels
(i.e., all dimensions must be either1
, or the same as the correspondinglosses
dimension).scope
: The scope for the operations performed in computing the loss.loss_collection
: collection to which the loss will be added.reduction
: Type of reduction to apply to loss.
Returns:
Weighted loss float Tensor
. If reduction
is NONE
, this has the same
shape as labels
; otherwise, it is scalar.
Raises:
ValueError
: If the shapes oflogits
andlabels
don't match or iflabels
orlogits
is None.
Eager Compatibility
The loss_collection
argument is ignored when executing eagerly. Consider
holding on to the return value or collecting losses via a tf.keras.Model
.