PyTorch torch.orgqr función
Pytorch torch Manual de referencia
torch.orgqrEs una función en PyTorch que se utiliza para reconstruir la matriz ortogonal Q a partir de la descomposición QR. Utiliza los reflectores de Householder obtenidos de la descomposición QR para calcular la matriz Q.
Definición de la función
torch.orgqr(input)
Parámetros:
input(Tensor): El tensor de entrada, que contiene los reflectores de Householder.
Valor de retorno:
torch.Tensor: Devuelve la matriz ortogonal Q.
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]], dtype=torch.float64)
# Descomposición QR
Q, R = torch.linalg.qr(A)
print("Matriz A:")
print(A)
print("nMatriz ortogonal Q:")
print(Q)
print("nVerificar Q.T @ Q = I:")
print(Q.T @ Q)
# Crear matriz
A = torch.tensor([[12.0, -51.0, 4.0],
[6.0, 167.0, -68.0],
[-4.0, 24.0, -41.0]], dtype=torch.float64)
# Descomposición QR
Q, R = torch.linalg.qr(A)
print("Matriz A:")
print(A)
print("nMatriz ortogonal Q:")
print(Q)
print("nVerificar Q.T @ Q = I:")
print(Q.T @ Q)
El resultado de salida es:
矩阵 A:
tensor([[ 12., -51., 4.],
[ 6., 167., -68.],
[ -4., 24., -41.]], dtype=torch.float64)
正交矩阵 Q:
tensor([[-0.8571, 0.3943, 0.3314],
[-0.4286, -0.9029, -0.0343],
[ 0.2857, -0.1714, 0.9428]], dtype=torch.float64)
验证 Q.T @ Q = I:
tensor([[ 1.0000e+00, -1.4895e-16, 2.2204e-16],
[-1.4895e-16, 1.0000e+00, 9.8601e-32],
[ 2.2204e-16, 9.8601e-32, 1.0000e+00]], dtype=torch.float64)
Otras extensiones