Función PyTorch torch.linalg.qr


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

torch.linalg.qrEs una función del módulo de álgebra lineal de PyTorch utilizada para calcular la descomposición QR de una matriz. La descomposición QR descompone la matriz A en A = Q * R, donde Q es una matriz ortogonal y R es una matriz triangular superior.

Definición de la función

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

Parámetros:

  • A(Tensor): Matriz de entrada.
  • mode(str, opcional): 'reduced' devuelve la descomposición reducida, 'complete' devuelve la descomposición completa. El valor predeterminado es 'reduced'.
  • out(tuple, opcional): Tupla de salida.

Valor de retorno:

  • tuple: Devuelve una tupla (Q, R).

Ejemplo de uso

Ejemplo

import torch

# Crear matriz
A = torch.tensor([[12.0, -51.0, 4.0],
                  [6.0, 167.0, -68.0],
                  [-4.0, 24.0, -41.0]])

# Descomposición QR
Q, R = torch.linalg.qr(A)

print("Matriz A:")
print(A)
print("nMatriz ortogonal Q:")
print(Q)
print("nMatriz triangular superior R:")
print(R)
print("nVerificación: Q @ R =")
print(Q @ R)

El resultado de salida es:

矩阵 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 参考手册Manual de referencia de Pytorch torch

Otras extensiones