4.1 深层神经网络
(1)到底是深层还是浅层是一个相对的概念, 不必太纠结, 以下是一个四层的深度神经网络:
(2)一些符号定义:
a[0]=x(输入层也叫做第 0 层)
L=4: 表示网络的层数
g: 表示激活函数
第 l 层输出用 a[l], 最终的输出用 a[L]表示
n[1]=5: 表示第一层有五个神经元, 第 l 层神经元个数用 n[l]表示
4.2 前向传播和反向传播
(1)前向传播: 输入 a[l-1], 输出是 a[l], 缓存为 z[l], 步骤如下:(下面第一个式子应该是 a[l-1])
向量化:
(2)反向传播: 输入 da[l], 输出 da[l-1],dw[l],db[l]
(4)da[l-1]=w[l]T.dz[l]
由第四个式子带入到第一各式子中得
向量化:
(3)总结: 第一层可能是 Relu 激活函数, 第二层为另一个 Relu 函数, 第三层可能是 sigmoid 函数 (如果做二分类的话), 输出值为 a[L], 用来计算损失, 这样就可以以向后迭代进行反向传播就到来求 dw[3],db[3],dw[2],db[2],dw[1],db[1]. 在计算的时候, 缓存会把 z[1]z[2]z[3] 传递过来, 然后回传 da[2],da[1], 可以用来计算 da[0], 但是不会使用它. 整个过程如下图所示
4.3 深层网络的前向传播
(1)前向传播归纳为:
向量化实现过程:
4.4 核对矩阵的维数
(1)w 的维度是(下一层的维数, 上一层的维数), 即 w[l]:(n[l],n[l-1])
(2)b 的维度时(下一层的维数, 1)
(3)z[l],a[l]:(n[l],1)
(4)dw[l]和 w[l]维度相同, db[l]和 b[l]维度相同, 且 w,b 向量化维度不变, 但 z,a 以及 x 的维度会向量化后发生改变.
向量化后:
Z[l]:(n[l],m),A[l]同 Z[l]
4.5 为什么使用深层表示
增加网络的深度比广度更有效.
4.6 搭建神经网络块
(1)针对一层的正向和反向传播:
(2)整个过程示意图:
4.7 参数 VS 超参数
(1)W,b 是参数
(2)学习率, 迭代次数, 层数, 每层的单元数, momentum,mini batch size,regularization perameters 等能影响 W,b 的都称为超参数, 超参数的选择需要不断尝试和靠经验, 以及一些策略.
4.8 深度学习和大脑的关联性
深度学习和大脑其实没什么直接关系.
来源: http://www.bubuko.com/infodetail-3157264.html