Fonction torch.lu_solve de PyTorch
Manuel de référence PyTorch torch
torch.lu_solveCette fonction utilise la décomposition LU dans PyTorch pour résoudre des équations linéaires. Elle résout efficacement AX = B en utilisant la décomposition LU déjà calculée.
Définition de fonction
torch.lu_solve(B, LU, pivots, out=None)
Parameters:
B(Tensor) : La matrice ou le vecteur du membre de droite.LU(Tensor) : La matrice obtenue à partir de la décomposition LU.pivots(Tensor) : Les indices des pivots de la décomposition LU.out(Tensor, optionnel) : Tenseur de sortie.
Valeur de retour:
torch.Tensor: Renvoie la solution du système d'équations linéaires.
Exemple d'utilisation
Exemple
import torch
# Créer la matrice et le vecteur du membre de droite
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)
# Décomposition LU
LU, pivots = torch.lu(A)
# Résoudre à l'aide de la décomposition LU
X = torch.lu_solve(B, LU, pivots)
print("Matrice A :")
print(A)
print("\nVecteur du membre de droite B :")
print(B)
print("\nSolution X :")
print(X)
print("\nVérification : A @ X =")
print(A @ X)
# Créer la matrice et le vecteur du membre de droite
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)
# Décomposition LU
LU, pivots = torch.lu(A)
# Résoudre à l'aide de la décomposition LU
X = torch.lu_solve(B, LU, pivots)
print("Matrice A :")
print(A)
print("\nVecteur du membre de droite B :")
print(B)
print("\nSolution X :")
print(X)
print("\nVérification : A @ X =")
print(A @ X)
Le résultat de sortie est:
矩阵 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)
Autres extensions