flopscope.numpy.random.randn
fnp.random.randn(*args)[flopscope source]
Return a sample (or samples) from the "standard normal" distribution.
Adapted from NumPy docs np.random.randn
Sampling; cost = numel(output).
This is a convenience function for users porting code from Matlab,
and wraps standard_normal. That function takes a
tuple to specify the size of the output, which is consistent with
other NumPy functions like flops.zeros and flops.ones.
New code should use the standard_normal method of a Generator instance instead; please see the random-quick-start.
If positive int_like arguments are provided, randn generates an array
of shape (d0, d1, ..., dn), filled
with random floats sampled from a univariate "normal" (Gaussian)
distribution of mean 0 and variance 1. A single float randomly sampled
from the distribution is returned if no argument is provided.
Parameters
- d0, d1, ..., dn:int, optional
The dimensions of the returned array, must be non-negative. If no argument is given a single Python float is returned.
Returns
- Z:ndarray or float
A
(d0, d1, ..., dn)-shaped array of floating-point samples from the standard normal distribution, or a single such float if no parameters were supplied.
See also
- standard_normal Similar, but takes a tuple as its argument.
- normal Also accepts mu and sigma arguments.
- we.flops.random.Generator.standard_normal which should be used for new code.
Notes
For random samples from the normal distribution with mean mu and
standard deviation sigma, use:
sigma * flops.random.randn(...) + muExamples
>>> flops.random.randn()
2.1923875335537315 # randomTwo-by-four array of samples from the normal distribution with mean 3 and standard deviation 2.5:
>>> 3 + 2.5 * flops.random.randn(2, 4)
array([[-4.49401501, 4.00950034, -1.81814867, 7.29718677], # random
[ 0.39924804, 4.68456316, 4.99394529, 4.84057254]]) # random