Fonction PyTorch torch.block_diag


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

torch.block_diagest une fonction de PyTorch utilisée pour créer une matrice diagonale par blocs. Elle dispose plusieurs tenseurs d'entrée en blocs diagonaux le long de la diagonale pour former une matrice diagonale par blocs plus grande.

Définition de fonction

torch.block_diag(*tensors)

Exemple d'utilisation

Exemple

import torch

# Créer une matrice diagonale par blocs
a = torch.tensor([[1, 2], [3, 4]])
b = torch.tensor([[5, 6, 7]])
c = torch.tensor([[8], [9]])

result = torch.block_diag(a, b, c)
print("Matrice diagonale par blocs :")
print(result)
# tensor([[1, 2, 0, 0, 0],
#         [3, 4, 0, 0, 0],
#         [0, 0, 5, 6, 7],
#         [0, 0, 8, 0, 0],
#         [0, 0, 9, 0, 0]])

# Plusieurs blocs de matrices
m1 = torch.eye(2)
m2 = torch.eye(3)
result2 = torch.block_diag(m1, m2)
print("Matrice diagonale par blocs de deux matrices identité :")
print(result2)

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

Autres extensions