np.random.randn和np.zeros用法
时间: 2024-10-22 17:03:23 浏览: 54
基于numpy.random.randn()与rand()的区别详解
`np.random.randn()` 是 NumPy 库中的一个函数,它用于生成服从标准正态分布 (Normal Distribution with mean=0 and standard deviation=1) 的随机浮点数数组。这个函数接收一到两个参数,如果只传入一个整数 n,则返回一个 n 维的数组,每个元素都是独立的标准正态分布;如果有两个参数 m 和 n,则返回一个 m 行 n 列的二维数组,包含独立的标准正态分布值。
`np.zeros()` 是另一个用于创建数组的函数,它会创建一个指定形状的数组,所有的元素都被初始化为 0。这个函数接收一个或多个参数,可以是一个数字表示一维数组长度,也可以是一个元组表示多维度数组的形状。
两者结合使用时,如上述例子所示,通常用来初始化神经网络的权重和偏置。`np.random.randn(n_h, n_x)` 初始化了从标准正态分布随机取值的权重矩阵,而 `np.zeros((n_h, 1))` 和 `np.zeros((n_y, 1))` 分别创建了对应隐藏层和输出层的初始偏置向量,这些都是神经网络训练过程中重要的参数,它们会影响模型的学习过程和最终输出。
阅读全文