oneflow.normal¶
-
oneflow.
normal
(mean, std, *, generator=None, out=None) → Tensor¶ Returns a tensor of random numbers drawn from separate normal distributions whose mean and standard deviation are given.
The
mean
is a tensor with the mean of each output element’s normal distributionThe
std
is a tensor with the standard deviation of each output element’s normal distributionThe shapes of
mean
andstd
don’t need to match, but the total number of elements in each tensor need to be the same.Note
Infers the output shape from input arrays
mean
andstd
. The output shape will have a dimensionality equal to the max ofmean
andstd
. Dimensions with size 1 in eithermean
orstd
are expanded to match the other.- Parameters
- Keyword Arguments
generator (Generator, optional) – Random number generator. Defaults to oneflow::DefaultGenerator if not provided.
out (Tensor, optional) – Output tensor, will be resized and filled with the result. If not provided, a new tensor is created.
Example:
>>> import oneflow as flow >>> generator = flow.Generator() >>> generator.manual_seed(0) <oneflow._oneflow_internal.Generator object at ...> >>> z = flow.normal(mean=flow.arange(1., 11.), std=flow.arange(1, 0, -0.1), generator=generator) >>> z[:5] tensor([3.2122, 3.0468, 3.6192, 4.3387, 5.6261], dtype=oneflow.float32)
normal(mean=0.0, std, *, generator=None, out=None) -> Tensor.
Similar to the function above, but the means are shared among all drawn elements.
- Parameters
mean (float, optional) – the mean for all distributions
std (Tensor) – the tensor of per-element standard deviations
- Keyword Arguments
generator (Generator, optional) – Random number generator. Defaults to oneflow::DefaultGenerator if not provided.
out (Tensor, optional) – Output tensor, will be resized and filled with the result. If not provided, a new tensor is created.
Example:
>>> import oneflow as flow >>> flow.normal(mean=0.5, std=flow.arange(1., 6.)).shape oneflow.Size([5])
normal(mean, std=1.0, *, generator=None, out=None) -> Tensor Similar to the function above, but the standard deviations are shared among all drawn elements.
- Parameters
mean (Tensor) – the tensor of per-element means
std (float, optional) – the standard deviation
- Keyword Arguments
generator (Generator, optional) – Random number generator. Defaults to oneflow::DefaultGenerator if not provided.
out (Tensor) – The output tensor
- Returns
The output tensor, with random normal values.
- Return type
Example:
>>> import oneflow as flow >>> flow.normal(mean=flow.arange(1., 6.)).shape oneflow.Size([5])
normal(mean, std, size, *, out=None, placement=None, sbp=None, generator=None, dtype=None, device=None, requires_grad=False) -> Tensor Returns a tensor of random numbers drawn from separate normal distributions whose mean and standard deviation are given.
- Parameters
mean (float) – the mean for all distributions
std (float) – the standard deviation for all distributions
size (int...) – a sequence of integers defining the shape of the output tensor.
- Keyword Arguments
out (Tensor, optional) – the output tensor.
placement (flow.placement, optional) – The desired device of returned global tensor. If None, will construct local tensor.
sbp (flow.sbp, optional) – The desired sbp of returned global tensor. It must be equal with the numbers of placement.
generator (
oneflow.Generator
, optional) – a pseudorandom number generator for samplingdtype (
oneflow.dtype
, optional) – the desired data type of returned tensor. Default: oneflow.float32.device – the desired device of returned tensor. Default: cpu.
requires_grad (bool, optional) – If autograd should record operations on the returned tensor. Default: False.
Example:
>>> import oneflow as flow >>> generator = flow.Generator() >>> generator.manual_seed(0) <oneflow._oneflow_internal.Generator object at ...> >>> y = flow.normal(0, 1, 5, generator=generator) >>> y tensor([2.2122, 1.1631, 0.7740, 0.4838, 1.0434], dtype=oneflow.float32)