由random.randn()困惑

问题描述 投票:0回答:3

我对numpy函数random.randn()感到有点困惑,它使用你选择的大小从数组中的标准正态分布返回随机值。

我的问题是,我不知道这在应用实践中何时有用。

关于我的参考我是一个完整的编程菜鸟,但作为一个本科生学习数学(主要是统计相关的课程)。

numpy statistics normal-distribution
3个回答
0
投票

这可以用于3D编程以生成非重叠的随机值。这对于优化图形效果很有用。

统计应用的另一种可能用途是应用公式以测试影响给定常数的空间因素。比如,如果你用一些公式来衡量一段时间,然后需要知道在不同的时间范围内有效性。这将返回一个统计量,例如,您的公式在较短的间隔或较长的间隔等方面更有效。


0
投票

np.random.randn(d0, d1, ..., dn)从“标准正态”分布中返回一个样本(或样本)(mu = 0,stdev = 1)。

对于随机样本,请使用:sigma * np.random.randn(...)+ mu

这是因为如果Z是标准正态偏差,那么将具有预期值和标准偏差的正态分布。

https://docs.scipy.org/doc/numpy-1.14.0/reference/generated/numpy.random.randn.html

https://en.wikipedia.org/wiki/Normal_distribution


0
投票

Python函数randn非常有用,可以将随机噪声元素添加到您为机器学习模型的初始测试创建的数据集中。比如说,您想创建一个百万点数据集,该数据集大致是线性的,用于测试回归算法。您可以使用创建一百万个数据点

x_data = np.linspace(0.0,10.0,1000000)

您可以使用randn生成一百万个随机噪声值

noise = np.random.randn(len(x_data))

要创建线性数据集,请使用以下代码遵循公式y = mx + b + noise_levels(在此示例中设置b = 5,m = 0.5)

y_data = (0.5 * x_data ) + 5 + noise

最后,使用创建数据集

my_data = pd.concat([pd.DataFrame(data=x_data,columns=['X Data']),pd.DataFrame(data=y_data,columns=['Y'])],axis=1)

© www.soinside.com 2019 - 2024. All rights reserved.