Calcola la perdita di crossentropia tra etichette e previsioni.
Utilizzare questa funzione di perdita di entropia incrociata quando sono presenti due o più classi di etichette. È previsto che le etichette vengano fornite come numeri interi. Se desideri fornire etichette utilizzando la rappresentazione one-hot , utilizza la perdita CategoricalCrossentropy . Dovrebbero esserci valori in virgola mobile # classes per caratteristica per predictions e un singolo valore in virgola mobile per caratteristica per label .
Nello snippet seguente è presente un singolo valore in virgola mobile per esempio per labels e valori in virgola mobile per # classes per esempio per predictions . La forma delle labels è [batch_size] e la forma delle predictions è [batch_size, num_classes] .
Utilizzo autonomo:
Operand<TFloat32> labels =
tf.constant(new float[] {1, 2});
Operand<TFloat32> predictions =
tf.constant(new float[][] { {0.05f, 0.95f, 0f}, {0.1f, 0.8f, 0.1f} });
SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf);
Operand<TFloat32> result = sparseCCE.call(labels, predictions);
// produces 1.177f
Chiamata con peso campione:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.3f, 0.7f});
Operand<TFloat32> result = sparseCCE.call(labels, predictions, sampleWeight);
// produces 0.814f
Utilizzando il tipo di riduzione SUM :
SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf, Reduction.SUM);
Operand<TFloat32> result = sparseCCE.call(labels, predictions);
// produces 2.354f
Utilizzando il tipo di riduzione NONE :
SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf, Reduction.NONE);
Operand<TFloat32> result = sparseCCE.call(labels, predictions);
// produces [0.0513f, 2.303f]
Costanti
| int | ASSE_DEFAULT | |
| booleano | FROM_LOGITS_DEFAULT |
Campi ereditati
Costruttori pubblici
SparseCategoricoCrossentropia (Ops tf) Crea una perdita SparseCategoricalCrossentropy utilizzando getSimpleName() come nome della perdita, una riduzione della perdita di REDUCTION_DEFAULT e fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricalCrossentropy (Ops tf, nome stringa) Crea una perdita SparseCategoricalCrossentropy utilizzando una riduzione della perdita di REDUCTION_DEFAULT e fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricoCrossentropia (Ops tf, Riduzione riduzione) Crea una perdita SparseCategoricalCrossentropy utilizzando getSimpleName() come nome della perdita, con Reduction.AUTO e fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricalCrossentropy (Ops tf, Nome stringa, Riduzione riduzione) Crea una perdita SparseCategoricalCrossentropy con Reduction.AUTO e fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricalCrossentropy (Ops tf, nome stringa, booleano fromLogits) Crea una SparseCategoricalCrossentropy utilizzando una riduzione della perdita di REDUCTION_DEFAULT e fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricoCrossentropy (Ops tf, booleano fromLogits) Crea una perdita SparseCategoricalCrossentropy utilizzando getSimpleName() come nome della perdita, una riduzione della perdita di REDUCTION_DEFAULT e fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricoCrossentropia (Ops tf, booleano fromLogits, Riduzione riduzione) Crea una perdita SparseCategoricalCrossentropy utilizzando getSimpleName() come nome della perdita, | |
SparseCategoricalCrossentropy (Ops tf, Nome stringa, booleano fromLogits, Riduzione riduzione, asse int) Crea una crossentropia categoriale sparsa |
Metodi pubblici
| <T estende TNumero > Operando <T> |
Metodi ereditati
Costanti
public static final int AXIS_DEFAULT
booleano finale statico pubblico FROM_LOGITS_DEFAULT
Costruttori pubblici
public SparseCategoricalCrossentropy (Ops tf)
Crea una perdita SparseCategoricalCrossentropy utilizzando getSimpleName() come nome della perdita, una riduzione della perdita di REDUCTION_DEFAULT e fromLogits= FROM_LOGITS_DEFAULT .
Parametri
| tf | le operazioni TensorFlow |
|---|
public SparseCategoricalCrossentropy (Ops tf, nome stringa)
Crea una perdita SparseCategoricalCrossentropy utilizzando una riduzione della perdita di REDUCTION_DEFAULT e fromLogits= FROM_LOGITS_DEFAULT .
Parametri
| tf | le operazioni TensorFlow |
|---|---|
| nome | il nome di questa funzione di perdita |
public SparseCategoricalCrossentropy (Ops tf, Riduzione riduzione)
Crea una perdita SparseCategoricalCrossentropy utilizzando getSimpleName() come nome della perdita, con Reduction.AUTO e fromLogits= FROM_LOGITS_DEFAULT .
Parametri
| tf | le operazioni TensorFlow |
|---|---|
| riduzione | Tipo di riduzione da applicare alla perdita. |
public SparseCategoricalCrossentropy (Ops tf, Nome stringa, Riduzione riduzione)
Crea una perdita SparseCategoricalCrossentropy con Reduction.AUTO e fromLogits= FROM_LOGITS_DEFAULT .
Parametri
| tf | le operazioni TensorFlow |
|---|---|
| nome | il nome di questa funzione di perdita |
| riduzione | Tipo di riduzione da applicare alla perdita. |
public SparseCategoricalCrossentropy (Ops tf, nome stringa, booleano fromLogits)
Crea una SparseCategoricalCrossentropy utilizzando una riduzione della perdita di REDUCTION_DEFAULT e fromLogits= FROM_LOGITS_DEFAULT .
Parametri
| tf | le operazioni TensorFlow |
|---|---|
| nome | il nome di questa funzione di perdita |
| da Logits | Se interpretare le previsioni come un tensore di valori logit |
public SparseCategoricalCrossentropy (Ops tf, booleano fromLogits)
Crea una perdita SparseCategoricalCrossentropy utilizzando getSimpleName() come nome della perdita, una riduzione della perdita di REDUCTION_DEFAULT e fromLogits= FROM_LOGITS_DEFAULT .
Parametri
| tf | le operazioni TensorFlow |
|---|---|
| daLogits | Se interpretare le previsioni come un tensore di valori logit |
public SparseCategoricalCrossentropy (Ops tf, booleano fromLogits, Riduzione riduzione)
Crea una perdita SparseCategoricalCrossentropy utilizzando getSimpleName() come nome della perdita,
Parametri
| tf | le operazioni TensorFlow |
|---|---|
| daLogits | Se interpretare le previsioni come un tensore di valori logit |
| riduzione | Tipo di riduzione da applicare alla perdita. |
public SparseCategoricalCrossentropy (Ops tf, Nome stringa, booleano fromLogits, Riduzione riduzione , asse int)
Crea una crossentropia categoriale sparsa
Parametri
| tf | le operazioni TensorFlow |
|---|---|
| nome | il nome di questa funzione di perdita |
| da Logits | Se interpretare le previsioni come un tensore di valori logit |
| riduzione | Tipo di riduzione da applicare alla perdita. |
| asse | L'asse dei canali. axis=-1 corrisponde al formato dati "Canali ultimi" e axis=1 corrisponde al formato dati "Canali primi". |
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à |
|---|---|
| previsioni | 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.) |
Ritorni
- la perdita
Lancia
| IllegalArgumentException | se le previsioni sono fuori dall'intervallo [0.-1.]. |
|---|