Fonction torch.randn de PyTorch
Manuel de référence Pytorch torch
torch.randnest une fonction de PyTorch utilisée pour créer un tenseur aléatoire à partir de la distribution normale standard (une distribution gaussienne de moyenne 0 et de variance 1).
Ceci est souvent utilisé en apprentissage profond pour des scénarios tels que l'initialisation des poids et la génération d'entrées aléatoires.
Définition de fonction
torch.randn(*size, dtype=None, device=None, requires_grad=False)
Parameters:
*size(int) : La forme du tenseur.dtype(torch.dtype, optionnel) : Type de données, par défauttorch.float32。device(torch.device, facultatif) : Périphérique.requires_grad(bool, facultatif) : Indique si le calcul du gradient est nécessaire.
Valeur de retour:
torch.Tensor: Retourne un tenseur contenant des nombres aléatoires.
Exemples d'utilisation
Exemple 1 : Créer un tenseur aléatoire
Exemple
import torch
# Créer un tenseur aléatoire 3x4
x = torch.randn(3, 4)
print(x)
# Créer un tenseur aléatoire 3x4
x = torch.randn(3, 4)
print(x)
La sortie est :
tensor([[-0.2107, -0.6198, 0.2103, 0.4513],
[-0.0124, -1.1746, 0.1844, -0.6199],
[ 1.1729, -0.7669, 0.3034, -0.0808]])
Exemple 2 : Initialisation des poids d'un réseau de neurones
Exemple
import torch
import torch.nn as nn
# Utiliser randn pour initialiser les poids du réseau de neurones
linear = nn.Linear(10, 5)
# Initialiser les poids avec des valeurs aléatoires
nn.init.randn_(linear.weight)
nn.init.zeros_(linear.bias)
print("Forme du poids :", linear.weight.shape)
print("Moyenne des poids :", linear.weight.mean().item())
print("Écart-type des poids :", linear.weight.std().item())
import torch.nn as nn
# Utiliser randn pour initialiser les poids du réseau de neurones
linear = nn.Linear(10, 5)
# Initialiser les poids avec des valeurs aléatoires
nn.init.randn_(linear.weight)
nn.init.zeros_(linear.bias)
print("Forme du poids :", linear.weight.shape)
print("Moyenne des poids :", linear.weight.mean().item())
print("Écart-type des poids :", linear.weight.std().item())
Autres extensions