SparseSoftmaxCrossEntropyWithLogits

classe pubblica SparseSoftmaxCrossEntropyWithLogits

Costruttori pubblici

Metodi pubblici

static <T estende TNumber , U estende TNumber > Operando
sparseSoftmaxCrossEntropyWithLogits ( ambito ambito , etichette operando <T>, logit operando <U>)
Calcola l'entropia incrociata softmax sparsa tra logits ed labels .

Metodi ereditati

Costruttori pubblici

pubblico SparseSoftmaxCrossEntropyWithLogits ()

Metodi pubblici

Operando statico pubblico sparseSoftmaxCrossEntropyWithLogits (ambito ambito , etichette operando <T>, logit operando <U>)

Calcola l'entropia incrociata softmax sparsa tra logits ed labels .

Misura l'errore di probabilità nelle attività di classificazione discreta in cui le classi si escludono a vicenda (ogni voce è esattamente in una classe). Ad esempio, ogni immagine CIFAR-10 è etichettata con una ed una sola etichetta: un'immagine può essere un cane o un camion, ma non entrambi.

NOTA:

Per questa operazione la probabilità di una data etichetta è considerata esclusiva. Cioè, le classi soft non sono consentite e il vettore labels deve fornire un singolo indice specifico per la classe vera per ogni riga di logits (ogni voce minibatch). Per la classificazione soft softmax con una distribuzione di probabilità per ogni voce, ERROR(/org.tensorflow.op.NnOps#softmaxCrossEntropyWithLogits) .

AVVERTIMENTO:

Questa operazione prevede logit non scalati, poiché esegue un softmax sui logits internamente per motivi di efficienza. Non chiamare questa operazione con l'output di softmax , poiché produrrà risultati errati.

Un caso d'uso comune è avere logit di forma [batchSize, numClasses] e etichette di forma [batchSize] , ma sono supportate dimensioni più elevate, nel qual caso si presuppone che la dimensione dim -th sia di dimensione numClasses . logits devono avere il file tipo di dati di TFloat16 , TFloat32 o TFloat64 e labels devono avere il dtype di TInt32 o TInt64 .

Parametri
scopo ambito attuale
etichette Tensor di forma [d_0, d_1, ..., d_{r-1}] (dove r è il rango delle labels e del risultato) e il dataType è TInt32 o TInt64 . Ogni voce nelle labels deve essere un indice in [0, numClasses) . Altri valori genereranno un'eccezione quando questa operazione viene eseguita sulla CPU e restituiranno NaN per le righe di perdita e gradiente corrispondenti sulla GPU.
logits Attivazioni per etichetta (in genere un output lineare) di forma [d_0, d_1, ..., d_{r-1}, numClasses] e dataType di TFloat16 , TFloat32 o TFloat64 . Queste energie di attivazione vengono interpretate come probabilità logaritmiche non normalizzate.
ritorna
  • Un Tensor della stessa forma delle labels e dello stesso tipo dei logits con la perdita di entropia incrociata softmax.
Lancia
IllegalArgumentException Se i logit sono scalari (devono avere rango >= 1) o se il rango delle etichette non è uguale al rango dei logit meno uno.