tf.nn.sparse_softmax_cross_entropy_with_logits
Вычисляет кросс-энтропию разреженного softmax между logits и labels.
tf.nn.sparse_softmax_cross_entropy_with_logits(
labels, logits, name=None
)
Используется в ноутбуках
| Используется в руководстве | Используется в учебниках |
|---|---|
Измеряет ошибку вероятности в задачах дискретной классификации, в которых классы взаимно исключают друг друга (каждый элемент находится ровно в одном классе). Например, каждое изображение CIFAR-10 помечено одним и только одним меткой: изображение может быть собакой или грузовиком, но не тем и другим одновременно.
Примечание: Для этой операции вероятность заданного метки рассматривается как исключительная. То есть, мягкие классы не допускаются, и векторlabelsдолжен обеспечить единственный определённый индекс для истинного класса для каждой строкиlogits(каждый элемент мини-пакета). Для мягкой классификации softmax с распределением вероятности для каждого элемента см.softmax_cross_entropy_with_logits_v2.
Распространённый случай использования - логарифмы формы [batch_size, num_classes] и метки формы [batch_size], но поддерживаются и более высокие размерности, в этом случае dim-я размерность предполагается размером num_classes. logits должен иметь тип данных float16, float32 или float64, а labels должен иметь тип данных int32 или int64.
logits = tf.constant([[2., -5., .5, -.1],
[0., 0., 1.9, 1.4],
[-100., 100., -100., -100.]])
labels = tf.constant([0, 3, 1])
tf.nn.sparse_softmax_cross_entropy_with_logits(
labels=labels, logits=logits).numpy()
array([0.29750752, 1.1448325 , 0. ], dtype=float32)Для избежания путаницы рекомендуется передавать только именованные аргументы в эту функцию.
| Аргументы | |
|---|---|
labels | Tensor формы [d_0, d_1, ..., d_{r-1}] (где r - ранг labels и результата) и типа данных int32 или int64. Каждый элемент в labels должен быть индексом в [0, num_classes). Другие значения приведут к исключению при запуске этого оператора на процессоре и вернут NaN для соответствующих строк потерь и градиента на графическом процессоре. |
logits | Необработанные логарифмы вероятностей формы [d_0, d_1, ..., d_{r-1}, num_classes] и типа данных float16, float32 или float64. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
A Tensor той же формы, что и labels, и того же типа, что и logits, со значением потери кросс-энтропии softmax. |
| Исключения | |
|---|---|
ValueError | Если логарифмы являются скалярами (нужно иметь ранг >= 1) или если ранг меток не равен рангу логарифмов минус один. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/nn/sparse_softmax_cross_entropy_with_logits