PyTorch torch.unflatten Funktion


Pytorch torch 参考手册PyTorch torch-Referenzhandbuch

torch.unflattenist eine Funktion in PyTorch, die zum Unflatten von Dimensionen verwendet wird. Sie erweitert vorhandene Dimensionen in einem Tensor zu mehreren Dimensionen, um Tensorformen zu rekonstruieren.

Funktionsdefinition

torch.unflatten(input, dim, sizes)

Parameterbeschreibung:

  • input: Eingabe-Tensor
  • dim: Dimensionsindex zum Unflatten
  • sizes: Tupel der Größen nach dem Unflatten

Anwendungsbeispiele

Beispiel

import torch

# Einen eindimensionalen Tensor erstellen
x = torch.arange(12)

# In eine 3x4-Matrix unflatten
y = torch.unflatten(x, dim=0, sizes=(3, 4))
print(y.shape)
print(y)

Das Ausgabeergebnis ist:

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

Beispiel

import torch

# Einen abgeflachten Tensor erstellen
x = torch.randn(24)

# In einen dreidimensionalen 2x3x4-Tensor unflatten
y = torch.unflatten(x, dim=0, sizes=(2, 3, 4))
print(y.shape)

Das Ausgabeergebnis ist:

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

Beispiel

import torch

# Einen abgeflachten Tensor erstellen
x = torch.randn(12)

# Die Dimension kann über den Namen angegeben werden
x = x.rename('N')
y = torch.unflatten(x, dim='N', sizes=(3, 4))
print(y.shape)

Das Ausgabeergebnis ist:

torch.Size([3, 4])

Pytorch torch 参考手册PyTorch torch-Referenzhandbuch

Andere Erweiterungen