对于深层神经网络,检查代码是否有错的方法,拿出一张纸,然后过一遍算法中矩阵的维数。
实现forward propagation,需要做下面这样的计算。
根据上图,已知z和x的维度,可以推到出w的维度。概括为一个更广泛的公式,如下图。
对于b的维度,b需要跟wx做加法运算得到z,所以应该与z保持相同的维度,所以b的维度的公式如下图。
对于back propagation,dW的维度应该和W的维度相同,db的维度和b的维度相同。
对于经过激活函数的向量,维度不应该变化。
下面从z到Z,考虑向量化后的维度,如下图。从z到Z,是将z的叠加,叠加m个,m是样本个数。
总结一下,维度应该如下图所示。