SparseCategoricalCrossentropy

classe publique SparseCategoricalCrossentropy

Calcule la perte d'entropie croisée entre les étiquettes et les prédictions.

Utilisez cette fonction de perte d'entropie croisée lorsqu'il existe deux classes d'étiquettes ou plus. Les étiquettes doivent être fournies sous forme d’entiers. Si vous souhaitez fournir des étiquettes en utilisant one-hot , veuillez utiliser la perte CategoricalCrossentropy . Il doit y avoir # classes de valeurs à virgule flottante par fonctionnalité pour predictions et une seule valeur à virgule flottante par fonctionnalité pour label .

Dans l'extrait ci-dessous, il y a une seule valeur à virgule flottante par exemple pour labels et # classes de valeurs à virgule flottante par exemple pour predictions . La forme des labels est [batch_size] et la forme des predictions est [batch_size, num_classes] .

Utilisation autonome :

    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
 

Appel avec le poids de l'échantillon :

    Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.3f, 0.7f});
    Operand<TFloat32> result = sparseCCE.call(labels, predictions, sampleWeight);
    // produces 0.814f
 

Utilisation du type de réduction SUM :

    SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf, Reduction.SUM);
    Operand<TFloat32> result = sparseCCE.call(labels, predictions);
    // produces 2.354f
 

Utilisation du type de réduction NONE :

    SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf, Reduction.NONE);
    Operand<TFloat32> result = sparseCCE.call(labels, predictions);
    // produces [0.0513f, 2.303f]
 

Constantes

int AXIS_DEFAULT
booléen FROM_LOGITS_DEFAULT

Champs hérités

Constructeurs Publics

SparseCategoricalCrossentropy (Ops tf)
Crée une perte SparseCategoricalCrossentropy en utilisant getSimpleName() comme nom de perte, une réduction de perte de REDUCTION_DEFAULT et fromLogits= FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, nom de chaîne)
Crée une perte SparseCategoricalCrossentropy en utilisant une réduction de perte de REDUCTION_DEFAULT et fromLogits= FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, réduction )
Crée une perte SparseCategoricalCrossentropy en utilisant getSimpleName() comme nom de perte, avec Reduction.AUTO et fromLogits= FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, nom de chaîne, réduction de réduction )
Crée une perte SparseCategoricalCrossentropy avec Reduction.AUTO et fromLogits= FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, nom de chaîne, booléen fromLogits)
Crée un SparseCategoricalCrossentropy en utilisant une réduction de perte de REDUCTION_DEFAULT et fromLogits= FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, booléen fromLogits)
Crée une perte SparseCategoricalCrossentropy en utilisant getSimpleName() comme nom de perte, une réduction de perte de REDUCTION_DEFAULT et fromLogits= FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, booléen fromLogits, réduction )
Crée une perte SparseCategoricalCrossentropy en utilisant getSimpleName() comme nom de perte,
SparseCategoricalCrossentropy (Ops tf, nom de chaîne, booléen fromLogits, réduction , axe int)
Crée une SparseCategoricalCrossentropy

Méthodes publiques

<T étend TNumber > Opérande <T>
appel ( Opérande <? étend TNumber > étiquettes, Opérande <T> prédictions, Opérande <T> sampleWeights)
Génère un opérande et calcule la perte.

Méthodes héritées

Constantes

public statique final int AXIS_DEFAULT

Valeur constante : -1

public statique final booléen FROM_LOGITS_DEFAULT

Valeur constante : faux

Constructeurs Publics

public SparseCategoricalCrossentropy (Ops tf)

Crée une perte SparseCategoricalCrossentropy en utilisant getSimpleName() comme nom de perte, une réduction de perte de REDUCTION_DEFAULT et fromLogits= FROM_LOGITS_DEFAULT .

Paramètres
tf les opérations TensorFlow

public SparseCategoricalCrossentropy (Ops tf, nom de chaîne)

Crée une perte SparseCategoricalCrossentropy en utilisant une réduction de perte de REDUCTION_DEFAULT et fromLogits= FROM_LOGITS_DEFAULT .

Paramètres
tf les opérations TensorFlow
nom le nom de cette fonction de perte

public SparseCategoricalCrossentropy (Ops tf, réduction )

Crée une perte SparseCategoricalCrossentropy en utilisant getSimpleName() comme nom de perte, avec Reduction.AUTO et fromLogits= FROM_LOGITS_DEFAULT .

Paramètres
tf les opérations TensorFlow
réduction Type de réduction à appliquer en cas de perte.

public SparseCategoricalCrossentropy (Ops tf, nom de chaîne, réduction de réduction )

Crée une perte SparseCategoricalCrossentropy avec Reduction.AUTO et fromLogits= FROM_LOGITS_DEFAULT .

Paramètres
tf les opérations TensorFlow
nom le nom de cette fonction de perte
réduction Type de réduction à appliquer en cas de perte.

public SparseCategoricalCrossentropy (Ops tf, nom de chaîne, booléen fromLogits)

Crée un SparseCategoricalCrossentropy en utilisant une réduction de perte de REDUCTION_DEFAULT et fromLogits= FROM_LOGITS_DEFAULT .

Paramètres
tf les opérations TensorFlow
nom le nom de cette fonction de perte
deLogits S'il faut interpréter les prédictions comme un tenseur de valeurs logit

public SparseCategoricalCrossentropy (Ops tf, booléen fromLogits)

Crée une perte SparseCategoricalCrossentropy en utilisant getSimpleName() comme nom de perte, une réduction de perte de REDUCTION_DEFAULT et fromLogits= FROM_LOGITS_DEFAULT .

Paramètres
tf les opérations TensorFlow
deLogits S'il faut interpréter les prédictions comme un tenseur de valeurs logit

public SparseCategoricalCrossentropy (Ops tf, booléen fromLogits, Reduction réduction)

Crée une perte SparseCategoricalCrossentropy en utilisant getSimpleName() comme nom de perte,

Paramètres
tf les opérations TensorFlow
deLogits S'il faut interpréter les prédictions comme un tenseur de valeurs logit
réduction Type de réduction à appliquer en cas de perte.

public SparseCategoricalCrossentropy (Ops tf, nom de chaîne, booléen fromLogits, réduction , axe int)

Crée une SparseCategoricalCrossentropy

Paramètres
tf les opérations TensorFlow
nom le nom de cette fonction de perte
deLogits S'il faut interpréter les prédictions comme un tenseur de valeurs logit
réduction Type de réduction à appliquer en cas de sinistre.
axe L'axe des canaux. axis=-1 correspond au format de données « Channels Last » et axis=1 correspond au format de données « Channels First ».

Méthodes publiques

appel public Operand <T> ( Operand <? extends TNumber > labels, Operand <T> prédictions, Operand <T> sampleWeights)

Génère un opérande et calcule la perte.

S'il est exécuté en mode graphique, le calcul lancera TFInvalidArgumentException si les valeurs de prédiction sont en dehors de la plage o [0. à 1.]. En mode Eager, cet appel lancera IllegalArgumentException , si les valeurs des prédictions sont en dehors de la plage o [0. à 1.]

Paramètres
Étiquettes les valeurs ou étiquettes de vérité
prédictions les prédictions, les valeurs doivent être comprises dans la plage [0. à 1.] inclus.
exemples de poids SampleWeights facultatif agit comme un coefficient pour la perte. Si un scalaire est fourni, alors la perte est simplement adaptée à la valeur donnée. Si SampleWeights est un tenseur de taille [batch_size], alors la perte totale pour chaque échantillon du lot est redimensionnée par l'élément correspondant dans le vecteur SampleWeights. Si la forme de SampleWeights est [batch_size, d0, .. dN-1] (ou peut être diffusée vers cette forme), alors chaque élément de perte de prédictions est mis à l'échelle par la valeur correspondante de SampleWeights. (Remarque sur dN-1 : toutes les fonctions de perte sont réduites d'une dimension, généralement axis=-1.)
Retour
  • la perte
Jetés
Exception d'argument illégal si les prédictions sont en dehors de la plage [0.-1.].