Функция torch.unflatten в PyTorch


Pytorch torch 参考手册Справочное руководство PyTorch torch

torch.unflatten— это функция в PyTorch, используемая для разуплотнения размерностей. Она разворачивает существующие размерности тензора в несколько размерностей, чтобы восстановить форму тензора.

Определение функции

torch.unflatten(input, dim, sizes)

Описание параметров:

  • input: Входной тензор
  • dim: индекс размерности для разуплотнения
  • sizes: кортеж размеров после разуплотнения

Примеры использования

Пример

import torch

# Создать одномерный тензор
x = torch.arange(12)

# Развернуть в матрицу 3x4
y = torch.unflatten(x, dim=0, sizes=(3, 4))
print(y.shape)
print(y)

Результат вывода:

torch.Size([3, 4])
tensor([[ 0,  1,  2,  3],
        [ 4,  5,  6,  7],
        [ 8,  9, 10, 11]])

Пример

import torch

# Создать уплощённый тензор
x = torch.randn(24)

# Развернуть в трёхмерный тензор 2x3x4
y = torch.unflatten(x, dim=0, sizes=(2, 3, 4))
print(y.shape)

Результат вывода:

torch.Size([2, 3, 4])

Пример

import torch

# Создать уплощённый тензор
x = torch.randn(12)

# Можно указать размерность по имени
x = x.rename('N')
y = torch.unflatten(x, dim='N', sizes=(3, 4))
print(y.shape)

Результат вывода:

torch.Size([3, 4])

Pytorch torch 参考手册Справочное руководство PyTorch torch

Другие расширения