Fonction torch.unflatten de PyTorch


Pytorch torch 参考手册Manuel de référence PyTorch torch

torch.unflattenest une fonction de PyTorch utilisée pour déplier des dimensions. Elle étend les dimensions existantes d'un tenseur en plusieurs dimensions afin de reconstruire les formes du tenseur.

Définition de fonction

torch.unflatten(input, dim, sizes)

Description des paramètres :

  • input: tenseur d’entrée
  • dim: Indice de la dimension à déplier
  • sizes: Tuple des tailles après dépliage

Exemples d'utilisation

Exemple

import torch

# Créer un tenseur unidimensionnel
x = torch.arange(12)

# Déplier en une matrice 3x4
y = torch.unflatten(x, dim=0, sizes=(3, 4))
print(y.shape)
print(y)

Le résultat de sortie est:

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

Exemple

import torch

# Créer un tenseur aplati
x = torch.randn(24)

# Déplier en un tenseur tridimensionnel 2x3x4
y = torch.unflatten(x, dim=0, sizes=(2, 3, 4))
print(y.shape)

Le résultat de sortie est:

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

Exemple

import torch

# Créer un tenseur aplati
x = torch.randn(12)

# On peut spécifier la dimension par son nom
x = x.rename('N')
y = torch.unflatten(x, dim='N', sizes=(3, 4))
print(y.shape)

Le résultat de sortie est:

torch.Size([3, 4])

Pytorch torch 参考手册Manuel de référence PyTorch torch

Autres extensions