Función PyTorch torch.lu_solve
Manual de referencia de Pytorch torch
torch.lu_solveEs una función de PyTorch que utiliza la descomposición LU para resolver sistemas de ecuaciones lineales. Utiliza la descomposición LU ya calculada para resolver eficientemente AX = B.
Definición de la función
torch.lu_solve(B, LU, pivots, out=None)
Parámetros:
B(Tensor): la matriz o vector del lado derecho.LU(Tensor): la matriz obtenida de la descomposición LU.pivots(Tensor): los índices de pivote de la descomposición LU.out(Tensor, opcional): el tensor de salida.
Valor de retorno:
torch.Tensor: Devuelve la solución del sistema de ecuaciones lineales.
Ejemplo de uso
Ejemplo
import torch
# Crear la matriz y el vector del lado derecho
A = torch.tensor([[1.0, 2.0, 3.0],
[4.0, 5.0, 6.0],
[7.0, 8.0, 9.0]], dtype=torch.float64)
B = torch.tensor([14.0, 32.0, 50.0], dtype=torch.float64)
# Descomposición LU
LU, pivots = torch.lu(A)
# Resolver usando la descomposición LU
X = torch.lu_solve(B, LU, pivots)
print("Matriz A:")
print(A)
print("\nVector B del lado derecho:")
print(B)
print("\nSolución X:")
print(X)
print("\nComprobación: A @ X =")
print(A @ X)
# Crear la matriz y el vector del lado derecho
A = torch.tensor([[1.0, 2.0, 3.0],
[4.0, 5.0, 6.0],
[7.0, 8.0, 9.0]], dtype=torch.float64)
B = torch.tensor([14.0, 32.0, 50.0], dtype=torch.float64)
# Descomposición LU
LU, pivots = torch.lu(A)
# Resolver usando la descomposición LU
X = torch.lu_solve(B, LU, pivots)
print("Matriz A:")
print(A)
print("\nVector B del lado derecho:")
print(B)
print("\nSolución X:")
print(X)
print("\nComprobación: A @ X =")
print(A @ X)
El resultado de salida es:
矩阵 A:
tensor([[1., 2., 3.],
[4., 5., 6.],
[7., 8., 9.]], dtype=torch.float64)
右侧向量 B:
tensor([14., 32., 50.], dtype=torch.float64)
解 X:
tensor([1., 2., 3.], dtype=torch.float64)
验证: A @ X =
tensor([14., 32., 50.], dtype=torch.float64)
Otras extensiones