Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neural network 神经网络中的权值矩阵维数直觉_Neural Network - Fatal编程技术网

Neural network 神经网络中的权值矩阵维数直觉

Neural network 神经网络中的权值矩阵维数直觉,neural-network,Neural Network,我在Coursera学习了一门关于神经网络的课程,遇到了这个模型: 我知道z1、z2等的值是线性回归的值,将被放入激活函数中。我遇到的问题是,当作者说应该有一个权重矩阵和一个输入向量时,如下所示: 我知道Xs的向量的维数是3x1,因为有三个输入,但是为什么Ws的数组的维数是4x3呢?。我可以推断它有四行,因为它们是权重w1,w2,w3和w4,它们对应于a1…a4的每一个值,但是数组中是什么?其元素类似于: w1T w1T w1T w2T w2T w3T ... ? 例如,当我乘以x1时,我

我在Coursera学习了一门关于神经网络的课程,遇到了这个模型:

我知道z1、z2等的值是线性回归的值,将被放入激活函数中。我遇到的问题是,当作者说应该有一个权重矩阵和一个输入向量时,如下所示:

我知道Xs的向量的维数是3x1,因为有三个输入,但是为什么Ws的数组的维数是4x3呢?。我可以推断它有四行,因为它们是权重w1,w2,w3和w4,它们对应于a1…a4的每一个值,但是数组中是什么?其元素类似于:

w1T w1T w1T
w2T w2T w3T
... ?
例如,当我乘以x1时,我会得到:

w1Tx1+w1Tx2+w1Tx3=w1T(x1+x2+x3)=w1TX
我已经考虑过了,但是我不能真正理解这个数组包含什么,即使我知道最后我会有一个4x1的向量,对应于z的值。有什么帮助吗


谢谢

如果
x
3x1
,那么大小为
Nx3
的权重矩阵将为您提供一个带有
N
单位的隐藏层。在您的情况下,
N=4
(请参见网络示意图)。这是因为将
Nx3
矩阵与
3x1
向量相乘得到
Nx1
向量作为输出,因此,
N
隐藏单位

权重矩阵的每一行定义单个隐藏单元的权重,因此
w_1
x
(加上偏差)的标量积给出
z_1

最后,将所有数量写成向量和矩阵可以让您简单地使用简洁的线性代数表示法:


我们假设激活是按元素应用的。

根据经验法则,权重矩阵具有以下维度:

  • 行数必须等于前一层中的神经元数。(在这种情况下,前一层是输入层)。So 3
  • 列的数量必须与下一层中的神经元数量相匹配。所以4

因此,权重矩阵=(3X4)。如果使用转置,它将变为(4X3)

谢谢@cheersmate,但我知道las公式是从哪里来的。实际上,我很好奇数组W包含哪些信息。例如,在我写的例子中,它是否包含w1在第一行中重复三次,w2在第二行中重复三次,依此类推?实际上,在你的问题中,你用
^T
写单独的权重,但这是一个只对向量有意义的转置:这已经给了你一个关于发生了什么的提示。草图中的符号表示:
w_1
是一个包含3个(不同)元素的向量。我还更新了公式,以明确显示标量积和
w_I
的各个元素。