mindspore.ops.Cdist

class mindspore.ops.Cdist(p=2.0)[source]

Computes batched the p-norm distance between each pair of the two collections of row vectors.

Refer to mindspore.ops.cdist() for more details.

Parameters

p (float, optional) – P value for the p-norm distance to calculate between each vector pair, P ∈ [0,∞]. Default: 2.0.

Inputs:
  • input_x (Tensor) - Input tensor of shape \((B, P, M)\). When \(B\) is equal to 0, it means this dimension can be ignored, i.e. shape of the tensor is \((P, M)\).

  • input_y (Tensor) - Input tensor of shape \((B, R, M)\) with the same dtype as input_x.

Outputs:

Tensor, has the same dtype as input_x, which shape is \((B, P, R)\).

Supported Platforms:

Ascend GPU CPU

Examples

>>> import numpy as np
>>> import mindspore
>>> from mindspore import Tensor, ops
>>> input_x = Tensor(np.array([[[1.0, 1.0], [2.0, 2.0]]]).astype(np.float32))
>>> input_y = Tensor(np.array([[[3.0, 3.0], [3.0, 3.0]]]).astype(np.float32))
>>> op = ops.Cdist(p=2.0)
>>> output = op(input_x, input_y)
>>> print(output)
[[[2.8284273 2.8284273]
  [1.4142137 1.4142137]]]