Spec-Zone.ru › PyTorch 2.14

torch.squeeze

torch.squeeze(input: Tensor, dim: int | List[int] | None) → Tensor

Возвращает тензор, из которого удалены все указанные измерения input размера 1.

Например, если input имеет форму: (A×1×B×C×1×D)(A \times 1 \times B \times C \times 1 \times D), то input.squeeze() будет иметь форму: (A×B×C×D)(A \times B \times C \times D).

Если указан dim, операция squeeze выполняется только для заданных измерений. Если input имеет форму: (A×1×B)(A \times 1 \times B), squeeze(input, 0) оставляет тензор без изменений, а squeeze(input, 1) сжимает тензор до формы (A×B)(A \times B).

Примечание

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

Предупреждение

Если размер пакетного измерения тензора равен 1, squeeze(input) также удалит пакетное измерение, что может привести к неожиданным ошибкам. Указывайте только те измерения, которые требуется сжать.

Параметры:
  • input (Тензор) – входной тензор.
  • dim (int или tuple из целых чисел, необязательный) –

    если задан, входные данные будут сжаты

    только в указанных измерениях.

    Изменено в версии 2.0: dim теперь принимает кортежи измерений.

Пример:

>>> x = torch.zeros(2, 1, 2, 1, 2)
>>> x.size()
torch.Size([2, 1, 2, 1, 2])
>>> y = torch.squeeze(x)
>>> y.size()
torch.Size([2, 2, 2])
>>> y = torch.squeeze(x, 0)
>>> y.size()
torch.Size([2, 1, 2, 1, 2])
>>> y = torch.squeeze(x, 1)
>>> y.size()
torch.Size([2, 2, 1, 2])
>>> y = torch.squeeze(x, (1, 2, 3))
torch.Size([2, 2, 2])

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

Spec-Zone.ru

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