Función PyTorch torch.randn


Pytorch torch 参考手册Manual de referencia de Pytorch torch

torch.randnEs una función en PyTorch que se utiliza para crear tensores aleatorios a partir de una distribución normal estándar (distribución gaussiana con media 0 y varianza 1).

Esto se usa a menudo en el aprendizaje profundo para inicializar pesos, generar entradas aleatorias, etc.

Definición de la función

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

Parámetros:

  • *size(int): La forma del tensor.
  • dtype(torch.dtype, opcional): Tipo de datos, por defecto estorch.float32。
  • device(torch.device, opcional): El dispositivo.
  • requires_grad(bool, opcional): Si se requiere calcular gradientes.

Valor de retorno:

  • torch.Tensor: Devuelve un tensor que contiene números aleatorios.

Ejemplos de uso

Ejemplo 1: Crear un tensor aleatorio

Ejemplo

import torch

# Crear un tensor aleatorio de 3x4
x = torch.randn(3, 4)

print(x)

La salida es:

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

Ejemplo 2: Inicialización de pesos de redes neuronales

Ejemplo

import torch
import torch.nn as nn

# Usar randn para inicializar los pesos de la red neuronal
linear = nn.Linear(10, 5)

# Inicializar los pesos con valores aleatorios
nn.init.randn_(linear.weight)
nn.init.zeros_(linear.bias)

print("Forma de los pesos:", linear.weight.shape)
print("Media de los pesos:", linear.weight.mean().item())
print("Desviación estándar de los pesos:", linear.weight.std().item())

Pytorch torch 参考手册Manual de referencia de Pytorch torch

Otras extensiones