Fonction torch.randn de PyTorch


Pytorch torch 参考手册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)

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())

Pytorch torch 参考手册Manuel de référence Pytorch torch

Autres extensions