Calcula a semelhança 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 o torna utilizável como uma função de perda em um cenário onde você tenta maximizar a proximidade entre as previsões e os alvos. Se os labels
ou as 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
Ligando com peso de amostra:
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 NONE
tipo de redução:
CosineSimilarity cosineLoss = new CosineSimilarity(tf, Reduction.NONE); Operand<TFloat32> result = cosineLoss.call(labels, predictions); // produces [-0.f, -0.999f]
Constantes
int | DEFAULT_AXIS |
Campos
Redução final pública estática | DEFAULT_REDUCTION |
Campos herdados
Construtores Públicos
CosineSimilarity (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, String name) 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 int) Cria uma perda de similaridade de cosseno usando getSimpleName() como o nome da perda e uma redução de perda de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, int [] axis) Cria uma perda de similaridade de cosseno usando getSimpleName() como o nome da perda e 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, String name, int [] axis) 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, int [] eixo, 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> |
Métodos herdados
Constantes
public static final int DEFAULT_AXIS
Campos
Redução public static final DEFAULT_REDUCTION
Construtores Públicos
public CosineSimilarity (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 | o TensorFlow Ops |
---|
public CosineSimilarity (Ops tf, String name)
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 | o TensorFlow Ops |
---|---|
nome | o nome da perda |
public CosineSimilarity (Ops tf, int axis)
Cria uma perda de similaridade de cosseno usando getSimpleName()
como o nome da perda e uma redução de perda de DEFAULT_REDUCTION
Parâmetros
tf | o TensorFlow Ops |
---|---|
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
public CosineSimilarity (Ops tf, int [] axis)
Cria uma perda de similaridade de cosseno usando getSimpleName()
como o nome da perda e uma redução de perda de DEFAULT_REDUCTION
Parâmetros
tf | o TensorFlow Ops |
---|---|
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
public CosineSimilarity (Ops tf, String name, int axis)
Cria uma perda de similaridade de cosseno usando uma redução de perda de DEFAULT_REDUCTION
Parâmetros
tf | o TensorFlow Ops |
---|---|
nome | o nome da perda |
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
public CosineSimilarity (Ops tf, String name, int [] axis)
Cria uma perda de similaridade de cosseno usando uma redução de perda de DEFAULT_REDUCTION
Parâmetros
tf | o TensorFlow Ops |
---|---|
nome | o nome da perda |
eixo | A dimensão ao longo da qual a similaridade do cosseno é calculada. |
public 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 | o TensorFlow Ops |
---|---|
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 | o TensorFlow Ops |
---|---|
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 | o TensorFlow Ops |
---|---|
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, int [] eixo, redução de redução)
Cria uma perda de similaridade de cosseno usando getSimpleName()
como o nome da perda
Parâmetros
tf | o TensorFlow Ops |
---|---|
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 | o TensorFlow Ops |
---|---|
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 | o TensorFlow Ops |
---|---|
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
pública Operando <T> chamada ( Operando <? estende TNumber > rótulos, Operando <T> previsões, Operando <T> sampleWeights)
Gera um operando que calcula a perda.
Parâmetros
rótulos | os valores verdadeiros ou rótulos |
---|---|
previsões | as previsões |
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