KLDivergence

klasa publiczna KLDirgence

Oblicza utratę dywergencji Kullbacka-Leiblera pomiędzy etykietami i przewidywaniami.

loss = labels * log(labels / predictions)

Samodzielne użycie:

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

Wywołanie z wagą próbki:

    Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.8f, 0.2f});
    Operand<TFloat32> result = kld.call(labels, predictions, sampleWeight);
    // produces 0.366f
 

Używanie typu redukcji SUM :

    KLDivergence kld = new KLDivergence(tf, Reduction.SUM);
    Operand<TFloat32> result = kld.call(labels, predictions);
    // produces 0.916f
 

Używanie typu redukcji NONE :

    KLDivergence kld = new KLDivergence(tf, Reduction.NONE);
    Operand<TFloat32> result = kld.call(labels, predictions);
    // produces [0.916f, -3.08e-06f]
 

Dziedziczone pola

Konstruktorzy publiczni

KLDRozbieżność (Ops tf)
Tworzy stratę dywergencyjną Kullbacka Leiblera, używając getSimpleName() jako nazwy straty i redukcji straty wynoszącej REDUCTION_DEFAULT
KLDrozbieżność (Ops tf, redukcja redukcji )
Tworzy stratę dywergencji Kullbacka Leiblera, używając getSimpleName() jako nazwy straty
KLD Rozbieżność (Ops tf, nazwa ciągu, redukcja redukcji )
Tworzy stratę dywergencji Kullbacka Leiblera

Metody publiczne

<T rozszerza TNumer > Operand <T>
wywołanie ( Operand <? rozszerza TNumber > etykiety, przewidywania argumentu <T>, argumentu <T> próbkiWagi)
Generuje argument, który oblicza stratę.

Metody dziedziczone

Konstruktorzy publiczni

publiczna rozbieżność KLD (Ops tf)

Tworzy stratę dywergencyjną Kullbacka Leiblera, używając getSimpleName() jako nazwy straty i redukcji straty wynoszącej REDUCTION_DEFAULT

Parametry
tf operacji TensorFlow

publiczna rozbieżność KLD (Ops tf, redukcja redukcji )

Tworzy stratę dywergencji Kullbacka Leiblera, używając getSimpleName() jako nazwy straty

Parametry
tf operacji TensorFlow
zmniejszenie Rodzaj obniżki stosowanej w przypadku straty.

public KLDivergence (Ops tf, nazwa ciągu, redukcja redukcji )

Tworzy stratę dywergencji Kullbacka Leiblera

Parametry
tf operacji TensorFlow
nazwa nazwa straty
zmniejszenie Rodzaj obniżki stosowanej w przypadku straty.

Metody publiczne

publiczne wywołanie argumentu <T> ( operand <? rozszerza TNumber > etykiety, przewidywania argumentu <T>, argumentu <T> próbkiWagi)

Generuje argument, który oblicza stratę.

Parametry
etykiety wartości prawdy lub etykiety
prognozy przewidywania
próbkiWagi Opcjonalne próbkiWeights działają jako współczynnik straty. Jeśli podany jest skalar, strata jest po prostu skalowana według podanej wartości. Jeśli SampleWeights jest tensorem rozmiaru [batch_size], wówczas całkowita strata dla każdej próbki w partii jest przeskalowana przez odpowiedni element wektora SampleWeights. Jeśli kształt SampleWeights wynosi [batch_size, d0, .. dN-1] (lub może być nadawany do tego kształtu), wówczas każdy element predykcji straty jest skalowany przez odpowiednią wartość SampleWeights. (Uwaga do dN-1: wszystkie funkcje strat zmniejszają się o 1 wymiar, zwykle oś=-1.)
Zwroty
  • strata