CategoricalCrossentropy

public class CategoricalCrossentropy

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

Use esta função de perda de entrecropia cruzada quando houver duas ou mais classes de rótulo. Esperamos que os rótulos sejam fornecidos em uma representação one_hot. Se você deseja fornecer rótulos como inteiros, use SparseCategoricalCrossentropy loss. Deve haver # classes valores de ponto flutuante por recurso.

Uso autônomo:

    Operand<TFloat32> labels =
        tf.constant(new float[][] { {0, 1, 0}, {0, 0, 1} });
    Operand<TFloat32> predictions =
        tf.constant(new float[][] { {0.05f, 0.95f, 0f}, {0.1f, 0.8f, 0.1f} });
    CategoricalCrossentropy cce = new CategoricalCrossentropy(tf);
    Operand<TFloat32> result = cce.call(labels, predictions);
    // produces 1.177
 

Ligando com peso de amostra:

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

Usando o tipo de redução SUM :

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

Usando NONE tipo de redução:

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

Constantes

int DEFAULT_AXIS
boleano FROM_LOGITS_DEFAULT
flutuador LABEL_SMOOTHING_DEFAULT

Campos herdados

Construtores Públicos

CategoricalCrossentropy (Ops tf)
Cria uma perda de entropia cruzada categórica usando getSimpleName() como nome da perda, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing, uma redução de perda de REDUCTION_DEFAULT e um eixo de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, nome da string)
Cria uma perda de entropia cruzada categórica usando FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing, uma redução de perda de REDUCTION_DEFAULT e um eixo de DEFAULT_AXIS
Crossentropia categórica (Ops tf, redução de redução)
Cria uma perda de entropia cruzada categórica usando getSimpleName() como o nome da perda, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing e um eixo de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, nome da string, redução de redução)
Cria uma entropia cruzada categórica Loss FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing e um eixo de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, boolean fromLogits)
Cria uma perda de entropia cruzada categórica usando getSimpleName() como o nome da perda, LABEL_SMOOTHING_DEFAULT para labelSmoothing, uma redução de perda de REDUCTION_DEFAULT e um eixo de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, String name, boolean fromLogits)
Cria uma perda de entropia cruzada categórica usando LABEL_SMOOTHING_DEFAULT para labelSmoothing, uma redução de perda de REDUCTION_DEFAULT e um eixo de canal de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing)
Cria uma perda de entropia cruzada categórica usando getSimpleName() como o nome da perda, uma redução de perda de REDUCTION_DEFAULT e um eixo de canal de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, String name, boolean fromLogits, float labelSmoothing)
Cria uma perda de entropia cruzada categórica usando uma redução de perda de REDUCTION_DEFAULT e um eixo de canal de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing, redução de redução)
Cria uma perda de entropia cruzada categórica usando getSimpleName() como o nome da perda e um eixo de canal de DEFAULT_AXIS
CategoricalCrossentropy (Ops tf, String name, boolean fromLogits, float labelSmoothing, redução de redução, eixo interno)
Cria uma perda de entropia cruzada categórica

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 DEFAULT_AXIS

Valor constante: -1

public static final booleano FROM_LOGITS_DEFAULT

Valor constante: falso

flutuante público estático final LABEL_SMOOTHING_DEFAULT

Valor constante: 0,0

Construtores Públicos

public CategoricalCrossentropy (Ops tf)

Cria uma perda de entropia cruzada categórica usando getSimpleName() como o nome da perda, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing, uma redução de perda de REDUCTION_DEFAULT e um eixo de DEFAULT_AXIS

Parâmetros
tf o TensorFlow Ops

public CategoricalCrossentropy (Ops tf, nome da string)

Cria uma perda de entropia cruzada categórica usando FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing, uma redução de perda de REDUCTION_DEFAULT e um eixo de DEFAULT_AXIS

Parâmetros
tf o TensorFlow Ops
nome o nome desta perda

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

Cria uma perda de entropia cruzada categórica usando getSimpleName() como o nome da perda, FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing e um eixo de DEFAULT_AXIS

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

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

Cria uma entropia cruzada categórica Loss FROM_LOGITS_DEFAULT para fromLogits, LABEL_SMOOTHING_DEFAULT para labelSmoothing e um eixo de DEFAULT_AXIS

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

public CategoricalCrossentropy (Ops tf, boolean fromLogits)

Cria uma perda de entropia cruzada categórica usando getSimpleName() como o nome da perda, LABEL_SMOOTHING_DEFAULT para labelSmoothing, uma redução de perda de REDUCTION_DEFAULT e um eixo de DEFAULT_AXIS

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

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

Cria uma perda de entropia cruzada categórica usando LABEL_SMOOTHING_DEFAULT para labelSmoothing, uma redução de perda de REDUCTION_DEFAULT e um eixo de canal de DEFAULT_AXIS

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

public CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing)

Cria uma perda de entropia cruzada categórica usando getSimpleName() como o nome da perda, uma redução de perda de REDUCTION_DEFAULT e um eixo de canal de DEFAULT_AXIS

Parâmetros
tf o TensorFlow Ops
fromLogits Se deve interpretar as previsões como um tensor de valores logit
labelSmoothing Flutue em [0, 1] . Quando > 0 , os valores dos rótulos são suavizados, o que significa que a confiança nos valores dos rótulos é reduzida. por exemplo, labelSmoothing=0.2 significa que usaremos um valor de 0.1 para o rótulo 0 e 0.9 para o rótulo 1

public CategoricalCrossentropy (Ops tf, String name, boolean fromLogits, float labelSmoothing)

Cria uma perda de entropia cruzada categórica usando uma redução de perda de REDUCTION_DEFAULT e um eixo de canal de DEFAULT_AXIS

Parâmetros
tf o TensorFlow Ops
nome o nome desta perda
fromLogits Se deve interpretar as previsões como um tensor de valores logit
labelSmoothing Flutue em [0, 1] . Quando > 0 , os valores do rótulo são suavizados, o que significa que a confiança nos valores do rótulo é relaxada. por exemplo, labelSmoothing=0.2 significa que usaremos um valor de 0.1 para o rótulo 0 e 0.9 para o rótulo 1

public CategoricalCrossentropy (Ops tf, boolean fromLogits, float labelSmoothing, redução de redução)

Cria uma perda de entropia cruzada categórica usando getSimpleName() como o nome da perda e um eixo de canal de DEFAULT_AXIS

Parâmetros
tf o TensorFlow Ops
fromLogits Se deve interpretar as previsões como um tensor de valores logit
labelSmoothing Flutue em [0, 1] . Quando > 0 , os valores do rótulo são suavizados, o que significa que a confiança nos valores do rótulo é relaxada. por exemplo, x=0.2 significa que usaremos um valor de 0.1 para o rótulo 0 e 0.9 para o rótulo 1
redução Tipo de redução a ser aplicado à perda.

public CategoricalCrossentropy (Ops tf, String name, boolean fromLogits, float labelSmoothing, redução de redução, eixo interno)

Cria uma perda de entropia cruzada categórica

Parâmetros
tf o TensorFlow Ops
nome o nome desta perda
fromLogits Se deve interpretar as previsões como um tensor de valores logit
labelSmoothing Flutue em [0, 1] . Quando > 0 , os valores do rótulo são suavizados, o que significa que a confiança nos valores do rótulo é relaxada. por exemplo, labelSmoothing=0.2 significa que usaremos um valor de 0.1 para o rótulo 0 e 0.9 para o rótulo 1
redução Tipo de redução a ser aplicado à perda.
eixo O eixo dos canais. axis=-1 corresponde ao formato de dados "Últimos canais" e axis=1 corresponde ao formato de dados "Canais primeiro". CHANNELS_LAST e CHANNELS_FIRST
Lança
Exceção de argumento ilegal se labelSmoothing não está no intervalo inclusivo de 0. - 1.

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 transmitida 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.].