1.单个神经元
单个神经元的输入由前一层各个神经元的输出x1、x2、x3经过权重w1、w2、w3后得到的结果,我们知道,对于一个神经元来说,这其中的W、X、b均是[n*1]维列向量,也即
,
,如果再有更多的输入,就在往后加,这没啥难理解的。
2.一层网络
神经网络中,有输入层,隐藏层,输出层,以下图为例来说明,输入层我们记为X[0],隐藏层有两层,包含W[1]、X[1]、b[1]、Z[1]以及W[2]、X[2]、b[2]、Z[2],输出层W[3]、X[3]、b[3]、Z[3]
我们来写一下隐藏层的第一层的计算过程,2--->4,2个神经元到4个神经元的过程,我们能确定第二层的W是一个4行2列的矩阵,X是2行1列的矩阵,b是4行1列矩阵,Z也是4行1列的矩阵,在写的时候,可以使用这个小技巧,写W的时候,竖着写,w11代表前一层的第1个神经元到本层的第1个神经元的权重,w12代表前一层的第1个神经元到本层的第2个神经元,wij代表前一层的第i个神经元到本层的第j个神经元,写X的时候也竖着写,有几个写几个,所以X必然是列数为1 的矩阵,b和Z类似。
简单总结一下,这几个变量的维度是:
W:行数是当前神经元的个数,列数是前一层的神经元的个数(或者输入层特征个数)
Z和b:行数是当前神经元的个数,列数是1
X:行数是前一层神经元的个数,列数是1