关于python:numpy.random函数中的Unknown *

Unknown * in numpy.random function

本问题已经有最佳答案,请猛点这里访问。

我在研究这个链接,这就是代码。

1
 U1 = np.random.rand(*H1.shape) < p # first dropout mask

为什么我试着这么做时失败了?

1
2
import numpy
numpy.random.rand(*1) < 2

我知道rand()函数接受一个数字,这就是为什么我对代码应该起作用感到困惑的原因。


*将元组解包为多个输入参数。代码使用shape属性(是元组)作为np.random.rand的维度输入,创建一个与H1形状相同的随机矩阵。

你可以用任何元组来做这个

1
2
np.random.rand(*(2,3))     # The same as np.random.rand(2,3)
# Creates a 2 x 3 array

您试图解包一个将要失败的整数。