BinaryCrossentropy

clase pública BinaryCrossentropy

Calcula la pérdida de entropía cruzada entre etiquetas verdaderas y etiquetas predichas.

Utilice esta pérdida de entropía cruzada cuando solo haya dos clases de etiquetas (se supone que son 0 y 1). Para cada ejemplo, debe haber un único valor de punto flotante por predicción.

Uso independiente:

    Operand<TFloat32> labels =
        tf.constant(new float[][] { {0.f, 1.f}, {0.f, 0.f} });
    Operand<TFloat32> predictions =
        tf.constant(new float[][] { {0.6f, 0.4f}, {0.4f, 0.6f} });
    BinaryCrossentropy bce = new BinaryCrossentropy(tf);
    Operand<TFloat32> result = bce.call(labels, predictions);
    // produces 0.815
 

Llamar con peso de muestra:

    Operand<TFloat32> sampleWeight = tf.constant(new float[] {1.f, 0.f});
    Operand<TFloat32> result = bce.call(labels, predictions, sampleWeight);
    // produces 0.458f
 

Usando el tipo de reducción SUM :

    BinaryCrossentropy bce = new BinaryCrossentropy(tf, Reduction.SUM);
    Operand<TFloat32> result = bce.call(labels, predictions);
    // produces 1.630f
 

Usando NONE tipo de reducción:

    BinaryCrossentropy bce = new BinaryCrossentropy(tf, Reduction.NONE);
    Operand<TFloat32> result = bce.call(labels, predictions);
    // produces [0.916f, 0.714f]
 

Constantes

booleano FROM_LOGITS_DEFAULT
flotar LABEL_SMOOTHING_DEFAULT

Campos heredados

Constructores Públicos

Cruzentropía binaria (Ops tf)
Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing y una reducción de pérdida de REDUCTION_DEFAULT
BinaryCrossentropy (Ops tf, reducción de reducción )
Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, FROM_LOGITS_DEFAULT para fromLogits y LABEL_SMOOTHING_DEFAULT para labelSmoothing.
BinaryCrossentropy (Ops tf, booleano deLogits)
Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, labelSmoothing de LABEL_SMOOTHING_DEFAULT , una reducción de REDUCTION_DEFAULT ,
BinaryCrossentropy (Ops tf, nombre de cadena, booleano deLogits)
Crea una pérdida de entropía cruzada binaria utilizando labelSmoothing de LABEL_SMOOTHING_DEFAULT una reducción de REDUCTION_DEFAULT .
BinaryCrossentropy (Ops tf, booleano fromLogits, etiqueta flotante Suavizado)
Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida y una reducción de REDUCTION_DEFAULT .
BinaryCrossentropy (Ops tf, nombre de cadena, booleano deLogits, etiqueta flotanteSuavizado)
Crea una pérdida de entropía cruzada binaria utilizando una reducción de REDUCTION_DEFAULT .
BinaryCrossentropy (Ops tf, booleano fromLogits, suavizado de etiquetas flotantes, reducción )
Crea una pérdida de entropía cruzada binaria
BinaryCrossentropy (Ops tf, nombre de cadena, booleano fromLogits, etiqueta flotanteSuavizado, reducción de reducción )
Crea una pérdida de entropía cruzada binaria

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

booleano final estático público FROM_LOGITS_DEFAULT

Valor constante: falso

flotador final estático público LABEL_SMOOTHING_DEFAULT

Valor constante: 0,0

Constructores Públicos

Cruzentropía binaria pública (Ops tf)

Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing y una reducción de pérdida de REDUCTION_DEFAULT

Parámetros
tf las operaciones de TensorFlow

BinaryCrossentropy público (Ops tf, reducción )

Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, FROM_LOGITS_DEFAULT para fromLogits y LABEL_SMOOTHING_DEFAULT para labelSmoothing.

Parámetros
tf las operaciones de TensorFlow
reducción Tipo de Reducción a aplicar sobre la pérdida.

pública BinaryCrossentropy (Ops tf, booleano deLogits)

Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida, labelSmoothing de LABEL_SMOOTHING_DEFAULT , una reducción de REDUCTION_DEFAULT ,

Parámetros
tf las operaciones de TensorFlow
desdeLogits Si se deben interpretar las predicciones como un tensor de valores logit

pública BinaryCrossentropy (Ops tf, nombre de cadena, booleano deLogits)

Crea una pérdida de entropía cruzada binaria utilizando labelSmoothing de LABEL_SMOOTHING_DEFAULT una reducción de REDUCTION_DEFAULT .

Parámetros
tf las operaciones de TensorFlow
nombre el nombre de la perdida
desdeLogits Si se deben interpretar las predicciones como un tensor de valores logit

pública BinaryCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing)

Crea una pérdida de entropía cruzada binaria utilizando getSimpleName() como nombre de la pérdida y una reducción de REDUCTION_DEFAULT .

Parámetros
tf las operaciones de TensorFlow
desdeLogits Si se deben interpretar las predicciones como un tensor de valores logit
etiquetaSuavizado Un número en el rango, [0, 1]. Cuando es 0, no se produce ningún suavizado. Cuando > 0, calcule la pérdida entre las etiquetas predichas y una versión suavizada de las etiquetas verdaderas, donde el suavizado reduce las etiquetas hacia 0,5. Los valores más grandes de labelSmoothing corresponden a un suavizado más intenso.

pública BinaryCrossentropy (Ops tf, nombre de cadena, booleano deLogits, etiqueta flotanteSmoothing)

Crea una pérdida de entropía cruzada binaria utilizando una reducción de REDUCTION_DEFAULT .

Parámetros
tf las operaciones de TensorFlow
nombre el nombre de la perdida
desdeLogits Si se deben interpretar las predicciones como un tensor de valores logit
etiquetaSuavizado Un número en el rango, [0, 1]. Cuando es 0, no se produce ningún suavizado. Cuando > 0, calcule la pérdida entre las etiquetas predichas y una versión suavizada de las etiquetas verdaderas, donde el suavizado reduce las etiquetas hacia 0,5. Los valores más grandes de labelSmoothing corresponden a un suavizado más intenso.

public BinaryCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing, Reducción de reducción )

Crea una pérdida de entropía cruzada binaria

Parámetros
tf las operaciones de TensorFlow
desdeLogits Si se deben interpretar las predicciones como un tensor de valores logit
etiquetaSuavizado Un número en el rango, [0, 1]. Cuando es 0, no se produce ningún suavizado. Cuando > 0, calcule la pérdida entre las etiquetas predichas y una versión suavizada de las etiquetas verdaderas, donde el suavizado reduce las etiquetas hacia 0,5. Los valores más grandes de labelSmoothing corresponden a un suavizado más intenso.
reducción Tipo de Reducción a aplicar sobre la pérdida.

public BinaryCrossentropy (Ops tf, nombre de cadena, booleano fromLogits, etiqueta flotanteSuavizado, reducción de reducción )

Crea una pérdida de entropía cruzada binaria

Parámetros
tf las operaciones de TensorFlow
nombre el nombre de la perdida
desdeLogits Si se deben interpretar las predicciones como un tensor de valores logit
etiquetaSuavizado Un número en el rango, [0, 1]. Cuando es 0, no se produce ningún suavizado. Cuando > 0, calcule la pérdida entre las etiquetas predichas y una versión suavizada de las etiquetas verdaderas, donde el suavizado reduce las etiquetas hacia 0,5. Los valores más grandes de labelSmoothing corresponden a un suavizado más intenso.
reducción Tipo de Reducción a aplicar sobre la pérdida.
Lanza
Excepción de argumento 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 perdida
Lanza
Excepción de argumento ilegal si las predicciones están fuera del rango [0.-1.].