torch.nn.functional.pdist
torch.nn.functional.pdist(input, p=2) -> Tensor
Computes the p-norm distance between every pair of row vectors in
   the input. This is identical to the upper triangular portion,
   excluding the diagonal, of torch.norm(input[:, None] - input,
   dim=2, p=p). This function will be faster if the rows are
   contiguous.
If input has shape N \times M then the output will have shape
   \frac{1}{2} N (N - 1).
This function is equivalent to "scipy.spatial.distance.pdist(input,
   'minkowski', p=p)" if p \in (0, \infty). When p = 0 it is
   equivalent to "scipy.spatial.distance.pdist(input, 'hamming') * M".
   When p = \infty, the closest scipy function is
   "scipy.spatial.distance.pdist(xn, lambda x, y: np.abs(x -
   y).max())".
Parameters:
      * input -- input tensor of shape N \times M.
  * **p** -- p value for the p-norm distance to calculate between
    each vector pair \in [0, \infty].
