Calcula a similaridade de cosseno entre rótulos e previsões.
Observe que é um número entre -1
e 1
. Quando é um número negativo entre -1
e 0
, 0
indica ortogonalidade e valores mais próximos de -1
indicam maior similaridade. Os valores mais próximos de 1
indicam maior dissimilaridade. Isso a torna utilizável como uma função de perda em um ambiente onde você tenta maximizar a proximidade entre previsões e alvos. Se labels
ou predictions
forem um vetor zero, a similaridade do cosseno será 0
independentemente da proximidade entre as previsões e os alvos.
loss = -sum(l2Norm(labels) * l2Norm(predictions))
Uso autônomo:
Operand<TFloat32> labels = tf.constant(new float[][] { {0.f, 1.f}, {1.f, 1.f} }); Operand<TFloat32> predictions = tf.constant(new float[][] { {1.f, 0.f}, {1.f, 1.f} }); CosineSimilarity cosineLoss = new CosineSimilarity(tf); Operand<TFloat32> result = cosineLoss.call(labels, predictions); // produces -0.5
Chamando com peso amostral:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.8f, 0.2f}); Operand<TFloat32> result = cosineLoss.call(labels, predictions, sampleWeight); // produces -0.0999f
Usando o tipo de redução SUM
:
CosineSimilarity cosineLoss = new CosineSimilarity(tf, Reduction.SUM); Operand<TFloat32> result = cosineLoss.call(labels, predictions); // produces -0.999f
Usando o tipo de redução NONE
:
CosineSimilarity cosineLoss = new CosineSimilarity(tf, Reduction.NONE); Operand<TFloat32> result = cosineLoss.call(labels, predictions); // produces [-0.f, -0.999f]
Constantes
interno | DEFAULT_AXIS |
Campos
Redução final estática pública | DEFAULT_REDUCTION |
Campos Herdados
Construtores Públicos
CossenoSimilaridade (Ops tf) Cria uma perda de similaridade de cosseno usando getSimpleName() como o nome da perda, um eixo de DEFAULT_AXIS e uma redução de perda de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, nome da string) Cria uma perda de similaridade de cosseno usando um eixo de DEFAULT_AXIS e uma redução de perda de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, eixo interno) Cria uma perda de similaridade de cosseno usando getSimpleName() como nome de perda e uma redução de perda de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, eixo int[]) Cria uma perda de similaridade de cosseno usando getSimpleName() como nome de perda e uma redução de perda de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, nome da string, eixo interno) Cria uma perda de similaridade de cosseno usando uma redução de perda de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, nome da string, eixo int[]) Cria uma perda de similaridade de cosseno usando uma redução de perda de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, redução de redução ) Cria uma perda de similaridade de cosseno usando getSimpleName() como o nome da perda e um eixo de DEFAULT_AXIS | |
CosineSimilarity (Ops tf, nome da string, redução de redução ) Cria uma perda de similaridade de cosseno usando um eixo de DEFAULT_AXIS | |
CosineSimilarity (Ops tf, eixo interno, redução de redução ) Cria uma perda de similaridade de cosseno usando getSimpleName() como o nome da perda | |
CosineSimilarity (Ops tf, eixo int[], redução de redução ) Cria uma perda de similaridade de cosseno usando getSimpleName() como o nome da perda | |
CosineSimilarity (Ops tf, nome da string, eixo interno, redução de redução ) Cria uma perda de similaridade de cosseno | |
CosineSimilarity (Ops tf, nome da string, eixo int[], redução de redução ) Cria uma perda de similaridade de cosseno |
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
público estático final int DEFAULT_AXIS
Campos
Redução final estática pública DEFAULT_REDUCTION
Construtores Públicos
cossenoSimilaridade pública (Ops tf)
Cria uma perda de similaridade de cosseno usando getSimpleName()
como o nome da perda, um eixo de DEFAULT_AXIS
e uma redução de perda de DEFAULT_REDUCTION
Parâmetros
TF | as operações do TensorFlow |
---|
public CosineSimilarity (Ops tf, nome da string)
Cria uma perda de similaridade de cosseno usando um eixo de DEFAULT_AXIS
e uma redução de perda de DEFAULT_REDUCTION
Parâmetros
TF | as operações do TensorFlow |
---|---|
nome | o nome da perda |
public CosineSimilarity (Ops tf, eixo int)
Cria uma perda de similaridade de cosseno usando getSimpleName()
como nome de perda e uma redução de perda de DEFAULT_REDUCTION
Parâmetros
TF | as operações do TensorFlow |
---|---|
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
public CosineSimilarity (Ops tf, eixo int[])
Cria uma perda de similaridade de cosseno usando getSimpleName()
como nome de perda e uma redução de perda de DEFAULT_REDUCTION
Parâmetros
TF | as operações do TensorFlow |
---|---|
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
public CosineSimilarity (Ops tf, nome da string, eixo interno)
Cria uma perda de similaridade de cosseno usando uma redução de perda de DEFAULT_REDUCTION
Parâmetros
TF | as operações do TensorFlow |
---|---|
nome | o nome da perda |
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
public CosineSimilarity (Ops tf, nome da string, eixo int[])
Cria uma perda de similaridade de cosseno usando uma redução de perda de DEFAULT_REDUCTION
Parâmetros
TF | as operações do TensorFlow |
---|---|
nome | o nome da perda |
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
público CosineSimilarity (Ops tf, redução de redução )
Cria uma perda de similaridade de cosseno usando getSimpleName()
como o nome da perda e um eixo de DEFAULT_AXIS
Parâmetros
TF | as operações do TensorFlow |
---|---|
redução | Tipo de Redução a aplicar à perda. |
public CosineSimilarity (Ops tf, nome da string, redução de redução )
Cria uma perda de similaridade de cosseno usando um eixo de DEFAULT_AXIS
Parâmetros
TF | as operações do TensorFlow |
---|---|
nome | o nome da perda |
redução | Tipo de Redução a aplicar à perda. |
public CosineSimilarity (Ops tf, eixo int, redução de redução )
Cria uma perda de similaridade de cosseno usando getSimpleName()
como o nome da perda
Parâmetros
TF | as operações do TensorFlow |
---|---|
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
redução | Tipo de Redução a aplicar à perda. |
public CosineSimilarity (Ops tf, eixo int[], redução de redução )
Cria uma perda de similaridade de cosseno usando getSimpleName()
como o nome da perda
Parâmetros
TF | as operações do TensorFlow |
---|---|
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
redução | Tipo de Redução a aplicar à perda. |
public CosineSimilarity (Ops tf, nome da string, eixo interno, redução de redução )
Cria uma perda de similaridade de cosseno
Parâmetros
TF | as operações do TensorFlow |
---|---|
nome | o nome da perda |
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
redução | Tipo de Redução a aplicar à perda. |
public CosineSimilarity (Ops tf, nome da string, eixo int[], redução de redução )
Cria uma perda de similaridade de cosseno
Parâmetros
TF | as operações do TensorFlow |
---|---|
nome | o nome da perda |
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
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 das 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