Shortcuts

quaterion.distances.cosine module

class Cosine[source]

Bases: BaseDistance

Compute cosine similarities (and its interpretation as distances).

Note

The output range of this metric is 0 -> 1.

static distance(x: Tensor, y: Tensor) Tensor[source]

Calculate distances, i.e., the lower the value, the more similar the samples.

Parameters:
  • x – shape: (batch_size, embedding_dim)

  • y – shape: (batch_size, embedding_dim)

Returns:

Distances - shape – (batch_size,)

static distance_matrix(x: Tensor, y: Tensor | None = None) Tensor[source]

Calculate a distance matrix, i.e., distances between all possible pairs in x and y.

Parameters:
  • x – shape: (batch_size, embedding_dim)

  • y – shape: (batch_size, embedding_dim). If y is None, it assigns x to y.

Returns:

Distance matrix - shape – (batch_size, batch_size)

static similarity(x: Tensor, y: Tensor) Tensor[source]

Calculate similarities, i.e., the higher the value, the more similar the samples.

Parameters:
  • x – shape: (batch_size, embedding_dim)

  • y – shape: (batch_size, embedding_dim)

Returns:

Similarities - shape – (batch_size,)

static similarity_matrix(x: Tensor, y: Tensor | None = None) Tensor[source]

Calculate a similarity matrix, i.e., similarities between all possible pairs in x and y.

Parameters:
  • x – shape: (batch_size, embedding_dim)

  • y – shape: (batch_size, embedding_dim). If y is None, it assigns x to y.

Returns:

Similarity matrix - shape – (batch_size, batch_size)