Вычисляет потерю кроссэнтропии между метками и прогнозами.
Используйте эту функцию кроссэнтропийных потерь, когда имеется два или более классов меток. Мы ожидаем, что метки будут предоставлены в представлении one_hot. Если вы хотите предоставить метки как целые числа, используйте потерю SparseCategoricalCrossentropy
. Для каждого объекта должно быть # classes
значений с плавающей запятой.
Автономное использование:
Operand<TFloat32> labels = tf.constant(new float[][] { {0, 1, 0}, {0, 0, 1} }); Operand<TFloat32> predictions = tf.constant(new float[][] { {0.05f, 0.95f, 0f}, {0.1f, 0.8f, 0.1f} }); CategoricalCrossentropy cce = new CategoricalCrossentropy(tf); Operand<TFloat32> result = cce.call(labels, predictions); // produces 1.177
Вызов с выборочным весом:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.3f, 0.7f}); Operand<TFloat32> result = cce.call(labels, predictions, sampleWeight); // produces 0.814f
Использование типа сокращения SUM
:
CategoricalCrossentropy cce = new CategoricalCrossentropy(tf, Reduction.SUM); Operand<TFloat32> result = cce.call(labels, predictions); // produces 2.354f
Использование типа сокращения NONE
:
CategoricalCrossentropy cce = new CategoricalCrossentropy(tf, Reduction.NONE); Operand<TFloat32> result = cce.call(labels, predictions); // produces [0.0513f, 2.303f]
Константы
интервал | DEFAULT_AXIS | |
логическое значение | FROM_LOGITS_DEFAULT | |
плавать | LABEL_SMOOTHING_DEFAULT |
Унаследованные поля
Публичные конструкторы
Категориальная кроссэнтропия (Ops tf) Создает категориальную кросс-энтропийную потерю, используя getSimpleName() в качестве имени потери, FROM_LOGITS_DEFAULT для fromLogits, LABEL_SMOOTHING_DEFAULT для labelSmoothing, уменьшения потерь REDUCTION_DEFAULT и оси DEFAULT_AXIS . | |
Категориальная кроссэнтропия (Ops tf, имя строки) Создает категориальную потерю перекрестной энтропии, используя FROM_LOGITS_DEFAULT для fromLogits, LABEL_SMOOTHING_DEFAULT для labelSmoothing, уменьшение потерь REDUCTION_DEFAULT и ось DEFAULT_AXIS . | |
Категориальная кроссэнтропия (Ops tf, сокращение сокращения) Создает категориальную кросс-энтропийную потерю, используя getSimpleName() в качестве имени потери, FROM_LOGITS_DEFAULT для fromLogits, LABEL_SMOOTHING_DEFAULT для labelSmoothing и оси DEFAULT_AXIS . | |
Категориальная кроссэнтропия (Ops tf, имя строки, сокращение сокращения) Создает категориальную кросс-энтропийную потерю FROM_LOGITS_DEFAULT для fromLogits, LABEL_SMOOTHING_DEFAULT для labelSmoothing и ось DEFAULT_AXIS | |
Категориальная кроссэнтропия (Ops tf, логическое значение fromLogits) Создает категориальную потерю перекрестной энтропии, используя getSimpleName() в качестве имени потери, LABEL_SMOOTHING_DEFAULT для labelSmoothing, уменьшения потерь REDUCTION_DEFAULT и оси DEFAULT_AXIS . | |
Категориальная кроссэнтропия (Ops tf, имя строки, логическое значение fromLogits) Создает категориальную перекрестную энтропию Loss, используя LABEL_SMOOTHING_DEFAULT для labelSmoothing, Loss Reduction REDUCTION_DEFAULT и ось канала DEFAULT_AXIS . | |
Категориальная кроссэнтропия (Ops tf, логическое значение fromLogits, float labelSmoothing) Создает категориальную кросс-энтропийную потерю, используя getSimpleName() в качестве имени потери, уменьшение потерь REDUCTION_DEFAULT и ось канала DEFAULT_AXIS . | |
Категориальная кроссентропия (Ops tf, имя строки, логическое значение fromLogits, float labelSmoothing) Создает категориальную кросс-энтропийную потерю с использованием уменьшения потерь REDUCTION_DEFAULT и оси канала DEFAULT_AXIS . | |
Категориальная кроссэнтропия (Ops tf, логическое значение fromLogits, float labelSmoothing, уменьшение сокращения ) Создает категориальную кросс-энтропийную потерю, используя getSimpleName() в качестве имени потери и оси канала DEFAULT_AXIS . | |
Категориальная кроссентропия (Ops tf, имя строки, логическое значение fromLogits, float labelSmoothing, сокращение сокращения , ось int) Создает категориальную кросс-энтропийную потерю |
Публичные методы
<T расширяет TNumber > Операнд <T> |
Унаследованные методы
Константы
общедоступный статический окончательный int DEFAULT_AXIS
общедоступное статическое окончательное логическое значение FROM_LOGITS_DEFAULT
общедоступный статический финальный плавающий элемент LABEL_SMOOTHING_DEFAULT
Публичные конструкторы
общественная категориальная кроссэнтропия (Ops TF)
Создает категориальную кросс-энтропийную потерю, используя getSimpleName()
в качестве имени потери, FROM_LOGITS_DEFAULT
для fromLogits, LABEL_SMOOTHING_DEFAULT
для labelSmoothing, уменьшения потерь REDUCTION_DEFAULT
и оси DEFAULT_AXIS
.
Параметры
ТС | Операции TensorFlow |
---|
public CategoricalCrossentropy (Ops tf, имя строки)
Создает категориальную потерю перекрестной энтропии, используя FROM_LOGITS_DEFAULT
для fromLogits, LABEL_SMOOTHING_DEFAULT
для labelSmoothing, уменьшение потерь REDUCTION_DEFAULT
и ось DEFAULT_AXIS
.
Параметры
ТС | Операции TensorFlow |
---|---|
имя | название этой потери |
public CategoricalCrossentropy (Ops tf, Reduction Reduction)
Создает категориальную кросс-энтропийную потерю, используя getSimpleName()
в качестве имени потери, FROM_LOGITS_DEFAULT
для fromLogits, LABEL_SMOOTHING_DEFAULT
для labelSmoothing и оси DEFAULT_AXIS
.
Параметры
ТС | Операции TensorFlow |
---|---|
снижение | Тип уменьшения, применяемого к убытку. |
public CategoricalCrossentropy (Ops tf, имя строки, сокращение сокращения )
Создает категориальную кросс-энтропийную потерю FROM_LOGITS_DEFAULT
для fromLogits, LABEL_SMOOTHING_DEFAULT
для labelSmoothing и ось DEFAULT_AXIS
Параметры
ТС | Операции TensorFlow |
---|---|
имя | название этой потери |
снижение | Тип уменьшения, применяемого к убытку. |
public CategoricalCrossentropy (Ops tf, логическое значение fromLogits)
Создает категориальную потерю перекрестной энтропии, используя getSimpleName()
в качестве имени потери, LABEL_SMOOTHING_DEFAULT
для labelSmoothing, уменьшения потерь REDUCTION_DEFAULT
и оси DEFAULT_AXIS
.
Параметры
ТС | Операции TensorFlow |
---|---|
fromLogits | Следует ли интерпретировать прогнозы как тензор логит-значений |
public CategoricalCrossentropy (Ops tf, имя строки, логическое значение fromLogits)
Создает категориальную перекрестную энтропию Loss, используя LABEL_SMOOTHING_DEFAULT
для labelSmoothing, Loss Reduction REDUCTION_DEFAULT
и ось канала DEFAULT_AXIS
.
Параметры
ТС | Операции TensorFlow |
---|---|
имя | название этой потери |
fromLogits | Следует ли интерпретировать прогнозы как тензор логит-значений |
public CategoricalCrossentropy (Ops tf, логическое значение fromLogits, float labelSmoothing)
Создает категориальную кросс-энтропийную потерю, используя getSimpleName()
в качестве имени потери, уменьшение потерь REDUCTION_DEFAULT
и ось канала DEFAULT_AXIS
.
Параметры
ТС | Операции TensorFlow |
---|---|
fromLogits | Следует ли интерпретировать прогнозы как тензор логит-значений |
labelСглаживание | Плавающее значение [0, 1] . Если > 0 , значения меток сглаживаются, что означает, что достоверность значений меток снижается. например labelSmoothing=0.2 означает, что мы будем использовать значение 0.1 для метки 0 и 0.9 для метки 1 |
public CategoricalCrossentropy (Ops tf, имя строки, логическое значение fromLogits, float labelSmoothing)
Создает категориальную кросс-энтропийную потерю с использованием уменьшения потерь REDUCTION_DEFAULT
и оси канала DEFAULT_AXIS
.
Параметры
ТС | Операции TensorFlow |
---|---|
имя | название этой потери |
fromLogits | Следует ли интерпретировать прогнозы как тензор логит-значений |
labelСглаживание | Плавающее значение [0, 1] . Если > 0 , значения меток сглаживаются, что означает, что достоверность значений меток снижается. например labelSmoothing=0.2 означает, что мы будем использовать значение 0.1 для метки 0 и 0.9 для метки 1 |
public CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing, Reduction Reduction)
Создает категориальную кросс-энтропийную потерю, используя getSimpleName()
в качестве имени потери и оси канала DEFAULT_AXIS
.
Параметры
ТС | Операции TensorFlow |
---|---|
fromLogits | Следует ли интерпретировать прогнозы как тензор логит-значений |
labelСглаживание | Плавающее значение [0, 1] . Если > 0 , значения меток сглаживаются, что означает, что достоверность значений меток снижается. например x=0.2 означает, что мы будем использовать значение 0.1 для метки 0 и 0.9 для метки 1 |
снижение | Тип уменьшения, применяемого к убытку. |
public CategoricalCrossentropy (Ops tf, имя строки, логическое значение fromLogits, float labelSmoothing, сокращение сокращения , ось int)
Создает категориальную кросс-энтропийную потерю
Параметры
ТС | Операции TensorFlow |
---|---|
имя | название этой потери |
fromLogits | Следует ли интерпретировать прогнозы как тензор логит-значений |
labelСглаживание | Плавающее значение [0, 1] . Если > 0 , значения меток сглаживаются, что означает, что достоверность значений меток снижается. например labelSmoothing=0.2 означает, что мы будем использовать значение 0.1 для метки 0 и 0.9 для метки 1 |
снижение | Тип уменьшения, применяемого к убытку. |
ось | Ось каналов. axis=-1 соответствует формату данных «Последние каналы», а axis=1 соответствует формату данных «Первые каналы». CHANNELS_LAST и CHANNELS_FIRST |
Броски
IllegalArgumentException | если labelSmoothing не находится в диапазоне от 0 до 1. |
---|
Публичные методы
общедоступный вызов операнда <T> ( Операнд <? расширяет метки TNumber >, прогнозы операнда <T>, операнд <T> sampleWeights)
Генерирует операнд, который вычисляет потери.
При запуске в режиме графика вычисление выдаст исключение TFInvalidArgumentException
, если значения прогнозов выходят за пределы диапазона o [0. до 1.]. В режиме Eager этот вызов вызовет IllegalArgumentException
, если значения прогнозов выходят за пределы диапазона o [0. до 1.]
Параметры
этикетки | значения истинности или метки |
---|---|
предсказания | прогнозы, значения должны находиться в диапазоне [0. до 1.] включительно. |
образецВес | Дополнительный SampleWeights действует как коэффициент потерь. Если указан скаляр, то потери просто масштабируются по заданному значению. Если SampleWeights — это тензор размера [batch_size], то общие потери для каждой выборки пакета масштабируются соответствующим элементом вектора SampleWeights. Если форма SampleWeights равна [batch_size, d0, .. dN-1] (или может быть передана в эту форму), то каждый элемент потерь прогнозов масштабируется соответствующим значением SampleWeights. (Примечание к dN-1: все функции потерь уменьшаются на 1 измерение, обычно ось = -1.) |
Возврат
- потеря
Броски
IllegalArgumentException | если прогнозы выходят за пределы диапазона [0.-1.]. |
---|