CategoricalCrossentropy

klasa publiczna KategorycznyCrossentropia

Oblicza stratę entropii krzyżowej między etykietami i przewidywaniami.

Użyj tej funkcji utraty entropii krzyżowej, jeśli istnieją dwie lub więcej klas etykiet. Oczekujemy, że etykiety będą dostarczane w reprezentacji one_hot. Jeśli chcesz podać etykiety jako liczby całkowite, użyj straty SparseCategoricalCrossentropy . Na każdą funkcję powinno przypadać # classes wartości zmiennoprzecinkowych.

Samodzielne użycie:

    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
 

Wywołanie z wagą próbki:

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

Używanie typu redukcji SUM :

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

Używanie typu redukcji NONE :

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

Stałe

wew DOMYŚLNA_OŚ
wartość logiczna FROM_LOGITS_DEFAULT
platforma LABEL_SMOOTHING_DEFAULT

Dziedziczone pola

Konstruktorzy publiczni

KategorycznyCrossentropia (Ops tf)
Tworzy kategoryczną stratę entropii krzyżowej, używając getSimpleName() jako nazwy straty, FROM_LOGITS_DEFAULT dla fromLogits, LABEL_SMOOTHING_DEFAULT dla labelSmoothing, redukcji strat wynoszącej REDUCTION_DEFAULT i osi DEFAULT_AXIS
KategoryczneCrossentropia (Ops tf, nazwa ciągu)
Tworzy kategoryczną stratę entropii krzyżowej przy użyciu FROM_LOGITS_DEFAULT dla fromLogits, LABEL_SMOOTHING_DEFAULT dla labelSmoothing, redukcji strat wynoszącej REDUCTION_DEFAULT i osi DEFAULT_AXIS
KategorycznyCrossentropia (Ops tf, redukcja redukcji )
Tworzy kategoryczną stratę entropii krzyżowej, używając getSimpleName() jako nazwy straty, FROM_LOGITS_DEFAULT dla fromLogits, LABEL_SMOOTHING_DEFAULT dla labelSmoothing i osi DEFAULT_AXIS
KategoryczneCrossentropia (Ops tf, nazwa ciągu, redukcja redukcji )
Tworzy kategoryczną stratę entropii krzyżowej FROM_LOGITS_DEFAULT dla fromLogits, LABEL_SMOOTHING_DEFAULT dla labelSmoothing i oś DEFAULT_AXIS
KategoryczneCrossentropia (Ops tf, wartość logiczna z Logits)
Tworzy kategoryczną stratę entropii krzyżowej, używając getSimpleName() jako nazwy straty, LABEL_SMOOTHING_DEFAULT dla labelSmoothing, redukcji strat wynoszącej REDUCTION_DEFAULT i osi DEFAULT_AXIS
KategoryczneCrossentropy (Ops tf, nazwa ciągu, wartość logiczna zLogits)
Tworzy kategoryczną stratę entropii krzyżowej przy użyciu LABEL_SMOOTHING_DEFAULT dla labelSmoothing, redukcji strat wynoszącej REDUCTION_DEFAULT i osi kanału DEFAULT_AXIS
KategoryczneCrossentropy (Ops tf, wartość logiczna zLogits, etykieta zmiennoprzecinkowaSmoothing)
Tworzy kategoryczną stratę entropii krzyżowej, używając funkcji getSimpleName() jako nazwy straty, redukcji straty o REDUCTION_DEFAULT i osi kanału o wartości DEFAULT_AXIS
KategoryczneCrossentropy (Ops tf, nazwa ciągu, wartość logiczna zLogits, etykieta zmiennoprzecinkowaSmoothing)
Tworzy kategoryczną stratę entropii krzyżowej przy użyciu redukcji strat wynoszącej REDUCTION_DEFAULT i osi kanału DEFAULT_AXIS
KategoryczneCrossentropy (Ops tf, wartość logiczna zLogits, etykieta zmiennoprzecinkowaWygładzanie, redukcja redukcji )
Tworzy kategoryczną stratę entropii krzyżowej, używając getSimpleName() jako nazwy straty i osi kanału DEFAULT_AXIS
KategoryczneCrossentropy (Ops tf, nazwa ciągu, wartość logiczna zLogits, etykieta zmiennoprzecinkowaWygładzanie, redukcja redukcji , oś int)
Tworzy kategoryczną stratę entropii krzyżowej

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

Stałe

publiczny statyczny końcowy int DEFAULT_AXIS

Wartość stała: -1

publiczna statyczna końcowa wartość logiczna FROM_LOGITS_DEFAULT

Wartość stała: fałsz

publiczny statyczny końcowy float LABEL_SMOOTHING_DEFAULT

Wartość stała: 0,0

Konstruktorzy publiczni

publiczny KategorycznyCrossentropia (Ops tf)

Tworzy kategoryczną stratę entropii krzyżowej, używając getSimpleName() jako nazwy straty, FROM_LOGITS_DEFAULT dla fromLogits, LABEL_SMOOTHING_DEFAULT dla labelSmoothing, redukcji strat wynoszącej REDUCTION_DEFAULT i osi DEFAULT_AXIS

Parametry
tf operacji TensorFlow

public CategoricalCrossentropy (Ops tf, nazwa ciągu)

Tworzy kategoryczną stratę entropii krzyżowej przy użyciu FROM_LOGITS_DEFAULT dla fromLogits, LABEL_SMOOTHING_DEFAULT dla labelSmoothing, redukcji strat wynoszącej REDUCTION_DEFAULT i osi DEFAULT_AXIS

Parametry
tf operacji TensorFlow
nazwa imię tej straty

publiczna KategorycznaCrossentropia (Ops tf, redukcja redukcji )

Tworzy kategoryczną stratę entropii krzyżowej, używając getSimpleName() jako nazwy straty, FROM_LOGITS_DEFAULT dla fromLogits, LABEL_SMOOTHING_DEFAULT dla labelSmoothing i osi DEFAULT_AXIS

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

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

Tworzy kategoryczną stratę entropii krzyżowej FROM_LOGITS_DEFAULT dla fromLogits, LABEL_SMOOTHING_DEFAULT dla labelSmoothing i oś DEFAULT_AXIS

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

public CategoricalCrossentropy (Ops tf, wartość logiczna z Logits)

Tworzy kategoryczną stratę entropii krzyżowej, używając getSimpleName() jako nazwy straty, LABEL_SMOOTHING_DEFAULT dla labelSmoothing, redukcji strat wynoszącej REDUCTION_DEFAULT i osi DEFAULT_AXIS

Parametry
tf operacji TensorFlow
zLogits Czy interpretować prognozy jako tensor wartości logitowych

public CategoricalCrossentropy (Ops tf, nazwa ciągu, wartość logiczna zLogits)

Tworzy kategoryczną stratę entropii krzyżowej przy użyciu LABEL_SMOOTHING_DEFAULT dla labelSmoothing, redukcji strat wynoszącej REDUCTION_DEFAULT i osi kanału DEFAULT_AXIS

Parametry
tf operacji TensorFlow
nazwa imię tej straty
zLogits Czy interpretować prognozy jako tensor wartości logitowych

public CategoricalCrossentropy (Ops tf, wartość logiczna z Logits, float labelSmoothing)

Tworzy kategoryczną stratę entropii krzyżowej, używając funkcji getSimpleName() jako nazwy straty, redukcji straty o REDUCTION_DEFAULT i osi kanału o wartości DEFAULT_AXIS

Parametry
tf operacji TensorFlow
zLogits Czy interpretować prognozy jako tensor wartości logitowych
etykietaWygładzanie Pływak w [0, 1] . Gdy > 0 , wartości etykiet są wygładzane, co oznacza, że ​​zaufanie do wartości etykiet jest zmniejszone. np. labelSmoothing=0.2 oznacza, że ​​użyjemy wartości 0.1 dla etykiety 0 i 0.9 dla etykiety 1

public CategoricalCrossentropy (Ops tf, nazwa ciągu, wartość logiczna z Logits, float labelSmoothing)

Tworzy kategoryczną stratę entropii krzyżowej przy użyciu redukcji strat wynoszącej REDUCTION_DEFAULT i osi kanału DEFAULT_AXIS

Parametry
tf operacji TensorFlow
nazwa imię tej straty
zLogits Czy interpretować prognozy jako tensor wartości logitowych
etykietaWygładzanie Pływak w [0, 1] . Gdy > 0 , wartości etykiet są wygładzane, co oznacza, że ​​zaufanie do wartości etykiet jest zmniejszone. np. labelSmoothing=0.2 oznacza, że ​​użyjemy wartości 0.1 dla etykiety 0 i 0.9 dla etykiety 1

public CategoricalCrossentropy (Ops tf, wartość logiczna zLogits, float labelSmoothing, Redukcja redukcji )

Tworzy kategoryczną stratę entropii krzyżowej, używając getSimpleName() jako nazwy straty i osi kanału DEFAULT_AXIS

Parametry
tf operacji TensorFlow
zLogits Czy interpretować przewidywania jako tensor wartości logitowych
etykietaWygładzanie Pływak w [0, 1] . Gdy > 0 , wartości etykiet są wygładzane, co oznacza, że ​​zaufanie do wartości etykiet jest zmniejszone. np. x=0.2 oznacza, że ​​dla etykiety 0 użyjemy wartości 0.1 , a dla etykiety 1 0.9
zmniejszenie Rodzaj obniżki stosowanej w przypadku straty.

public CategoricalCrossentropy (Ops tf, nazwa ciągu, wartość logiczna fromLogits, etykieta zmiennoprzecinkowaWygładzanie, redukcja redukcji , oś int)

Tworzy kategoryczną stratę entropii krzyżowej

Parametry
tf operacji TensorFlow
nazwa imię tej straty
zLogits Czy interpretować prognozy jako tensor wartości logitowych
etykietaWygładzanie Pływak w [0, 1] . Gdy > 0 , wartości etykiet są wygładzane, co oznacza, że ​​zaufanie do wartości etykiet jest zmniejszone. np. labelSmoothing=0.2 oznacza, że ​​użyjemy wartości 0.1 dla etykiety 0 i 0.9 dla etykiety 1
zmniejszenie Rodzaj obniżki stosowanej w przypadku straty.
Oś kanałów. axis=-1 odpowiada formatowi danych „Channels Last”, a axis=1 odpowiada formatowi danych „Channels First”. CHANNELS_LAST i CHANNELS_FIRST
Rzuca
Wyjątek IllegalArgument jeśli labelSmoothing nie należy do zakresu 0. - 1.

Metody publiczne

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

Generuje argument, który oblicza stratę.

Jeśli zostanie uruchomione w trybie wykresu, obliczenia zgłoszą TFInvalidArgumentException , jeśli wartości przewidywań będą poza zakresem o [0. do 1.]. W trybie Eager to wywołanie zgłosi wyjątek IllegalArgumentException , jeśli wartości przewidywań wykraczają poza zakres o [0. do 1.]

Parametry
etykiety wartości prawdy lub etykiety
prognozy przewidywań, wartości muszą mieścić się w zakresie [0. do 1.] włącznie.
próbkiWagi Opcjonalne próbki SampleWeights 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
Rzuca
Wyjątek IllegalArgument jeśli przewidywania są poza zakresem [0.-1.].