Fonction torch.linalg.qr de PyTorch


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

torch.linalg.qrC'est une fonction du module d'algèbre linéaire de PyTorch utilisée pour calculer la décomposition QR d'une matrice. La décomposition QR factorise la matrice A en A = Q * R, où Q est une matrice orthogonale et R est une matrice triangulaire supérieure.

Définition de fonction

torch.linalg.qr(A, mode='reduced', out=None)

Parameters:

  • A(Tensor): matrice d'entrée.
  • mode(str, facultatif): 'reduced' renvoie la décomposition réduite, 'complete' renvoie la décomposition complète. Valeur par défaut: 'reduced'.
  • out(tuple, facultatif) : Tuple de sortie.

Valeur de retour:

  • tuple: Renvoie le tuple (Q, R).

Exemple d'utilisation

Exemple

import torch

# Créer une matrice
A = torch.tensor([[12.0, -51.0, 4.0],
                  [6.0, 167.0, -68.0],
                  [-4.0, 24.0, -41.0]])

# Décomposition QR
Q, R = torch.linalg.qr(A)

print("Matrice A :")
print(A)
print("nMatrice orthogonale Q:")
print(Q)
print("nMatrice triangulaire supérieure R:")
print(R)
print("nVérification: Q @ R =")
print(Q @ R)

Le résultat de sortie est:

矩阵 A:
tensor([[ 12., -51.,   4.],
        [  6., 167., -68.],
        [ -4.,  24., -41.]])
正交矩阵 Q:
tensor([[-0.8571,  0.3943,  0.3314],
        [-0.4286, -0.9029, -0.0343],
        [ 0.2857, -0.1714,  0.9428]])
上三角矩阵 R:
tensor([[ -14.,  -21.,   14.],
        [   0., -175.,   70.],
        [   0.,    0.,  -35.]])
验证: Q @ R =
tensor([[ 12., -51.,   4.],
        [  6., 167., -68.],
        [ -4.,  24., -41.]])

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

Autres extensions