BinaryCrossentropy

classe pubblica BinaryCrossentropy

Calcola la perdita di entropia incrociata tra le etichette reali e quelle previste.

Utilizzare questa perdita di entropia incrociata quando ci sono solo due classi di etichette (assunte come 0 e 1). Per ogni esempio, dovrebbe essere presente un unico valore a virgola mobile per previsione.

Utilizzo autonomo:

    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
 

Chiamata con peso campione:

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

Utilizzo del tipo di riduzione SUM :

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

Utilizzo del tipo di riduzione NONE :

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

Costanti

booleano FROM_LOGITS_DEFAULT
galleggiante LABEL_SMOOTHING_DEFAULT

Campi ereditati

Costruttori pubblici

Crossentropia binaria (Ops tf)
Crea una perdita di crossentropia binaria utilizzando getSimpleName() come nome della perdita, FROM_LOGITS_DEFAULT per fromLogits, LABEL_SMOOTHING_DEFAULT per labelSmoothing e una riduzione della perdita di REDUCTION_DEFAULT
Crossentropia binaria (Ops tf, Riduzione riduzione )
Crea una perdita di crossentropia binaria utilizzando getSimpleName() come nome della perdita, FROM_LOGITS_DEFAULT per fromLogits e LABEL_SMOOTHING_DEFAULT per labelSmoothing
Binary Crossentropy (Ops tf, booleano fromLogits)
Crea una perdita di crossentropia binaria utilizzando getSimpleName() come nome della perdita, labelSmoothing di LABEL_SMOOTHING_DEFAULT , una riduzione di REDUCTION_DEFAULT ,
BinaryCrossentropy (Ops tf, nome stringa, booleano fromLogits)
Crea una perdita di crossentropia binaria utilizzando labelSmoothing di LABEL_SMOOTHING_DEFAULT una riduzione di REDUCTION_DEFAULT .
BinaryCrossentropy (Ops tf, booleano fromLogits, etichetta floatSmoothing)
Crea una perdita di crossentropia binaria utilizzando getSimpleName() come nome della perdita e una riduzione di REDUCTION_DEFAULT .
BinaryCrossentropy (Ops tf, nome stringa, booleano fromLogits, etichetta floatSmoothing)
Crea una perdita di crossentropia binaria utilizzando una riduzione di REDUCTION_DEFAULT .
Binary Crossentropy (Ops tf, booleano fromLogits, etichetta floatSmoothing, riduzione riduzione )
Crea una perdita di crossentropia binaria
BinaryCrossentropy (Ops tf, nome stringa, booleano fromLogits, etichetta floatSmoothing, riduzione riduzione )
Crea una perdita di crossentropia binaria

Metodi pubblici

<T estende TNumero > Operando <T>
chiamata ( Operando <? estende TNumber > etichette, Operando <T> previsioni, Operando <T> sampleWeights)
Genera un operando che calcola la perdita.

Metodi ereditati

Costanti

booleano finale statico pubblico FROM_LOGITS_DEFAULT

Valore costante: falso

float finale statico pubblico LABEL_SMOOTHING_DEFAULT

Valore costante: 0,0

Costruttori pubblici

public BinaryCrossentropy (Ops tf)

Crea una perdita di crossentropia binaria utilizzando getSimpleName() come nome della perdita, FROM_LOGITS_DEFAULT per fromLogits, LABEL_SMOOTHING_DEFAULT per labelSmoothing e una riduzione della perdita di REDUCTION_DEFAULT

Parametri
tf le operazioni TensorFlow

public BinaryCrossentropy (Ops tf, Riduzione riduzione)

Crea una perdita di crossentropia binaria utilizzando getSimpleName() come nome della perdita, FROM_LOGITS_DEFAULT per fromLogits e LABEL_SMOOTHING_DEFAULT per labelSmoothing

Parametri
tf le operazioni TensorFlow
riduzione Tipo di riduzione da applicare alla perdita.

public BinaryCrossentropy (Ops tf, booleano fromLogits)

Crea una perdita di crossentropia binaria utilizzando getSimpleName() come nome della perdita, labelSmoothing di LABEL_SMOOTHING_DEFAULT , una riduzione di REDUCTION_DEFAULT ,

Parametri
tf le operazioni TensorFlow
da Logits Se interpretare le previsioni come un tensore di valori logit

public BinaryCrossentropy (Ops tf, nome stringa, booleano fromLogits)

Crea una perdita di crossentropia binaria utilizzando labelSmoothing di LABEL_SMOOTHING_DEFAULT una riduzione di REDUCTION_DEFAULT .

Parametri
tf le operazioni TensorFlow
nome il nome della perdita
da Logits Se interpretare le previsioni come un tensore di valori logit

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

Crea una perdita di crossentropia binaria utilizzando getSimpleName() come nome della perdita e una riduzione di REDUCTION_DEFAULT .

Parametri
tf le operazioni TensorFlow
da Logits Se interpretare le previsioni come un tensore di valori logit
etichettaLevigante Un numero nell'intervallo [0, 1]. Quando 0, non si verifica alcun livellamento. Quando > 0, calcolare la perdita tra le etichette previste e una versione livellata delle etichette reali, dove il livellamento comprime le etichette verso 0,5. Valori più grandi di labelSmoothing corrispondono a uno smoothing più intenso.

public BinaryCrossentropy (Ops tf, nome stringa, booleano fromLogits, etichetta floatSmoothing)

Crea una perdita di crossentropia binaria utilizzando una riduzione di REDUCTION_DEFAULT .

Parametri
tf le operazioni TensorFlow
nome il nome della perdita
da Logits Se interpretare le previsioni come un tensore di valori logit
etichettaLevigante Un numero nell'intervallo [0, 1]. Quando 0, non si verifica alcun livellamento. Quando > 0, calcolare la perdita tra le etichette previste e una versione livellata delle etichette reali, dove il livellamento comprime le etichette verso 0,5. Valori più grandi di labelSmoothing corrispondono a uno smoothing più intenso.

public BinaryCrossentropy (Ops tf, booleano fromLogits, float labelSmoothing, Riduzione riduzione )

Crea una perdita di crossentropia binaria

Parametri
tf le operazioni TensorFlow
da Logits Se interpretare le previsioni come un tensore di valori logit
etichettaLevigante Un numero nell'intervallo [0, 1]. Quando 0, non si verifica alcun livellamento. Quando > 0, calcolare la perdita tra le etichette previste e una versione livellata delle etichette reali, dove il livellamento comprime le etichette verso 0,5. Valori più grandi di labelSmoothing corrispondono a uno smoothing più intenso.
riduzione Tipo di riduzione da applicare alla perdita.

public BinaryCrossentropy (Ops tf, nome stringa, booleano fromLogits, etichetta floatSmoothing, riduzione riduzione )

Crea una perdita di crossentropia binaria

Parametri
tf le operazioni TensorFlow
nome il nome della perdita
da Logits Se interpretare le previsioni come un tensore di valori logit
etichettaLevigante Un numero nell'intervallo [0, 1]. Quando 0, non si verifica alcun livellamento. Quando > 0, calcolare la perdita tra le etichette previste e una versione livellata delle etichette reali, dove il livellamento comprime le etichette verso 0,5. Valori più grandi di labelSmoothing corrispondono a uno smoothing più intenso.
riduzione Tipo di riduzione da applicare alla perdita.
Lancia
IllegalArgumentException se labelSmoothing non è compreso nell'intervallo compreso tra 0. - 1.

Metodi pubblici

chiamata pubblica dell'operando <T> ( Operando <? estende TNumber > etichette, previsioni dell'operando <T>, operando <T> sampleWeights)

Genera un operando che calcola la perdita.

Se eseguito in modalità Grafico, il calcolo genererà TFInvalidArgumentException se i valori delle previsioni non sono compresi nell'intervallo o [0. a 1.]. In modalità Eager, questa chiamata genererà IllegalArgumentException , se i valori delle previsioni non sono compresi nell'intervallo o [0. a 1.]

Parametri
etichette i valori o le etichette di verità
predizioni le previsioni, i valori devono essere compresi nell'intervallo [0. a 1.] compreso.
campionePesi SampleWeights opzionale funge da coefficiente per la perdita. Se viene fornito uno scalare, la perdita viene semplicemente ridimensionata in base al valore fornito. Se SampleWeights è un tensore di dimensione [batch_size], la perdita totale per ciascun campione del batch viene riscalata dall'elemento corrispondente nel vettore SampleWeights. Se la forma di SampleWeights è [batch_size, d0, .. dN-1] (o può essere trasmessa a questa forma), ogni elemento di perdita delle previsioni viene ridimensionato in base al valore corrispondente di SampleWeights. (Nota su dN-1: tutte le funzioni di perdita si riducono di 1 dimensione, solitamente asse=-1.)
ritorna
  • la perdita
Lancia
IllegalArgumentException se le previsioni sono fuori dall'intervallo [0.-1.].