评价此页

CosineSimilarity#

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

沿 dim 计算 x1x_1x2x_2 之间的余弦相似度。

similarity=x1x2max(x12x22,ϵ).\text{similarity} = \dfrac{x_1 \cdot x_2}{\max(\Vert x_1 \Vert _2 \cdot \Vert x_2 \Vert _2, \epsilon)}.
参数
  • dimint, optional)– 计算余弦相似度的维度。默认为 1

  • epsfloat, optional)– 避免除以零的小值。默认为 1e-8

形状
  • Input1: (1,D,2)(\ast_1, D, \ast_2) 其中 D 在 dim 位置

  • Input2: (1,D,2)(\ast_1, D, \ast_2),维度与 x1 相同,在维度 dim 上与 x1 匹配,并在其他维度上可广播。

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

示例

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