BinaryCrossentropy

classe pública BinaryCrossentropy

Calcula a perda de entropia cruzada entre rótulos verdadeiros e rótulos previstos.

Use esta perda de entropia cruzada quando houver apenas duas classes de rótulos (assumidas como 0 e 1). Para cada exemplo, deve haver um único valor de ponto flutuante por predição.

Uso autônomo:

    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
 

Chamando com peso amostral:

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

Usando o tipo de redução SUM :

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

Usando o tipo de redução NONE :

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

Constantes

booleano FROM_LOGITS_DEFAULT
flutuador LABEL_SMOOTHING_DEFAULT

Campos Herdados

Construtores Públicos

BinaryCrossentropia (Ops tf)
Cria uma perda de entropia cruzada binária usando getSimpleName() como o nome da perda, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing e uma redução de perda de REDUCTION_DEFAULT
BinaryCrossentropy (Ops tf, redução de redução )
Cria uma perda binária de crossentropia usando getSimpleName() como o nome da perda, FROM_LOGITS_DEFAULT para fromLogits e LABEL_SMOOTHING_DEFAULT para labelSmoothing
BinaryCrossentropy (Ops tf, booleano fromLogits)
Cria uma perda de Crossentropia Binária usando getSimpleName() como o nome da perda, labelSmoothing de LABEL_SMOOTHING_DEFAULT , uma redução de REDUCTION_DEFAULT ,
BinaryCrossentropy (Ops tf, nome da string, booleano fromLogits)
Cria uma perda binária de crossentropia usando labelSmoothing de LABEL_SMOOTHING_DEFAULT uma redução de REDUCTION_DEFAULT .
BinaryCrossentropy (Ops tf, booleano fromLogits, float labelSmoothing)
Cria uma perda de crossentropia binária usando getSimpleName() como o nome da perda e uma redução de REDUCTION_DEFAULT .
BinaryCrossentropy (Ops tf, String name, boolean fromLogits, float labelSmoothing)
Cria uma perda de Crossentropia Binária usando uma redução de REDUCTION_DEFAULT .
BinaryCrossentropy (Ops tf, booleano fromLogits, rótulo flutuante Suavização, redução de redução )
Cria uma perda de crossentropia binária
BinaryCrossentropy (Ops tf, nome da string, booleano fromLogits, float labelSmoothing, redução de redução )
Cria uma perda de crossentropia binária

Métodos Públicos

<T estende TNumber > Operando <T>
chamada ( Operando <? estende TNumber > rótulos, previsões de Operando <T>, Operando <T> sampleWeights)
Gera um Operando que calcula a perda.

Métodos herdados

Constantes

público estático final booleano FROM_LOGITS_DEFAULT

Valor constante: falso

flutuador final estático público LABEL_SMOOTHING_DEFAULT

Valor constante: 0,0

Construtores Públicos

BinaryCrossentropia pública (Ops tf)

Cria uma perda de entropia cruzada binária usando getSimpleName() como o nome da perda, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing e uma redução de perda de REDUCTION_DEFAULT

Parâmetros
TF as operações do TensorFlow

public BinaryCrossentropy (Ops tf, redução de redução )

Cria uma perda binária de crossentropia usando getSimpleName() como o nome da perda, FROM_LOGITS_DEFAULT para fromLogits e LABEL_SMOOTHING_DEFAULT para labelSmoothing

Parâmetros
TF as operações do TensorFlow
redução Tipo de Redução a aplicar à perda.

public BinaryCrossentropy (Ops tf, booleano fromLogits)

Cria uma perda de Crossentropia Binária usando getSimpleName() como o nome da perda, labelSmoothing de LABEL_SMOOTHING_DEFAULT , uma redução de REDUCTION_DEFAULT ,

Parâmetros
TF as operações do TensorFlow
deLogits Se deve interpretar as previsões como um tensor de valores logit

public BinaryCrossentropy (Ops tf, nome da string, booleano fromLogits)

Cria uma perda binária de crossentropia usando labelSmoothing de LABEL_SMOOTHING_DEFAULT uma redução de REDUCTION_DEFAULT .

Parâmetros
TF as operações do TensorFlow
nome o nome da perda
deLogits Se deve interpretar as previsões como um tensor de valores logit

public BinaryCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing)

Cria uma perda de entropia cruzada binária usando getSimpleName() como o nome da perda e uma redução de REDUCTION_DEFAULT .

Parâmetros
TF as operações do TensorFlow
deLogits Se deve interpretar as previsões como um tensor de valores logit
etiqueta Suavização Um número no intervalo [0, 1]. Quando 0, nenhuma suavização ocorre. Quando > 0, calcule a perda entre os rótulos previstos e uma versão suavizada dos rótulos verdadeiros, onde a suavização comprime os rótulos em direção a 0,5. Valores maiores de labelSmoothing correspondem a uma suavização mais pesada.

public BinaryCrossentropy (Ops tf, String name, boolean fromLogits, float labelSmoothing)

Cria uma perda de Crossentropia Binária usando uma redução de REDUCTION_DEFAULT .

Parâmetros
TF as operações do TensorFlow
nome o nome da perda
deLogits Se deve interpretar as previsões como um tensor de valores logit
etiqueta Suavização Um número no intervalo [0, 1]. Quando 0, nenhuma suavização ocorre. Quando > 0, calcule a perda entre os rótulos previstos e uma versão suavizada dos rótulos verdadeiros, onde a suavização comprime os rótulos em direção a 0,5. Valores maiores de labelSmoothing correspondem a uma suavização mais pesada.

public BinaryCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing, redução de redução )

Cria uma perda de crossentropia binária

Parâmetros
TF as operações do TensorFlow
deLogits Se deve interpretar as previsões como um tensor de valores logit
etiqueta Suavização Um número no intervalo [0, 1]. Quando 0, nenhuma suavização ocorre. Quando > 0, calcule a perda entre os rótulos previstos e uma versão suavizada dos rótulos verdadeiros, onde a suavização comprime os rótulos em direção a 0,5. Valores maiores de labelSmoothing correspondem a uma suavização mais pesada.
redução Tipo de Redução a aplicar à perda.

public BinaryCrossentropy (Ops tf, String name, boolean fromLogits, float labelSmoothing, Reductionduction )

Cria uma perda de crossentropia binária

Parâmetros
TF as operações do TensorFlow
nome o nome da perda
deLogits Se deve interpretar as previsões como um tensor de valores logit
etiqueta Suavização Um número no intervalo [0, 1]. Quando 0, nenhuma suavização ocorre. Quando > 0, calcule a perda entre os rótulos previstos e uma versão suavizada dos rótulos verdadeiros, onde a suavização comprime os rótulos em direção a 0,5. Valores maiores de labelSmoothing correspondem a uma suavização mais pesada.
redução Tipo de Redução a aplicar à perda.
Lança
IllegalArgumentException se labelSmoothing não estiver no intervalo inclusivo de 0. - 1.

Métodos Públicos

chamada de operando público <T> ( Operando <? estende TNumber > rótulos, previsões de operando <T>, pesos de amostra de operando <T>)

Gera um Operando que calcula a perda.

Se executado no modo Graph, o cálculo lançará TFInvalidArgumentException se os valores das previsões estiverem fora do intervalo o [0. para 1.]. No modo Eager, esta chamada lançará IllegalArgumentException , se os valores das previsões estiverem fora do intervalo o [0. para 1.]

Parâmetros
rótulos os valores de verdade ou rótulos
previsões as previsões, os valores devem estar no intervalo [0. para 1.] inclusive.
pesos de amostra SampleWeights opcionais atuam como um coeficiente para a perda. Se um escalar for fornecido, a perda será simplesmente dimensionada pelo valor fornecido. Se SampleWeights for um tensor de tamanho [batch_size], então a perda total de cada amostra do lote será redimensionada pelo elemento correspondente no vetor SampleWeights. Se a forma de SampleWeights for [batch_size, d0, .. dN-1] (ou puder ser transmitida para esta forma), então cada elemento de perda das previsões será dimensionado pelo valor correspondente de SampleWeights. (Nota sobre dN-1: todas as funções de perda são reduzidas em 1 dimensão, geralmente eixo=-1.)
Devoluções
  • a perda
Lança
IllegalArgumentException se as previsões estiverem fora do intervalo [0.-1.].