Función PyTorch torch.linalg.norm
Manual de referencia de Pytorch torch
torch.linalg.normEs una función del módulo de álgebra lineal de PyTorch que se utiliza para calcular la norma de matrices o vectores. Admite varios tipos de norma, como L1, L2, Frobenius, etc.
Definición de la función
torch.linalg.norm(A, ord=None, dim=None, keepdim=False, out=None, dtype=None)
Parámetros:
A(Tensor): Tensor de entrada.ord(int, float, inf, -inf, opcional): tipo de norma. Por defecto es 'fro'.dim(int, tuple, opcional): dimensiones sobre las que se calcula la norma.keepdim(bool, opcional): si se mantienen las dimensiones. Por defecto es False.dtype(torch.dtype, opcional): tipo de dato de salida.
Valor de retorno:
torch.TensorDevuelve el valor de la norma.
Ejemplo de uso
Ejemplo - Norma de Frobenius
import torch
# Crear matriz
A = torch.tensor([[1.0, 2.0], [3.0, 4.0]])
# Norma de Frobenius
norm_fro = torch.linalg.norm(A)
print("Matriz A:")
print(A)
print("Norma de Frobenius:", norm_fro)
# Crear matriz
A = torch.tensor([[1.0, 2.0], [3.0, 4.0]])
# Norma de Frobenius
norm_fro = torch.linalg.norm(A)
print("Matriz A:")
print(A)
print("Norma de Frobenius:", norm_fro)
El resultado es:
矩阵 A:
tensor([[1., 2.],
[3., 4.]])
Frobenius 范数: tensor(5.4772)
Ejemplo - Norma L2 de un vector
import torch
# Crear vector
v = torch.tensor([3.0, 4.0])
# Norma L2 (por defecto)
norm_l2 = torch.linalg.norm(v)
# Norma L1
norm_l1 = torch.linalg.norm(v, ord=1)
print("Vector v:", v)
print("Norma L2:", norm_l2)
print("Norma L1:", norm_l1)
# Crear vector
v = torch.tensor([3.0, 4.0])
# Norma L2 (por defecto)
norm_l2 = torch.linalg.norm(v)
# Norma L1
norm_l1 = torch.linalg.norm(v, ord=1)
print("Vector v:", v)
print("Norma L2:", norm_l2)
print("Norma L1:", norm_l1)
Otras extensiones