Fonction torch.linalg.norm de PyTorch
Manuel de référence PyTorch torch
torch.linalg.normC'est une fonction du module d'algèbre linéaire de PyTorch utilisée pour calculer les normes de matrices ou de vecteurs. Elle prend en charge plusieurs types de normes, tels que les normes L1, L2, Frobenius, etc.
Définition de fonction
torch.linalg.norm(A, ord=None, dim=None, keepdim=False, out=None, dtype=None)
Parameters:
A(Tensor) : tenseur d'entrée.ord(int, float, inf, -inf, facultatif) : Type de norme. La valeur par défaut est 'fro'.dim(int, tuple, facultatif) : Dimensions sur lesquelles calculer la norme.keepdim(bool, facultatif) : Indique si les dimensions doivent être conservées. La valeur par défaut est False.dtype(torch.dtype, facultatif) : Type de données de sortie.
Valeur de retour:
torch.Tensor: Renvoie la valeur de la norme.
Exemples d'utilisation
Exemple - Norme de Frobenius
import torch
# Créer une matrice
A = torch.tensor([[1.0, 2.0], [3.0, 4.0]])
# Norme de Frobenius
norm_fro = torch.linalg.norm(A)
print("Matrice A :")
print(A)
print("Norme de Frobenius :", norm_fro)
# Créer une matrice
A = torch.tensor([[1.0, 2.0], [3.0, 4.0]])
# Norme de Frobenius
norm_fro = torch.linalg.norm(A)
print("Matrice A :")
print(A)
print("Norme de Frobenius :", norm_fro)
Le résultat de sortie est:
矩阵 A:
tensor([[1., 2.],
[3., 4.]])
Frobenius 范数: tensor(5.4772)
Exemple - Norme L2 d'un vecteur
import torch
# Créer un vecteur
v = torch.tensor([3.0, 4.0])
# Norme L2 (par défaut)
norm_l2 = torch.linalg.norm(v)
# Norme L1
norm_l1 = torch.linalg.norm(v, ord=1)
print("Vecteur v :", v)
print("Norme L2 :", norm_l2)
print("Norme L1 :", norm_l1)
# Créer un vecteur
v = torch.tensor([3.0, 4.0])
# Norme L2 (par défaut)
norm_l2 = torch.linalg.norm(v)
# Norme L1
norm_l1 = torch.linalg.norm(v, ord=1)
print("Vecteur v :", v)
print("Norme L2 :", norm_l2)
print("Norme L1 :", norm_l1)
Autres extensions