第四周
到目前为止,应该已经学习了单隐层网络的前向和后向传播,以及logistic回归,并且也学习了向量化,和为什么随机初始化比较重要。
logistic回归是一个浅层模型,通常在实践中,一层层的试,即一层、两层、三层这样。
用L来表示神经网路的层数,n[l]来表示节点的数目在L层。输入层是0层。
这个图n[1]=5,这个图n[2]=5,这个图n[3]=3,这个图n[0]=nx=3。
使用a[l]来表示l层激活函数
正向传播公式在这里插入图片描述
每一层的基本规律
接下来我们思考多层神经网络中的矩阵维数的核对。
例如在这个矩阵中,最开始我们知道Z[1]是(3,1)的矩阵,x是(2,1)的矩阵,即如图所示,w[1]必须是(3,2)的矩阵,才能得到,通过w[1]×x得到Z[1]。
同样可以思考,Z的维度是(n[1],1),X的维度是(n[0],1),W的维度是(n[1],n[0])。
下面的w[2]同理,首先通过公式可以直接得到(5,3),接下来我们来推导:因为Z[2]是(5,1)的矩阵,我们计算的是:
Z[2]= w[2]*a[2]+b[2]
此时,Z[2]是(5,1)的矩阵,通过前面的计算我们知道a[2]是(3,1)的,所以可以得到w[2]是(5,3)的矩阵。
同样我们可以得出结论
b[l] = (n[l],1)
通过这两个式子(图中的w和b)我们可以检查你的矩阵w和向量b的维度,同样的,他们的导数的维度也应该可以检查,
当他们实现向量化以后,他们的维度变化是:
其实也就是原来的1,变成了m
-
边缘探测器是针对非常小的部分来说的
-
深度学习其实就是多层神经隐藏网络的包装罢了
正向传输和反向传输的例子
其实就是输入a[l-1],然后输出a[l]。反向的就是反过来,然后中间的步骤就是其他参数的计算。
构成深度网络的基本模块,每一层都有前向传播步骤,以及一个相对的反向传播步骤,
4.6的看不懂
我上周曾经写过的反向传播的等式
看不懂这个推导过程,为什么这样???
超参数和参数
你的算法中,你的梯度下降算法的学习率,梯度下降的数量。或者其他想要设置的数,比如你的层数L,或者隐藏单元数,激活函数的选择。
这些参数实际上控制了w和b的具体数值,这些参数也叫超参数。
参数设定这方面,目前的就是不断地尝试,也许可以往这方面思考一下?
习题的第九题不理解!!