Calcula la similitud de coseno entre etiquetas y predicciones.
Tenga en cuenta que es un número entre -1
y 1
. Cuando es un número negativo entre -1
y 0
, 0
indica ortogonalidad y valores más cercanos a -1
indican mayor similitud. Los valores más cercanos a 1
indican una mayor disimilitud. Esto lo hace utilizable como una función de pérdida en un entorno en el que intenta maximizar la proximidad entre las predicciones y los objetivos. Si las labels
o las predictions
son un vector cero, la similitud del coseno será 0
independientemente de la proximidad entre las predicciones y los objetivos.
loss = -sum(l2Norm(labels) * l2Norm(predictions))
Uso independiente:
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
Llamando con el peso de la muestra:
Operand<TFloat32> sampleWeight = tf.constant(new float[] {0.8f, 0.2f}); Operand<TFloat32> result = cosineLoss.call(labels, predictions, sampleWeight); // produces -0.0999f
Usando el tipo de reducción SUM
:
CosineSimilarity cosineLoss = new CosineSimilarity(tf, Reduction.SUM); Operand<TFloat32> result = cosineLoss.call(labels, predictions); // produces -0.999f
Usando NONE
tipo de reducción:
CosineSimilarity cosineLoss = new CosineSimilarity(tf, Reduction.NONE); Operand<TFloat32> result = cosineLoss.call(labels, predictions); // produces [-0.f, -0.999f]
Constantes
En t | DEFAULT_AXIS |
Campos
Reducción final estática pública | DEFAULT_REDUCTION |
Campos heredados
Constructores públicos
Coseno Similitud (Ops tf) Crea una pérdida de similitud de coseno utilizando getSimpleName() como nombre de pérdida, un eje de DEFAULT_AXIS y una reducción de pérdida de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, nombre de cadena) Crea una pérdida de similitud de coseno utilizando un eje de DEFAULT_AXIS y una reducción de pérdida de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, int axis) Crea una pérdida de similitud de coseno utilizando getSimpleName() como nombre de pérdida y una reducción de pérdida de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, int [] axis) Crea una pérdida de similitud de coseno utilizando getSimpleName() como nombre de pérdida y una reducción de pérdida de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, nombre de cadena, eje int) Crea una pérdida de similitud de coseno usando una reducción de pérdida de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, String name, int [] axis) Crea una pérdida de similitud de coseno usando una reducción de pérdida de DEFAULT_REDUCTION | |
CosineSimilarity (Ops tf, Reduction Reduction ) Crea una pérdida de similitud de coseno utilizando getSimpleName() como nombre de pérdida y un eje de DEFAULT_AXIS | |
CosineSimilarity (Ops tf, nombre de cadena, reducción de reducción) Crea una pérdida de similitud de coseno utilizando un eje de DEFAULT_AXIS | |
CosineSimilarity (Ops tf, int axis, Reduction Reduction ) Crea una pérdida de similitud de coseno usando getSimpleName() como nombre de pérdida | |
CosineSimilarity (Ops tf, int [] axis, Reduction Reduction ) Crea una pérdida de similitud de coseno usando getSimpleName() como nombre de pérdida | |
CosineSimilarity (Ops tf, nombre de cadena, eje int, reducción de reducción) Crea una pérdida de similitud de coseno | |
CosineSimilarity (Ops tf, String name, int [] axis, Reduction Reduction ) Crea una pérdida de similitud de coseno |
Métodos públicos
<T extiende TNumber > Operando <T> |
Métodos heredados
Constantes
public static final int DEFAULT_AXIS
Campos
Reducción final estática pública DEFAULT_REDUCTION
Constructores públicos
public CosineSimilarity (Ops tf)
Crea una pérdida de similitud de coseno utilizando getSimpleName()
como nombre de pérdida, un eje de DEFAULT_AXIS
y una reducción de pérdida de DEFAULT_REDUCTION
Parámetros
tf | las operaciones de TensorFlow |
---|
public CosineSimilarity (Ops tf, nombre de cadena)
Crea una pérdida de similitud de coseno utilizando un eje de DEFAULT_AXIS
y una reducción de pérdida de DEFAULT_REDUCTION
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de la perdida |
public CosineSimilarity (Ops tf, int eje)
Crea una pérdida de similitud de coseno usando getSimpleName()
como nombre de pérdida y una reducción de pérdida de DEFAULT_REDUCTION
Parámetros
tf | las operaciones de TensorFlow |
---|---|
eje | Dimensión a lo largo de la cual se calcula la similitud del coseno. |
public CosineSimilarity (Ops tf, int [] axis)
Crea una pérdida de similitud de coseno utilizando getSimpleName()
como nombre de pérdida y una reducción de pérdida de DEFAULT_REDUCTION
Parámetros
tf | las operaciones de TensorFlow |
---|---|
eje | Dimensión a lo largo de la cual se calcula la similitud del coseno. |
public CosineSimilarity (Ops tf, String name, int axis)
Crea una pérdida de similitud de coseno usando una reducción de pérdida de DEFAULT_REDUCTION
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de la perdida |
eje | Dimensión a lo largo de la cual se calcula la similitud del coseno. |
public CosineSimilarity (Ops tf, String name, int [] axis)
Crea una pérdida de similitud de coseno usando una reducción de pérdida de DEFAULT_REDUCTION
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de la perdida |
eje | Dimensión a lo largo de la cual se calcula la similitud del coseno. |
public CosineSimilarity (Ops tf, Reduction Reduction )
Crea una pérdida de similitud de coseno utilizando getSimpleName()
como nombre de pérdida y un eje de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|---|
reducción | Tipo de Reducción a aplicar al siniestro. |
public CosineSimilarity (Ops tf, nombre de cadena, reducción de reducción)
Crea una pérdida de similitud de coseno utilizando un eje de DEFAULT_AXIS
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de la perdida |
reducción | Tipo de Reducción a aplicar al siniestro. |
public CosineSimilarity (Ops tf, int axis, Reduction Reduction )
Crea una pérdida de similitud de coseno usando getSimpleName()
como nombre de pérdida
Parámetros
tf | las operaciones de TensorFlow |
---|---|
eje | Dimensión a lo largo de la cual se calcula la similitud del coseno. |
reducción | Tipo de Reducción a aplicar al siniestro. |
public CosineSimilarity (Ops tf, int [] axis, Reduction Reduction )
Crea una pérdida de similitud de coseno usando getSimpleName()
como nombre de pérdida
Parámetros
tf | las operaciones de TensorFlow |
---|---|
eje | Dimensión a lo largo de la cual se calcula la similitud del coseno. |
reducción | Tipo de Reducción a aplicar al siniestro. |
public CosineSimilarity (Ops tf, String name, int axis, Reduction Reduction )
Crea una pérdida de similitud de coseno
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de la perdida |
eje | Dimensión a lo largo de la cual se calcula la similitud del coseno. |
reducción | Tipo de Reducción a aplicar al siniestro. |
public CosineSimilarity (Ops tf, String name, int [] axis, Reduction Reduction )
Crea una pérdida de similitud de coseno
Parámetros
tf | las operaciones de TensorFlow |
---|---|
nombre | el nombre de la perdida |
eje | Dimensión a lo largo de la cual se calcula la similitud del coseno. |
reducción | Tipo de Reducción a aplicar al siniestro. |
Métodos públicos
pública operando <T> llamada ( Operando <? extiende TNumber > etiquetas, operando <T> predicciones, operando <T> sampleWeights)
Genera un operando que calcula la pérdida.
Parámetros
etiquetas | los valores de verdad o etiquetas |
---|---|
predicciones | las predicciones |
sampleWeights | SampleWeights opcional actúa como un coeficiente para la pérdida. Si se proporciona un escalar, entonces la pérdida simplemente se escala por el valor dado. Si SampleWeights es un tensor de tamaño [batch_size], entonces la pérdida total para cada muestra del lote se reescala por el elemento correspondiente en el vector SampleWeights. Si la forma de SampleWeights es [batch_size, d0, .. dN-1] (o se puede transmitir a esta forma), entonces cada elemento de pérdida de las predicciones se escala por el valor correspondiente de SampleWeights. (Nota sobre dN-1: todas las funciones de pérdida se reducen en 1 dimensión, generalmente eje = -1). |
Devoluciones
- la pérdida