CategoricalCrossentropy

classe publique CatégoriqueCrossentropie

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. Nous nous attendons à ce que les étiquettes soient fournies dans une représentation one_hot. Si vous souhaitez fournir des étiquettes sous forme d'entiers, veuillez utiliser la perte SparseCategoricalCrossentropy . Il devrait y avoir # classes de valeurs à virgule flottante par fonctionnalité.

Utilisation autonome :

    Operand<TFloat32> labels =
        tf.constant(new float[][] { {0, 1, 0}, {0, 0, 1} });
    Operand<TFloat32> predictions =
        tf.constant(new float[][] { {0.05f, 0.95f, 0f}, {0.1f, 0.8f, 0.1f} });
    CategoricalCrossentropy cce = new CategoricalCrossentropy(tf);
    Operand<TFloat32> result = cce.call(labels, predictions);
    // produces 1.177
 

Appel avec le poids de l'échantillon :

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

Utilisation du type de réduction SUM :

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

Utilisation du type de réduction NONE :

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

Constantes

int DEFAULT_AXIS
booléen FROM_LOGITS_DEFAULT
flotter LABEL_SMOOTHING_DEFAULT

Champs hérités

Constructeurs Publics

CatégoriqueCrossentropie (Ops tf)
Crée une perte d'entropie croisée catégorielle en utilisant getSimpleName() comme nom de perte, FROM_LOGITS_DEFAULT pour fromLogits, LABEL_SMOOTHING_DEFAULT pour labelSmoothing, une réduction de perte de REDUCTION_DEFAULT et un axe de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, nom de chaîne)
Crée une perte d'entropie croisée catégorielle en utilisant FROM_LOGITS_DEFAULT pour fromLogits, LABEL_SMOOTHING_DEFAULT pour labelSmoothing, une réduction de perte de REDUCTION_DEFAULT et un axe de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, Réduction réduction)
Crée une perte d'entropie croisée catégorielle en utilisant getSimpleName() comme nom de perte, FROM_LOGITS_DEFAULT pour fromLogits, LABEL_SMOOTHING_DEFAULT pour labelSmoothing et un axe de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, nom de chaîne, réduction de réduction )
Crée une perte d'entropie croisée catégorielle FROM_LOGITS_DEFAULT pour fromLogits, LABEL_SMOOTHING_DEFAULT pour labelSmoothing et un axe de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, booléen fromLogits)
Crée une perte d'entropie croisée catégorielle en utilisant getSimpleName() comme nom de perte, LABEL_SMOOTHING_DEFAULT pour labelSmoothing, une réduction de perte de REDUCTION_DEFAULT et un axe de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, nom de chaîne, booléen fromLogits)
Crée une perte d'entropie croisée catégorielle en utilisant LABEL_SMOOTHING_DEFAULT pour labelSmoothing, une réduction de perte de REDUCTION_DEFAULT et un axe de canal de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, booléen fromLogits, float labelSmoothing)
Crée une perte d'entropie croisée catégorielle en utilisant getSimpleName() comme nom de perte, une réduction de perte de REDUCTION_DEFAULT et un axe de canal de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, nom de chaîne, booléen fromLogits, float labelSmoothing)
Crée une perte d'entropie croisée catégorielle en utilisant une réduction de perte de REDUCTION_DEFAULT et un axe de canal de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, booléen fromLogits, float labelSmoothing, Reduction réduction)
Crée une perte d'entropie croisée catégorique en utilisant getSimpleName() comme nom de perte et un axe de canal de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, nom de chaîne, booléen fromLogits, float labelSmoothing, Reduction réduction, int axis)
Crée une perte d'entropie croisée catégorique

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 qui calcule la perte.

Méthodes héritées

Constantes

public statique final int DEFAULT_AXIS

Valeur constante : -1

public statique final booléen FROM_LOGITS_DEFAULT

Valeur constante : faux

public statique final float LABEL_SMOOTHING_DEFAULT

Valeur constante : 0,0

Constructeurs Publics

public CategoricalCrossentropy (Ops tf)

Crée une perte d'entropie croisée catégorielle en utilisant getSimpleName() comme nom de perte, FROM_LOGITS_DEFAULT pour fromLogits, LABEL_SMOOTHING_DEFAULT pour labelSmoothing, une réduction de perte de REDUCTION_DEFAULT et un axe de DEFAULT_AXIS

Paramètres
tf les opérations TensorFlow

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

Crée une perte d'entropie croisée catégorielle en utilisant FROM_LOGITS_DEFAULT pour fromLogits, LABEL_SMOOTHING_DEFAULT pour labelSmoothing, une réduction de perte de REDUCTION_DEFAULT et un axe de DEFAULT_AXIS

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

public CategoricalCrossentropy (Ops tf, Réduction réduction)

Crée une perte d'entropie croisée catégorielle en utilisant getSimpleName() comme nom de perte, FROM_LOGITS_DEFAULT pour fromLogits, LABEL_SMOOTHING_DEFAULT pour labelSmoothing et un axe de DEFAULT_AXIS

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

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

Crée une perte d'entropie croisée catégorielle FROM_LOGITS_DEFAULT pour fromLogits, LABEL_SMOOTHING_DEFAULT pour labelSmoothing et un axe de DEFAULT_AXIS

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

public CategoricalCrossentropy (Ops tf, booléen fromLogits)

Crée une perte d'entropie croisée catégorielle en utilisant getSimpleName() comme nom de perte, LABEL_SMOOTHING_DEFAULT pour labelSmoothing, une réduction de perte de REDUCTION_DEFAULT et un axe de DEFAULT_AXIS

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

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

Crée une perte d'entropie croisée catégorielle en utilisant LABEL_SMOOTHING_DEFAULT pour labelSmoothing, une réduction de perte de REDUCTION_DEFAULT et un axe de canal de DEFAULT_AXIS

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

public CategoricalCrossentropy (Ops tf, booléen fromLogits, float labelSmoothing)

Crée une perte d'entropie croisée catégorielle en utilisant getSimpleName() comme nom de perte, une réduction de perte de REDUCTION_DEFAULT et un axe de canal de DEFAULT_AXIS

Paramètres
tf les opérations TensorFlow
deLogits S'il faut interpréter les prédictions comme un tenseur de valeurs logit
labelLissage Flottez dans [0, 1] . Lorsque > 0 , les valeurs des étiquettes sont lissées, ce qui signifie que la confiance dans les valeurs des étiquettes est assouplie. par exemple labelSmoothing=0.2 signifie que nous utiliserons une valeur de 0.1 pour l'étiquette 0 et 0.9 pour l'étiquette 1

public CategoricalCrossentropy (Ops tf, nom de chaîne, booléen fromLogits, float labelSmoothing)

Crée une perte d'entropie croisée catégorielle en utilisant une réduction de perte de REDUCTION_DEFAULT et un axe de canal de DEFAULT_AXIS

Paramètres
tf les opérations TensorFlow
nom le nom de cette perte
deLogits S'il faut interpréter les prédictions comme un tenseur de valeurs logit
labelLissage Flottez dans [0, 1] . Lorsque > 0 , les valeurs des étiquettes sont lissées, ce qui signifie que la confiance dans les valeurs des étiquettes est assouplie. par exemple labelSmoothing=0.2 signifie que nous utiliserons une valeur de 0.1 pour l'étiquette 0 et 0.9 pour l'étiquette 1

public CategoricalCrossentropy (Ops tf, booléen fromLogits, float labelSmoothing, Reduction réduction)

Crée une perte d'entropie croisée catégorique en utilisant getSimpleName() comme nom de perte et un axe de canal de DEFAULT_AXIS

Paramètres
tf les opérations TensorFlow
deLogits S'il faut interpréter les prédictions comme un tenseur de valeurs logit
labelLissage Flottez dans [0, 1] . Lorsque > 0 , les valeurs des étiquettes sont lissées, ce qui signifie que la confiance dans les valeurs des étiquettes est assouplie. par exemple, x=0.2 signifie que nous utiliserons une valeur de 0.1 pour l'étiquette 0 et 0.9 pour l'étiquette 1
réduction Type de réduction à appliquer en cas de sinistre.

public CategoricalCrossentropy (Ops tf, nom de chaîne, booléen fromLogits, float labelSmoothing, Reduction réduction, int axis)

Crée une perte d'entropie croisée catégorique

Paramètres
tf les opérations TensorFlow
nom le nom de cette perte
deLogits S'il faut interpréter les prédictions comme un tenseur de valeurs logit
labelLissage Flottez dans [0, 1] . Lorsque > 0 , les valeurs des étiquettes sont lissées, ce qui signifie que la confiance dans les valeurs des étiquettes est assouplie. par exemple labelSmoothing=0.2 signifie que nous utiliserons une valeur de 0.1 pour l'étiquette 0 et 0.9 pour l'étiquette 1
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 ». CHANNELS_LAST et CHANNELS_FIRST
Jetés
Exception d'argument illégal si labelSmoothing n'est pas dans la plage inclusive de 0. - 1.

Méthodes publiques

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

Génère un opérande qui 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.].