CosineSimilarity — PyTorch 2.7 documentation (original) (raw)
class torch.nn.CosineSimilarity(dim=1, eps=1e-08)[source][source]¶
Returns cosine similarity between x1x_1 and x2x_2, computed along dim.
similarity=x1⋅x2max(∥x1∥2⋅∥x2∥2,ϵ).\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)