Calcula la pérdida de bisagra categórica entre etiquetas y predicciones.
loss = maximum(neg - pos + 1, 0)
donde neg=maximum((1-labels)*predictions)
y pos=sum(labels*predictions)
Se espera que los valores labels
sean 0 o 1.
Uso independiente:
Operand<TFloat32> labels = tf.constant(new float[][] { {0, 1}, {0, 0} }); Operand<TFloat32> predictions = tf.constant(new float[][] { {0.6f, 0.4f}, {0.4f, 0.6f} }); CategoricalHinge categoricalHinge = new CategoricalHinge(tf); Operand<TFloat32> result = categoricalHinge.call(labels, predictions); // produces 1.4
Llamar con peso de muestra:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {1f, 0.f}); Operand<TFloat32> result = categoricalHinge.call(labels, predictions, sampleWeight); // produces 0.6f
Usando el tipo de reducción SUM
:
CategoricalHinge categoricalHinge = new CategoricalHinge(tf, Reduction.SUM); Operand<TFloat32> result = categoricalHinge.call(labels, predictions); // produces 2.8f
Usando NONE
tipo de reducción:
CategoricalHinge categoricalHinge = new CategoricalHinge(tf, Reduction.NONE); Operand<TFloat32> result = categoricalHinge.call(labels, predictions); // produces [1.2f, 1.6f]
Campos heredados
Constructores Públicos
Bisagra categórica (Ops tf) Crea una pérdida de bisagra categórica utilizando getSimpleName() como nombre de la pérdida y una reducción de pérdida de REDUCTION_DEFAULT | |
Bisagra categórica (Ops tf, reducción de reducción ) Crea una pérdida de bisagra categórica utilizando getSimpleName() como nombre de la pérdida. | |
Métodos públicos
<T extiende TNumber > Operando <T> | llamada ( Operando <? extiende etiquetas TNumber >, predicciones de operando <T>, pesos de muestra de operando <T>) Genera un Operando que calcula la pérdida. |
Métodos heredados
Constructores Públicos
Bisagra categórica pública (Ops tf)
Crea una pérdida de bisagra categórica utilizando getSimpleName()
como nombre de la pérdida y una reducción de pérdida de REDUCTION_DEFAULT
Parámetros
tf | las operaciones de TensorFlow |
---|
Public CategoricalHinge (Ops tf, reducción de reducción )
Crea una pérdida de bisagra categórica utilizando getSimpleName()
como nombre de la pérdida.
Parámetros
tf | las operaciones de TensorFlow |
---|---|
reducción | Tipo de Reducción a aplicar sobre la pérdida. |
public CategoricalHinge (Ops tf, nombre de cadena, reducción de reducción )
Crea una bisagra categórica
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de la perdida |
reducción | Tipo de Reducción a aplicar sobre la pérdida. |
Métodos públicos
Llamada pública al operando <T> ( el operando <? extiende las etiquetas TNumber >, las predicciones del operando <T>, los pesos de muestra del operando <T>)
Genera un Operando que calcula la pérdida.
Parámetros
etiquetas | los valores o etiquetas de verdad |
---|---|
predicciones | las predicciones |
pesos de muestra | SampleWeights opcional actúa como un coeficiente de pérdida. Si se proporciona un escalar, entonces la pérdida simplemente se escala según el valor dado. Si SampleWeights es un tensor de tamaño [batch_size], entonces la pérdida total de cada muestra del lote se vuelve a escalar mediante el elemento correspondiente en el vector SampleWeights. Si la forma de SampleWeights es [batch_size, d0, .. dN-1] (o se puede transmitir a esta forma), entonces cada elemento de pérdida de las predicciones se escala según el valor correspondiente de SampleWeights. (Nota sobre dN-1: todas las funciones de pérdida se reducen en 1 dimensión, generalmente eje = -1). |
Devoluciones
- la pérdida