Calcula la pérdida de entropía cruzada entre las etiquetas y las predicciones.
Utilice esta función de pérdida de entropía cruzada cuando haya dos o más clases de etiquetas. Esperamos que las etiquetas se proporcionen en una representación one_hot. Si desea proporcionar etiquetas como números enteros, utilice la pérdida SparseCategoricalCrossentropy
. Debe haber # classes
valores de coma flotante por característica.
Uso independiente:
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
Llamar con peso de muestra:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.3f, 0.7f}); Operand<TFloat32> result = cce.call(labels, predictions, sampleWeight); // produces 0.814f
Usando el tipo de reducción SUM
:
CategoricalCrossentropy cce = new CategoricalCrossentropy(tf, Reduction.SUM); Operand<TFloat32> result = cce.call(labels, predictions); // produces 2.354f
Usando NONE
tipo de reducción:
CategoricalCrossentropy cce = new CategoricalCrossentropy(tf, Reduction.NONE); Operand<TFloat32> result = cce.call(labels, predictions); // produces [0.0513f, 2.303f]
Constantes
En t | DEFAULT_AXIS | |
booleano | FROM_LOGITS_DEFAULT | |
flotar | LABEL_SMOOTHING_DEFAULT |
Campos heredados
Constructores Públicos
Cruzentropía categórica (Ops tf) Crea una pérdida de entropía cruzada categórica usando getSimpleName() como nombre de pérdida, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing, una reducción de pérdida de REDUCTION_DEFAULT y un eje de DEFAULT_AXIS | |
CategoricalCrossentropy (Ops tf, nombre de cadena) Crea una pérdida categórica de entropía cruzada usando FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing, una reducción de pérdida de REDUCTION_DEFAULT y un eje de DEFAULT_AXIS | |
CategoricalCrossentropy (Ops tf, Reducción de reducción ) Crea una pérdida categórica de entropía cruzada usando getSimpleName() como nombre de pérdida, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing y un eje de DEFAULT_AXIS | |
CategoricalCrossentropy (Ops tf, nombre de cadena, reducción de reducción ) Crea una pérdida categórica de entropía cruzada FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing y un eje de DEFAULT_AXIS | |
CategoricalCrossentropy (Ops tf, booleano deLogits) Crea una pérdida de entropía cruzada categórica usando getSimpleName() como nombre de pérdida, LABEL_SMOOTHING_DEFAULT para labelSmoothing, una reducción de pérdida de REDUCTION_DEFAULT y un eje de DEFAULT_AXIS | |
CategoricalCrossentropy (Ops tf, nombre de cadena, booleano deLogits) Crea una pérdida categórica de entropía cruzada usando LABEL_SMOOTHING_DEFAULT para labelSmoothing, una reducción de pérdida de REDUCTION_DEFAULT y un eje de canal de DEFAULT_AXIS | |
CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing) Crea una pérdida categórica de entropía cruzada usando getSimpleName() como nombre de pérdida, una reducción de pérdida de REDUCTION_DEFAULT y un eje de canal de DEFAULT_AXIS | |
CategoricalCrossentropy (Ops tf, nombre de cadena, booleano deLogits, etiqueta flotanteSuavizado) Crea una pérdida categórica de entropía cruzada utilizando una reducción de pérdida de REDUCTION_DEFAULT y un eje de canal de DEFAULT_AXIS | |
CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing, Reducción de reducción ) Crea una pérdida categórica de entropía cruzada usando getSimpleName() como nombre de pérdida y un eje de canal de DEFAULT_AXIS | |
CategoricalCrossentropy (Ops tf, nombre de cadena, booleano fromLogits, etiqueta flotanteSuavizado, reducción de reducción , eje int) Crea una pérdida categórica de entropía cruzada. |
Métodos públicos
<T extiende TNumber > Operando <T> | llamada ( Operando <? extiende etiquetas TNumber >, predicciones de operando <T>, pesos de muestra de operando <T>) Genera un Operando que calcula la pérdida. |
Métodos heredados
Constantes
int final estático público DEFAULT_AXIS
booleano final estático público FROM_LOGITS_DEFAULT
flotador final estático público LABEL_SMOOTHING_DEFAULT
Constructores Públicos
Cruzentropía categórica pública (Ops tf)
Crea una pérdida de entropía cruzada categórica usando getSimpleName()
como nombre de pérdida, FROM_LOGITS_DEFAULT
para fromLogits, LABEL_SMOOTHING_DEFAULT
para labelSmoothing, una reducción de pérdida de REDUCTION_DEFAULT
y un eje de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|
pública CategoricalCrossentropy (Ops tf, nombre de cadena)
Crea una pérdida categórica de entropía cruzada usando FROM_LOGITS_DEFAULT
para fromLogits, LABEL_SMOOTHING_DEFAULT
para labelSmoothing, una reducción de pérdida de REDUCTION_DEFAULT
y un eje de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de esta perdida |
pública CategoricalCrossentropy (Ops tf, reducción de reducción )
Crea una pérdida categórica de entropía cruzada usando getSimpleName()
como nombre de pérdida, FROM_LOGITS_DEFAULT
para fromLogits, LABEL_SMOOTHING_DEFAULT
para labelSmoothing y un eje de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|---|
reducción | Tipo de Reducción a aplicar en caso de pérdida. |
pública CategoricalCrossentropy (Ops tf, nombre de cadena, reducción de reducción )
Crea una pérdida categórica de entropía cruzada FROM_LOGITS_DEFAULT
para fromLogits, LABEL_SMOOTHING_DEFAULT
para labelSmoothing y un eje de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de esta perdida |
reducción | Tipo de Reducción a aplicar en caso de pérdida. |
pública CategoricalCrossentropy (Ops tf, boolean fromLogits)
Crea una pérdida de entropía cruzada categórica usando getSimpleName()
como nombre de pérdida, LABEL_SMOOTHING_DEFAULT
para labelSmoothing, una reducción de pérdida de REDUCTION_DEFAULT
y un eje de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|---|
desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
pública CategoricalCrossentropy (Ops tf, nombre de cadena, booleano deLogits)
Crea una pérdida categórica de entropía cruzada usando LABEL_SMOOTHING_DEFAULT
para labelSmoothing, una reducción de pérdida de REDUCTION_DEFAULT
y un eje de canal de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de esta perdida |
desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
pública CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing)
Crea una pérdida categórica de entropía cruzada usando getSimpleName()
como nombre de pérdida, una reducción de pérdida de REDUCTION_DEFAULT
y un eje de canal de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|---|
desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
etiquetaSuavizado | Flotar en [0, 1] . Cuando > 0 , los valores de las etiquetas se suavizan, lo que significa que la confianza en los valores de las etiquetas se relaja. por ejemplo, labelSmoothing=0.2 significa que usaremos un valor de 0.1 para la etiqueta 0 y 0.9 para la etiqueta 1 |
pública CategoricalCrossentropy (Ops tf, nombre de cadena, booleano deLogits, etiqueta flotanteSuavizado)
Crea una pérdida categórica de entropía cruzada utilizando una reducción de pérdida de REDUCTION_DEFAULT
y un eje de canal de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de esta perdida |
desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
etiquetaSuavizado | Flotar en [0, 1] . Cuando > 0 , los valores de las etiquetas se suavizan, lo que significa que la confianza en los valores de las etiquetas se relaja. por ejemplo, labelSmoothing=0.2 significa que usaremos un valor de 0.1 para la etiqueta 0 y 0.9 para la etiqueta 1 |
pública CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing, Reducción de reducción )
Crea una pérdida categórica de entropía cruzada usando getSimpleName()
como nombre de pérdida y un eje de canal de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|---|
desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
etiquetaSuavizado | Flotar en [0, 1] . Cuando > 0 , los valores de las etiquetas se suavizan, lo que significa que la confianza en los valores de las etiquetas se relaja. por ejemplo, x=0.2 significa que usaremos un valor de 0.1 para la etiqueta 0 y 0.9 para la etiqueta 1 |
reducción | Tipo de Reducción a aplicar en caso de pérdida. |
public CategoricalCrossentropy (Ops tf, nombre de cadena, booleano fromLogits, etiqueta flotanteSuavizado, reducción de reducción , eje int)
Crea una pérdida categórica de entropía cruzada.
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de esta perdida |
desdeLogits | Si se deben interpretar las predicciones como un tensor de valores logit |
etiquetaSuavizado | Flotar en [0, 1] . Cuando > 0 , los valores de las etiquetas se suavizan, lo que significa que la confianza en los valores de las etiquetas se relaja. por ejemplo, labelSmoothing=0.2 significa que usaremos un valor de 0.1 para la etiqueta 0 y 0.9 para la etiqueta 1 |
reducción | Tipo de Reducción a aplicar en caso de pérdida. |
eje | El eje de los canales. axis=-1 corresponde al formato de datos "Últimos canales" y axis=1 corresponde al formato de datos "Primeros canales". CHANNELS_LAST y CHANNELS_FIRST |
Lanza
Argumento de excepción ilegal | si labelSmoothing no está en el rango inclusivo de 0. - 1. |
---|
Métodos públicos
Llamada pública al operando <T> ( el operando <? extiende las etiquetas TNumber >, las predicciones del operando <T>, los pesos de muestra del operando <T>)
Genera un Operando que calcula la pérdida.
Si se ejecuta en modo Gráfico, el cálculo generará TFInvalidArgumentException
si los valores de las predicciones están fuera del rango o [0. a 1.]. En modo ansioso, esta llamada generará IllegalArgumentException
, si los valores de las predicciones están fuera del rango o [0. a 1.]
Parámetros
etiquetas | los valores o etiquetas de verdad |
---|---|
predicciones | las predicciones, los valores deben estar en el rango [0. a 1.] inclusive. |
pesos de muestra | SampleWeights opcional actúa como un coeficiente de pérdida. Si se proporciona un escalar, entonces la pérdida simplemente se escala según el valor dado. Si SampleWeights es un tensor de tamaño [batch_size], entonces la pérdida total de cada muestra del lote se vuelve a escalar mediante el elemento correspondiente en el vector SampleWeights. Si la forma de SampleWeights es [batch_size, d0, .. dN-1] (o se puede transmitir a esta forma), entonces cada elemento de pérdida de las predicciones se escala según el valor correspondiente de SampleWeights. (Nota sobre dN-1: todas las funciones de pérdida se reducen en 1 dimensión, generalmente eje = -1). |
Devoluciones
- la pérdida
Lanza
Argumento de excepción ilegal | si las predicciones están fuera del rango [0.-1.]. |
---|