Fonction torch.cholesky_solve de PyTorch


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

torch.cholesky_solveIl s'agit d'une fonction de PyTorch qui résout des équations linéaires à l'aide de la décomposition de Cholesky. Elle utilise la décomposition de Cholesky pour résoudre efficacement AX = B.

Définition de fonction

torch.cholesky_solve(B, L, upper=False, out=None)

Parameters:

  • B(Tensor): La matrice ou le vecteur du second membre du système d'équations linéaires.
  • L(Tensor) : La matrice triangulaire supérieure ou inférieure obtenue à partir de la décomposition de Cholesky.
  • upper(bool, facultatif) : Si True, L est une matrice triangulaire supérieure ; sinon, il s'agit d'une matrice triangulaire inférieure. La valeur par défaut est False.
  • out(Tensor, optionnel) : Tenseur de sortie.

Valeur de retour:

  • torch.Tensor: Renvoie la solution X du système d'équations linéaires.

Exemple d'utilisation

Exemple

import torch

# Créer une matrice symétrique définie positive A
A = torch.tensor([[4.0, 2.0, 2.0],
                  [2.0, 5.0, 3.0],
                  [2.0, 3.0, 6.0]], dtype=torch.float64)

# Créer le vecteur du second membre B
B = torch.tensor([3, 4, 5], dtype=torch.float64)

# Décomposition de Cholesky
L = torch.cholesky(A)

# Utiliser Cholesky pour résoudre AX = B
X = torch.cholesky_solve(B, L)

print(Matrice A :)
print(A)
print(nVecteur du second membre B :)
print(B)
print(nSolution X :)
print(X)
print(nVérification : A @ X =)
print(A @ X)

La sortie est :

矩阵 A:
tensor([[4., 2., 2.],
        [2., 5., 3.],
        [2., 3., 6.]], dtype=torch.float64)
右侧向量 B:
tensor([3., 4., 5.], dtype=torch.float64)
解 X:
tensor([-2.5000,  5.0000, -2.0000], dtype=torch.float64)
验证: A @ X =
tensor([3., 4., 5.], dtype=torch.float64)

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

Autres extensions