PyTorch torch.unflatten Funktion
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-Tensordim: Dimensionsindex zum Unflattensizes: 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)
# 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)
# 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)
# 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])
Andere Erweiterungen