TensorFlow 1 version | View source on GitHub |
Computes sparse softmax cross entropy between logits
and labels
.
tf.nn.sparse_softmax_cross_entropy_with_logits(
labels, logits, name=None
)
Measures the probability error in discrete classification tasks in which the classes are mutually exclusive (each entry is in exactly one class). For example, each CIFAR-10 image is labeled with one and only one label: an image can be a dog or a truck, but not both.
A common use case is to have logits of shape
[batch_size, num_classes]
and have labels of shape
[batch_size]
, but higher dimensions are supported, in which
case the dim
-th dimension is assumed to be of size num_classes
.
logits
must have the dtype of float16
, float32
, or float64
, and
labels
must have the dtype of int32
or int64
.
Note that to avoid confusion, it is required to pass only named arguments to this function.
Args | |
---|---|
labels
|
Tensor of shape [d_0, d_1, ..., d_{r-1}] (where r is rank of
labels and result) and dtype int32 or int64 . Each entry in labels
must be an index in [0, num_classes) . Other values will raise an
exception when this op is run on CPU, and return NaN for corresponding
loss and gradient rows on GPU.
|
logits
|
Unscaled log probabilities of shape [d_0, d_1, ..., d_{r-1},
num_classes] and dtype float16 , float32 , or float64 .
|
name
|
A name for the operation (optional). |
Returns | |
---|---|
A Tensor of the same shape as labels and of the same type as logits
with the softmax cross entropy loss.
|
Raises | |
---|---|
ValueError
|
If logits are scalars (need to have rank >= 1) or if the rank of the labels is not equal to the rank of the logits minus one. |