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. Oczekuje się, że etykiety będą podawane jako liczby całkowite. Jeśli chcesz zapewnić etykiety przy użyciu reprezentacji one-hot , użyj utraty CategoricalCrossentropy . Powinno być # classes wartości zmiennoprzecinkowych na każdą cechę w przypadku predictions i jedną wartość zmiennoprzecinkową na każdą cechę w przypadku label .
W poniższym fragmencie znajduje się pojedyncza wartość zmiennoprzecinkowa na przykład dla labels i # classes wartości zmiennoprzecinkowych na przykład dla predictions . Kształt labels to [batch_size] , a kształt predictions to [batch_size, num_classes] .
Samodzielne użycie:
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
Wywołanie z wagą próbki:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.3f, 0.7f});
Operand<TFloat32> result = sparseCCE.call(labels, predictions, sampleWeight);
// produces 0.814f
Używanie typu redukcji SUM :
SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf, Reduction.SUM);
Operand<TFloat32> result = sparseCCE.call(labels, predictions);
// produces 2.354f
Używanie typu redukcji NONE :
SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf, Reduction.NONE);
Operand<TFloat32> result = sparseCCE.call(labels, predictions);
// produces [0.0513f, 2.303f]
Stałe
| wew | AXIS_DEFAULT | |
| wartość logiczna | FROM_LOGITS_DEFAULT |
Dziedziczone pola
Konstruktorzy publiczni
Rzadki Kategoryczny Crossentropia (Ops tf) Tworzy stratę SparseCategoricalCrossentropy, używając getSimpleName() jako nazwy straty, redukcji straty wynoszącej REDUCTION_DEFAULT i fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricalCrossentropy (Ops tf, nazwa ciągu) Tworzy stratę SparseCategoricalCrossentropy przy użyciu redukcji straty wynoszącej REDUCTION_DEFAULT i fromLogits= FROM_LOGITS_DEFAULT . | |
Rzadki KategorycznyCrossentropia (Ops tf, redukcja redukcji ) Tworzy stratę SparseCategoricalCrossentropy, używając getSimpleName() jako nazwy straty, z Reduction.AUTO i fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricalCrossentropy (Ops tf, nazwa ciągu, redukcja redukcji ) Tworzy stratę SparseCategoricalCrossentropy z Reduction.AUTO i fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricalCrossentropy (Ops tf, nazwa ciągu, wartość logiczna zLogits) Tworzy SparseCategoricalCrossentropy przy użyciu redukcji strat wynoszącej REDUCTION_DEFAULT i fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricalCrossentropia (Ops tf, wartość logiczna z Logits) Tworzy stratę SparseCategoricalCrossentropy, używając getSimpleName() jako nazwy straty, redukcji straty wynoszącej REDUCTION_DEFAULT i fromLogits= FROM_LOGITS_DEFAULT . | |
SparseCategoricalCrossentropia (Ops tf, wartość logiczna z Logits, redukcja redukcji ) Tworzy stratę SparseCategoricalCrossentropy, używając getSimpleName() jako nazwy straty, | |
SparseCategoricalCrossentropy (Ops tf, nazwa ciągu, wartość logiczna zLogits, redukcja redukcji , oś int) Tworzy rzadką kategoryczną krzyżową tropię |
Metody publiczne
| <T rozszerza numer T > Operand <T> |
Metody dziedziczone
Stałe
publiczny statyczny końcowy int AXIS_DEFAULT
publiczna statyczna końcowa wartość logiczna FROM_LOGITS_DEFAULT
Konstruktorzy publiczni
publiczny RzadkiKategorycznyCrossentropia (Ops tf)
Tworzy stratę SparseCategoricalCrossentropy, używając getSimpleName() jako nazwy straty, redukcji straty wynoszącej REDUCTION_DEFAULT i fromLogits= FROM_LOGITS_DEFAULT .
Parametry
| tf | operacji TensorFlow |
|---|
public SparseCategoricalCrossentropy (Ops tf, nazwa ciągu)
Tworzy stratę SparseCategoricalCrossentropy przy użyciu redukcji straty wynoszącej REDUCTION_DEFAULT i fromLogits= FROM_LOGITS_DEFAULT .
Parametry
| tf | operacji TensorFlow |
|---|---|
| nazwa | nazwa tej funkcji straty |
publiczny RzadkiKategorycznyCrossentropia (Ops tf, redukcja redukcji )
Tworzy stratę SparseCategoricalCrossentropy, używając getSimpleName() jako nazwy straty, z Reduction.AUTO i fromLogits= FROM_LOGITS_DEFAULT .
Parametry
| tf | operacji TensorFlow |
|---|---|
| zmniejszenie | Rodzaj obniżki stosowanej w przypadku straty. |
public SparseCategoricalCrossentropy (Ops tf, nazwa ciągu, redukcja redukcji )
Tworzy stratę SparseCategoricalCrossentropy z Reduction.AUTO i fromLogits= FROM_LOGITS_DEFAULT .
Parametry
| tf | operacji TensorFlow |
|---|---|
| nazwa | nazwa tej funkcji straty |
| zmniejszenie | Rodzaj obniżki stosowanej w przypadku straty. |
public SparseCategoricalCrossentropy (Ops tf, nazwa ciągu, wartość logiczna zLogits)
Tworzy SparseCategoricalCrossentropy przy użyciu redukcji strat wynoszącej REDUCTION_DEFAULT i fromLogits= FROM_LOGITS_DEFAULT .
Parametry
| tf | operacji TensorFlow |
|---|---|
| nazwa | nazwa tej funkcji straty |
| zLogits | Czy interpretować przewidywania jako tensor wartości logitowych |
public SparseCategoricalCrossentropy (Ops tf, wartość logiczna z Logits)
Tworzy stratę SparseCategoricalCrossentropy, używając getSimpleName() jako nazwy straty, redukcji straty wynoszącej REDUCTION_DEFAULT i fromLogits= FROM_LOGITS_DEFAULT .
Parametry
| tf | operacji TensorFlow |
|---|---|
| zLogits | Czy interpretować przewidywania jako tensor wartości logitowych |
public SparseCategoricalCrossentropy (Ops tf, wartość logiczna z Logits, redukcja redukcji )
Tworzy stratę SparseCategoricalCrossentropy, używając getSimpleName() jako nazwy straty,
Parametry
| tf | operacji TensorFlow |
|---|---|
| zLogits | Czy interpretować prognozy jako tensor wartości logitowych |
| zmniejszenie | Rodzaj obniżki stosowanej w przypadku straty. |
public SparseCategoricalCrossentropy (Ops tf, nazwa ciągu, wartość logiczna zLogits, redukcja redukcji , oś int)
Tworzy rzadką kategoryczną krzyżową tropię
Parametry
| tf | operacji TensorFlow |
|---|---|
| nazwa | nazwa tej funkcji straty |
| zLogits | Czy interpretować przewidywania jako tensor wartości logitowych |
| zmniejszenie | Rodzaj obniżki stosowanej w przypadku straty. |
| oś | Oś kanałów. axis=-1 odpowiada formatowi danych „Channels Last”, a axis=1 odpowiada formatowi danych „Channels First”. |
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ą wyjątek 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 przewidywanej straty jest skalowany przez odpowiednią wartość SampleWeights. (Uwaga do dN-1: wszystkie funkcje strat zmniejszają się o 1 wymiar, zwykle oś=-1.) |
Powroty
- strata
Rzuca
| Wyjątek IllegalArgument | jeśli przewidywania są poza zakresem [0.-1.]. |
|---|