quaterion.distances.base_distance module¶
- class BaseDistance[source]¶
Bases:
object
Provides a base class that any distance metric should implement.
- 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)