(深度学习 by Andrew Ng)深度神经网络

0.神经网络

在这里插入图片描述
(深度学习 by Andrew Ng)深度神经网络_第1张图片
注意,神经网络的层数是这么定义的:从左到右,由0开始定义, x 1 , x 2 , x 3 x_1,x_2,x_3 x1x2x3这层是第0层,这层右边的隐藏层是第1层,由此类推。

1.深度学习的符号定义

(深度学习 by Andrew Ng)深度神经网络_第2张图片
上图是一个四层的神经网络,有三个隐藏层。我们可以看到,第一层(即左边数过去第二层,因为输入层是第0层)有5个神经元数目,第二层5个,第三层3个。

我们用 L L L表示层数,上图: L = 4 L=4 L=4,输入层的索引为“0”,

n [ 1 ] = 5 n^{[1]}=5 n[1]=5,表示第1隐藏层,有5个隐藏神经元,

同理, n [ 2 ] = 5 n^{[2]}=5 n[2]=5 n [ 3 ] = 3 n^{[3]}=3 n[3]=3 n [ 4 ] = 1 n^{[4]}=1 n[4]=1(输出单元为1)。而输入层 n [ 0 ] = n x = 3 n^{[0]}=n_x=3 n[0]=nx=3

w [ l ] w^{[l]} w[l]用来记作在 l l l 层计算值 z [ l ] z^{[l]} z[l]的权重

2.前向传播

一个样本的前向传播的步骤可以写成:

  1. z [ l ] = W [ l ] ⋅ a [ l − 1 ] + b [ l ] z^{[l]}=W^{[l]}\cdot a^{[l-1]}+b^{[l]} z[l]=W[l]a[l1]+b[l]
  2. a [ l ] = g [ l ] ( z [ l ] ) a^{[l]}=g^{[l]}(z^{[l]}) a[l]=g[l](z[l])

计算过程(以含有两个隐层的神经网络为例)
(深度学习 by Andrew Ng)深度神经网络_第3张图片
(深度学习 by Andrew Ng)深度神经网络_第4张图片
(深度学习 by Andrew Ng)深度神经网络_第5张图片
(深度学习 by Andrew Ng)深度神经网络_第6张图片
m m m个样本,向量化实现过程可以写成:

  1. Z [ l ] = W [ l ] ⋅ A [ l − 1 ] + b [ l ] Z^{[l]}=W^{[l]}\cdot A^{[l-1]}+b^{[l]} Z[l]=W[l]A[l1]+b[l]
  2. A [ l ] = g [ l ] ( Z [ l ] ) A^{[l]}=g^{[l]}(Z^{[l]}) A[l]=g[l](Z[l])
    (深度学习 by Andrew Ng)深度神经网络_第7张图片
    (深度学习 by Andrew Ng)深度神经网络_第8张图片

3.反向传播

反向传播的步骤:

  1. 输入为 d a [ l ] da^{[l]} da[l]
  2. 输出为 d a [ l − 1 ] , d w [ l ] , d b [ l ] da^{[l-1]},dw^{[l]},db^{[l]} da[l1]dw[l]db[l]

你可能感兴趣的:(深度学习)