浅层神经网络-1

本文来自于网易云课堂

1 符号约定

  • []表示层数,()表示样本数,例如a[1]表示神经网络的第一层,a[1](1)表示神经网络第一层的第一个样本。
  • a1[1]表示a[1]的第一个特征或者参数。

2 神经网络的表示

浅层神经网络-1
习惯上,我们不把输入层作为神经网络的层数,也就是上图表示的是一个标准的2层神经网络。

3 计算神经网络的输出

神经网络的每个节点都表示计算的两个步骤,也就是说神经网络实际上就是计算这些步骤很多次而已,每个节点的计算如下图。
浅层神经网络-1

对于下图所示的2层神经网络来说,该如何计算呢?
浅层神经网络-1

首先计算第一个节点,有:
z1[1]=w1[1]Tx+b1[1]
a1[1]=σ(z1[1])
对于第二个节点,有
z2[1]=w2[1]Tx+b2[1]
a2[1]=σ(z2[1])
那么对于第一层来说,有
浅层神经网络-1
那么,将其向量化,我们可以得到
浅层神经网络-1

4 m个样本的向量化实现

对于m个样本来说,我们可以这样来实现,如下图:
浅层神经网络-1
但是这样引入了for循环,所以为了将m个样本向量化,可以得到:
浅层神经网络-1
从上图可以看到,矩阵的横轴其实就是样本数,纵轴是节点数也即特征值。这样,我们可以得到神经网络的正向传播算法的向量化实现,如下图。
浅层神经网络-1