Konstruktorzy publiczni
Metody publiczne
statyczny <T rozszerza TNumber , U rozszerza TNumber > Operand <T> | softmaxCrossEntropyWithLogits (zakres zakresu , etykiety argumentów <U>, logity argumentów <T>, oś int) Oblicza entropię krzyżową softmax pomiędzy logits i labels . |
Metody dziedziczone
Konstruktorzy publiczni
public SoftmaxCrossEntropyWithLogits ()
Metody publiczne
public static Operand <T> softmaxCrossEntropyWithLogits (zakres zakresu , etykiety argumentów <U>, logity argumentów <T>, oś int)
Oblicza entropię krzyżową softmax pomiędzy logits
i labels
.
Mierzy błąd prawdopodobieństwa w zadaniach klasyfikacji dyskretnej, w których klasy wzajemnie się wykluczają (każdy wpis należy do dokładnie jednej klasy). Na przykład każdy obraz CIFAR-10 jest oznaczony jedną i tylko jedną etykietą: obraz może przedstawiać psa lub ciężarówkę, ale nie jedno i drugie.
NOTATKA:
Chociaż klasy wykluczają się wzajemnie, ich prawdopodobieństwa nie muszą tak być. Wymagane jest jedynie, aby każdy wiersz labels
był prawidłowym rozkładem prawdopodobieństwa. Jeżeli tak nie jest, obliczenie gradientu będzie nieprawidłowe.
Jeśli używasz ekskluzywnych labels
(gdzie tylko jedna klasa jest prawdziwa w danym momencie), zobacz ERROR(/org.tensorflow.op.NnOps#sparseSoftmaxCrossEntropyWithLogits)
Stosowanie:
Operand<TFloat32> logits = tf.constant(new float[][] { {4.0F, 2.0F, 1.0F}, {0.0F, 5.0F, 1.0F} } ); Operand<TFloat32> labels = tf.constant(new float[][] { {1.0F, 0.0F, 0.0F}, {0.0F, 0.8F, 0.2F} } ); Operand<TFloat32> output = tf.nn.softmaxCrossEntropyWithLogits(labels, logits, -1); // output Shape = [2] // dataType = FLOAT (1) // values { 0.169846, 0.824745 }
Propagacja wsteczna nastąpi zarówno w przypadku logits
, jak i labels
. Aby uniemożliwić propagację wsteczną do labels
, przekaż tensory etykiet przez tf.stopGradient
przed podaniem ich do tej funkcji.
Parametry
zakres | aktualny zakres |
---|---|
etykiety | Każdy wektor wzdłuż wymiaru klasy powinien zawierać prawidłowy rozkład prawdopodobieństwa, np. w przypadku, gdy etykiety mają kształt [batch_size, num_classes] , każdy wiersz labels[i] musi być prawidłowym rozkładem prawdopodobieństwa. |
logity | Aktywacje na etykietę, zazwyczaj wyjście liniowe. Te energie aktywacji są interpretowane jako nieznormalizowane prawdopodobieństwa logarytmiczne. |
oś | Wymiar klasowy. -1 to ostatni wymiar. |
Powroty
- strata entropii krzyżowej softmax. Jego rodzaj jest taki sam jak
logits
, a kształt jest taki sam jaklabels
z tą różnicą, że nie ma ostatniego wymiarulabels
.