Oblicza utratę zawiasów między etykietami i przewidywaniami.
loss = maximum(1 - labels * predictions, 0)
.
oczekuje się, że wartości labels
będą wynosić -1 lub 1. Jeśli podano etykiety binarne (0 lub 1), zostaną one skonwertowane na -1 lub 1.
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} }); Hinge hingeLoss = new Hinge(tf); Operand<TFloat32> result = hingeLoss.call(labels, predictions); // produces 1.3f
Wywołanie z wagą próbki:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {1.f, 0.f}); Operand<TFloat32> result = hingeLoss.call(labels, predictions, sampleWeight); // produces 0.55f
Używanie typu redukcji SUM
:
Hinge hingeLoss = new Hinge(tf, Reduction.SUM); Operand<TFloat32> result = hingeLoss.call(labels, predictions); // produces 2.6f
Używanie typu redukcji NONE
:
Hinge hingeLoss = new Hinge(tf, Reduction.NONE); Operand<TFloat32> result = hingeLoss.call(labels, predictions); // produces [1.1f, 1.5f]
Dziedziczone pola
Konstruktorzy publiczni
Zawias (Ops tf) Tworzy stratę zawiasu, używając getSimpleName() jako nazwy straty i redukcji straty wynoszącej REDUCTION_DEFAULT | |
Metody publiczne
<T rozszerza TNumer > Operand <T> |
Metody dziedziczone
Konstruktorzy publiczni
publiczny zawias (Ops tf)
Tworzy stratę zawiasu, używając getSimpleName()
jako nazwy straty i redukcji straty wynoszącej REDUCTION_DEFAULT
Parametry
tf | operacji TensorFlow |
---|
publiczny zawias (Ops tf, redukcja redukcji )
Tworzy stratę zawiasową, używając getSimpleName()
jako nazwy straty
Parametry
tf | operacji TensorFlow |
---|---|
zmniejszenie | Rodzaj obniżki stosowanej w przypadku straty. |
publiczny zawias (Ops tf, nazwa ciągu, redukcja redukcji )
Tworzy zawias
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 operand, który oblicza stratę.
Jeśli zostanie uruchomione w trybie wykresu, obliczenia zgłoszą wyjątek TFInvalidArgumentException
jeśli wartości etykiet nie znajdują się w zestawie [-1., 0., 1.]. W trybie Eager to wywołanie zgłosi wyjątek IllegalArgumentException
, jeśli wartości etykiet nie znajdują się w zestawie [-1., 0., 1.].
Parametry
etykiety | wartości prawdy lub etykiety muszą wynosić -1, 0 lub 1. Oczekuje się, że wartości będą wynosić -1 lub 1. Jeśli podano etykiety binarne (0 lub 1), zostaną one skonwertowane na -1 lub 1. |
---|---|
prognozy | przewidywań, wartości muszą mieścić się w zakresie [0. do 1.] włącznie. |
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 przewidywanej straty jest skalowany przez odpowiednią wartość SampleWeights. (Uwaga do dN-1: wszystkie funkcje straty zmniejszają się o 1 wymiar, zwykle oś=-1.) |
Powroty
- strata
Rzuca
Wyjątek IllegalArgument | jeśli przewidywania są poza zakresem [0.-1.]. |
---|