Spec-Zone.ru › PyTorch 2.14

torch.unique_consecutive

torch.unique_consecutive(*args, **kwargs) [исходный код]

Удаляет все элементы, кроме первого, из каждой последовательной группы эквивалентных элементов.

Примечание

Эта функция отличается от torch.unique() тем, что удаляет только последовательные повторяющиеся значения. Эта семантика аналогична std::unique в C++.

Параметры:
  • input (Tensor) – входной тензор
  • return_inverse (bool) – следует ли также возвращать индексы, указывающие, куда попали элементы исходного входного тензора в возвращаемом списке уникальных элементов.
  • return_counts (bool) – следует ли также возвращать количество вхождений каждого уникального элемента.
  • dim (int) – размерность, для которой выполняется поиск уникальных элементов. Если None, возвращаются уникальные элементы уплощённого входного тензора. Значение по умолчанию: None
Возвращает:

Тензор или кортеж тензоров, содержащий

  • output (Tensor): выходной список уникальных скалярных элементов.
  • inverse_indices (Tensor): (необязательно) если return_inverse равно True, будет дополнительно возвращён тензор (той же формы, что и входной), содержащий индексы, указывающие, каким элементам выходного тензора соответствуют элементы исходного входного тензора; в противном случае функция вернёт только один тензор.
  • counts (Tensor): (необязательно) если return_counts равно True, будет дополнительно возвращён тензор (той же формы, что и output или output.size(dim), если задан dim), содержащий количество вхождений каждого уникального значения или тензора.
Тип возвращаемого значения:

(Tensor, Tensor (необязательно), Tensor (необязательно))

Пример:

>>> x = torch.tensor([1, 1, 2, 2, 3, 1, 1, 2])
>>> output = torch.unique_consecutive(x)
>>> output
tensor([1, 2, 3, 1, 2])

>>> output, inverse_indices = torch.unique_consecutive(x, return_inverse=True)
>>> output
tensor([1, 2, 3, 1, 2])
>>> inverse_indices
tensor([0, 0, 1, 1, 2, 3, 3, 4])

>>> output, counts = torch.unique_consecutive(x, return_counts=True)
>>> output
tensor([1, 2, 3, 1, 2])
>>> counts
tensor([2, 2, 1, 2, 1])

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

Spec-Zone.ru

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