输入矩阵的神经网络大小与突触矩阵的大小

时间:2019-02-11 23:51:01

标签: python arrays matrix neural-network deep-learning

我正在以下位置研究代码示例:11行Python中的神经网络

在第22行中,我是否正确理解syn0是具有3行4列的矩阵?如果是这样,为什么?在第9-11行中创建的X矩阵的大小为4x3,因此我希望第22行中的syn0与ALSO的大小相同,因此X中的每个值都可以乘以syn0中的权重值。我最好的猜测是:我们希望将X(一个4x3矩阵)乘以syn0(一个3x4矩阵),而不必进行转置,因此下面的代码使我们免于转置。我想念什么?这是代码,后面是一个可能会提供线索的表:

    01.import numpy as np
    02. 
    03.def nonlin(x,deriv=False):
    04.  if(deriv==True):
    05.    return x*(1-x)
    06. 
    07.  return 1/(1+np.exp(-x))
    08. 
    09.X = np.array([[0,0,1],
    10.             [0,1,1],
    11.             [1,0,1],
    12.             [1,1,1]])
    13. 
    14.y = np.array([[0],
    15.             [1],
    16.             [1],
    17.             [0]])
    18. 
    19.np.random.seed(1)
    20. 
    21.# randomly initialize our weights with mean 0
    22.syn0 = 2*np.random.random((3,4)) - 1
    23.syn1 = 2*np.random.random((4,1)) - 1

为什么此表(随附代码)显示第1层的4x4隐藏权重矩阵??

输入(l0)隐藏权重(l1)输出(l2) 0 0 1 0.1 0.2 0.5 0.2 0 0 1 1 0.2 0.6 0.7 0.1 1 1 0 1 0.3 0.2 0.3 0.9 1 1 1 1 0.2 0.1 0.3 0.8 0 谢谢您的帮助,大卫

0 个答案:

没有答案