Spec-Zone.ru › PyTorch 2

torch.combinations

torch.combinations(input, r=2, with_replacement=False) → seq

Вычисление комбинаций длины rr заданного тензора. Поведение аналогично поведению python’s itertools.combinations при with_replacement установлено в False, и itertools.combinations_with_replacement когда with_replacement установлено в True.

Параметры
  • input (Tensor) – 1D вектор.
  • r (int, необязательно) – количество элементов для комбинирования
  • with_replacement (bool, необязательно) – разрешить дублирование в комбинации
Возвращает

Тензор, эквивалентный преобразованию всех входных тензоров в списки, выполнению itertools.combinations или itertools.combinations_with_replacement над этими списками и, наконец, преобразованию полученного списка в тензор.

Тип возвращаемого значения

Tensor

Пример:

>>> a = [1, 2, 3]
>>> list(itertools.combinations(a, r=2))
[(1, 2), (1, 3), (2, 3)]
>>> list(itertools.combinations(a, r=3))
[(1, 2, 3)]
>>> list(itertools.combinations_with_replacement(a, r=2))
[(1, 1), (1, 2), (1, 3), (2, 2), (2, 3), (3, 3)]
>>> tensor_a = torch.tensor(a)
>>> torch.combinations(tensor_a)
tensor([[1, 2],
        [1, 3],
        [2, 3]])
>>> torch.combinations(tensor_a, r=3)
tensor([[1, 2, 3]])
>>> torch.combinations(tensor_a, with_replacement=True)
tensor([[1, 1],
        [1, 2],
        [1, 3],
        [2, 2],
        [2, 3],
        [3, 3]])

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

Spec-Zone.ru

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