Función PyTorch torch.unflatten


Pytorch torch 参考手册Manual de referencia de Pytorch torch

torch.unflattenEs una función de PyTorch que se utiliza para expandir dimensiones. Expande una dimensión existente de un tensor en múltiples dimensiones, para reconstruir la forma del tensor.

Definición de la función

torch.unflatten(input, dim, sizes)

Descripción de parámetros:

  • input: tensor de entrada
  • dim: índice de la dimensión a expandir
  • sizes: tupla de dimensiones después de expandir

Ejemplo de uso

Ejemplo

import torch

# Crear un tensor unidimensional
x = torch.arange(12)

# Expandir a una matriz de 3x4
y = torch.unflatten(x, dim=0, sizes=(3, 4))
print(y.shape)
print(y)

El resultado de salida es:

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

Ejemplo

import torch

# Crear un tensor aplanado
x = torch.randn(24)

# Expandir a un tensor tridimensional de 2x3x4
y = torch.unflatten(x, dim=0, sizes=(2, 3, 4))
print(y.shape)

El resultado de salida es:

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

Ejemplo

import torch

# Crear un tensor aplanado
x = torch.randn(12)

# Se puede especificar la dimensión por nombre
x = x.rename('N')
y = torch.unflatten(x, dim='N', sizes=(3, 4))
print(y.shape)

El resultado de salida es:

torch.Size([3, 4])

Pytorch torch 参考手册Manual de referencia de Pytorch torch

Otras extensiones