PyTorch torch.randn Funktion


Pytorch torch 参考手册PyTorch torch Referenzhandbuch

torch.randnist eine Funktion in PyTorch, mit der ein Zufalls-Tensor aus der Standardnormalverteilung (einer Gauß-Verteilung mit Mittelwert 0 und Varianz 1) erstellt wird.

Dies wird oft im Deep Learning für Szenarien wie die Initialisierung von Gewichten und die Generierung zufälliger Eingaben verwendet.

Funktionsdefinition

torch.randn(*size, dtype=None, device=None, requires_grad=False)

Parameters:

  • *size(int): Die Form des Tensors.
  • dtype(torch.dtype, optional): Datentyp, standardmäßigtorch.float32。
  • device(torch.device, optional): Gerät.
  • requires_grad(bool, optional): Ob die Gradientenberechnung erforderlich ist.

Rückgabewert:

  • torch.Tensor: Gibt einen Tensor zurück, der Zufallszahlen enthält.

Anwendungsbeispiele

Beispiel 1: Zufälligen Tensor erstellen

Beispiel

import torch

# Einen zufälligen 3x4-Tensor erstellen
x = torch.randn(3, 4)

print(x)

Die Ausgabe ist:

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

Beispiel 2: Gewichtsinitialisierung eines neuronalen Netzwerks

Beispiel

import torch
import torch.nn as nn

# Verwende randn, um die Gewichte eines neuronalen Netzwerks zu initialisieren
linear = nn.Linear(10, 5)

# Gewichte mit Zufallswerten initialisieren
nn.init.randn_(linear.weight)
nn.init.zeros_(linear.bias)

print("Gewichtsform:", linear.weight.shape)
print("Gewichtsmittelwert:", linear.weight.mean().item())
print("Standardabweichung der Gewichte:", linear.weight.std().item())

Pytorch torch 参考手册PyTorch torch Referenzhandbuch

Andere Erweiterungen