Calcula a perda de Huber entre rótulos e previsões.
Para cada valor x em error = labels - predictions :
loss = 0.5 * x^2 if |x| <= d
loss = 0.5 * d^2 + d * (|x| - d) if |x| > d
onde d é delta.
Uso autônomo:
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} });
Huber huberLoss = new Huber(tf);
Operand<TFloat32> result = huberLoss.call(labels, predictions);
// produces 0.155
Chamando com peso amostral:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {1.f, 0.f});
Operand<TFloat32> result = huberLoss.call(labels, predictions, sampleWeight);
// produces 0.09f
Usando o tipo de redução SUM :
Huber huberLoss = new Huber(tf, Reduction.SUM);
Operand<TFloat32> result = huberLoss.call(labels, predictions);
// produces 0.32f
Usando o tipo de redução NONE :
Huber huberLoss = new Huber(tf, Reduction.NONE);
Operand<TFloat32> result = huberLoss.call(labels, predictions);
// produces [0.18f, 0.13f]
Veja também
Constantes
| flutuador | DELTA_DEFAULT |
Campos Herdados
Construtores Públicos
Huber (operações TF) Cria uma perda Huber usando getSimpleName() como o nome da perda, DELTA_DEFAULT como o delta e uma redução de perda de REDUCTION_DEFAULT | |
Huber (Ops tf, nome da string) Cria uma perda de Huber usando DELTA_DEFAULT como delta e uma redução de perda de REDUCTION_DEFAULT | |
Huber (Ops tf, redução de redução ) Cria uma perda Huber usando getSimpleName() como o nome da perda e DELTA_DEFAULT como o delta | |
Huber (Ops tf, nome da string, redução de redução ) Cria uma perda de Huber usando DELTA_DEFAULT como delta | |
Métodos Públicos
| <T estende TNumber > Operando <T> | chamada ( Operando <? estende TNumber > rótulos, previsões de Operando <T>, Operando <T> sampleWeights) Gera um Operando que calcula a perda. |
Métodos herdados
Constantes
flutuador final estático público DELTA_DEFAULT
Construtores Públicos
público Huber (Ops tf)
Cria uma perda Huber usando getSimpleName() como o nome da perda, DELTA_DEFAULT como o delta e uma redução de perda de REDUCTION_DEFAULT
Parâmetros
| TF | as operações do TensorFlow |
|---|
Huber público (Ops tf, nome da string)
Cria uma perda de Huber usando DELTA_DEFAULT como delta e uma redução de perda de REDUCTION_DEFAULT
Parâmetros
| TF | as operações do TensorFlow |
|---|---|
| nome | o nome da perda, se for nulo, getSimpleName() será usado. |
público Huber (Ops tf, redução de redução )
Cria uma perda de Huber usando getSimpleName() como o nome da perda e DELTA_DEFAULT como o delta
Parâmetros
| TF | as operações do TensorFlow |
|---|---|
| redução | Tipo de Redução a aplicar à perda. |
public Huber (Ops tf, nome da string, redução de redução )
Cria uma perda de Huber usando DELTA_DEFAULT como delta
Parâmetros
| TF | as operações do TensorFlow |
|---|---|
| nome | o nome da perda, se for nulo, getSimpleName() será usado. |
| redução | Tipo de Redução a aplicar à perda. |
public Huber (Ops tf, nome da string, float delta, redução de redução )
Cria uma perda de Huber
Parâmetros
| TF | as operações do TensorFlow |
|---|---|
| nome | o nome da perda, se for nulo, getSimpleName() será usado. |
| delta | o ponto onde a função de perda de Huber muda de quadrática para linear. |
| redução | Tipo de Redução a aplicar à perda. |
Métodos Públicos
chamada de operando público <T> ( Operando <? estende TNumber > rótulos, previsões de operando <T>, pesos de amostra de operando <T>)
Gera um Operando que calcula a perda.
Parâmetros
| rótulos | os valores de verdade ou rótulos |
|---|---|
| previsões | as previsões |
| pesos de amostra | sampleWeights opcional atua como um coeficiente para a perda. Se um escalar for fornecido, a perda será simplesmente dimensionada pelo valor fornecido. Se SampleWeights for um tensor de tamanho [batch_size], então a perda total de cada amostra do lote será redimensionada pelo elemento correspondente no vetor SampleWeights. Se a forma de SampleWeights for [batch_size, d0, .. dN-1] (ou puder ser transmitida para esta forma), então cada elemento de perda de previsões será dimensionado pelo valor correspondente de SampleWeights. (Nota sobre dN-1: todas as funções de perda são reduzidas em 1 dimensão, geralmente eixo=-1.) |
Devoluções
- a perda