SparseCategoricalCrossentropy

public class SparseCategoricalCrossentropy

Calcula a perda de entropia cruzada entre rótulos e previsões.

Use esta função de perda de entrecropia cruzada quando houver duas ou mais classes de rótulo. Espera-se que os rótulos sejam fornecidos como inteiros. Se você deseja fornecer rótulos usando representação one-hot , use a perda CategoricalCrossentropy . Deve haver # classes valores de ponto flutuante por recurso para predictions e um único valor de ponto flutuante por recurso para label .

No fragmento abaixo, há um único valor de ponto flutuante por exemplo para labels e # classes valores de apontamento flutuante por exemplo para predictions . A forma dos labels é [batch_size] e a forma das predictions é [batch_size, num_classes] .

Uso autônomo:

    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
 

Ligando com peso de amostra:

    Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.3f, 0.7f});
    Operand<TFloat32> result = sparseCCE.call(labels, predictions, sampleWeight);
    // produces 0.814f
 

Usando o tipo de redução SUM :

    SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf, Reduction.SUM);
    Operand<TFloat32> result = sparseCCE.call(labels, predictions);
    // produces 2.354f
 

Usando o tipo de redução NONE :

    SparseCategoricalCrossentropy sparseCCE = new SparseCategoricalCrossentropy(tf, Reduction.NONE);
    Operand<TFloat32> result = sparseCCE.call(labels, predictions);
    // produces [0.0513f, 2.303f]
 

Constantes

int AXIS_DEFAULT
boleano FROM_LOGITS_DEFAULT

Campos herdados

Construtores Públicos

SparseCategoricalCrossentropy (Ops tf)
Cria uma perda SparseCategoricalCrossentropy usando getSimpleName() como o nome da perda, uma Redução de perda de REDUCTION_DEFAULT e fromLogits = FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, nome da string)
Cria uma perda SparseCategoricalCrossentropy usando uma redução de perda de REDUCTION_DEFAULT e fromLogits = FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, redução de redução)
Cria uma perda SparseCategoricalCrossentropy usando getSimpleName() como o nome da perda, com Reduction.AUTO e fromLogits = FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, nome da string, redução de redução)
Cria uma perda SparseCategoricalCrossentropy com Reduction.AUTO e fromLogits = FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, String name, boolean fromLogits)
Cria um SparseCategoricalCrossentropy usando uma redução de perda de REDUCTION_DEFAULT e fromLogits = FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, booleano deLogits)
Cria uma perda SparseCategoricalCrossentropy usando getSimpleName() como o nome da perda, uma Redução de perda de REDUCTION_DEFAULT e fromLogits = FROM_LOGITS_DEFAULT .
SparseCategoricalCrossentropy (Ops tf, booleano deLogits, redução de redução)
Cria uma perda SparseCategoricalCrossentropy usando getSimpleName() como o nome da perda,
SparseCategoricalCrossentropy (Ops tf, nome da string, booleano fromLogits, redução de redução, eixo interno)
Cria uma SparseCategoricalCrossentropy

Métodos Públicos

<T estende TNumber > Operando <T>
chamada ( Operando <? estende TNumber > rótulos, Operando <T> previsões, Operando <T> sampleWeights)
Gera um Operando que calcula a perda.

Métodos herdados

Constantes

public static final int AXIS_DEFAULT

Valor constante: -1

public static final booleano FROM_LOGITS_DEFAULT

Valor constante: falso

Construtores Públicos

public SparseCategoricalCrossentropy (Ops tf)

Cria uma perda SparseCategoricalCrossentropy usando getSimpleName() como o nome da perda, uma Redução de perda de REDUCTION_DEFAULT e fromLogits = FROM_LOGITS_DEFAULT .

Parâmetros
tf o TensorFlow Ops

public SparseCategoricalCrossentropy (Ops tf, nome da string)

Cria uma perda SparseCategoricalCrossentropy usando uma redução de perda de REDUCTION_DEFAULT e fromLogits = FROM_LOGITS_DEFAULT .

Parâmetros
tf o TensorFlow Ops
nome o nome desta função de perda

public SparseCategoricalCrossentropy (Ops tf, redução de redução)

Cria uma perda SparseCategoricalCrossentropy usando getSimpleName() como o nome da perda, com Reduction.AUTO e fromLogits = FROM_LOGITS_DEFAULT .

Parâmetros
tf o TensorFlow Ops
redução Tipo de redução a ser aplicado à perda.

public SparseCategoricalCrossentropy (Ops tf, nome da string, redução de redução)

Cria uma perda SparseCategoricalCrossentropy com Reduction.AUTO e fromLogits = FROM_LOGITS_DEFAULT .

Parâmetros
tf o TensorFlow Ops
nome o nome desta função de perda
redução Tipo de redução a ser aplicado à perda.

public SparseCategoricalCrossentropy (Ops tf, String name, boolean fromLogits)

Cria um SparseCategoricalCrossentropy usando uma redução de perda de REDUCTION_DEFAULT e fromLogits = FROM_LOGITS_DEFAULT .

Parâmetros
tf o TensorFlow Ops
nome o nome desta função de perda
fromLogits Se deve interpretar as previsões como um tensor de valores logit

public SparseCategoricalCrossentropy (Ops tf, boolean deLogits)

Cria uma perda SparseCategoricalCrossentropy usando getSimpleName() como o nome da perda, uma Redução de perda de REDUCTION_DEFAULT e fromLogits = FROM_LOGITS_DEFAULT .

Parâmetros
tf o TensorFlow Ops
fromLogits Se deve interpretar as previsões como um tensor de valores logit

public SparseCategoricalCrossentropy (Ops tf, booleano deLogits, redução de redução)

Cria uma perda SparseCategoricalCrossentropy usando getSimpleName() como o nome da perda,

Parâmetros
tf o TensorFlow Ops
fromLogits Se deve interpretar as previsões como um tensor de valores logit
redução Tipo de redução a ser aplicado à perda.

public SparseCategoricalCrossentropy (Ops tf, nome da string, booleano fromLogits, redução de redução, eixo interno)

Cria uma SparseCategoricalCrossentropy

Parâmetros
tf o TensorFlow Ops
nome o nome desta função de perda
fromLogits Se deve interpretar as previsões como um tensor de valores logit
redução Tipo de redução a ser aplicado à perda.
eixo O eixo dos canais. axis=-1 corresponde ao formato de dados 'Canais por último' e axis=1 corresponde ao formato de dados 'Canais primeiro'.

Métodos Públicos

pública Operando <T> chamada ( Operando <? estende TNumber > rótulos, Operando <T> previsões, Operando <T> sampleWeights)

Gera um Operando que calcula a perda.

Se executado no modo Graph, o cálculo lançará TFInvalidArgumentException se os valores de predições estiverem fora do intervalo o [0. a 1.]. No modo ansioso, esta chamada lançará IllegalArgumentException , se os valores de predições estiverem fora do intervalo o [0. a 1.]

Parâmetros
rótulos os valores verdadeiros ou rótulos
previsões as previsões, os valores devem estar no intervalo [0. a 1.] inclusive.
sampleWeights 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], 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 pode ser transmitido para esta forma), então cada elemento de perda de previsões é dimensionado pelo valor correspondente de SampleWeights. (Nota sobre dN-1: todas as funções de perda reduzem em 1 dimensão, geralmente eixo = -1.)
Devoluções
  • a perda
Lança
Exceção de argumento ilegal se as previsões estiverem fora do intervalo [0.-1.].