您的位置:首页 > 理论基础 > 计算机网络

Coursera Deeplearning.ai「深度学习」课程笔记L1.W4深层神经网络

2019-04-16 12:57 453 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/XLearning88/article/details/89318924

深层神经网络

1. 各参数的向量化表示

LLL表示神经网络的层数,输入层的索引为0,对于每层 lll 都用a[l]a^{[l]}a[l]。
用 w[l]w^{[l]}w[l] 来记作在 lll 层计算 z[l]z^{[l]}z[l] 的权重,再通过用激活函数 ggg 计算 a[l]a^{[l]}a[l]。
(1)输入变量A[0]=X=[⋮⋮⋮⋮x(1)x(2)⋯x(m)⋮⋮⋮⋮]维度为_∗m,m为样本数 输入变量A^{[0]}=X = \left[ \begin{matrix} \vdots & \vdots & \vdots &\vdots \\ x^{(1)} & x^{(2)} & \cdots & x^{(m)} \\ \vdots & \vdots & \vdots &\vdots \\ \end{matrix} \right] 维度为 \_*m ,m为样本数\tag{1} 输入变量A[0]=X=⎣⎢⎢⎡​⋮x(1)⋮​⋮x(2)⋮​⋮⋯⋮​⋮x(m)⋮​⎦⎥⎥⎤​维度为_∗m,m为样本数(1)

(2)输入变量W[l]=[⋯w(1)⋯⋯w(2)⋯⋮⋯w(h)⋯]维度为h∗_,h为隐藏层节点数 输入变量W^{[l]}=\left[ \begin{matrix} \cdots & w^{(1)} & \cdots \\ \cdots & w^{(2)} & \cdots \\ & \vdots &\\ \cdots & w^{(h)} &\cdots\\ \end{matrix} \right] 维度为 h*\_ ,h为隐藏层节点数\tag{2} 输入变量W[l]=⎣⎢⎢⎢⎡​ 4000 ⋯⋯⋯​w(1)w(2)⋮w(h)​⋯⋯⋯​⎦⎥⎥⎥⎤​维度为h∗_,h为隐藏层节点数(2)

2. 前向传播

Z[l]=W[l]∗A[l−1]+B[l]Z^{[l]}=W^{[l]}*A^{[l-1]}+B^{[l]}Z[l]=W[l]∗A[l−1]+B[l]
A[l]=g[l](Z[l])A^{[l]}=g^{[l]}(Z^{[l]})A[l]=g[l](Z[l])

3. 反向传播

dZ[l]=dA[l]∗g[l]′(Z[l])dZ^{[l]}=dA^{[l]}*g^{[l]'}(Z^{[l]})dZ[l]=dA[l]∗g[l]′(Z[l])
dW[l]=1mdZ[l]∗A[l−1]TdW^{[l]}=\frac{1}{m}dZ^{[l]}*A^{[l-1]T}dW[l]=m1​dZ[l]∗A[l−1]T
dB[l]=1mnp.sum(dZ[l], axis=1, keepdims=True)dB^{[l]}=\frac{1}{m}np.sum(dZ^{[l]},\,axis=1,\,keepdims=True)dB[l]=m1​np.sum(dZ[l],axis=1,keepdims=True)
dA[l−1]=W[l]T∗dZ[l]dA^{[l-1]}=W^{[l]T}*dZ^{[l]}dA[l−1]=W[l]T∗dZ[l]

4. 核对矩阵维数

吴恩达:当实现深度神经网络的时候,其中一个我常用的检查代码是否有错的方法就是拿出一张纸过一遍算法中矩阵的维数

www的维度是(下一层的维数,前一层的维数),即w[l]:(n[l],n[l−1])w^{[l]}:(n^{[l]},n^{[l-1]})w[l]:(n[l],n[l−1]);
bbb的维度是(下一层的维数,1),即b[l]:(n[l],1)b^{[l]}:(n^{[l]},1)b[l]:(n[l],1);
zzz和aaa的维度是,z[l],a[l]:(n[l],1)z^{[l]},a^{[l]}:(n^{[l]},1)z[l],a[l]:(n[l],1)

dw[l]dw^{[l]}dw[l]和w[l]w^{[l]}w[l]维度相同,db[l]db^{[l]}db[l]和b[l]b^{[l]}b[l]维度相同
向量化后:www和bbb向量化维度不变,但zzz,aaa以及xxx的维度会向量化后发生变化。
Z[l]Z^{[l]}Z[l]可以看成由每一个单独的z[l]z^{[l]}z[l]叠加而得到,即
Z[l]=(z[l][1],z[l][2],z[l][3],...,z[l][m]) Z^{[l]}=(z^{[l][1]},z^{[l][2]},z^{[l][3]},...,z^{[l][m]}) Z[l]=(z[l][1],z[l][2],z[l][3],...,z[l][m])
其中,mmm为训练集大小。所以,
ZZZ和AAA的维度是,Z[l],A[l]:(n[l],m)Z^{[l]},A^{[l]}:(n^{[l]},m)Z[l],A[l]:(n[l],m)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐