Spec-Zone.ru › PyTorch 1

torch.cdist

torch.cdist(x1, x2, p=2.0, compute_mode='use_mm_for_euclid_dist_if_necessary') [source]

Вычисляет пакетную p-норму расстояния между каждой парой двух наборов векторов-строк.

Параметры:
  • x1 (Тензор) – входной тензор формы B×P×MB \times P \times M.
  • x2 (Тензор) – входной тензор формы B×R×MB \times R \times M.
  • p (float) – значение p для p-нормы расстояния для расчёта между каждой парой векторов ∈[0,∞]\in [0, \infty].
  • compute_mode (str) – ‘use_mm_for_euclid_dist_if_necessary’ - будет использовать подход матричного умножения для вычисления евклидового расстояния (p = 2), если P > 25 или R > 25 ‘use_mm_for_euclid_dist’ - всегда будет использовать подход матричного умножения для вычисления евклидового расстояния (p = 2) ‘donot_use_mm_for_euclid_dist’ - никогда не будет использовать подход матричного умножения для вычисления евклидового расстояния (p = 2) По умолчанию: use_mm_for_euclid_dist_if_necessary.
Возвращаемое значение:

Тензор

Если у x1 форма B×P×MB \times P \times M и у x2 форма B×R×MB \times R \times M, то результат будет иметь форму B×P×RB \times P \times R.

Эта функция эквивалентна scipy.spatial.distance.cdist(input,’minkowski’, p=p) если p∈(0,∞)p \in (0, \infty). Когда p=0p = 0 она эквивалентна scipy.spatial.distance.cdist(input, ‘hamming’) * M. Когда p=∞p = \infty, наиболее близкой функцией scipy является scipy.spatial.distance.cdist(xn, lambda x, y: np.abs(x - y).max()).

Пример

>>> a = torch.tensor([[0.9041,  0.0196], [-0.3108, -2.4423], [-0.4821,  1.059]])
>>> a
tensor([[ 0.9041,  0.0196],
        [-0.3108, -2.4423],
        [-0.4821,  1.0590]])
>>> b = torch.tensor([[-2.1763, -0.4713], [-0.6986,  1.3702]])
>>> b
tensor([[-2.1763, -0.4713],
        [-0.6986,  1.3702]])
>>> torch.cdist(a, b, p=2)
tensor([[3.1193, 2.0959],
        [2.7138, 3.8322],
        [2.2830, 0.3791]])

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/1.13/generated/torch.cdist.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API