deeplearning.ai 总结 - 如何计算神经网络各部分的shape

flyfish

标记方法采用deeplearning.ai的标记方法

deeplearning.ai 总结 - 如何计算神经网络各部分的shape
输入层(Input layer)
隐藏层(Hidden layer)
输出层(Output layer)。

上图中是两层神经网络,输出层不算。
输入矩阵X记为

a[0]

隐藏层输出记为
a[1]

a1[1]]
表示隐藏层第1个神经元,
a2[1]]
表示隐藏层第2个神经元。

隐藏层有4个神经元写成矩阵的形式是

a[1]=[a1[1]a2[1]a3[1]a4[1]]

输出层记为

a[2]

计算过程

z=wTx+b

a=σ(z)

从输入层到隐藏层的计算

z1[1]=w1[1]Tx+b1[1], a1[1]=σ(z1[1])

z2[1]=w2[1]Tx+b2[1], a2[1]=σ(z2[1])

z3[1]=w3[1]Tx+b3[1], a3[1]=σ(z3[1])

z4[1]=w4[1]Tx+b4[1], a4[1]=σ(z4[1])

隐藏层到输出层的计算

z1[2]=w1[2]Ta[1]+b1[2], a1[2]=σ(z1[2])

转换成矩阵计算

Z[1]=W[1]X+b[1]

A[1]=σ(Z[1])

Z[2]=W[2]A[1]+b[2]

A[2]=σ(Z[2])

W[1]
的维度是(4,3),4是隐藏层神经元个数,3是输入层特征数

b[1]
的维度是(4,1),

W[2]
的维度是(1,4),
1对应着输出层神经元个数,4对应着隐藏层神经元个数。

b[2]
的维度是(1,1)。

多个样本使用矩阵

fori=1m

    z[1](i)=W[1]x(i)+b[1]

    a[1](i)=σ(z[1](i))

    z[2](i)=W[2]a[1](i)+b[2]

    a[2](i)=σ(z[2](i))

矩阵方式是

Z[1]=W[1]X+b[1]

A[1]=σ(Z[1])

Z[2]=W[2]A[1]+b[2]

A[2]=σ(Z[2])

行是神经元个数,列是样本数目m

Z[1]
A[1]
的维度是(4,m)
Z[2]
A[2]
的维度均为(1,m)。

相关文章:

  • 2021-11-28
  • 2021-04-02
  • 2022-12-23
  • 2021-04-05
  • 2021-12-02
  • 2022-01-16
猜你喜欢
  • 2021-06-20
  • 2021-11-28
  • 2022-01-14
  • 2022-01-12
  • 2022-12-23
  • 2022-01-20
  • 2021-07-05
相关资源
相似解决方案