Función torch.diagflat de PyTorch
Manual de referencia de Pytorch torch
torch.diagflatEs una función de PyTorch que se utiliza para crear una matriz diagonal aplanada. Independientemente de si la entrada es unidimensional o multidimensional, se aplana y se utiliza como elementos de la diagonal.
Definición de la función
torch.diagflat(input, diagonal=0)
Descripción de parámetros:
input: tensor de entrada, se aplanarádiagonal: índice de la diagonal
Ejemplo de uso
Ejemplo
import torch
# Crear un tensor unidimensional
x = torch.tensor([1, 2, 3])
# Crear una matriz diagonal aplanada
y = torch.diagflat(x)
print(y)
# Crear un tensor unidimensional
x = torch.tensor([1, 2, 3])
# Crear una matriz diagonal aplanada
y = torch.diagflat(x)
print(y)
El resultado es:
tensor([[1, 0, 0],
[0, 2, 0],
[0, 0, 3]])
Ejemplo
import torch
# Crear un tensor bidimensional
x = torch.tensor([[1, 2], [3, 4]])
# Se aplanará a [1,2,3,4], creando una matriz diagonal de 4x4
y = torch.diagflat(x)
print(y)
# Crear un tensor bidimensional
x = torch.tensor([[1, 2], [3, 4]])
# Se aplanará a [1,2,3,4], creando una matriz diagonal de 4x4
y = torch.diagflat(x)
print(y)
El resultado es:
tensor([[1, 0, 0, 0],
[0, 2, 0, 0],
[0, 0, 3, 0],
[0, 0, 0, 4]])
Otras extensiones