Huber

classe publique Huber

Calcule la perte de Huber entre les étiquettes et les prédictions.

Pour chaque valeur x en error = labels - predictions :

     loss = 0.5 * x^2                  if |x| <= d
     loss = 0.5 * d^2 + d * (|x| - d)  if |x| > d
 

où d est delta.

Utilisation autonome :

    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} });
    Huber huberLoss = new Huber(tf);
    Operand<TFloat32> result = huberLoss.call(labels, predictions);
    // produces 0.155
 

Appel avec le poids de l'échantillon :

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

Utilisation du type de réduction SUM :

    Huber huberLoss = new Huber(tf, Reduction.SUM);
    Operand<TFloat32> result = huberLoss.call(labels, predictions);
    // produces 0.32f
 

Utilisation du type de réduction NONE :

    Huber huberLoss = new Huber(tf, Reduction.NONE);
    Operand<TFloat32> result = huberLoss.call(labels, predictions);
    // produces [0.18f, 0.13f]
 

Voir également

Constantes

flotter DELTA_DEFAULT

Champs hérités

Constructeurs Publics

Huber (Ops tf)
Crée une perte Huber en utilisant getSimpleName() comme nom de perte, DELTA_DEFAULT comme delta et une réduction de perte de REDUCTION_DEFAULT
Huber (Ops tf, nom de la chaîne)
Crée une perte Huber en utilisant DELTA_DEFAULT comme delta et une réduction de perte de REDUCTION_DEFAULT
Huber (Ops tf, Réduction réduction)
Crée une perte Huber en utilisant getSimpleName() comme nom de perte et DELTA_DEFAULT comme delta
Huber (Ops tf, nom de chaîne, réduction de réduction )
Crée une perte Huber en utilisant DELTA_DEFAULT comme delta
Huber (Ops tf, nom de chaîne, delta flottant, réduction de réduction )
Crée une perte Huber

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 float DELTA_DEFAULT

Valeur constante : 1,0

Constructeurs Publics

public Huber (Ops tf)

Crée une perte Huber en utilisant getSimpleName() comme nom de perte, DELTA_DEFAULT comme delta et une réduction de perte de REDUCTION_DEFAULT

Paramètres
tf les opérations TensorFlow

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

Crée une perte Huber en utilisant DELTA_DEFAULT comme delta et une réduction de perte de REDUCTION_DEFAULT

Paramètres
tf les opérations TensorFlow
nom le nom de la perte, si null alors getSimpleName() est utilisé.

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

Crée une perte Huber en utilisant getSimpleName() comme nom de perte et DELTA_DEFAULT comme delta

Paramètres
tf les opérations TensorFlow
réduction Type de réduction à appliquer sur le sinistre.

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

Crée une perte Huber en utilisant DELTA_DEFAULT comme delta

Paramètres
tf les opérations TensorFlow
nom le nom de la perte, si null alors getSimpleName() est utilisé.
réduction Type de réduction à appliquer sur le sinistre.

public Huber (Ops tf, nom de chaîne, delta flottant, réduction de réduction )

Crée une perte Huber

Paramètres
tf les opérations TensorFlow
nom le nom de la perte, si null alors getSimpleName() est utilisé.
delta le point où la fonction de perte de Huber passe de quadratique à linéaire.
réduction Type de réduction à appliquer sur le sinistre.

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.

Paramètres
Étiquettes les valeurs ou étiquettes de vérité
prédictions les prédictions
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