首页 > 解决方案 > 我正在尝试在 python 中构建神经网络

问题描述

我正在尝试构建一个神经网络并正在学习教程。

那两条线是什么意思?

    syn0 = 2*np.random.random((3,4)) -1
    syn1 = 2*np.random.random((4,1)) -1

具体来说,这些值 (3,4 | 4,1)

我只是不明白...我想我知道第一个突触的值是什么意思,但不知道第二个...

标签: neural-network

解决方案


np.random.random创建一个介于 0 和 1 之间的随机值数组 - 它采用的参数是数组的所需形状,这就是您(3,4)(4,1)示例中的内容。

简单的随机权重初始化足以训练您的神经网络,但以 0 的平均值初始化它们会加快训练速度,这就是2*np.random.random((3,4)) -1

np.random.random((3,4)) // array with values in range [0, 1) and mean of 0.5
2 * np.random.random((3,4)) // array with values in range [0, 2) and mean of 1
2 * np.random.random((3,4)) - 1 // array with values in range [-1, 1) and mean of 0

推荐阅读