tf.losses.sigmoid_cross_entropy(
multi_class_labels,
logits,
weights=1.0,
label_smoothing=0,
scope=None,
loss_collection=tf.GraphKeys.LOSSES,
reduction=Reduction.SUM_BY_NONZERO_WEIGHTS
)
Defined in tensorflow/python/ops/losses/losses_impl.py.
Creates a cross-entropy loss using tf.nn.sigmoid_cross_entropy_with_logits.
weights acts as a coefficient for the loss. If a scalar is provided,
then the loss is simply scaled by the given value. If weights is a
tensor of shape [batch_size], then the loss weights apply to each
corresponding sample.
If label_smoothing is nonzero, smooth the labels towards 1/2:
new_multiclass_labels = multiclass_labels * (1 - label_smoothing)
+ 0.5 * label_smoothing
Args:
multi_class_labels:[batch_size, num_classes]target integer labels in{0, 1}.logits: Float[batch_size, num_classes]logits outputs of the network.weights: OptionalTensorwhose 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 correspondinglossesdimension).label_smoothing: If greater than0then smooth the labels.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 Tensor of the same type as logits. If reduction is
NONE, this has the same shape as logits; otherwise, it is scalar.
Raises:
ValueError: If the shape oflogitsdoesn't match that ofmulti_class_labelsor if the shape ofweightsis invalid, or ifweightsis None. Also ifmulti_class_labelsorlogitsis 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.