Función PyTorch torch.slogdet


Pytorch torch 参考手册Manual de referencia de Pytorch torch

torch.slogdetEs una función de PyTorch utilizada para calcular el signo y el logaritmo del determinante de una matriz. Es más numéricamente estable para casos donde el determinante es muy grande o muy pequeño.

Definición de la función

torch.slogdet(input, out=None)

Parámetros:

  • input(Tensor): matriz cuadrada de entrada.
  • out(tuple, opcional): tupla de salida.

Valor de retorno:

  • tuple: Devuelve una tupla (signo, valor logarítmico).

Ejemplo de uso

Ejemplo

import torch

# Crear una matriz cuadrada
A = torch.tensor([[1.0, 2.0, 3.0],
                  [0.0, 4.0, 5.0],
                  [0.0, 0.0, 6.0]])

# Calcular el signo y el logaritmo del determinante
sign, logdet = torch.slogdet(A)

print("Matriz A:")
print(A)
print("nSigno del determinante:", sign)
print("Logaritmo del determinante:", logdet)
print("Determinante:", sign * torch.exp(logdet))

El resultado de salida es:

矩阵 A:
tensor([[1., 2., 3.],
        [0., 4., 5.],
        [0., 0., 6.]])
行列式符号: tensor(1.)
行列式对数: tensor(3.5835)
行列式: tensor(24.)

Pytorch torch 参考手册Manual de referencia de Pytorch torch

Otras extensiones