randn

Documentation

treetensor.torch.randn(*args, **kwargs)[source]

In treetensor, you can use randn to create a tree of tensors with numbers obey standard normal distribution.

Example:

>>> import torch
>>> import treetensor.torch as ttorch
>>> ttorch.randn(2, 3)  # the same as torch.randn(2, 3)
tensor([[-0.8534, -0.5754, -0.2507],
        [ 0.0826, -1.4110,  0.9748]])

>>> ttorch.randn({'a': (2, 3), 'b': {'x': (4, )}})
<Tensor 0x7ff363bb6518>
├── a --> tensor([[ 0.5398,  0.7529, -2.0339],
│                 [-0.5722, -1.1900,  0.7945]])
└── b --> <Tensor 0x7ff363bb6438>
    └── x --> tensor([-0.7181,  0.1670, -1.3587, -1.5129])

Torch Version Related

This documentation is based on torch.randn in torch v2.0.1+cu117. Its arguments’ arrangements depend on the version of pytorch you installed.

If some arguments listed here are not working properly, please check your pytorch’s version with the following command and find its documentation.

1
python -c 'import torch;print(torch.__version__)'

The arguments and keyword arguments supported in torch v2.0.1+cu117 is listed below.

Description From Torch v2.0.1+cu117

torch.randn(*size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False)Tensor

Returns a tensor filled with random numbers from a normal distribution with mean 0 and variance 1 (also called the standard normal distribution).

\[\text{out}_{i} \sim \mathcal{N}(0, 1)\]

The shape of the tensor is defined by the variable argument size.

Args:
size (int…): a sequence of integers defining the shape of the output tensor.

Can be a variable number of arguments or a collection like a list or tuple.

Keyword args:

generator (torch.Generator, optional): a pseudorandom number generator for sampling out (Tensor, optional): the output tensor. dtype (torch.dtype, optional): the desired data type of returned tensor.

Default: if None, uses a global default (see torch.set_default_tensor_type()).

layout (torch.layout, optional): the desired layout of returned Tensor.

Default: torch.strided.

device (torch.device, optional): the desired device of returned tensor.

Default: if None, uses the current device for the default tensor type (see torch.set_default_tensor_type()). device will be the CPU for CPU tensor types and the current CUDA device for CUDA tensor types.

requires_grad (bool, optional): If autograd should record operations on the

returned tensor. Default: False.

Example:

>>> torch.randn(4)
tensor([-2.1436,  0.9966,  2.3426, -0.6366])
>>> torch.randn(2, 3)
tensor([[ 1.5954,  2.8929, -1.0923],
        [ 1.1719, -0.4709, -0.1996]])