Rate this Page

CosineSimilarity#

class torch.nn.CosineSimilarity(dim=1, eps=1e-08)[source]#

Returns cosine similarity between x1x_1 and x2x_2, computed along dim.

similarity=x1x2max(x12x22,ϵ).\text{similarity} = \dfrac{x_1 \cdot x_2}{\max(\Vert x_1 \Vert _2 \cdot \Vert x_2 \Vert _2, \epsilon)}.
Parameters
  • dim (int, optional) – Dimension where cosine similarity is computed. Default: 1

  • eps (float, optional) – Small value to avoid division by zero. Default: 1e-8

Shape:
  • Input1: (1,D,2)(\ast_1, D, \ast_2) where D is at position dim

  • Input2: (1,D,2)(\ast_1, D, \ast_2), same number of dimensions as x1, matching x1 size at dimension dim, and broadcastable with x1 at other dimensions.

  • Output: (1,2)(\ast_1, \ast_2)

Examples

>>> input1 = torch.randn(100, 128)
>>> input2 = torch.randn(100, 128)
>>> cos = nn.CosineSimilarity(dim=1, eps=1e-6)
>>> output = cos(input1, input2)