# PairwiseDistance¶

class torch.nn.PairwiseDistance(p=2.0, eps=1e-06, keepdim=False)[source]

Computes the pairwise distance between input vectors, or between columns of input matrices.

Distances are computed using p-norm, with constant eps added to avoid division by zero if p is negative, i.e.:

$\mathrm{dist}\left(x, y\right) = \left\Vert x-y + \epsilon e \right\Vert_p,$

where $e$ is the vector of ones and the p-norm is given by.

$\Vert x \Vert _p = \left( \sum_{i=1}^n \vert x_i \vert ^ p \right) ^ {1/p}.$
Parameters:
• p (real, optional) – the norm degree. Can be negative. Default: 2

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

• keepdim (bool, optional) – Determines whether or not to keep the vector dimension. Default: False

Shape:
• Input1: $(N, D)$ or $(D)$ where N = batch dimension and D = vector dimension

• Input2: $(N, D)$ or $(D)$, same shape as the Input1

• Output: $(N)$ or $()$ based on input dimension. If keepdim is True, then $(N, 1)$ or $(1)$ based on input dimension.

Examples::
>>> pdist = nn.PairwiseDistance(p=2)
>>> input1 = torch.randn(100, 128)
>>> input2 = torch.randn(100, 128)
>>> output = pdist(input1, input2)